洛克希德SR-71“黑鸟”是一款由美国航空航天公司洛克希德公司研制和生产的高空高速战略侦察机,航程远,速度可达3马赫以上。
本程序及其先前版本仅供教育用途。未经许可不得使用。
通常的免责声明同样适用,尤其是我(P1ngul1n0)不对因直接或间接使用这些程序提供的信息或功能而造成的任何损失负责。
作者或任何互联网提供商对这些程序或其任何衍生品的内容或滥用不承担任何责任。使用这些程序即表示您接受:因使用这些程序造成的任何损失(数据丢失、系统崩溃、系统入侵等)均非P1ngul1n0的责任。
git clone https://github.com/p1ngul1n0/blackbird
cd blackbird
pip install -r requirements.txt
python blackbird.py -u username
python blackbird.py --web
在浏览器中访问 http://127.0.0.1:9797
python blackbird.py -f username.json
python blackbird.py --list-sites
python blackbird.py -u crash --proxy http://127.0.0.1:8080
默认只显示已找到的账户,但您可以使用以下参数查看所有结果。
python blackbird.py -u crash --show-all
Blackbird 也可以使用 Docker 运行。
docker pull p1ngul1n0/blackbird:v2
docker run -p 9797:9797 p1ngul1n0/blackbird:v2 "--web"
结果可以导出为PDF报告。
blackbird-pdf-cover
如果可能,Blackbird 将提取用户的元数据,包括姓名、简介、位置和头像等信息。
Blackbird 在每次请求中使用来自 1000 个 UserAgent 列表 的随机 UserAgent,以防止被屏蔽。
Blackbird 发送异步 HTTP 请求,从而大大提高了发现用户账户的速度。
data.json 文件存储了 blackbird 验证的所有网站。
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
{
"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')"
}
]
}
我感谢所有改进项目并修复错误的贡献者。
enumerate 和代码拆分。欢迎通过 Twitter 与我联系
如果您对要包含在搜索中的网站有任何建议,请按照模板提交拉取请求。