渗透测试——信息收集
渗透测试第一步就是对目标的信息收集,如果收集的足够全面,拿到权限轻而易举。
下面是对目前我掌握到的信息收集流程的记录。
1.收集域名及域名信息
当拿到目标的信息时,可能只是某个公司名字。可以通过天眼查,企查查,顺企查,有时钉钉也是搜索企业信息的好帮手,总之就是一通搜索,除非没网站的,基本都能拿到域名。拿到域名后,可以通过whois查询,ICP备案查询网,站长工具,获取IP、法人的名字,电话,邮箱,地址等,这些都要记录下来,这对社工攻击很有帮助。
2.敏感信息收集
拿到域名,ip后可以通过360空间测绘,ZoomEye,fofa等查询网站可能存在的漏洞。GooGle搜索语法利用好了也是一款信息收集利器。对网站框架的信息收集可以用Wappalyzer插件,burp抓包也可以获取一些服务器信息。
3.子域名信息收集
3.1子域名检测工具。本人用的是Layer子域名挖掘机,非常方便,如果网站的域名是www.aabb.com,就将aabb.com放进去,通过暴力枚举就可以扫描子域名了。常见的有 mail.aabb.com,smtp.aabb.com,有时子域名可以直接找到后台,有一次在做信息收集时,某公司的后台就是admin.aabb.com。
3.2 Google语法也可以搜索子域名例如“site:baidu.com"就是搜索百度旗下的子域名。
3.3 证书透明度公开日志枚举。 一个SSL/TLS证书通常包括域名,子域名和邮件,最简单的就是使用搜索网站,例如 crt.sh
4.端口信息收集
端口信息收集是很重要的一个过程,通过查看开放端口,可以知道开放了扫描服务,以此来找到对应的漏洞,常见端口有
类型 | 端口 | 服务 |
文件共享 | 21/22/69 | FTP文件传输 |
139 | Samba服务 | |
389 | Ldap目录访问协议 | |
2049 | Nfs服务 | |
远程连接 | 22 | SSH |
23 | Telnet | |
3389 | Rdp远程桌面连接 | |
5632 | PyAnywhere | |
5900 | VNC | |
Web应用服务 | 80/443/8080 | Web服务端口 |
1352 | 邮件服务 | |
4848 | GlassFish控制台 | |
7001/7002 | WebLogic控制台 | |
8888 | 宝塔控制台 | |
9090 | WebSphere控制台 | |
10000 | Webmin-Web控制台 | |
数据库 | 1433 | MSSQL |
1521 | Oracle | |
3306 | MySQL | |
5000 | SysBase | |
5432 | PostgreSQL | |
6379 | Redis | |
27017/27018 | MongoDB | |
邮件服务 | 25 | SMTP |
110 | POP3 | |
143 | IMAP | |
网络协议 | 53 | DNS |
67/68 | DHCP | |
161 | SNMP | |
特殊服务端口 | 512/513/514 | Linux Rexec |
873 | Rsync | |
2181 | Zookeeper | |
3690 | Svn | |
8069 | Zabbix | |
9200/9300 | Elasticsearch | |
11211 | Memcache | |
50000 | SAP |
最常用的端口扫描工具就是nmap了,nmap的各种命令也是可以学习的一个点。
5.指纹识别
这里不是人的指纹,而是网站的特征码,比如wordpress在robots.txt中会包含wp-admin,就可以直接用wp-login找到登录页面,找到对应的CMS指纹就可以针对性的寻找漏洞,工具有御剑Web指纹识别,轻量Web指纹识别,还有一些在线网站 云悉指纹,WhatWeb。
6.寻找真实IP
在上面的过程中可能已经能找到IP了,但不一定是真实的,可能经过了CDN(内容分发网络),可以通过站长工具的多地ping来判断。绕过CDN可以尝试访问子站查看子站的ip或者从国外访问都可能会得到真实的IP,
7 目录扫描
常用的工具有御剑后台扫描、dirb,这是最常见的找到登录页面的方法。
8 社会工程信息收集
当找到登录页面后,用户名和密码很可能与个人信息有关,可以从招聘网站,脉脉,钉钉(实在头疼可以动用某库)。
这是对最近学习的一些总结,以后还会对内容进行丰富和完善。仅供学习,请勿非法使用。
***************************转载请注明出处,尊重原创!***************************