渗透测试之信息收集丨读书笔记

1. 信息收集

节选自《Web安全攻防渗透测试实战指南》,电子工业出版社,徐焱等著。

1.1 收集域名信息

1.2 收集敏感信息

通过构造特殊的关键字语法可以在 Google 上搜索相关敏感信息。

关键字 说明
site 指定域名
inurl URL中存在关键字的网页
intext 网页正文中的关键字
filetype 指定文件类型
intitle 网页标题中的关键字
link link:feixingrui.com 即表示返回所有和 feixingrui.com 做了连接 的 URL
info 查找指定站点的一些基本信息
cache 搜索 Google 里关于某些内容的缓存

例:“site:edu.cn intext:后台管理”,意思是搜索网页正文中含有“后台管理”并且域名后缀为 edu.cn 的网站。

此外,通过 Burp Suite 的 Repeater 功能同样可以获取一些服务器的信息;在 Github 上也能够寻找相关敏感信息,如数据库连接信息、邮箱密码、uc-key、阿里的osskey等,有时甚至可以找到泄露的源代码。

1.3 收集子域名信息

子域名是顶级域名下的域名。对于拥有众多子域名的网站来讲,主域名一般都是其重点防护对象,不易被攻破。所以需要从子域名入手。常见的子域名检测工具有:
Layer 子域名挖掘机,使用方法较简单
Sublist3r,它能列举在多种搜索引擎中可查到的子域名
subDomainsBrute,特点是可以用小字典递归地发现三级域名、四级域名,甚至五级域名等不容易被探测到的域名
– 搜索引擎枚举 site:baidu.com
第三方聚合应用枚举
证书透明度公开日志枚举1 证书透明度公开日志枚举1
子域名爆破网站
IP反查绑定域名网站

1.4 收集常用端口信息

通过扫描服务器开放的端口以及从端口判断服务器上存在的服务,就可以对症下药,便于我们渗透目标服务器。

常见扫描工具:Nmap、Masscan、ZMap和御剑高速TCP端口扫描工具。

文件共享服务端口

端口号 端口说明 攻击方向
21/22/69 ftp/tftp文件传输协议 允许匿名的上传、下载、爆破和嗅探操作
2049 nfs服务 配置不当
139 samba服务 爆破、未授权访问、远程代码执行
389 ldap目录访问协议 注入、允许匿名访问、弱口令

远程连接服务端口

端口号 端口说明 攻击方向
22 ssh远程连接 爆破、ssh隧道及内网代理转发、文件传输
23 telnet远程连接 爆破、嗅探、弱口令
3389 rdp远程桌面连接 shift后门(需要Windows Server 2003以下的系统)、爆破
5900 VNC 弱口令爆破
5632 PyAnythere服务 抓密码、代码执行

Web应用服务端口

端口号 端口说明 攻击方向
80/443/8080 常见的Web服务端口 Web攻击、爆破、对应服务器版本漏洞
7001/7002 WebLogic控制台 Java反序列化、弱口令
8080/8089 Jboss/Resin/Jetty/Jenkins 反序列化、控制台弱口令
9090 WebSphere控制台 Java反序列化、弱口令
4848 GlassFish控制台 弱口令
1352 Lotus domino邮件服务 弱口令、信息泄露、爆破
10000 Webmin-Web控制面板 弱口令

数据库服务端口

端口号 端口说明 攻击方向
3306 MySQL 注入、提权、爆破
1433 MSSQL数据库 注入、提权、SA弱口令、爆破
1521 Oracle数据库 TNS爆破、注入、反弹shell
5432 PostgreSQL数据库 爆破、注入、弱口令
27017/27018 MongoDB 爆破、未授权访问
6379 Redis数据库 未授权访问、弱口令爆破
5000 SysBase/DB2数据库 爆破、注入

邮件服务端口

端口号 端口说明 攻击方向
25 SMTP邮件服务 邮件伪造
110 POP3协议 爆破、嗅探
143 IMAP协议 爆破

网络常见协议端口

端口号 端口说明 攻击方向
53 DNS域名系统 允许区域传送、DNS劫持、缓存投毒、欺骗
67/68 DHCP服务 劫持、欺骗
161 SNMP协议 爆破、搜集目标内网信息

特殊服务端口

端口号 端口说明 攻击方向
2181 Zookeeper服务 未授权访问
8069 Zabbix服务 远程执行、SQL注入
9200/9300 Elasticsearch服务 远程执行
11211 Memcache服务 未授权访问
512/513/514 Linux Rexec服务 爆破、Rlogin登录
873 Rsync服务 匿名访问、文件上传
3690 SVN服务 SVN泄露、未授权访问
50000 SAP Management Console 远程执行

1.5 指纹识别

应用程序一般在 html/css/js 等文件中会包含特征码,如 WordPress 在 robot.txt 中会包含 wp-admin、首页 index.php 中会包含 generator=wordpress 3.xx ……当遇到其他网站也存在该特征时,就可以快速识别出该 CMS,因此被称为指纹识别。

常见工具:御剑Web指纹识别、WhatWeb、WebRobo、椰树、轻量WEB指纹识别等。

在线网站:
BugScaner
云悉指纹

1.6 查找真实IP

确定目标服务器的真实 IP 对渗透测试非常重要,如果目标不存在 CDN,那么可以直接通过 www.ip138.com 来获取相关信息。

通过 ping 命令,可以判断目标是否使用了 CDN。其中 17ce 是一个很好用的工具,它通过进行全国多地区的 ping 服务器操作,然后对比每个地区 ping 出的 IP 结果,来判断是否存在 CDN。

如何绕过 CDN 从而获得真实 IP?
– 内部邮箱源
– 扫描网站测试文件
– 分站域名
– 国外访问
查询域名的历史解析记录
– 通过抓取对应 app 发出的请求
– 绕过 CloudFlare CDN

验证获取的 IP
– 直接通过 IP 地址进行访问
– 在 IP 段比较大的情况下,批量扫描对应 IP 段中所有打开了80/443/8080端口的 IP,然后逐个访问并观察是否为目标站点

1.7 收集敏感目录文件

通过探测 Web 目录结构和隐藏的敏感文件,可以获得网站的后台管理页面、文件上传界面,甚至还可能获得网站的源代码。

推荐工具:WebScan

1.8 社会工程学

网上有好多社工库



Leave a Reply

Your email address will not be published. Required fields are marked *