FOFA–网络空间资产搜索引擎
FOFA 是一个网络空间资产搜索引擎,用户可以通过其提供的查询语法对互联网上的网站、服务器、设备等进行搜索,FOFA 的查询语法支持多种过滤条件,允许用户精确查找目标。
网址:https://fofa.info/
1.FOFA基本语法结构
FOFA的基本语法结构为:
keyword1="value1" keyword2="value2"
2. 常用 FOFA 查询字段
| 字段 | 描述 | 示例 |
ip
| 搜索指定ip地址的资产 | ip = ‘127.0.0.0’ |
port
| 搜索指定端口开放的资产 | port = ‘443’ |
domain
| 搜索与指定域名相关的资产 | domain = ‘baidu.com’ |
title
| 搜索网页标题中包含指定关键词的资产 | title = ‘baidu’ |
header
| 搜索Http头部中包含指定关键词的资产 | header = ‘nginx’ |
body
| 搜索网页正文中包含指定关键词的资产 | body = ‘help’ |
protocol
| 搜索使用指定协议的资产 | protocol = ‘ssh’ |
country
| 搜索位于指定国家的资产 | country = ‘CN’ |
city
| 搜索位于指定城市的资产 | city = ‘Beijing’ |
status_code
| 搜索返回特定Http状态码的资产 | status_code = ‘200’ |
cert
| 搜索SSL证书中的域名或其他信息 | cert = ‘baidu.com’ |
asn
| 搜索属于指定自治系统编号(AS号)的资产 | asn = ‘AS4134’ #中国移动163 AS号:4134 #中国电信CN2 AS号: 4809 #中国网通AS号:9929 #中国联通AS号:9800 |
app
| 搜索使用指定软件或技术的资产(如Nginx、Apache等) | app = ‘Nginx’ |
os
| 搜索运行指定操作系统的资产 | os = ‘Windows’ |
3.FOFA语法大全
基础类别
标记类(Special Label)
协议类 (type=service)
网站类(type=subdomain)
地理位置(Location)
证书类
时间类(Last update time)
独立IP语法(独立IP系列语法,不可和上面其他语法共用)
4.逻辑运算符
逻辑运算符
1.“&&”(与运算)/ AND:例如,若想查查找ip为8.8.8.8且开放了80号端口,语句可以写成 ip="8.8.8.8" && port="80" 或者 ip="8.8.8.8" AND port="80" ,只有同时满足这两个条件的资源才会被检索出来。
2.“||”(或运算)/ OR:若想查找标题里含有 “音乐” 或者 “游戏” 的网页,语句可写成 title="音乐" || title="游戏" 或者 title="音乐" OR title="游戏",只要满足标题含 “音乐” 或者含 “游戏” 其中一个条件的网页都会被检索出来。
3.“!=”(不等于运算)/ NOT:比如想查找不是运行 Windows 操作系统的资源,语句就是 os!="Windows" 或者 os NOT= "Windows",会返回除了运行 Linux 操作系统之外的其他网络资源相关信息。
5. 模糊查询和通配符
模糊搜索是一种搜索技巧,用于在数据集中查找与查询词或关键字相似的结果。
模糊搜索可以帮助FOFA工程师更好地匹配和搜索关键词,使得搜索结果更加全面、准确。与精确搜索相比,模糊搜索更加灵活,可以处理各种不规则的输入,例如拼写错误、变体、缩写和语言差异等。
在FOFA平台中,使用通配符匹配功能就可以实现模糊搜索的效果,在搜索时,可以在关键词中使用通配符“*”和“?”来匹配不同的字符和字符串,以进行模糊搜索。
在FOFA上,模糊搜索是通过在*=后面添加通配符 * 或 ? 来实现的,但 *= 并不是通配符,仅仅是用来表示使用模糊搜索功能的符号。同时,通配符*和?代表着不同的意思:
*表示匹配的数量不受限制,可以用来代替 0 个、1 个或多个字符,例如,domain="*.com" 搜索所有以 .com 结尾的域名。
? 仅仅可替代 1 个字符。
FOFA帮助文档:https://github.com/FofaInfo/Awesome-FOFA/tree/main
6.总结
FOFA 是一款强大的网络空间搜索引擎,通过其灵活的查询语法,可以有效地发现和分析网络资产,熟练掌握 FOFA 语法,可以大大提高信息收集的效率,尤其在安全评估、渗透测试和漏洞排查中具有重要价值。
评论(0)
暂无评论