The Lockheed SR-71 "Blackbird" is a long-range, high-altitude, Mach 3+ strategic reconnaissance aircraft developed and manufactured by the American aerospace company Lockheed Corporation.
This or previous program is for Educational purpose ONLY. Do not use it without permission.
The usual disclaimer applies, especially the fact that me (P1ngul1n0) is not liable for any
damages caused by direct or indirect use of the information or functionality provided by these
programs. The author or any Internet provider bears NO responsibility for content or misuse
of these programs or any derivatives thereof. By using these programs you accept the fact
that any damage (dataloss, system crash, system compromise, etc.) caused by the use of these
programs is not P1ngul1n0's responsibility.
git clone https://github.com/p1ngul1n0/blackbird
cd blackbird
pip install -r requirements.txt
python blackbird.py -u username
python blackbird.py --web
Access http://127.0.0.1:9797 on the browser
python blackbird.py -f username.json
python blackbird.py --list-sites
python blackbird.py -u crash --proxy http://127.0.0.1:8080
By default only found accounts will be shown, however you can use the argument below to see them.
python blackbird.py -u crash --show-all
Blackbird can also be used with Docker.
docker pull p1ngul1n0/blackbird:v1
docker run -p 9797:9797 p1ngul1n0/blackbird:v1 "--web"
docker run -p 9797:9797 p1ngul1n0/blackbird:v1 "-u 'crash123'"
- YouTube
- Telegram
- TikTok
- Tinder
- Snapchat
- Soundcloud
- Github
- Steam
- Linktree
- Xbox Gamertag
- Twitter Archived
- Xvideos
- PornHub
- Xhamster
- Periscope
- Ask FM
- Vimeo
- Twitch
- Pastebin
- WordPress Profile
- WordPress Site
- AllMyLinks
- Buzzfeed
- JsFiddle
- Sourceforge
- Kickstarter
- Smule
- Blogspot
- Tradingview
- Internet Archive
- Alura
- Behance
- MySpace
- Disqus
- Slideshare
- Rumble
- Ebay
- RedBubble
- Kik
- Roblox
- Armor Games
- Fortnite Tracker
- Duolingo
- Chess
- Shopify
- Untappd
- Last FM
- Cash APP
- Imgur
- Trello
- Minecraft
- Patreon
- DockerHub
- Kongregate
- Vine
- Gamespot
- Shutterstock
- Chaturbate
- ProtonMail
- TripAdvisor
- RapidAPI
- HackTheBox
- Wikipedia
- Buymeacoffe
- Arduino
- League of Legends Tracker
- Lego Ideas
- Fiverr
- Redtube
- Dribble
- Packet Storm Security
- Ello
- Medium
- Hackaday
- Keybase
- HackerOne
- BugCrowd
- OneCompiler
- TryHackMe
- Lyrics Training
- Expo
- RAWG
- Coroflot
- Cloudflare
- Wattpad
- Mixlr
- ImageShack
- Freelancer
- Dev To
- BitBucket
- Ko Fi
- Flickr
- HackerEarth
- Spotify
- Snapchat Stories
- Audio Jungle
- Avid Community
- Bandlab
- Carrd
- CastingCallClub
- Coderwall
- Codewars
- F3
- Gab
- Issuu
- Steemit
- Venmo
- MODDB
- COLOURlovers
- Scheme Color
- Roblox Trade
- Aetherhub
- BugBounty
- Huntr
- Universocraft
- Wireclub
- AminoApps
- Trakt
- Giphy
- Minecraft List
- SEOClerks
- Mix
- Codecademy
- Bandcamp
- Poshmark
- hackster
- BodyBuilding
- Mastodon
- IFTTT
- Anime Planet
- Destructoid
- Gitee
- Teknik
- BitChute
- The Tatto Forum
- NPM
- PyPI
- HackenProof
- VKontakte
- about me
- Dissenter
- Designspiration
- Fark
- mmorpg
- Pikabu
- Playstation Network
- Warrior Forum
- Pixilart
- 2Dimensions
- 3dnews
- 7Cups
- 9GAG
- Academia.edu
- Airbit
- Airliners
- Alik.cz
- Apple Developer
- Apple Discussions
- Asciinema
- Ask Fedora
- Audiojungle
- Autofrage
- BLIP.fm
- Bazar.cz
- Bezuzyteczna
- Bikemap
- BioHacking
- Bitwarden Forum
- Blogger
The results can be exported as a PDF Report.
When possible Blackbird will extract the user's metadata, bringing data such as name, bio, location and profile picture.
Blackbird uses a random UserAgent from a list of 1000 UserAgents in each request to prevent blocking.
Blackbird sends async HTTP requests, allowing a lot more speed when discovering user accounts.
Blackbird uses JSON as a template to store and read data.
The data.json file store all sites that blackbird verify.
- app - Site name
- url
- valid - Python expression that returns True when user exists
- id - Unique numeric ID
- method - HTTP method
- json - JSON body POST (needs to be escaped, use this ๐ https://codebeautify.org/json-escape-unescape)
- {username} - Username place (URL or Body)
- response.status - HTTP response status
- responseContent - Raw response body
- soup - Beautifulsoup parsed response body
- jsonData - JSON response body
- metadada - a list of objects to be scraped
GET
{
"app": "ExampleAPP1",
"url": "https://www.example.com/{username}",
"valid": "response.status == 200",
"id": 1,
"method": "GET"
}
POST JSON
{
"app": "ExampleAPP2",
"url": "https://www.example.com/user",
"valid": "jsonData['message']['found'] == True",
"json": "{{\"type\": \"username\",\"input\": \"{username}\"}}",
"id": 2,
"method": "POST"
}
GET with Metadata extraction
{
"app": "Twitter",
"id": 3,
"method": "GET",
"url": "https://nitter.net/{username}",
"valid": "response.status == 200",
"metadata": [
{
"type": "generic-data",
"key": "Name",
"value": "soup.find('a', class_='profile-card-fullname')['title']"
},
{
"type": "generic-data",
"key": "Bio",
"value": "soup.find('div',class_='profile-bio').string"
},
{
"type": "generic-data",
"key": "Site",
"value": "soup.find('div',class_='profile-website').text.strip('\\t\\r\\n')"
},
{
"type": "generic-data",
"key": "Member since",
"value": "soup.find('div',class_='profile-joindate').find('span')['title']"
},
{
"type": "image",
"key": "picture",
"value": "'https://nitter.net'+soup.find('a', class_='profile-card-avatar')['href']"
},
{
"type": "location",
"key": "location",
"value": "soup.select_one('.profile-location:nth-of-type(2)').text.strip('\\t\\r\\n')"
}
]
}
If you have any suggestion of a site to be included in the search, make a pull request following the template.
I'm grateful to all contributors who improved and bugfixed the project.
- @RelatedTitle - Fixed the Youtube user search URL.
- @prisar - Fixed the OS check for AsyncIO policy.
- @itmaru - Fixed 'across' typo.
- @Bryan-Herrera-DEV - Added Universocraft site.
- @devXprite - Added NPM and PyPI sites.
- @ChrisCarini - Fixed 'supported' typo.
- @Pandede - Fixed No such file or directory: 'python' #24 issue, reformatted with autopep8, implemented
enumerate
and code splitting for functions. - @tr33n - Implemented random UserAgent for each request.
- @Sebsebzen - Added VKontakte (with metadata).
- @LsvanDarko - Added requests package to requirements.txt.
- @wymiotkloaki - Added basic .gitignore file and 21 sites.
- Implement Flask Web Server to optimize UX
- Export results in PDF
- Export results in CSV
- Implement metadata extraction
- Deploy on Cloud
Feel free to contact me on Twitter