简介
- 渗透的本质是信息收集
- 信息收集也叫资产收集
- 信息收集是渗透测试的前期主要工作,是非常重要的环节,收集足够多的信息才能方便接下来的测试,信息收集主要是收集网站的域名信息,子域名信息,目标网站信息,目标网站真实IP,敏感/目录文件,开放端口和中间件信息等等。 通过各种渠道和手段尽可能收集到多的关于这个站点的信息,有助于我们更多的去找到渗透点,突破口。
信息收集的分类
- 服务器的相关信息(真实IP,系统类型,系统版本,开放端口,WAF等)
- 网站指纹识别(cms,cdn,证书,dns记录)
- whois信息,姓名,备案,邮箱,电话反查(邮箱丢社工库,社工准备等)
- 子域名收集,旁站,C段等
- Google hacking针对化搜索,word/电子表格/pdf文件,中间件版本,弱口令扫描等
- 扫描网站目录结构,爆后台,网站banner,测试文件,备份等敏感文件泄露等
- 传输协议,通用漏洞,exp,GitHub源码等
常见的方法
whois查询
域名在注册的时候,需要填入个人或者企业信息,如果没有设置隐藏属性则可以查询出来,通过备案号查询个人或者企业信息,也可以通过whois反查注册人,邮箱,电话,机构等, 反查出更多的域名和需要得到的信息。
收集子域名
域名分为根域名和子域名
baidu.com 根域名(也叫顶级域名)
www.baidu.com 子域名(也叫二级域名)
www.wiki.baidu.com 子域名(也叫三级域名)四级域名依次类推
端口扫描
服务器需要开放服务,就必须开启端口, 常见的端口是TCP和UDP两种类型,范围0-65535,通过扫描得到端口,访问服务,规划下一步渗透。
查找真实IP
企业的网站,为了提高访问速度,或者避免黑客攻击,用了cdn服务,用了cdn之后,真实服务器IP会被隐藏
探测旁站及C段
旁站:一个服务器上有多个网站, 通过IP查询服务器上的网站
C段:查找同一个IP段服务器上的网站, 可以找到同样网站的类型和服务器,也可以获取同段服务器进行下一步渗透
网络空间搜索引擎
通过这些网络空间搜索引擎查找网站或服务器的信息,进行下一步渗透
扫描敏感目录文件
通过扫描目录和文件,大致了解网站的结构,获取突破点,比如后台,文件备份,上传点等等。
指纹识别
获取网站的版本,属于那些cms管理系统,查找漏洞exp,下载cms进行代码审计
在线whois查询
通过whois对域名信息进行查询,可以查到注册商,注册人,邮箱,DNS解析服务器,注册人联系电话等。因为有些网站信息能查到,有些网站信息查不到,所以推荐以下信息比较全的查询网站,直接输入目标站点即可查询到相关信息。
-
站长之家域名whois信息查询地址http://whois.chinaz.com,还可以进行域名注册
-
爱站网域名whois信息查询地址https://whois.aizhan.com
-
-
腾讯云whois信息查询地址https://whois.cloud.tencent.com
-
美橙互联域名whois信息查询地址https://whois.cndns.com
-
爱名网域名whois信息查询地址https://www.22.cn/domain/
-
易名网域名whois信息查询地址https://whois.ename.net
-
中国万网域名WHOIS信息查询地址https://whois.aliyun.com/
-
西部数码域名WHOIS信息查询地址https://whois.west.cn/
-
新网域名WHOIS信息查询地址http://whois.xinnet.com
-
纳网域名WHOIS信息查询地址http://whois.nawang.cn/
-
中资源域名WHOIS信息查询地址https://www.zzy.cn/domain/whois.html
-
三五互联域名WHOIS信息查询地址https://cp.35.com/chinese/whois.php
-
新网互联域名WHOIS信息查询地址http://www.dns.com.cn/show/domain/whois/index.do
-
国外WHOIS信息查询地址https://who.is/
在线网站备案号查询
网站备案信息是根据国家法律法规规定,由网站所有者向国家有关部门申请的备案, 如果需要查询企业备案信息 (如单位名称,备案编号,网站负责人,电子邮箱,联系电话,法人等), 推荐以下网站查询
- 天眼查https://www.tianyancha.com/
- 爱站网备案查询https://icp.aizhan.com/
- 域名助手备案信息查询http://cha.fute.com/index,(ICP备案和whois信息都可以查)
通过备案号查询信息
- ICP备案查询网https://www.beianx.cn/
- 站长之家https://icp.chinaz.com
收集子域名
子域名作用
收集子域名可以扩大测试范围,同一域名下的二级域名都属于目标范围
常用方式
子域名中常见的类型一般包括办公系统,邮箱系统,论坛,商城,其他管理系统等, 网站管理后台也有可能出现在子域名中。
注:首先找到目标站点,在官网中可能会找到相关资产(多为办公系统,邮箱系统等),关注一下页面底部,也许有管理后台等收获。
查找目标域名信息的网站有:
- FOFA网络空间搜索引擎https://fofa.so/
- 百度
- 站长之家http://tool.chinaz.com/
- 钟馗之眼网络空间搜索引擎https://www.zoomeye.org/
域名的类型
A记录
- 是用来指定主机名(或域名)对应的IP地址记录。用户可以将该域名下的网站服务器指向自己的web server上。同时也可以设置为自己域名的二级域名
CNAME别名记录
- 也被称为规范名字。 这种记录允许您将多个名字映射到同一台计算机。 通常用于同时提供WWW和MAIL服务的计算机。 例如,有一台计算机名为 “host.mydomain.com”(A记录), 它同时提供WWW和MAIL服务, 为了便于用户访问服务。可以为该计算机设置两个别名(CNAME):WWW和MAIL。这两个别名的全称就是“www.mydomain.com”和“mail.mydomain.com”。实际上他们都指向“host.mydomain.com”。同样的方法可以用于当您拥有多个域名需要指向同一服务器IP,此时您就可以将一个域名做A记录指向服务器IP然后将其他的域名做别名到之前做A记录的域名上,那么当您的服务器IP地址变更时您就可以不必麻烦的一个一个域名更改指向了,只需要更改做A记录的那个域名,其他做别名的那些域名的指向也将自动更改到新的IP地址上了。(CNAME记录可用于将一个域名别名为另一个域名的DNS记录。)
如何检测CNAME记录
1、进入命令状态;(开始菜单 - 运行 - CMD[回车]);
2、输入命令" nslookup -qt=cname 这里填写对应的域名或二级域名",查看返回的结果与设置的是否一致即可。 (显现出来的IP为网关)
MX记录(Mail Exchanger)
- 是邮件交换记录,它指向一个邮件服务器,用于电子邮件系统发邮件时根据收件人的地址后缀来点位邮件服务器。
- 例如,当Internet上的某用户要发一封信给user@qq.com时,该用户的邮件系统通过DNS查找qq.com这个域名的MX记录,如果MX记录存在, 用户计算机就将邮件发送到MX记录所指定的邮件服务器上。
TXT记录
- txt记录一般指为某个主机名或域名设置的说明,如:
1)admin IN TXT "jack, mobile:13800138000";
2)mail IN TXT "邮件主机, 存放在xxx ,管理人:AAA",Jim IN TXT "contact: abc@mailserver.com"
也就是您可以设置 TXT ,以便使别人联系到您。
NS记录
- NS记录全称为Name Server,是一种域名服务器记录,用来明确当前你的域名时由哪个DNS服务器来进行解析的。
子域名在线查询
FOFA搜索子域名
FOFA网站https://fofa.so/
语法:
domain="baidu.com"
注:以上两种方法无需爆破,查询速度快,需要快速收集资产时可以优先使用,后面再用其他方法补充
dns侦测
360测绘空间
语法:
domain:"*.baidu.com"
使用工具来查找子域名
Layer子域名挖掘机(本地穷举)
SubDomainBrute
Sublist3r
OneForALL
Wydomain
FuzzDomain工具
隐藏域名,hosts碰撞
隐藏资产探测-hosts碰撞
-
很多时候访问目标资产IP响应多为:401、403、404、500,但是用域名请求却能返回正常的业务系统(禁止IP直接访问),因为这大多数都是需要绑定host才能正常请求访问的 (目前互联网公司基本的做法)(域名删除了A记录,但是反代的配置未更新),那么我们就可以通过收集到的目标的 域名 和 目标资产 的IP段组合起来,以 IP段+域名 的形式进行捆绑碰撞,就能发现很多有意思的东西。
-
在发送http请求的时候,对域名和IP列表进行配对,然后遍历发送请求 (就相当于修改了本地的hosts文件一样),并把相应的title和响应包大小拿回 来做对比,即可快速发现一些隐蔽的资产。
进行hosts碰撞需要目标的域名和目标的相关IP作为字典
域名就不说了
相关IP来源有:
目标域名历史解析IP
https://site.ip138.com/
https://ipchaxun.com/
ip正则
https://www.aicesu.cn/reg/
端口扫描
当确定了目标大概的IP段后, 可以先对IP的开放端口进行探测, 一些特定服务可以开起在默认的端口上,探测开放端口有利于快速收集目标资产,找到目标网站的其他功能站点
masscan端口扫描(kail自带)
masscan的具体用法,咱们下次细讲
御剑端口扫描工具 (应用程序)
御剑的具体使用方法,咱们下次细讲
nmap扫描端口和探测端口信息
nmap的具体使用方法,咱们下次细讲
在线端口检测
渗透端口
21,22,23,1433,152,3306,3389,5432,5900,50070,50030,50000,27017,27018,11211,9200,9300,7001,7002,6379,5984,873,443,8000-9090,80-89,80,10000,8888,8649,8083,8080,8089,9090,7778,7001,7002,6082,5984,4440,3312,3311,3128,2601,2604,2222,2082,2083,389,88,512,513,514,1025,111,1521,445,135,139,53
渗透常见端口及服务
web类(web漏洞/敏感目录)
第三方通用组件漏洞struts thinkphp jboss ganglia zabbix
80 web
80-89 web
8000-9090 web
数据库类(扫描弱口令)
1433 MSSQL
1521 Oracle
3306 MySQL
5432 PostgreSQL
特殊服务类(未授权/命令执行类/漏洞)
443 SSL心脏滴血
873 Rsync未授权
5984 CouchDB http://xxx:5984/_utils/
6379 redis未授权
7001,7002 WebLogic默认弱口令,反序列
9200,9300 elasticsearch 参考WooYun: 多玩某服务器ElasticSearch命令执行漏洞
11211 memcache未授权访问
27017,27018 Mongodb未授权访问
50000 SAP命令执行
50070,50030 hadoop默认端口未授权访问
常用端口类(扫描弱口令/端口爆破)
21 ftp
22 SSH
23 Telnet
2601,2604 zebra路由,默认密码zebra
3389 远程桌面
端口合计详情
21 ftp
22 SSH
23 Telnet
80 web
80-89 web
161 SNMP
389 LDAP
443 SSL心脏滴血以及一些web漏洞测试
445 SMB
512,513,514 Rexec
873 Rsync未授权
1025,111 NFS
1433 MSSQL
1521 Oracle:(iSqlPlus Port:5560,7778)
2082/2083 cpanel主机管理系统登陆 (国外用较多)
2222 DA虚拟主机管理系统登陆 (国外用较多)
2601,2604 zebra路由,默认密码zebra
3128 squid代理默认端口,如果没设置口令很可能就直接漫游内网了
3306 MySQL
3312/3311 kangle主机管理系统登陆
3389 远程桌面
4440 rundeck 参考WooYun: 借用新浪某服务成功漫游新浪内网
5432 PostgreSQL
5900 vnc
5984 CouchDB http://xxx:5984/_utils/
6082 varnish 参考WooYun: Varnish HTTP accelerator CLI 未授权访问易导致网站被直接篡改或者作为代理进入内网
6379 redis未授权
7001,7002 WebLogic默认弱口令,反序列
7778 Kloxo主机控制面板登录
8000-9090 都是一些常见的web端口,有些运维喜欢把管理后台开在这些非80的端口上
8080 tomcat/WDCP主机管理系统,默认弱口令
8080,8089,9090 JBOSS
8083 Vestacp主机管理系统 (国外用较多)
8649 ganglia
8888 amh/LuManager 主机管理系统默认端口
9200,9300 elasticsearch 参考WooYun: 多玩某服务器ElasticSearch命令执行漏洞
10000 Virtualmin/Webmin 服务器虚拟主机管理系统
11211 memcache未授权访问
27017,27018 Mongodb未授权访问
28017 mongodb统计页面
50000 SAP命令执行
50070,50030 hadoop默认端口未授权访问
常见端口和攻击方法
端口号 | 服务 | 攻击方法 |
---|---|---|
21/22/69 | ftp/tftp文件传输协议 | 爆破嗅探 溢出 ; 后门 |
22 | ssh远程连接 | 爆破OpenSSH;28个退格 |
23 | telnet远程连接 | 爆破嗅探 |
25 | smtp邮件服务 | 邮件伪造 |
53 | DNS域名系统 | DNS区域传输,DNS劫持 ,DNS缓存投毒, DNS欺骗, 深度利用 :利用DNS隧道技术刺透防火墙 |
67/68 | DHCP | 劫持欺骗 |
110 | pop3 | 爆破 |
139 | samba | 爆破未授权访问,远程代码执行 |
143 | imap | 爆破 |
161 | snmp | 爆破 |
389 | ldap | 注入攻击未授权访问 |
512/513/514 | linux r | 直接使用rlogin |
873 | rsync | 未授权访问 |
1080 | socket | 爆破: 进行内网渗透 |
1352 | lotus | 爆破: 弱口令信息泄漏:源代码 |
1433 | mssql | 爆破:使用系统用户登录注入攻击 |
1521 | oracle | 爆破: TNS注入攻击 |
2049 | nfs | 配置不当 |
2181 | zookeeper | 未授权访问 |
3306 | mysql | 爆破拒绝服务,注入 |
3389 | rdp | 爆破Shift后门 |
4848 | glassfish | 爆破:控制台弱口令认证绕过 |
5000 | sybase/DB2 | 爆破注入 |
5432 | postgresql | 缓冲区溢出注入攻击 爆破:弱口令 |
5632 | pcanywhere | 拒绝服务代码执行 |
5900 | vnc | 爆破:弱口令认证绕过 |
6379 | redis | 未授权访问爆破: 弱口令 |
7001 | weblogic | Java反序列化控制台弱口令 控制台部署webshell |
8069 | zabbix | 远程命令执行 |
8080-8090 | web | 常见web攻击控制台爆破 对应服务器版本漏洞 |
9090 | websphere控制台 | 爆破: 控制台弱口令Java反序列 |
9200/9300 | elasticsearch | 远程代码执行 |
11211 | memcacache | 未授权访问 |
27017 | mongodb | 爆破未授权访问 |