Blackbird | An OSINT Tool To Search For Accounts By Username In 101 Social Networks

image

Blackbird

An OSINT tool to search fast for accounts by username across 116 sites.

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.

Disclaimer

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.

blackbird-cli

blackbird-web

Setup

Clone the repository

git clone https://github.com/p1ngul1n0/blackbird cd blackbird

Install requirements

pip install -r requirements.txt

Usage

Search by username

python blackbird.py -u username

Run WebServer

python blackbird.py --web

Access http://127.0.0.1:5000 on the browser

Read results file

python blackbird.py -f username.json

List supportted sites

python blackbird.py --list-sites

Metadata Extraction

When possible Blackbird will extract the user’s metadata, bringing data such as name, bio, location and profile picture.

blackbird-metadata

Supported Social Networks

Supersonic speed :rocket:

Blackbird sends async HTTP requests, allowing a lot more speed when discovering user accounts.

JSON Template

Blackbird uses JSON as a template to store and read data.

The data.json file store all sites that blackbird verify.

Params

  • 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 :point_right: 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

Examples

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” }

If you have any suggestion of a site to be included in the search, make a pull request following the template.

Planned features

  • Implement Flask Web Server to optimize UX
  • Export results in other formats (Excel/PDF/CSV)
  • Reach at least 300 sites until August 2022
  • Implement metadata extraction
  • Deploy on Cloud

Contact

Feel free to contact me on Twitter

GitHub:

3 Likes