网络空间搜索引擎- FOFA的使用技巧总结

网络空间搜索引擎- FOFA的使用技巧总结

简介

FOFA是一款网络空间测绘的搜索引擎,旨在帮助用户以搜索的方式查找公网上的互联网资产。

FOFA的查询方式类似于谷歌或百度,用户可以输入关键词来匹配包含该关键词的数据。不同的是,这些数据不仅包括像谷歌或百度一样的网页,还包括像安全设备,摄像头、打印机、数据库、操作系统,中间件等资产。

网络空间测绘可以被认为是网络空间的"MAP"。就像谷歌地图或高德地图通过卫星图像对地形进行测绘,网络空间测绘也是通过技术探针(爬虫)对全球网络资产进行探测。

然而,网络空间分为公网和内网。FOFA主要针对公网上的资产进行探测,类似于谷歌地图上的建筑物(IP地址),虽然可以看到建筑物的外部结构和规模,但无法了解内部的情况。要想知道内部情况必须经过授权才行。

FOFA的作用之一就是对企业所有暴露在公网的暴露面进行梳理,帮助企业最大程度上保护自己的互联网资产。

举例来说,就像病毒可以通过多种渠道侵入人体,企业设备也可能存在漏洞被黑客攻击。虽然企业可以通过防护措施减少暴露面,如戴口罩和防护服,但黑客仍然可能通过"小伤口"或"气溶胶"入侵企业内网。类似地,企业设备也可能存在多种暴露面,从而存在被黑客攻击的风险。

类比于医生检测疾病的方法,当漏洞出现时,企业可以快速检测自己的资产是否受影响,并及时采取措施防止漏洞被不法分子利用。这有助于企业保护自己的网络安全。

当然除了企业自己对自己的资产进行梳理和保护外,有一批叫做白帽子的团体也会通过FOFA进行漏洞挖掘。他们就像一个个猎手一样,当他们发现某个产品有通用型漏洞的时候,可以通过FOFA的搜索快速地收集到这个产品在全网的资产总量和地区分布,对漏洞影响范围进行判断,并帮助企业应对其网络安全的问题。

语法

直接参考官方的即可:这个地方建议直接官网查看,因为可能会有更新

https://fofa.info/

shell 复制代码
 直接输入查询语句,将从标题,html内容,http头信息,url字段中搜索

• title="abc" 从标题中搜索abc。例:标题中有北京的网站

• header="abc" 从http头中搜索abc。例:jboss服务器

• body="abc" 从html正文中搜索abc。例:正文包含Hacked by

• domain="qq.com" 搜索根域名带有qq.com的网站。例: 根域名是qq.com的网站

• host=".gov.cn" 从url中搜索.gov.cn,注意搜索要用host作为名称。例: 政府网站, 教育网站

• port="443" 查找对应443端口的资产。例: 查找对应443端口的资产

• ip="1.1.1.1" 从ip中搜索包含1.1.1.1的网站,注意搜索要用ip作为名称。例: 查询IP为220.181.111.1的网站; 如果想要查询网段,可以是: ip="220.181.111.1/24",例如查询IP为220.181.111.1的C网段资产

• protocol="https" 搜索指定协议类型(在开启端口扫描的情况下有效)。例: 查询https协议资产

• city="Hangzhou" 搜索指定城市的资产。例: 搜索指定城市的资产

• region="Zhejiang" 搜索指定行政区的资产。例: 搜索指定行政区的资产

• country="CN" 搜索指定国家(编码)的资产。例: 搜索指定国家(编码)的资产

• cert="google" 搜索证书(https或者imaps等)中带有google的资产。例: 搜索证书(https或者imaps等)中带有google的资产

• banner=users && protocol=ftp 搜索FTP协议中带有users文本的资产。例: 搜索FTP协议中带有users文本的资产

• type=service 搜索所有协议资产,支持subdomain和service两种。例: 搜索所有协议资产

• os=windows 搜索Windows资产。例: 搜索Windows资产

• server=="Microsoft-IIS/7.5" 搜索IIS 7.5服务器。例: 搜索IIS 7.5服务器

• app="海康威视-视频监控" 搜索海康威视设备,更多app规则。例: 搜索海康威视设备

• after="2017" && before="2017-10-01" 时间范围段搜索。例: 时间范围段搜索,注意: after是大于并且等于,before是小于,这里after="2017" 就是日期大于并且等于 2017-01-01 的数据,而 before="2017-10-01" 则是小于 2017-10-01 的数据

• asn="19551" 搜索指定asn的资产。例: 搜索指定asn的资产

• org="Amazon.com, Inc." 搜索指定org(组织)的资产。例: 搜索指定org(组织)的资产

• base_protocol="udp" 搜索指定udp协议的资产。例: 搜索指定udp协议的资产

• is_ipv6=true 搜索ipv6的资产,只接受true和false。例: 搜索ipv6的资产

• is_domain=true 搜索域名的资产,只接受true和false。例: 搜索域名的资产

• ip_ports="80,443" 或者 ports="80,443" 搜索同时开放80和443端口的ip资产(以ip为单位的资产数据)。例: 搜索同时开放80和443端口的ip

• ip_country="CN" 搜索中国的ip资产(以ip为单位的资产数据)。例: 搜索中国的ip资产

• ip_region="Zhejiang" 搜索指定行政区的ip资产(以ip为单位的资产数据)。例: 搜索指定行政区的资产

• ip_city="Hangzhou" 搜索指定城市的ip资产(以ip为单位的资产数据)。例: 搜索指定城市的资产

• ip_after="2019-01-01" 搜索2019-01-01以后的ip资产(以ip为单位的资产数据)。例: 搜索2019-01-01以后的ip资产

• ip_before="2019-01-01" 搜索2019-01-01以前的ip资产(以ip为单位的资产数据)。例: 搜索2019-01-01以前的ip资产

高级搜索:可以使用括号 和 && || !=等符号,如

title="powered by" && title!=discuz

title!="powered by" && body=discuz

( body="content="WordPress" || (header="X-Pingback" && header="/xmlrpc.php" && body="/wp-includes/") ) && host="gov.cn"

新增完全匹配的符号,可以加快搜索速度,比如查找qq.com所有host,可以是domain"qq.com"

相关搜索案例

搜索后台

bash 复制代码
title="后台管理"

 
 
 
 
 
 
  
* 1

 

从http头中搜索

bash 复制代码
header="weblogic"
header="apche"
header="nginx"
header="tomcat"

 
 
 
 
 
 
  
* 1

  
* 2

  
* 3

  
* 4

 

从html正文中搜索

bash 复制代码
body="注册"

 
 
 
 
 
 
  
* 1

 

从url中搜索关键字

bash 复制代码
host="jd.com"

 
 
 
 
 
 
  
* 1

 

搜索端口

bash 复制代码
port="7001"

 
 
 
 
 
 
  
* 1

 

搜索IP

bash 复制代码
ip="172.16.0.1"  从ip中搜索包含172.16.0.1的网站,注意搜索要用ip作为名称。
ip="172.16.0.1/8″
ip="172.16.0.1/16″
ip="172.16.0.1/24″ 

 
 
 
 
 
 
  
* 1

  
* 2

  
* 3

  
* 4

 

搜索指定协议类型

bash 复制代码
protocol="ftp"

 
 
 
 
 
 
  
* 1

 

搜索指定城市的资产

bash 复制代码
city="Chengdu"

 
 
 
 
 
 
  
* 1

 

搜索指定行政区的资产

bash 复制代码
region="MianYang"
特别注意:搜索城市时填写城市的全称,首字母必须大写!

 
 
 
 
 
 
  
* 1

  
* 2

 

搜索指定国家(编码)的资产

bash 复制代码
country="CN"

 
 
 
 
 
 
  
* 1

 

搜索证书中带有的资产

bash 复制代码
cert="google"

 
 
 
 
 
 
  
* 1

 

搜索操作系统类型

bash 复制代码
os="Linux".  搜索Linux资产

 
 
 
 
 
 
  
* 1

 

搜索服务器版本

bash 复制代码
server=="Microsoft-IIS/7.5" # 搜索IIS 7.5服务器。
server="Apache" # Apach的高危漏洞,通过搜索去统计Apache

 
 
 
 
 
 
  
* 1

  
* 2

 

搜索指定设备名称

bash 复制代码
app="海康威视-视频监控" #搜索海康威视设备

 
 
 
 
 
 
  
* 1

 

搜索中国的ip资产

bash 复制代码
ip_city="Chengdu"

 
 
 
 
 
 
  
* 1

 

以上搜索都可以通过相关的运算符进行结合使用:

如:

bash 复制代码
body="loading-wrap" && body="balls" && is_domain=true && cert.is_valid=true
# 这个的意思就是:
# body 里面包含loading-wrap且饱含balls
# 且有域名
# 且有证书
# 这样的资产就比较靠谱

FOFA规则集

资产都有特征,如:IP地址、域名、网站标题、网站图标等等,FOFA对这些特征进行组合和整理,形成了一个个规则指纹集。只需要在搜索框里面输入关键字,就能弹出来,然后点击就能直接搜索:



Feature ID

除此之外,FOFA还有一个很棒的引擎功能,叫做FID,全称为Feature ID。

对于一个网站来说,它会拥有很多自己的信息,我们给他建立一个档案(FID),把他的"性别"、"年龄"、"工作类型" 等信息放在档案(FID)里面。再通过这个档案去匹配所有具备这些相似特征的网站。

FOFA平台上的FID特征是FOFA自己聚合多个关键特征形成的标签,而不是网站原有的标签。

FID能帮你找到更多拥有相同特征的资产。

随便点击一个,就会收集到相同指纹的资产:

找真实IP

大概思路:

bash 复制代码
 title="京东",发现由很多IP地址访问网站,
 查看证书(024fxxxxxxxxxxxx
 证书转成10进制(3030723xxxxxxxxx)
 cert="3030723xxxxxxxxx"

 
 
 
 
 
 
  
* 1

  
* 2

  
* 3

  
* 4

 



转换:

搜索:

以上就是FOFA的一些使用技巧,后续还会继续更新!

相关推荐
java1234_小锋5 小时前
Elasticsearch是如何实现Master选举的?
大数据·elasticsearch·搜索引擎
.Ayang6 小时前
SSRF漏洞利用
网络·安全·web安全·网络安全·系统安全·网络攻击模型·安全架构
.Ayang6 小时前
SSRF 漏洞全解析(概述、攻击流程、危害、挖掘与相关函数)
安全·web安全·网络安全·系统安全·网络攻击模型·安全威胁分析·安全架构
AiFlutter7 小时前
Java实现简单的搜索引擎
java·搜索引擎·mybatis
风间琉璃""8 小时前
二进制与网络安全的关系
安全·机器学习·网络安全·逆向·二进制
Che_Che_9 小时前
Cross-Inlining Binary Function Similarity Detection
人工智能·网络安全·gnn·二进制相似度检测
恃宠而骄的佩奇10 小时前
i春秋-签到题
web安全·网络安全·蓝桥杯
follycat10 小时前
信息收集--CDN绕过
网络·安全·网络安全
梦幻通灵10 小时前
ES分词环境实战
大数据·elasticsearch·搜索引擎
Elastic 中国社区官方博客11 小时前
Elasticsearch 中的热点以及如何使用 AutoOps 解决它们
大数据·运维·elasticsearch·搜索引擎·全文检索