目标范围划定
信息收集
目标在线主机、域名信息、邮箱地址、常用密码、同网段信息、子域名信息、指纹信息、端口信息、文件信息等
大多借助搜索引擎、社工与基本扫描工具
Web网站需要目标主机的服务器操作系统、Web服务器类型、Web后端语言、数据库系统等
软件应用需要应用本身是否存在漏洞
目标发现
目标枚举
漏洞映射
判断目标可能存在哪些漏洞,需要搜索引擎搜索或者借助通用的漏洞扫描器(如Web漏洞扫描器WVS)
社工(可选)
漏洞利用
提权
持续控制目标(后门)
文档和报告
0. 信息搜集——Google Hack
常见用来搜集信息网站 :
http://searchdns.netcraft.com 子域名信息
http://www.shodanhq.com Shodan大数据搜索
http://www.yougetsignal.com/tools/web-sites-on-web-server/ 同IP网站反查
http://bgp.he.net/ IP信息扫描
http://builtwith.com/ 网站指纹信息
http://whois.chinaz.com/ WHOI查询
常见Google语句:
info:xx.com 返回基本信息
site:xx.com 返回所有与该网站有关的url
link:xx.com 返回所有与该网站做了链接的网站
site:xx.com filetype:txt 查找该网站所有TXT文件
site:xx.com intext:管理
site:xx.com inurl:login
site:xx.com intitle:后台
site:xx.com intext:*@xx.com 得到邮箱地址,邮件主人名字
site:xx.com intext:电话 得到电话信息
intitle:"index of" etc 可能存在的目录泄露信息
针对性漏洞利用:
Powered By XXX
社交搜索工具 Cree.py
针对国外Twitter等网站获取信息,不适用国内情况,类似还有twofi
theHarvester信息搜集工具
通过搜索引擎、PGP服务器以及SHODAN数据库收集用户的email、子域名、主机、雇员名、开放端口、banner等信息。类似还有metagoofil
Recon-NG 信息搜集工具
模块化编写,分为:侦查Reconnaissance、发现Discovery、汇报Reporting
show modules 列出所有模块
1. 目标获取
子域名枚举和DNS分析 : dnsmap、dnsenum、fierce、dnsdict6
- 使用Dig进行域名解析
dig www.xxx.com
- 使用Dig进行域传送漏洞测试
dig NS xxx.com
dig axfr @xxx.xxxx.xx xx.com
xxx.xxxx.xx为DNS服务器,如果存在区域传送漏洞则会列出该域名所有技能
2. 主机扫描
Nmap、图形化界面Zenmap、分布式框架Dnmap
主机探测、端口扫描、版本检测、系统检测
常见服务对应默认端口:
HTTP服务,80
HTTPS服务,443
Telnet,23
FTP,21
SSH、SCP、端口重定向,22
SMTP,25
POP3,110
WebLogic,7001
TOMCAT,8080
WIN2003,3389
Oracle,1521
MS SQL SERVER,1433
MySQL,3306
SYN扫描: 利用基本SYN扫描方式探测端口开放状态
nmap -sS -T4
FIN扫描:FIN扫描方式探测防火墙状态,用于识别端口是否关闭,收到RST回复说明端口关闭
nmap -sF -T4
ACK扫描:ACK判断端口是否被过滤,未被过滤的端口会回复RST包
nmap -sA -T4
扫描前不进行Ping扫描测试
nmap -Pn
3. 主机探测
识别目标主机是否可用,需要知道目标是否online等信息,由于IDS和IPS存在,在测试过程中还要考虑各种保护措施探测,如WAF等
netenum C段扫描
fping C段主机在线扫描
nbtscan 扫描内网,借助NetBIOS服务获取一定信息
arping arp扫描,探测MAC地址
Netdiscover 探测内网信息
dmitry 获取目标详细信息,包括whois、tcp port等
wafw00f WAF探测
lbd 检测机制基于DNS解析、HTTP头,从中找到服务器应答之间差异,可以帮助发现多个IP地址映射到单个域名,由此确定针对性测试如ddos范围
4. 指纹识别
- Banner抓取
curl -I http://www.baidu.com/
但很多网站会修改banner或者禁止输出banner信息,除了web服务器程序,很多ftp、smtp服务也会返回banner信息,可以使用telnet命令连接端口进行探测
Telnet
- 常规主动指纹识别
nmap、Xprobe2
nmap -Pn -sT -sV www.baidu.com -p80
- 被动指纹识别
pOf,不会向目标发送具体探测数据,只是被动的接收数据分析,一般无法被探查发现。在网络分析功能强大,可以用来分析NAT、负载均衡、应用代理等。
- WEB指纹识别
whatweb,可探测常见web服务、应用版本、CMS版本等信息,而针对具体的WEB CMS如wordpress,可使用WPScan等工具进行CMS指纹枚举,探知可能存在的插件、主题模板等信息
5. 协议分析
- SMB针对利用工具
acccheck:可使用用户名密码字典枚举尝试与目标IP/IP列表进行IPC$与Admin$的连接尝试
- SMTP协议分析
包括账户枚举工具smtp-user-enum与命令行下邮件发送测试工具swaks
- SNMP协议分析工具
braa、cisco-auditing-tool、cisco-torch、copy-router-config、merge-router-config、onesixtyone、snmpcheck
- SSL协议分析
sslscan,可扫描服务器SSL接受的加密方式、公钥等其他信息
sslstrip、ssldump等
- wireshark
6. 漏洞分析
OpenVAS:综合性漏洞扫描工具
WEB漏洞扫描器: Golismero、Nikto
系统信息扫描收集工具:Lynis、unix-privesc-check