信息收集也叫做资产收集。信息收集是渗透测试的前期主要工作,是非常重要的环节,收集足够多的信息才能方便接下来的测试,信息收集主要是收集网站的域名信息、子域名信息、目标网站信息、目标网站真实IP、敏感/目录文件、开放端口和中间件信息等等。通过各种渠道和手段尽可能收集到多的关于这个站点的信息,有助于我们更多的去找到渗透点,突破口。
为什么要做信息收集?
一、信息收集概览
渗透测试的流程:
- 确定目标
- 信息收集
- 漏洞扫描
- 漏洞利用
- 形成报告
信息收集包括的内容:域名信息、IP段、开放的端口、网站架构、文件目录结构、软件版本、WAF、旁站、C段…
分类:
- 域名相关信息
- IP相关信息
- 端口服务相关信息
- 指纹识别
- Goole Hacking
- 目录信息
- Git Hack
二、域名信息收集
很多时候我们渗透的目标是一个WEB系统的网址
1、域名是什么
域名(Domain Name)
例如 baidu.com代替百度服务器的IP 百度(花钱注册)
2、域名的分类
域名与IP
3、域名联系人信息
- 所属人、邮箱、电话、地址…
whois查询
whois
.com由域名运营商VeriSign管理
cn域名由CNNIC管理
whois工具
https://whois.chinaz.com
https://whoissoft.com
https://whois.cnnic.cn/WelcomeServlet
kali whois命令
域名反查
http://whois.chinaz.com/reverse
ICP备案查询
备案流程
企业信息查询
4、子域名信息
子域名的作用?
百度搜索 www.baidu.com
百度新闻、百度新闻、百度贴吧、百度文库
怎么查子域名?
- 字典猜解
- 枚举
5、域名解析信息
域名与IP
域名解析信息
- 注册商
- 注册日期
- 到期日期
- 域名状态
- DNS服务器
记录类型
三、IP信息收集
1、DNS服务器的类型
DNS解析流程
2、ping / nslookup
PING(Packet Internet Groper因特网包探索器)
3、IP归属
http://ipwhois.cnnic.net.cn/
nslookup -type="MX"baidu.com
4、如何获取CDN背后真实IP
CDN(Content Delivery Network 内容分发网络)
没有CDN
使用CDN服务
常见到的CDN服务商:
- CloudFlare/CloudFront… 帝联/蓝汛/网宿/七牛云/腾讯/百度/阿里云…
如何找出真实IP
如何获取CDN背后的真实IP
- 超级ping
- 历史DNS
- 通过子域名查询IP
- 国外主机解析
- 其他,比如邮件、SSL证书、手机App抓包、网络空间搜索引擎等
四、端口服务信息
1、端口扫描思路和代码实现
查看本机端口信息
Windows
netstat-aon|findstr 3306
Linux
netstart-an|grep3306
远程机器端口
telnet 192.168.142.137 80
wget 192.168.142.137 80
nc-vz 192.168.142.137 445
2、常见端口及漏洞
分类
-
文件共享服务
-
远程连接服务
-
Web应用服务
-
数据库服务
-
邮件服务
-
网络常见协议
-
特殊服务端口
3、端口扫描工具
Nmap(Network Mapper)
https://nmap.org/
-
扫描主机(Host Discovery)
-
扫描端口(Port Scanning)
-
探测操作系统、软件版本(Operating System Detection、Version Detection)
参数类型
nmap --help -
Target Specification:目标,对什么进行扫描,比如是域名、IP或者网络
-
Host Discovery:主机发现,怎么对主机进行扫描,比如简单扫描,还是全部扫一遍,或者用相应的协议扫
-
Scan Techniques:扫描技术,协议的设置
-
Port Specification And Scan Order:端口和扫描顺序设置
-
Service/Version Detection:服务和版本识别
-
Script Scan:使用脚本,nmap本身内置了大量的lua脚本,而且还可以自己编写脚本
-
OS Detection:操作系统识别
-
Timing And Performance:时间和性能设置,比如扫描频率、重试次数等等
-
Firewall/IDS Evasion And Spoofing:防火墙绕过和欺骗,比如使用代理,假IP等
-
Output:把扫描接出输出到文件
-
Misc:启用IPv6等等配置
脚本
nmap本身内置了大量的lua脚本,而且还可以自己编写脚本
ls/usr/share/nmp/scripts/|wc-|
全部清单:https://nmap.org/nsedoc/index.html
例如:
- nmap 192.168.142.137 --script http-enum 列举HTTP服务
- nmap --script=auth绕过鉴权
- nmap --script=brute 暴力破解
- nmap --script=vul 扫描漏洞
常用参数
-
简单扫描 nmap -sP 192.168.142.137
-
指定端口或范围扫描:nmap -p0-65535 192.168.142.137
-
探测操作系统:nmap -O 192.168.142.137
-
只进行主机发现,不进行端口扫描 :nmap -sn 192.168.40.195
Zenmap
- 第一种:Intense scan
- 第二种:Intense scan plus UDP
- 第三种:Intense scan,all TCP ports
- 第四种:Intense scan,no ping
- 第五种:Ping scan
- 第六种:Quick scan
- 第七种:Quickscan plus
- 第八种:Quick traceroute
- 第九种:Regular scan
- 第十种:Slow comprehensive sca
其他扫描工具
在线扫描
- http://coolaf.com/tool/port
- masscan、
- nbtscan……