Christsam 2019-06-28
渗透测试执行标准 PTES(Penetration Testing Execution Standard)
信息搜集是对目标系统的探查,包括获知它的行为模式、运行机理,以及最终可以如何攻击。
主要分为主动信息搜集和被动信息搜集。
常用搜索语法:
intitle:KEYWORD
//搜索网页标题中含有关键词的网页intext:KEYWORD
//搜索站点正文中含有关键词的网页inurl:KEYWORD
//搜索URL中包含有指定字符串的网址inurl:php?id=
//搜索PHP网页site:DOMAIN
//在指定站点内查找相关的内容filetype:FILE
//搜索指定类型的文件Shodan与Google这种搜索网址的搜索引擎不同的是,Shodan是用来搜索网络空间中在线设备的。
hostname:
//搜索指定的主机或域名port:
//搜索指定的端口或服务country:
//搜索指定的国家city:
//搜索指定的城市org:
//搜索指定的组织或公司isp:
//搜索指定的ISP供应商product:
//搜索指定的操作系统/软件/平台version:
//搜索指定的软件版本geo:
//搜索指定的地理位置,参数为经纬度before/after:
//搜索指定收录时间前后的数据,格式为dd-mm-yynet:
//搜索指定的IP地址或子网ZoomEye是一款针对网络空间的搜索引擎,收录了互联网空间中的设备、网站及其使用的服务或组件等信息。
用户手册:https://www.zoomeye.org/help
天眼查是一款“都能用的商业安全工具”,根据用户的不同需求,实现了企业背景、企业发展、司法风险、经营风险、经营状况、知识产权方面等多种数据维度的检索。
whois(读作“Who is”,非缩写)是用来查询域名的IP以及所有者等信息的传输协议。
whois信息可以获取关键注册人的信息,包括注册商、联系人、联系邮箱、联系电话、创建时间等,可以进行邮箱反查域名,爆破邮箱,社工,域名劫持等等。
子域名收集可以发现更多渗透测试范围内的域名/子域名,以增加漏洞发现机率;探测到更多隐藏或遗忘的应用服务,这些应用往往可导致一些严重漏洞。
常用的工具有:子域名挖掘机Layer、subDomainsBrute、Dnsenum、Dnsmap ...
现在大多数的网站都开启了CDN加速,导致我们获取到的IP地址不一定是真实的IP地址。
CDN的全称是Content Delivery Network,即内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度。
通过识别目标网站所使用的操作系统、CMS、服务器与中间件信息,可以帮助我们进一步了解渗透测试环境,可以利用已知的一些CMS漏洞或中间件漏洞来进行攻击。
可以在以下地方获取信息:
工具:Whatweb、httprint、云悉、BugScanner ...
扫描端口可以使用Nmap,masscan进行扫描探测,尽可能多的搜集开启的端口好已经对应的服务版本,得到确切的服务版本后可以搜索有没有对应版本的漏洞。
常见的端口信息及渗透方法:
端口 | 服务 | 渗透用途 |
---|---|---|
tcp 20,21 | FTP | 允许匿名的上传下载,爆破,嗅探,win提权,远程执行(proftpd 1.3.5),各类后门(proftpd,vsftp 2.3.4) |
tcp 22 | SSH | 可根据已搜集到的信息尝试爆破,v1版本可中间人,ssh隧道及内网代理转发,文件传输等等 |
tcp 23 | Telnet | 爆破,嗅探,一般常用于路由,交换登陆,可尝试弱口令 |
tcp 25 | SMTP | 邮件伪造,vrfy/expn查询邮件用户信息,可使用smtp-user-enum工具来自动跑 |
tcp/udp 53 | DNS | 允许区域传送,dns劫持,缓存投毒,欺骗以及各种基于dns隧道的远控 |
tcp/udp 69 | TFTP | 尝试下载目标及其的各类重要配置文件 |
tcp 80-89,443,8440-8450,8080-8089 | 各种常用的Web服务端口 | 可尝试经典的topn,vpn,owa,webmail,目标oa,各类Java控制台,各类服务器Web管理面板,各类Web中间件漏洞利用,各类Web框架漏洞利用等等…… |
tcp 110 | POP3 | 可尝试爆破,嗅探 |
tcp 111,2049 | NFS | 权限配置不当 |
tcp 137,139,445 | Samba | 可尝试爆破以及smb自身的各种远程执行类漏洞利用,如,ms08-067,ms17-010,嗅探等…… |
tcp 143 | IMAP | 可尝试爆破 |
udp 161 | SNMP | 爆破默认团队字符串,搜集目标内网信息 |
tcp 389 | LDAP | ldap注入,允许匿名访问,弱口令 |
tcp 512,513,514 | Linux rexec | 可爆破,rlogin登陆 |
tcp 873 | Rsync | 匿名访问,文件上传 |
tcp 1194 | OpenVPN | 想办法钓VPN账号,进内网 |
tcp 1352 | Lotus | 弱口令,信息泄漏,爆破 |
tcp 1433 | SQL Server | 注入,提权,sa弱口令,爆破 |
tcp 1521 | Oracle | tns爆破,注入,弹shell… |
tcp 1500 | ISPmanager | 弱口令 |
tcp 1723 | PPTP | 爆破,想办法钓VPN账号,进内网 |
tcp 2082,2083 | cPanel | 弱口令 |
tcp 2181 | ZooKeeper | 未授权访问 |
tcp 2601,2604 | Zebra | 默认密码zerbra |
tcp 3128 | Squid | 弱口令 |
tcp 3312,3311 | kangle | 弱口令 |
tcp 3306 | MySQL | 注入,提权,爆破 |
tcp 3389 | Windows rdp | shift后门[需要03以下的系统],爆破,ms12-020 |
tcp 3690 | SVN | svn泄露,未授权访问 |
tcp 4848 | GlassFish | 弱口令 |
tcp 5000 | Sybase/DB2 | 爆破,注入 |
tcp 5432 | PostgreSQL | 爆破,注入,弱口令 |
tcp 5900,5901,5902 | VNC | 弱口令爆破 |
tcp 5984 | CouchDB | 未授权导致的任意指令执行 |
tcp 6379 | Redis | 可尝试未授权访问,弱口令爆破 |
tcp 7001,7002 | WebLogic | Java反序列化,弱口令 |
tcp 7778 | Kloxo | 主机面板登录 |
tcp 8000 | Ajenti | 弱口令 |
tcp 8443 | Plesk | 弱口令 |
tcp 8069 | Zabbix | 远程执行,SQL注入 |
tcp 8080-8089 | Jenkins,JBoss | 反序列化,控制台弱口令 |
tcp 9080-9081,9090 | WebSphere | Java反序列化/弱口令 |
tcp 9200,9300 | ElasticSearch | 远程执行 |
tcp 11211 | Memcached | 未授权访问 |
tcp 27017,27018 | MongoDB | 爆破,未授权访问 |
tcp 50070,50030 | Hadoop | 默认端口未授权访问 |
旁站:是和目标网站在同一台服务器上的其它的网站。
旁注:通过入侵安全性较差的旁站,之后可以通过提权跨目录等手段拿到目标服务器的权限。
工具:K8_C段旁注工具、WebRobot、御剑、明小子 ...
C段:是和目标机器ip处在同一个C段的其它机器。
C段入侵:目标ip为192.168.1.128,可以入侵192.168.1.*的任意一台机器,然后利用一些黑客工具嗅探获取在网络上传输的各种信息。
工具:Cain、Sniffit 、Snoop、Tcpdump、Dsniff ...
robots.txt、crossdomin.xml、sitemap.xml、源码泄漏文件 ...
WAF识别大多基于Headers头信息,还可以使用Wafw00f,Sqlmap的waf脚本,Nmap的http-waf-detect和http-waf-fingerprint脚本等等。
漏洞查询站点:exploitdb、hackerone、CNVD、0day5、乌云漏洞库镜像站 ...