渗透测试之信息收集
免责声明:使用本教程或工具,用户必须遵守所有适用的法律和法规,并且用户应自行承担所有风险和责任。
文章目录
1. 基础信息收集
- ICP备案查询:收集公司备案号,网站信息,APP,小程序等。
icp备案支持由公司名查询其备案号,网站等,是查询根域名,网站,app,小程序的手段之一
- 企业资产查询:收集法定代表人,网站信息,资产信息,子公司等等
可以查到代表人邮箱联系方式,子公司,扩大攻击面
- Whois查询:收集域名注册信息,包括所有者、联系方式、注册商等。
拿到根域名进行whois查询,得到注册信息,注册人,邮箱等,根据注册人,邮箱反查更多的注册域名
- 域名信息收集:包括根域名和子域名,使用在线工具或工具如Layer子域名挖掘机、SubDomainsBrute。或者爱站,站长之家,企查查,天眼查等,还可以使用IP反查手段。
ping现有域名或者nslookup得到IP,站长,微步IP反查查询子域名解析;
站长,爱站查询子域名,SSL查询
搜索引擎domain:"",site:"",inurl:""
hunter、FOFA、shodan
爆破工具:Layer,oneforall,mitan
相关网站的友链
- 个人信息收集:邮箱,电话,qq,微信,手机号,工号,学号,身份证号,部门
网站信息泄露:通知公告,附件文件,前端页面,
JS文件泄露:可用findsomething插件
社交媒体泄露:抖音,快手,视频号
社工收集
可用于社工钓鱼,可用于制作账号密码字典
2. 网络资产发现
- 端口扫描:使用Nmap、Masscan等工具识别目标系统开放的端口和服务。
- 查找真实IP:通过各种技术如超级ping,nslookup绕过CDN,查找目标服务器的真实IP地址。
- 探测旁站及C段:发现同一服务器或IP段上的其他网站,使用在线工具或网络空间搜索引擎如FOFA、Shodan。
- 搜索引擎:使用inurl、site、domain等查找更多资产
- 威胁情报平台:可以做基础信息收集也可以做网络资产发现及网站应用信息
3. 网站和应用信息
- DNS信息收集:查询DNS记录,了解域名解析细节。
- 敏感目录探测:使用御剑、Dirbuster等工具尝试发现敏感目录和文件。
- 文件泄露搜索:查找可能泄露的敏感文件,如
.htaccess
、php.ini
、源代码等。 - API接口探测:识别并分析网站和应用程序的API接口。
4. 技术栈识别
- 指纹识别:使用Whatweb,Wallyper等工具识别网站的CMS、框架、服务器、数据库等技术栈。
- Waf探测:探测网站是否有WAF保护,使用Wafw00f等工具。
5. 安全漏洞和配置
- 漏洞信息收集:查询CVE、Exploit Database等数据库,收集目标系统可能存在的已知漏洞。
- 服务版本识别:通过服务的banner信息识别服务版本,寻找已知漏洞。
6. 移动应用分析
- 移动应用分析:分析目标组织的移动应用,寻找后端服务和API的敏感信息。
- 小程序分析:同上,还可以测试逻辑漏洞,信息泄露等
7.Google语法
Google 语法 | 用途说明 | 示例 |
---|---|---|
site: | 限制搜索结果在特定网站或域名下 | site:example.com |
intitle: | 搜索页面标题中包含特定关键词的网页 | intitle:登录 site:example.com |
inurl: | 搜索 URL 中包含特定关键词的网页 | inurl:admin |
filetype: | 搜索特定类型的文件,如 pdf、doc、xls 等 | filetype:pdf site:example.com |
“关键词” | 精确匹配搜索关键词 | "confidential file" |
-关键词 | 排除包含特定关键词的搜索结果 | site:example.com -login |
cache: | 查看 Google 缓存的网页 | cache:example.com |
related: | 搜索与某站点类似的站点 | related:example.com |
allintitle: | 搜索页面标题包含多个关键词的网页 | allintitle:admin login |
allinurl: | 搜索 URL 中包含多个关键词的网页 | allinurl:admin login |
info: | 查看某个网站的相关信息 | info:example.com |
define: | 查询特定术语的定义 | define:sql injection |
site: + inurl: | 在特定网站中查找 URL 中包含指定关键词的页面 | site:example.com inurl:login |
site: + intitle: | 在特定网站中查找标题中包含指定关键词的页面 | site:example.com intitle:admin |
AROUND(X) | 搜索相隔不超过 X 个词的关键词 | "username" AROUND(5) "password" |
***** | 用作通配符,匹配任意数量的单词 | "admin * panel" |
link: | 搜索链接到指定网址的网页 | link:example.com |
intext: | 搜索网页内容中包含特定关键词的页面 | intext:"confidential" |
location: | 限制搜索结果在特定地理位置 | location:China |
“关键词1” OR “关键词2” | 关键词逻辑 OR 搜索,搜索包含关键词1或关键词2 的网页 | "admin" OR "login" |
intitle:index.of | 搜索网站目录结构,可用于查找开放目录 | intitle:"index of /" |
site: + filetype: | 搜索特定站点下的指定文件类型,如 pdf、xls、docx 等 | site:example.com filetype:pdf |
site: + ext: | 搜索特定站点下的指定文件扩展名(与 filetype 类似) | site:example.com ext:xls |
常见Google使用场景
- 查找开放的管理员登录页面:
site:example.com inurl:admin
- 查找网站中的文件或敏感信息:
site:example.com filetype:pdf "confidential"
- 探测公开目录:
intitle:"index of /" "backup"
- 查找特定技术版本的站点:
intitle:"powered by WordPress" "version 4.9"
- 查找含特定敏感关键词的页面:
intext:"password" site:example.com
- 寻找同类网站:
related:example.com
8.FOFA 语法
FOFA 语法 | 说明 | 示例 |
---|---|---|
domain=“example.com” | 查找指定域名的所有相关资产 | domain="example.com" |
ip=“192.168.0.1” | 查找指定 IP 的相关资产 | ip="192.168.0.1" |
host=“example.com” | 查找指定主机名的资产 | host="example.com" |
title=“关键词” | 搜索页面标题中包含关键词的资产 | title="login" |
header=“关键词” | 搜索 HTTP 头部包含指定关键词的资产 | header="nginx" |
body=“关键词” | 搜索网页内容包含指定关键词的资产 | body="admin" |
protocol=“协议” | 搜索特定协议的资产 | protocol="ftp" |
port=“端口号” | 搜索开放特定端口的资产 | port="22" |
os=“操作系统” | 搜索运行特定操作系统的资产 | os="windows" |
banner=“关键词” | 搜索服务返回的 banner 包含关键词的资产 | banner="OpenSSH" |
status_code=状态码 | 搜索返回特定 HTTP 状态码的资产 | status_code=200 |
country=“国家代码” | 搜索特定国家的资产 | country="CN" |
city=“城市名” | 搜索特定城市的资产 | city="Beijing" |
cert=“证书关键词” | 搜索包含指定证书信息的资产 | cert="Let's Encrypt" |
after=“日期” | 搜索指定日期后的资产(YYYY-MM-DD 格式) | after="2023-01-01" |
before=“日期” | 搜索指定日期前的资产(YYYY-MM-DD 格式) | before="2023-12-31" |
is_domain=true | 搜索包含域名的资产 | is_domain=true |
app=“应用名” | 搜索特定应用的资产 | app="Apache" |
asn=“ASN号” | 搜索属于特定 ASN 的资产 | asn="AS15169" |
常见 FOFA 使用场景
- 查找开放的 RDP 服务:
protocol="rdp" port="3389"
- 查找某企业的所有子域名:
domain="example.com"
- 查找运行特定操作系统的服务器:
os="linux" port="22"
- 查找特定证书签发的 HTTPS 资产:
cert="DigiCert"
- 查找特定标题的 Web 应用:
title="admin panel"
9.Hunter 语法
Hunter 语法 | 说明 | 示例 |
---|---|---|
domain=“example.com” | 查找指定域名的相关资产 | domain="example.com" |
ip=“192.168.0.1” | 查找指定 IP 的资产 | ip="192.168.0.1" |
title=“关键词” | 搜索页面标题中包含指定关键词的资产 | title="登录" |
status_code=状态码 | 搜索返回指定 HTTP 状态码的资产 | status_code=200 |
port=“端口号” | 搜索开放特定端口的资产 | port="80" |
country=“国家代码” | 搜索位于指定国家的资产 | country="US" |
city=“城市名” | 搜索位于指定城市的资产 | city="San Francisco" |
protocol=“协议” | 搜索特定协议的资产 | protocol="https" |
app=“应用名” | 搜索使用特定应用的资产 | app="nginx" |
after=“日期” | 搜索指定日期后的资产 | after="2024-01-01" |
before=“日期” | 搜索指定日期前的资产 | before="2024-12-31" |
product=“产品名” | 搜索使用指定产品的资产 | product="WordPress" |
web_title=“网页标题” | 搜索网页标题中包含指定关键词的资产 | web_title="控制台" |
company=“公司名” | 搜索特定公司相关的资产 | company="ABC Corp" |
isp=“运营商名” | 搜索特定运营商的资产 | isp="China Telecom" |
常见 Hunter 使用场景
- 查找企业的所有资产:
domain="example.com"
- 查找开放的 MySQL 服务:
port="3306" app="mysql"
- 查找指定标题的登录页面:
title="user login"
- 查找特定协议的资产:
protocol="ftp" status_code=220
- 查询特定城市的服务器:
city="New York" port="80"
10.常见端口、服务及其渗透用途
端口 | 服务 | 渗透用途 |
---|---|---|
tcp 20, 21 | FTP | 允许匿名上传下载,暴力破解,嗅探,Windows 提权,远程执行(ProFTPD 1.3.5),后门(ProFTPD、vsFTP 2.3.4) |
tcp 22 | SSH | 尝试暴力破解,v1 版本可中间人攻击,SSH 隧道、内网代理转发、文件传输等 |
tcp 23 | Telnet | 暴力破解,嗅探,路由器或交换机登录,可尝试弱口令 |
tcp 25 | SMTP | 邮件伪造,VRFY/EXPN 查询邮件用户信息,使用 smtp-user-enum 工具批量查询 |
tcp/udp 53 | DNS | 允许区域传送,DNS 劫持,缓存投毒,欺骗,DNS 隧道远控 |
tcp/udp 69 | TFTP | 尝试下载目标重要配置文件 |
tcp 80, 89, 443, 8440-8450, 8080, 8089 | 各类 Web 服务端口 | 尝试经典漏洞(如 TopN、VPN、OWA、WebMail、目标 OA)、Web 中间件漏洞、Web 框架漏洞等 |
tcp 110 | POP3 | 暴力破解,嗅探 |
tcp 111, 2049 | NFS | 权限配置不当 |
tcp 137, 139, 445 | Samba | 爆破,SMB 远程执行漏洞(如 MS08-067、MS17-010),嗅探 |
tcp 143 | IMAP | 暴力破解 |
udp 161 | SNMP | 爆破默认社区字符串,收集内网信息 |
tcp 389 | LDAP | LDAP 注入,允许匿名访问,弱口令 |
tcp 512, 513, 514 | Linux rexec | 暴力破解,rlogin 登录 |
tcp 873 | Rsync | 匿名访问,文件上传 |
tcp 1194 | OpenVPN | 钓取 VPN 账号,进入内网 |
tcp 1352 | Lotus | 弱口令,信息泄露,暴力破解 |
tcp 1433 | SQL Server | SQL 注入,提权,SA 弱口令,暴力破解 |
tcp 1521 | Oracle | TNS 爆破,SQL 注入,弹 Shell |
tcp 1500 | ISPmanager | 弱口令 |
tcp 1723 | PPTP | 暴力破解,钓取 VPN 账号,进入内网 |
tcp 2082, 2083 | cPanel | 弱口令 |
tcp 2181 | ZooKeeper | 未授权访问 |
tcp 2601, 2604 | Zebra | 默认密码 <font style="color:rgb(6, 6, 7);">zebra</font> |
tcp 3128 | Squid | 弱口令 |
tcp 3312, 3311 | Kangle | 弱口令 |
tcp 3306 | MySQL | SQL 注入,提权,暴力破解 |
tcp 3389 | Windows RDP | SHIFT 后门(03 系统以下),暴力破解,MS12-020 漏洞 |
tcp 3690 | SVN | SVN 泄露,未授权访问 |
tcp 4848 | GlassFish | 弱口令 |
tcp 5000 | Sybase/DB2 | 暴力破解,SQL 注入 |
tcp 5432 | PostgreSQL | 暴力破解,SQL 注入,弱口令 |
tcp 5900, 5901, 5902 | VNC | 弱口令暴力破解 |
tcp 5984 | CouchDB | 未授权访问导致任意指令执行 |
tcp 6379 | Redis | 未授权访问,弱口令暴力破解 |
tcp 7001, 7002 | WebLogic | Java 反序列化,弱口令 |
tcp 7778 | Kloxo | 主机面板登录 |
tcp 8000 | Ajenti | 弱口令 |
tcp 8009 | Tomcat AJP | Tomcat-AJP 协议漏洞 |
tcp 8443 | Plesk | 弱口令 |
tcp 8069 | Zabbix | 远程执行,SQL 注入 |
tcp 8080, 8089 | Jenkins, JBoss | 反序列化,控制台弱口令 |
tcp 9080, 9081, 9090 | WebSphere | Java 反序列化,弱口令 |
tcp 9200, 9300 | ElasticSearch | 远程执行 |
tcp 11211 | Memcached | 未授权访问 |
tcp 27017, 27018 | MongoDB | 暴力破解,未授权访问 |
tcp 50070, 50030 | Hadoop | 默认端口未授权访问 |
11.工具网址
文章原创,欢迎转载,请注明文章出处
原文地址:https://blog.csdn.net/weixin_72986003/article/details/144462154
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!