信息收集
一、被动信息收集
收集公开渠道获得的信息,能够避免被目标系统发现和留下痕迹。
主要可利用的信息:
IP地址段:进一步收集数据
域名信息:进一步收集数据
邮件地址:社工与邮件服务器
人员姓名和职务:用户名与密码字典
网站模板:已知漏洞利用
其他信息:
文档图片数据、公司地址、组织架构、联系电话等。
1.1 信息收集-DNS
域名解析服务器的记录
域名 baidu.com
FQDN完全域名 www.baidu.com
A name :域名指向IPV4地址
AAAA:指向IPV6地址
C name:域名指向另一个域名实现同等访问效果
NS 指向某个域名服务器,可以指定此域名交给某个域名服务器进行解析
MX 指向邮件服务器,建设邮件服务
ptr记录:邮件地址解析时,IP指向域名,反向解析
1.2 NSLOOKUP
nslookup www.baidu.com
server:本地地址
Cname :可以对CName进行进一步nslookup,最终能得到下面的A记录
Name:即A类记录
address: A记录的IP地址
可以只查A记录 set type=a
同理 type=mx、ns等查询不同记录
type=any 8.8.8.8设置查询的域名服务器
1.3 DIG
dig @8.8.8.8 www.baidu.com
dig www.baidu.com any
question section:查询指令内容
answer section:返回结果
dig命令开头和结尾有很多内容一般可以忽略
其他命令
dig any 所有类型记录
dig +noall www.baidu.com 所有结果都不输出
dig +noall +answer www.baidu.com 只看answer
dig -x IP 反向查询ptr记录
dig +noall +answer txt chaos VERSION.BIND @8.8.8.8 查询DNS服务器(针对DNS服务器查询)bind版本(如果是使用bind搭建的话)
txt记录,chaos类,version.bind信息。
查询bind版本目的是判断旧版本是否有已知漏洞,可利用于获取全部解析记录等。除非DNS服务器关闭了bind版本信息查询。
dig +trace www.baidu,com 追踪DNS解析过程
这个命令会直接查询根域名服务器,不再经过本地DNS服务器。可用于判断是否有域名解析服务器被劫持。
1.4 DNS区域传输
如果沦陷域名服务器,获得其上的所有域名解析记录作为攻击范围。
区域传输:一个域内的DNS服务器之间通过区域传输互相同步信息。
如果配置错误,可能导致其他人参与区域传输,获得解析记录。
使用命令:
第一种:dig @ns1.example.com example.com axfr
指定一个域名服务器,下载这个域的所有解析记录,指定区域传输方式axfr(Request for full zone transfer)
知识点:DNS解析使用UDP,但域名服务器间区域传输使用TCP,都是53端口。
第二种:host -T -I baidu.com ns1.baidu.com
-l axfr区域传输查询 -T 显示时间
不过有这种问题的不多,配置正确就会被拒绝。
知识点:
man 命令 可查询一些命令的手册:man host
info 命令 也可以查询一些信息: info host
1.5 DNS字典爆破
如果区域传输没有问题,通过字典,组成随机域名,爆破尝试获取记录。
可用命令很多
fierce -dnsserver 8.8.8.8 -dns sina.com -wordlist a.txt
dnsdict6 -d4 -t 16 -x sina.com
dnsenum -f dnsbig.txt -dnsserver ns1.sina.com -o sina.xml
dnsmap sina.com -w dns.txt
dnsrecon -d sina.com --lifetime 10 -t brt -D dnsbig.txt
dnsrecon -t std -d sina.com
命令选一个用就可以,可以自己准备字典,有些工具有默认字典。
如fierce的完整命令为:
fierce -dnsserver ns1.sina.com -dns sina.com -wordlist /usr/share/fierce/hosts.txt
指定要爆破的域名服务器ns1.sina.com,由于不是通过区域传输进行查找,这里并不需要仅限于域内服务器,可以使用8.8.8.8等服务器。
指定域-dns sina.com
指定字典为默认hosts.txt路径
知识点:
如何查询一个软件包生成了哪些文件:用于查询所在目录
dpkg -L fierce
换一个命令
dnsdict6 -d4 -t 16 -x sina.com
-d4(查询IPV4记录)
-t 指定线程数
-x 指定是用什么规模的字典,也就是选择一个默认字典(可以使用-h查询信息)
-D 可以指定使用自定义字典
dnsdct6在kali2.0中不再集成,速度快一点,但无法指定域名服务器,导致不适用于内网环境下的测试。
dnsrecon -d sina.com --lifetime 10 -t brt -D /usr/share/dnsrecon/namelist.txt
-d 域
--lifetime 超时时间
-t brt 爆破行为
-D指定字典
1.7 DNS注册信息
whois
查询whois数据库,通过地区性whois服务器进行查询。
实际上可以直接在whois数据库网站上,以web方式访问和查询,命令简化了这一过程,降低了可视化体验。