文章目录
1. 渗透测试基本流程
(1)确定目标;
(2)信息收集;
(3)漏洞探测:自动/手动;
(4)漏洞分析;
(5)漏洞利用:自动/手动;
(6)信息整理;
(7)形成报告;
2. 信息收集
- 概念:通过各种方式获取所需要的信息,以便后续渗透测试过程更好进行。比如目标站点IP、中间件、脚本语言、端口、邮箱等。包含资产收集但不限于资产收集。
- 分类:主动收集,通过直接访问网站在网站上进行操作、对网站进行扫描;被动收集:基于公开的渠道,如搜索引擎,在不与目标系统直接交互的情况下获取信息,尽量避免留下痕迹;
- 收集哪些信息:WAF指web应用防火墙;
3. 域名信息收集
-
域名信息收集–whois: whois用来查询域名的ip以及所有者等信息的传输协议。通过whois查询可以获得注册者邮箱地址等信息。
web接口:http://whois.chinaz.com/
命令行查询:whois baidu.com
-
域名信息收集–备案信息: whois用来查询域名的ip以及所有者等信息的传输协议。通过whois查询可以获得注册者邮箱地址等信息。
web接口:http://icp.chinaz.com/
-
域名信息收集–子域名收集
搜索引擎收集:site:hetianlab.com(谷歌语法)
第三方网站:http://tool.chinaz.com/subdomain/
网络空间安全搜索引擎:https://fofa.info/
ssl证书查询:https://crt.sh/
js文件发现子域名:https://github.com/Threezh1/JSFinder/
子域名工具:子域名挖掘机(爆破工具),OneForAll(需要配api),Subdomainsbrute(爆破脚本);
4. IP、端口信息收集
4.1 IP信息收集–寻找IP地址
IP反查域名:一台服务器可能有多个虚拟主机,这些虚拟主机有不同的域名,但通常共用一个IP地址。通过服务器上网站的漏洞获取服务器控制权,进而获取渗透目标的权限,这种技术称为“旁注”。
http://stool.chinaz.com/same
域名查IP: http://ip.tool.chinaz.com/
大部分src网站开启了CDN服务,查找ip时拿到的是CDN服务器IP,而不是真实IP:
CDN:内容分发网络。依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。
如何判断是否开启了CDN:
多地PING:http://ping.chinaz.com/。如果ip不唯一,多半使用了CDN。
如何绕过CDN:
国外访问,国外多地ping:http://webkaka.com/Ping.aspx。
查询子域名IP:CDN昂贵,一般旁站不会使用CDN。
phpinfo文件:限制较多。
Mx记录邮件服务:适用于邮件服务器和web服务器的IP地址相同的情况。
查询历史DNS记录:https://dnsdb.io/zh-cn/.最开始坑你域名解析后,才开启CDN服务。也就是说一开始保存了原始的IP地址。
- IP信息收集–C段存活主机探测(获取同一网段其它主机信息)
nmap:nmap -sP www.XXX.com/24 || nmap -sP 192.168.1.*
web:https://github.com/se55i0n/Cwebscanner
4.2 端口收集
端口类型:
周知端口:0-1023,如80是www端口;
动态端口:一般不固定分配某种服务,49152-65535;
注册端口:1024-49151,用于分配给用户进程或程序;
端口作用:
把服务器比作房子,端口可比作门。
渗透端口,需要了解周知端口
445端口和3389端口漏洞比较多。
- 端口扫描工具:nmap:https://nmap.org/man/zh/
基础用法:
nmap -A -T4 192.168.1.1(T代表速度)
扫描全部端口:
- 其他信息收集:历史漏洞信息
http://wy.zone.ci/
https://wooyun.kieran.top/#!/
https://www.exploit-db.com/
https://wiki.0-sec.org/#/md/
https://seebug.org/
- 其他信息收集:社会工程学
5. 网站信息收集
5.1 网站指纹识别
网站基本组成:
服务器(操作系统)、中间件(web容器,apache)、脚本语言、数据库;
操作系统识别:
- ping判断:windows的TTL值一般为128,linux一般为64;
- nmap -O参数
- windows大小写不敏感,linux则区分大小写;
网站容器/服务识别
- F12查看响应头server字段;
- whatweb: http://www.whatweb.net/;
- wappalyzer插件;
CMS识别:内容管理系统,用于网站内容文章管理;
常见CMS:dedecms(织梦)、Discuz、phpcms等;
在线识别工具:http://whatweb.bugscaner.com/look/
onlinetools:https://github.com/iceyhexman/onlinetoos;https://pentest.gdpcisa.org/
5.2 敏感文件及目录探测
敏感文件、目录:
:github;git;svn;.DS_Store;.hg;.bzr;cvs;WEB_INF;备份文件;
敏感目录探测:
- dirsearch:https://github.com/maurosoria/dirsearch
- 御剑后台扫描工具
- dirmap:https://github.com/H4ckForJob/dirmap
5.3 网站waf识别(web应用防火墙)
waf功能:
- 防止常见的网络攻击:SQL注入,XSS跨站,CSRF,网页后门;
- 防止各类自动化攻击:暴力破解,撞库,批量注册,自动发帖;
- 阻止其它常见威胁:爬虫,0DAY攻击,代码嗅探,数据篡改,越权访问,敏感信息泄漏,远程恶意包含,盗链;
waf识别:
wafw00f https://github.com/EnableSecurity/wafw00f
nmap -p80,443 --script http-waf-detect ip