FOFA SDK 使用说明
简介
基于 FOFA API 编写的 python 版 SDK, 方便 python 开发者快速将 FOFA 集成到自己的项目中。
FOFA 命令行工具
基于FOFA python SDK实现的简单命令行工具,用于简单的FOFA数据查询
安装
pip install fofa-py
用法
显示所有支持的命令
fofa
设置fofa api key
通过环境变量设置认证信息
| 环境变量Key | Value |
|---|---|
FOFA_EMAIL |
用户登陆 FOFA 使用的 Email |
FOFA_KEY |
前往 个人中心 查看 API Key |
search
搜索子命令,从fofa搜索数据,
搜索数据
搜索数据并展示结果
fofa search domain=bing.com --size 1000 -f ip,port,domain,title,certs_match,certs_expired
统计搜索结果数量
fofa search domain=bing.com --count
382128
查询聚合信息
fofa search domain=bing.com -f port,domain,protocol,title --stats --size 10
保存结果数据
保存结果数据为csv或xls格式,示例:
# 保存数据为csv文件
fofa search domain=bing.com -f ip,port,domain,link,title,certs_match,certs_expired --size 50000 --save bing.csv
# 搜索证书匹配的数据
fofa search 'domain="bing.com" && cert.is_match=true' -f ip,port,domain,link,title,certs_match,certs_expired --size 50000 --save bing_cert_expired.xls
host
查看一个域名或ip的host信息,示例
fofa host www.bing.com
{
"asn": 59067,
"category": [
"其他企业应用"
],
"consumed_fpoint": 0,
"country_code": "CN",
"country_name": "China",
"domain": [
"tuzhiji.com",
"61.129.255.240:8080"
],
"error": false,
"host": "www.bing.com",
"ip": "202.89.233.101",
"org": "Microsoft Mobile Alliance Internet Services Co., Ltd",
"port": [
443,
80,
8080
],
"product": [
"Microsoft-RSA-TLS-CA",
"Microsoft-RSA-TLS-CA-02"
],
"protocol": [
"https",
"http"
],
"required_fpoints": 0,
"update_time": "2023-06-27 08:00:00"
}
代码使用sdk
# -*- coding: utf-8 -*-
import fofa
if __name__ == "__main__":
email, key = ('test@test.com', 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx') # 输入email和key
client = fofa.Client(email, key) # 将email和key传入fofa.Client类进行初始化和验证,并得到一个fofa client对象
query_str = 'header="thinkphp" || header="think_template"'
for page in range(1, 51): # 从第1页查到第50页
fpoint = client.get_userinfo()["fofa_point"] # 查询F点剩余数量
if fpoint < 100:
break # 当F点小于100时,不再获取数据
data = client.search(query_str, size=100, page=page, fields="ip,city") # 查询第page页数据的ip和城市
for ip, city in data["results"]:
print "%s,%s" % (ip, city) # 打印出每条数据的ip和城市
协议
FOFA SDK 遵循 MIT 协议,查看 协议文件
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
FOFA-py-2.0.3.tar.gz
(10.4 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
FOFA_py-2.0.3-py3-none-any.whl
(12.2 kB
view details)
File details
Details for the file FOFA-py-2.0.3.tar.gz.
File metadata
- Download URL: FOFA-py-2.0.3.tar.gz
- Upload date:
- Size: 10.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/4.0.2 CPython/3.7.17
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a7d7848ae291bd569d8e0f6f4126bade76212a21a5eb7d1133ef1f7ed9508210
|
|
| MD5 |
ef80e51667eaa07ad74ecb5961cb9c9e
|
|
| BLAKE2b-256 |
ab5c51476a7a116c2e54f5e3e26aabc3d295fd9eda757a49ba807569e778a12e
|
File details
Details for the file FOFA_py-2.0.3-py3-none-any.whl.
File metadata
- Download URL: FOFA_py-2.0.3-py3-none-any.whl
- Upload date:
- Size: 12.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/4.0.2 CPython/3.7.17
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ac349b754b477cec25b79d6372e5f806465a8e961934078979c44a695eca4a6
|
|
| MD5 |
4e2a4448c8b97aca72ab38d268469e9a
|
|
| BLAKE2b-256 |
80844d777f41376f6867fed74620d44a178b0a6bb8ed3e3e1711a02bc620dc20
|