1 Web信息收集
1.1 Whois查询
whois.aliyun.com //阿里
www.whois365.com/cn/ //全球查
http://whois.chinaz.com //站长
http://whois.aizhan.com //爱站
1.2 子域名
(有关联,但可能关联不强)
工具:Layer和Sublist3r
谷歌语法:site:baidu.com -www就能查看除www外的子域名
网站:
http://tool.chinaz.com/subdomain //站长工具
https://phpinfo.me/domain //在线子域名爆破工具
Dnsdb:(https://dnsdb.io/zh-cn/)输入baidu.com type:A就能收集百度的子域名和ip了
其他Github工具:
neForAll:https://github.com/shmilylty/OneForAll
Sublist3r:https://github.com/aboul3la/Sublist3r
subDomainsBrute:https://github.com/lijiejie/subDomainsBrute
1.3 端口探测
(端口对应的是服务)
21>>FTP 22>>SSH 23>>Telnet 110>>POP3 1433>>sqlserver 3306>>Mysql 3389>>Mstsc 8080>>Tomcat/jboss 9090>>WebSphere
netstat -anbo 查看开放端口及对应进程,a查看所有连接和侦听端口,n以数字方式显示地址和端口号,b显示端口连接的程序,o显示关联id端口探测:
nmap -A -v -T4 192.168.1.1 // 查看开放端口
masscan -p80 192.168.1.1/24 --rate=10000 // 测试目标指定端口(https://github.com/robertdavidgraham/masscan)
其他工具
http://tool.chinaz.com/port // 站长工具 (不留痕迹)
masnmapscan:https://github.com/hellogoldsnakeman/masnmapscan-V1.0
御剑高速端口扫描工具
1.4 目录扫描
1、后台目录
(获取登录后台和敏感目录和根路径)
- Robots.txt;
- Google语法;
- 查看网站底部管理入口和版权信息;
- CMS指纹识别;
- Wapplyzer插件;
- 猜解常见后台路径;
- 爬行网站目录,Burpsuite爬行网站,AVWS爬行网站,AppScan 爬行网站
- 备份文件信息泄露(.xml、.bak、.sql、.txt、.swp等);
- 扫描工具
dirb
dirbuster
御剑,dirsearch的字典爆破
- 请求出错的页面
2、根路径
- 探针文件(遗留文件):phpinfo.php info.php Php.php I.php
- 报错获取:404 动态URL加特殊符号(单引号) 错误SQL
- 后台首页说明里获取
- IIS7--8.5:访问404
- Site:目标 warning|error
1.5 指纹识别
(识别cms)
(1) 潮汐指纹
(2) 查看数据包响应头
(3) CMS指纹识别:http://whatweb.bugscaner.com/look/
(4) 数字观星:https://fp.shuziguanxing.com/#/
工具:御剑cms ,大禹cms,hatweb
1.6 旁站和C段
旁站:一个IP(公网)上开了好几个站
C段:第三段IP地址
网站:
http://dns.aizhan.com
http://s.tool.chinaz.com/same
http://i.links.cn/sameip/
1.7 信息泄露
1) Google语法
2)搜索引擎
收录的是设备不是网页。
(1)FOFA资产收集
fofa.so的语法:
ip=”1.1.1.1” 搜索包含1.1.1.1的网站。
port=”8009” 搜索包含开放8009的网站。
domain=”qq.com” 域名
city=”Hangzhou” 城市
app=”phpmyadmin” 设备
server==”Microsoft-IIS/7.5” 服务器
联合符:&&
(2) shodan
Shodan使用搜索过滤:
· hostname:搜索指定的主机或域名,例如hostname:"google"
· port:搜索指定的端口或服务,例如port:"21"
· country:搜索指定的国家,例如country:"CN"
· city:搜索指定的城市,例如city:"Hefei"
· org:搜索指定的组织或公司,例如org:"google"
(3)其他引擎
ZoomEye
VT(virustotal)
BinaryEdge
3)敏感文件
工具:dirsearch
.hg源码泄漏
成因:hg init的时候会生成.hg
工具:https://github.com/kost/dvcs-ripper
.git源码泄漏
成因:在运行git init初始化代码库的时候,会在当前目录下面产生一个.git的隐藏文件,用来记录代码的变更记录等等。
工具:GitHack,dvcs-ripper
.DS_Store文件泄漏
工具:https://github.com/lijiejie/ds_store_exp
4)资产查询
(1)备案查询:
xyz123.com
https://www.tianyancha.com/ 天眼查
http://www.beian.miit.gov.cn/publish/query/indexFirst.action 工信部
信息
http://www.gsxt.gov.cn/index.html
APP
https://www.qimai.cn/ 七脉数据,通过当前APP查询同开发商应用,得到目标所有APP应用
https://www.apple.com/ios/app-store/
2 信息收集补充
信息收集分为被动型收集和主动型收集。
2.1 IP寻找
1)Ping 检测CDN
直接ping
https://wepcc.com/
http://www.17ce.com
http:/ping.chinaz.com/
2)寻找真实IP
https://tools.ipip.net/newping.php
http://www.ab173.com/dns/dns_world.php
(1)查询子域名:毕竟 CDN 还是不便宜的,所以很多站长可能只会对主站或者流量大的子站点做CDN。
(2)查询主域名:以前用CDN的时候有个习惯,只让WWW域名使用cdn,秃域名不适用,为的是在维护网站时更方便,不用等cdn缓存。
(3)邮件服务器:一般的邮件系统都在内部,没有经过CDN的解析,通过目标网站用户注册或者RSS订阅功能,查看邮件,寻找邮件头中的邮件服务器域名IP,ping这个邮件服务器的域名,就可以获得目标的真实IP。
(4)查看域名历史解析记录:也许目标很久之前没有使用CDN,所以可能会存在使用 CDN 前的记录。所以可以通过网站https://www.netcraft.com 来观察域名的IP历史记录。
(5)国外访问:国内的CDN往往只对国内用户的访问加速,而国外的CDN就不一定了。因此,通过国外在线代理网站https://asm.ca.com/en/ping.php 访问 ,可能会得到真实的ip地址。
(6)Nslookup查询:查询域名的NS记录、MX记录、TXT记录等很有可能指向的是真实ip或同C段服务器。
3)IP历史记录
http://www.cdnplanet.com/tools/cdnfinder/
DNS查询:https://dnsdb.io/zh-cn/
4)IP反查
https://dnslytics.com/
1.2 信息分类
服务器信息
-
- 操作系统:windows,linux
ping探测,Windows的TTL值都是一般是128,Linux则是64。所以大于100的肯定是Windows。
Windows大小写不敏感,Linux大小写敏感。当index.php和index.phP打开的一样就说明是Windows.
-
- 服务器类型与版本:IIS,Apache,nginx,tomcat
- 中间组件:Tomcat、Weblogic、Jboss
- 脚本类型:Asp,php,jsp,aspx等
- 数据库类型:mysql,mssql,oracle等
- Cms类型:Dedecms(织梦),Discuz,PHPcms,Worspress等。
- Waf:阿里云,安全狗,腾讯云,D盾等。
- 端口与服务
1.3 主动信息收集
注意主动收集难免留下痕迹,使用代理或肉鸡来消除自己的嫌疑。
原理:通过发送不同的包来探测,分析结果。二层(ARP)三层(ICMP)四层(TCP、UDP)
-
- Arping
arping 1.1.1.1 -c 1
arping 1.1.1.1 -d
arping -c 1 1.1.1.1 | grep "bytes from" | cut -d" " -f 5 | cut -d "(" -f 2 | cut -d")" -f 1
arping [-AbDfhqUV] [-c count] [-w deadline] [-s source] [-I interface ] <destination>
-
- Fping
fping -a 只显示存活主机;
fping -g ip/24 >1.txt 与nmap -iL 1.txt -sS 结合
fping 1.1.1.1 -c 1
fping -g 1.1.1.1 1.1.1.2
fping -g 1.1.1.0/24
fping -f iplist.txt
-
- Hping3
主机发现
hping3 IP -a <伪造IP> <目的IP> #发ICMP包
Hping3 IP --icmp -c 4 #改变c进行压力测试
hping3 IP --udp -c 1
hping3 IP -c 1 (TCP)
hping3 -c 1000 -d 120 -s -w 64 -p 80 --flood --rand-source [domain]
洪水攻击(s:syn标志位)
hping3 -I eth0 -a<伪造IP> -S <目的IP> -p 80 -i u1000 DDOS攻击
for addr in $(seq 1 254): do hping3 192.168.1.$addr --icmp -c 2 >>2.txt & done
for addr in $(seq 1 254); do hping3 –udp 1.1.1.$addr -c 1 >> r.txt; done
端口扫描
hping3 1.1.1.1 --scan 80 -S
hping3 1.1.1.1 --scan 80,21,25,443 -S
hping3 1.1.1.1 --scan 0-65535 -S
hping3 -c 10 -S --spoof 1.1.1.2 -p ++1 1.1.1.3
3 Kali工具
3.1 DNS扫描
DNS反射攻击:发源地址为目标地址,构造dns服务器生成响应方式的包
缓存投毒:用虚假Internet地址替换掉域名系统表中的地址
DNS劫持:在劫持的网络范围内拦截域名解析的请求
域名劫持:劫持的网络范围内拦截域名解析的请求
DDoS攻击
A记录:即地址资源记录,记录一个主机的IP地址;
MX记录:邮件服务器资源记录,记录一个域的邮件服务器的域名;
NS记录:即名字服务器资源记录,记录一个域的权威域名服务器的域名;
CNAME记录,即规范名称(Canonical Name)资源记录,记录一个主机的标准名称。
1)Dig
dig <域名> any
dig -t a/mx <域名> noall answer #进行查询并简单显示信息
dig <域名> nssearch
dig <域名> trace # DNS追踪,做递归查询
dig @<DNS服务器> <域名> axfr #查询其备用DNS服务器。
可以使用 8.8.8.8 Google Public DNS 进行查询
dig @8.8.8.8 <域名>
2)Dnsenum
dnsenum -enum <域名> {查看A,MS,MX信息}
-r {启用递归查询}
--threads [num] {设置线程数}
-f <file> {制定字典爆破}
-noserver {无反向查询}
-w {允许用户进行whois请求}
3)Dnsmap
dnsmap <target-domain> [options]
-w <指定字典>
-r <保存文件>
-c <保存为csv>
-d <delay-millisecs>
-i <ips-to-ignore> <忽略的IP>
4)Fierce
fierce -dns <域名> (可加字典)
5)其他
Dnswalk、Dnsrecon、Dnsrnum、Dnsrecon、Dnstracer
【IPV6】Dnsdict6、Dnsrevenum6
3.2 Web信息收集
1)Dirsearch
执行./dirsearch.py -u 10.0.3.45 -e php
-e 指定网站语言
-w 可以加上自己的字典(带上路径)
-r 递归跑(查到一个目录后,在目录后在重复跑,很慢,不建议用)
--random-agents 使用代理(代理目录在uesr-agents.txt中,可以自己添加)
db目录是自带的字典,reports目录是你所有爬过的网站
2)Whatweb
常规扫描 whatweb 域名
批量扫描 whatweb -I /root/target.txt
详细回显扫描whatweb -v 域名
扫描强度等级控制whatweb -a 等级 域名 #可以和-v参数结合使用
快速本地扫描whatweb --no-errors -t 255内网网段 可以和-a和-v参数结合
将扫描结果导入到文件内whatweb www.baidu.com --log-xml=baidu.xml 将结果导入到baidu.xml文件中
3)Curl
curl -I <域名> #显示http response的头信息
curl --trace output.txt <域名> #查看更详细的通信过程
4)Wafw00f
wafw00f <ip/domain> 测防火墙类型
4)Wpscan
(扫描wordpress)
Wpscan --url <域名>
Wpscan –u <域名>/wordpress/ --enumerate [选项]
t #目标站点主题、插件和用户名信息
vt #主题中的漏洞
p #插件扫描
vp #插件中的漏洞
wpscan -u <IP> -e u vp #列出用户名列表
wpscan -u <IP> -e u --wordlist /root/wordlist.txt #爆破用户密码
5)Dmitry
(查询IP或域名的WHOIS信息)
dmitry -wnpb <域名>
-o 保存到指定的问件
-i 对IP进行whois查询
-w 对域名进行whois查询
-p 扫描TCP端口
-s 查询合理的子域
6)P0f
P0f -r file -o result.log(file是wireshark捕获的一个pcap文件)
7)Netdiscover
netdiscover [-i device] [-r range | -l file | -p] [-s time] [-n node] [-c count] [-f] [-S][-P][-C]
-l: 扫描范围列表文件 -p:被动模式(不发送数据包)
-s:每个arp包间隔 -f:主动模式 -n:使用八字节的形式扫描
netdiscover -i eth0 -r 1.1.1.0/24
netdiscover -l iplist.txt
netdiscover -p
8)Nbtscan
(扫描器)
nbtscan -f IP 扫描单个IP地址并显示完整的NBT资源记录响应
nbtscan -n IP 扫描一系列IP地址,而不进行反向名称查找
nbtscan -r IP 扫描一系列IP地址
nbtscan -hv IP 查看具体IP信息
9)onesixtyone
onesixtyone 1.1.1.1 public
onesixtyone -c dict.txt -i hosts -o my.log -w 100
10)snmpwalk
snmpwalk 192.168.20.199 -c public -v 2c
snmpwalk -c public -v 2c 1.1.1.1 1.3.6.1.4.1.77.1.2.25
snmpcheck -t 192.168.20.199
snmpcheck -t 192.168.20.199 -c private -v 2
snmpcheck -t 192.168.20.199 -w
安全交流群:687398569