渗透测试信息收集
整理了一些信息收集的技巧,对挖洞会有很多帮助。希望师傅们有更多更好的技巧补充到评论处,我会加到文章中的。
一、收集域名信息:
知道目标的域名之后,我们要做的第一件事就是获取域名的注册信息,包括该域名的DNS服务器信息和注册人的联系信息等。域名信息收集的常用方法为以下几种:
1.1 Whois查询:
可以使用kali中的whois命令: 比如#whois www.baidu.com
在线Whois查询网站有:爱站(https://whois.aizhan.com),站长之家(https://whois.chinaz.com)等,通过这些网站可以查询域名的相关信息,如域名拥有者,域名服务商,以及他们的电话,邮箱,地址等。
1.2 备案信息查询:
若是网站搭建在国内,则会按照法律法规对网站进行备案
天眼查:http://www.tianyancha.com
ICP备案查询网:http://www.beianbeian.com
备份信息
二、收集敏感信息:
2.1 Goolge语法:
- site: 指定域名
- inurl:URL中存在关键字的网页
- intitle:网页标题中的关键字
- Filetype:指定文件类型
- link:baidu.com表示返回所有和baidu.com做了链接的URL
-
Intext:网页正文中的关键字
尝试搜索一些学校的后台:
google hack
不仅可以使用Google搜索引擎,这种搜索思路还可以用在百度,雅虎,Bing,Shodan等搜索引擎上。利用Google搜索可以很轻松获取到我们想要的信息,还可以用它来收集数据库文件、SQL注入、配置信息、源代码泄露、未授权访问、和robots.txt等敏感信息。
用burpsuit中repeater功能来收集服务器信息:
burpsuit信息
可以尝试在Github上寻找相关敏感信息,如数据库连接信息等等。
三、收集子域名信息
3.1 子域名检测工具
Layer子域名挖掘机
subDomainsBrute
需要python2环境
命令:python subDomainsbrute,py xxx.com
子域名爆破
在线网站检测
https://phpinfo.me/domain/](https://phpinfo.me/domain/)
在线检测
3.2 搜索引擎搜索
利用Google语法搜索
site:xxx.com
搜索引擎
3.3 第三方聚合应用枚举
DNSdumpster:https://dnsdumpster.com
DNSdumper
四、收集常用端口信息
工具有Nmap、Masscan、ZMap、御剑等
端口扫描
下边将列举一些端口漏洞
文件共享服务端口:
- 21/22/69 -》Ftp/Tftp文件传输协议 -》匿名上传、下载、爆破、嗅探
- 2049 -》Nfs服务 -》配置不当
- 139 -》samba服务 -》爆破、未授权访问 、远程代码执行
- 389 -》Ldap 目录访问协议 -》注入、允许匿名访问、弱口令
远程连接服务端口:
- 22 -》SSH远程连接 -》爆破、SSH隧道及内网代理转发 -》文件传输
- 23 -》Telnet远程连接 - 》嗅探、爆破、弱口令
- 3389 -》Rdp远程桌面连接 -》shift后门(需要windows sever 2003 以下的系统)、爆破
- 5900 -》vnc -》弱口令爆破
- 5632 -》PyAnyphere -》抓密码、代码执行
web应用服务端口:
- 80/443/8080 -》常见的Web服务端口-》web攻击、爆破、对应服务器版本漏洞
- 7001/7002 -》weblog ic控制台 -》java反序列化、弱口令
- 8080 -》Jboss/Resin/Jetty/Jenkins -》反序列化、控制台弱口令
- 9090 -》WebSphere控制台 -》Java反序列化、弱口令
- 4848 -》GlassFish控制台 -》弱口令
- 1352 -》Lotus domino 邮件服务 -》弱口令、信息泄露、爆破
- 10000 -》Webmin-Web控制面板 -》弱口令
数据库服务端口:
- 3306 -》MySQL -》注入、提权、爆破
- 1433 -》MSSQL -》注入、提权、SA弱口令、爆破
- 1521 -》Oracle -》TNS爆破、注入、反弹shell
- 5432 -》PostgreSQL -》爆破、注入、弱口令
- 27017/27018 -》MongoDB -》爆破、未授权访问
- 6379 -》redis -》未授权访问、弱口令爆破
- 5000 -》SysBase/DB2 -》爆破、注入
邮件服务端口:
- 25 -》SMTP邮件服务 -》邮件伪造
- 110 -》POP3协议 -》爆破、嗅探
- 143 -》IMAP协议 -》爆破
网络常见协议端口:
- 53 -》DNS域名系统 -》允许区域传送、DNS劫持、缓存投毒、欺骗
- 67/68 -》DHCP服务 -》劫持、欺骗
- 161 -》SNMP协议 -》爆破、搜集目标内网信息
特殊服务端口
- 2181 -》Zookeeper服务 -》未授权访问
- 8069 -》Zabbix服务 -》远程代码执行、SQL注入
- 9200/9300 -》Elasticsearch服务-》远程代码执行
- 11211 -》Memcache服务-》未授权访问
- 512/513/514 -》Linux Rexec服务-》爆破、Rlogin登录
- 873 -》Rsync服务-》匿名访问、文件上传
- 3690 -》Svn服务 -》Svn泄露、未授权访问
- 50000 -》SAP Management Console -》远程代码执行
五、指纹识别
在渗透测试过程中,对目标服务器进行指纹识别是相当有必要的,因为只有识别出相应的Web容器或者CMS,才能查找其相应的漏洞,然后才能进行相应的渗透,常见的CMS有Dedecms(织梦)、Discuz、PHPWEB、PHPWind、PHPCMS、ECShop、Dvbbs、SiteWeaver、ASPCMS、帝国、Z-Blog、WordPress等。
- 工具:御剑Web指纹识别、WhatWeb、WebRobo、椰树、轻量web指纹识别等
- 手工识别CMS可以参考大佬文章:https://www.freebuf.com/news/137497.html
- 在线网站CMS识别:
BugScaner: http://whatweb.bugscaner.com/look/
云悉指纹:http://www.yunsee.cn/finger.html
WhatWeb: https://whatweb.net/
六:查找真实IP:
- 目标服务器存在CDN
如果渗透目标购买了CDN服务,可以直接ping目标的域名,得到的是离我们最近的一台目标节点的CDN服务器
-判断目标是否使用了CDN
ping主域来查看域名解析情况
ping 探测
在线网站多地ping,判断IP是否一致,若不一致则查看IP归属地,判断是否存在CDN
https://www.17ce.com
多地在线ping探测 - 绕过CDN寻找真实IP
在确认目标存在CDN以后,就需要绕过CDN寻找目标的真实IP,下面介绍一些常规的方法: - 内部邮箱源。一般邮件系统都在内部,没有经过CDN的解析,通过目标网站用户注册或者RSS订阅功能,查看邮件、寻找邮件头中的邮箱服务器域名IP,ping这个邮件服务器的域名,就可以或者目标的真实IP。
- 扫描网站测试文件,如phpinfo,test等,从而找到目标的真实IP。
- 分站域名,很多网站主站的访问量很大,所以主站很有可能挂CDN,但是分站可能没有挂CDN,可以ping分站域名获取IP,可能会出现和主站不是同一个IP,但在同一个C段的情况
- 国外访问。国内的CDN往往只对国内用户的访问加速
访问https://asm.ca.com/en/ping.php,可能会获取到真是IP
国外探测 - 查询域名的解析记录,也许目标很久以前没有用过CDN。
https://www.netcraft.com
域名解析记录 - 如果目标网站有自己的APP,可以尝试利用burpsuit抓取APP的请求,从里边找到目标的真实IP
七、收集敏感目录文件
DirBuster、御剑后台扫描珍藏版、wwwscan、Spinder.py、Sensitivefilescan、Weakfilescan
八、社会工程学
......