渗透测试之信息收集

一、DNS

1、A记录

  • ping nslookup
  • dig 域名
  • dig -t a baidu.com

2、NS记录(DNS服务器)

  • dig -t NS 域名

3、MX记录(邮件服务器)

  • dig -t MX baidu.com

4、CNAME记录(别名)

  • dig -t CNAME baidu.com

5、whois查询(域名信息查询)

whois.chinaz.com
whois.iana.org
www.arin.net
who.is
centralops.net
www.17ce.com

二、子域名

1、爆破

  • dnsmap baidu.com -w 字典dnsmap默认字典 /usr/share/dnsmap/wordlist_TLAs.txt
  • fuzzDomain 工具
  • Layer子域名挖掘机

2、搜索引擎

  • google hacker 语法
    site:baidu.com

3、kali下:

  • theharvester
    proxychains theharvester -d baidu.com -b all
    proxychains 加代理
  • AQUATONE工具
    发现 proxychains aquatone-discover -d 域名 -t 10(线程)
    扫描 proxychains aquatone-scan-d 域名 -t 10(线程)
    收集 proxychains aquatone-gather -d 域名 -t 10(线程)

4、域传送

1
fierce -dns  baidu.com   (域名有DNS服务器才能用)

5、在线网站

www.virustotal.com
dnsdumpster.com
phpinfo.me

三、C段

1、Namp扫描

Nmap-扫描C段主机存活

1
2
3
4
Nmap -sn -PE -n 192.168.1.1/24 -oX out.xml
-sn不扫描端口
-PE ICMP扫描
-n不进行dns解析

Nmap-定向端口扫描

1
2
3
Nmap -sS -Pn -p 3389 ip
扫描方式:半开放扫描
-Pn 不进行主机存活探测

Nmap-全端口扫描

1
2
Nmap -sS -Pn -p 1-65535 -n ip
扫描方式:半开放扫描

Nmap-服务扫描

1
2
3
Nmap -sS -sV -p 1-65535 -n ip
扫描方式:半开放扫描
显示出端口开发的服务

2、Masscan

Masscan-安装

1
2
3
4
5
sudo apt-get install git gcc make libpcap-dev(安装必备环境,kali已经默认安装完成)
git clone
https://github.com/robertdavidgraham/masscan
cd masscan
make(编译)

Masscan-使用

1
2
3
4
5
6
7
8
9
10
Masscan -p 80  192.168.1.1/24  --rate 1000  -oL  output.txt
-p设置端口
--rate发包速率
-oL输出位置
为了绕过扫描特定ip,可以添加-excludefile
Masscan-p 80 ip --excludefile special.txt
自定多种格式输出
-oX输出xml
-oJ输出json格式
-oL输出简单列表

Masscan-注意问题

1
2
扫描选项中必须添加端口-p、--ports 1-65535
目标主机是IP地址,不是域名

Masscan-总结

1
2
3
Masscan==namp-sS-Pn-n-randomize-hosts-send-eth
速率:可以执行最高300、000个数据包每秒
注册账号能找到服务器地址

四、web目录扫描

1、robots.txt文件

https://baidu.com/robots.txt

2、搜索引擎

site: baidu.com

3、爆破

  • dirb (kali下)

  • ddirb https://baidu.com

    爆破一DIRB

    参数:

    • 设置User-Agent
    • -b不扫描./或者./
    • -c设置Cookie
    • -E设置证书文件
    • -o outfile_file保存扫描文件
  • dirbuster(kali下) (不推荐,已经停止更新)

4、御剑后台扫描(自行下载)

五、 指纹

1、指纹识别

1
2
nmap -sS -Pn -O ip
nmap -sS -sV ip

2、中间件指纹识别

1
2
3
方法一: 通过http返回消息中提取server字段
方法二: nmap -sS -Pn -sV ip
方法三: 构造错误界面返回信息查看中间件

3、web程序指纹识别

  • 开发语言
1
2
3
4
URL 后缀名识别  .asp  .php   .jsp
抓包,查看与后台交互点
http返回消息头 x-Powered-By
cookie可以识别, PHPSESSION -->PHP JSPSESSION --> JSP ASPSESSIONIDAASTCACQ -->ASP
  • 开发框架
1
2
3
4
5
6
7
php的thinkphp框架识别方法特定ico图标
Action后缀 90%几率struts2或者webwork
do后缀 50%几率spring mvc
url路径/action/xxx70%几率struts2
form后缀 60%几率spring mvc
Vm后缀 90%几率VelocityViewServlet
jsf后缀 99%几率Java Server Faces
  • 第三方组件
1
2
3
4
一般包括流量统计、文件编辑器、模板引擎
识别方法:一般目录扫描
FCKeditor
CKEditor
  • CMS程序
1
2
3
4
特定文件夹
dede/、admin/admin_Login.aspx
Powered by***
网站favicon图标
  • 数据库
1
2
3
常规判断,asp->sql server,php->mysql,jsp-oracle
网站错误信息
端口服务,1443->sql server,3306->mysql,oracal->1521
  • 在线探测
1
2
wappalyzer插件
云悉: http://www.yunsee.cn

4、防火墙指纹识别

1
2
3
4
nmap -p 80   域名  --script http-waf-fingerprint
sqlmap -u 360.cn --identify-waf
wafw00f工具 https://github.com/EnableSecurity/wafw00f
python setup.py install 或者 pip install wafw00f

六、GoogleHacking

1、语法

1
2
3
4
5
6
7
+ 强制搜索其后的一个单词
- 把某个字忽略
~ 同意词
. 单一的通配符
* 通配符,可代表多个字母
" " 精确查询
"|"或"OR" 只要符合多个关键字中的任意一个的结果予以显示

2、基本用法

1
2
3
4
5
6
7
8
9
10
intext:key 搜索网页带有关键字的页面
allintext:key 功能与intext,但是可以接多个关键字
intitle:key 搜索网页标题中是否有所输入的文字
allintitle:key 功能与intext,可以接多个关键字,但不能与别的关键字连用
cache:url 查看指定URL快照
filetype: 搜索指定类型文件
info: 搜索输入URL的摘要信息和其他相关信息,不能与其他关键词混用
inurl: 搜索输入字符是否存在于URL中,可以与site结合找后台
site: 搜索特定网站或者子域名
related:URL 搜索与该URL相关的页面

3、高级用法

1
2
3
4
5
6
site: 特定网站搜索,可以寻找子域名、域名、端口
site: URL filetype:doc 搜索与该域名相关的doc文件
site: URL filetype:doc 搜索与该域名相关的doc文件
site: URL intitle: 登录搜索与该域名相关联关键词的网页
site: URL inurl:/login 搜索与该域名相关URL的网页
site:36.110.213.* C段快速探测

Google hacking语法收集网站 https://www.exploit-db.com/google-hacking-database/us

七、网络空间搜索引擎

1
shodan:www.shodan.io

1、基本语法

1
2
3
4
5
6
7
8
9
10
11
hostname:"360.cn" 主机名
port:23 搜索端口
net:192.168.1.0/24 CIDR格式的IP地址
city:"San Diego" 城市
product:"Apache httpd”
version:"2.6.1” 软件版本
os:“Windows7" 操作系统
country:"CN” 国家简写
org:"google” 组织
isp:"China Telecom" ISP服务商
geo:"38.4681,106.2731”

2、基本使用

1
2
3
4
搜索开放80端口的主机 port:80
搜索开放80端口的主机,并且服务器是nginx port:80 product:"nginx”
C段探测 net:ip/24
搜索favicon:http.favicon.hash:-395680774 这里搜索的是标题栏的图标

3、其他

钟馗之眼 http://www.zoomeye.org
fafo http://www.zoomeye.org