MENU

Fofa命令行查询

July 25, 2021 • Read: 274 • 常山阅读设置

Fofa命令行查询

最近做python开发上瘾,写了很多用处不大的脚本,然后突然觉醒了写一个大工程的想法,于是为了熟悉Git操作和一些python的用法,先尝试开发了Fofa的API脚本。


之所以选择Fofa这个空间测绘,是因为作为红队一直需要使用各种网络空间测绘来做信息收集,但是Fofa只有网页版,而且Fofa的官方python包已经很早就不维护了,在最新的python3上无法运行,所有就萌生了写一个python脚本来请求Fofa的API获取相关的信息。

开发环境


使用了5个包:

  1. requests用来请求Fofa的官方API
  2. json用来读取Fofa返回的json数据
  3. argparse用来从命令行获取参数和发送的数据
  4. base64用来将发送的数据编码未base64
  5. prettytable用来将输出的json数据用格式化的表格显示出来

使用方法

  1. Github上下载解压
  2. 打开fofa_api.py,在第19和第20行输入Fofa的API所需要的鉴权邮箱和APIKEY
  3. python fofa_api.py -h可以查看使用方法
  4. python fofa_api.py --search 数据或者python fofa_api.py -S 数据可以查询所有可以查询的数据,并返回表格形式的格式化数据
  5. Fofa为了保证API调用的稳定性,建议每次最多查询100条信息,但是都是可以调整的,使用python fofa_api.py --search 数据 --szie 数量即可选择一次最多查询的数量,该数量受限于Fofa会员等级,普通会员是100条,高级会员是10000条
  6. 虽然可以查询大于100条的数据,但是Fofa每次最多只能返回100条数据,所以Fofa提供了页码功能,使用python fofa_api.py --search 数据 --szie 数量 --page 页码可以选择查询的页码,每一页100条数据
  7. python fofa_api.py --rule可以查询Fofa支持的语法
Last Modified: August 16, 2021
Archives QR Code Tip
QR Code for this page
Tipping QR Code