其他信息收集
总结其他信息收集知识点
其他信息
我们收集的信息越全,渗透测试展开的就越顺利。
注册域名会留下一些管理员的信息,例如注册公司、注册邮箱、管理员邮箱、管理员联系手机等攻击者可以根据这些信息去推测管理员身份信息,例如通过社工库查询到管理员的常用密码,在进行进一步攻击,或者向管理员邮箱发送钓鱼邮件等。
Whois
我们可以通过查询whois得到域名、注册人姓名、注册人邮箱、域名注册时间、域名注册机构等信息,我们也可以通过邮箱反查该邮箱的其他域名,还可以由此获得ip段信息。
在线查询
命令行查询
我们也可以再kali下用whois xxx来查询相应的信息
Python
python中有一个叫做python-whois的库,我们可以用它写成一个小脚本来查询whois信息:
首先安装
然后写一个小样例
得到如下信息:
备案信息查询
国内的网站按照规定,要进行备案,所以我们可以通过查询备案系统查询网站信息。
地址:
我们可以得到如下信息:
ICP备案主体信息
备案/许可证号:
京ICP证030173号
审核通过时间:
2018-12-20
主办单位名称:
北京百度网讯科技有限公司
主办单位性质:
企业
IP段查询
一般我们通过收集子域名,即可获得IP段,我们也可以通过中国互联网信息中心进行查询。
指纹识别
这里说的指纹是指网站CMS指纹,计算机操作系统识别,WEB容器识别,在渗透测试过程中,如果我们识别出了相应的容器或者CMS,我们就可以利用其相关的漏洞进行测试查询,一般应用程序中会包含其独特的指纹特征,例如wordpress在robots.txt中会包含wp-admin,而在index.php中也会包含generator=wordpress=xxx这些特征,因此我们可以根据不同的特点进行识别。
在线指纹识别
插件
wappalyzer插件
工具
御剑Web指纹识别
WhatWeb
WebRobo
椰树
轻量WEB指纹识别
服务器类型(Linux/Windows)
我们知道了服务器的系统版本后,就可以利用相应的漏洞来进行测试,最简单的方法是通过ping获得TTL值进行判断,默认情况下Windows的TTL值为128,Linux为64,我们也可以通过nmap的-O或者-A参数都可以对系统类型进行识别。
网站容器(Apache/Nginx/Tomcat/IIS)
在知道网站容器信息后,我们可以利用相应版本的漏洞进行测试。
返回包
我们可以查看相应包中的包头进行判断,例如我们访问freebuf,我们可以看到返回包如下:
我们可以看出它使用了Apache容器
Whatweb
whatweb 是kali中网站指纹识别的工具,使用Ruby语言开发。whatweb可识别web技术,包括内容管理系统(CMS)、博客平台、统计/分析包、JavaScript库,Web服务器和嵌入式设备等。它有超过900个插件,每个插件都能识别不同的东西。Whatweb还可以识别版本号,电子邮件地址、账户ID、Web框架模块,SQL错误等。
whatweb xxx
脚本类型(php/jsp/asp/aspx)
我们得到脚本类型后,可以针对相应的脚本进行渗透测试
URL判断(www.xx.com/index.php)
Google hack :
site:xx.com filetype:phpWappalyzer插件
数据库类型(Mysql/Oracle/Access/SqlServer)
通过端口判断
Access 全名是Microsoft Office Access,是由微软发布的关联式数据库管理系统。小型数据库,当数据库达到100M左右的时候性能就会下降。数据库后缀名: .mdb 一般是asp的网页文件用access数据库
SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS),是一个比较大型的数据库。端口号为
1433。数据库后缀名 .mdfMySQL 是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL是最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的应用软件之一,MySQL数据库大部分是php的页面。默认端口是
3306Oracle又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。常用于比较大的网站。默认端口是
1521
网站敏感目录/文件
后台目录
我们找到后台以后可以进行弱口令探测,万能密码探测,或者是测试是否有暴力破解,越权访问等漏洞。
备份文件/安装包
可能会存放有数据库连接账号口令,以及网站源码,我们就可以进行进一步攻击或代码审计之后进行攻击。
上传目录
我们可以通过尝试上传一句话木马能进行漏洞测试。
Mysql管理接口
如果我们找到类似phpadmin这种的管理界面,我们就可以进行弱口令、爆破、万能密码等进行测试,如果测试成功,就可以进行脱裤。
安装页面
如果网站管理员没有删除或配置不当安装页面,我们可以进行二次安装的尝试。
PHPINFO
通过phpinfo我们可以获得网站的配置信息,例如:
项
作用
System
获取具体版本,尝试提权
extension_dir
php扩展的路径
http_x_real_ip
获取真实ip
_SERVER["DOCUMENT_ROOT"]
Web根目录
_FILES["file"]
phpinfo-lfi getshell
allow_url_include
文件包含
asp_tags
上传.haccess/user.ini绕过
imagick
远程执行
libxml
XXE
memcache
未授权访问
redis
未授权访问/getshell
Gopher
反弹shell
fastcgi
任意代码执行
编辑器
FCK、KE等编辑器的历史漏洞
IIS短文件
短文件名漏洞
robots
我们可以查看到搜索引擎搜索不到的部分
常用工具
御剑
AWVS
Burpsuite
搜索引擎(Google、Github)
wwwscan
Wfuzz
DirBuster
社交平台(QQ群等)
历史漏洞库
目标域名邮箱
得到用户后我们就可以进行进一步弱口令,暴力破解测试。
网站页面、留言板、作者
Google hack
QQ群收集相关人员信息
字典爆破,通过暴力破解获取存在的用户名字典
Waf探测
现在网站为了加强自身安全,通常都会安装各类防火墙。这些防火墙往往会拦截各种扫描请求,使得测试人员无法正确判断网站相关信息,所以对Waf的探测识别至关重要。
手工
手工提交恶意数据
Nmap
nmap -p80,443 --script=http-waf-detect ipnmap -p80,443 --script=http-waf-fingerprint ip
wafw00f
wafw00f是一款标识和指纹web应用防火墙(waf)产品。
我们可以通过-l参数查看其支持多少种waf
wafw00f -l
使用方法
旁站/C段
旁站是指和目标处在同一台服务器上的其他网站,如果目标测试起来比较吃力,我们则可以从旁站下手;C段是指和目标处在同一网站的其他机器。
在线查询
Bing:
http://cn.bing.com/search?q=ip:111.111.111.111站长之家:
http://s.tool.chinaz.com/sameGoogle:
site:125.125.125.*Nmap:
nmap -p 80,8080 --open ip/24K8工具
御剑
北极熊扫描器
真实IP查询
渗透测试过程中,目标服务器的IP对我们来说至关重要,那么我们应该如何收集呢?首先我们要判断目标是否存在CDN(内容分发网络),也就是一组在不同运营商之间的对接节点上的高速缓存服务器,将用户经常访问的静态数据资源缓存到节点服务器上,当用户再次请求时,会直接分发到离用户近的节点服务器上响应给客户,大大提高了网站的响应速度,因此我们可以通过多地Ping的方法来判断网站是否开启了CDN。
通过相应IP就可以判断是否开启了CDN,如果响应IP不同,那么则开启了CDN。
不存在CDN
如果不存在cdn,我们可以通过如下方法获得网站真实ip
ping
我们可以通过ping命令来获得网站真实ip
ping xxx.com
在线查询
存在CDN
内部邮箱源
一般邮件系统都搭建在内部,不经过CDN解析,通过网站用户注册或RSS订阅功能,查看邮件,寻找邮件头中的邮件服务器域名IP,通过ping命令获取它的真实ip即可。(只针对目标自主的邮件服务器)
网站测试文件
如同上文说过的,在网站的phpinfo等文件中,寻找真实ip。
分站域名
一般主站访问量比较大因此会挂CDN,而分站可能没有加CDN,我们可以通过获取分站IP,若主站与分站在同一个ip段,我们可以进行C段探测获得真实IP。
国外访问
一般国内的CDN只对国内用户的访问加速,我们可以通过代理或第三方网站来获取真实IP。
历史解析记录
目标有可能在一开始是没有使用CDN的,因此我们通过查询它的历史ip记录获取其真实IP。
APP请求
如果目标存在自己的App,我们可以利用Fiddler或Burp suite抓取App
的请求,在其中寻找目标的真实IP。
社会工程学
社会工程学(Social Engineering,又被翻译为:社交工程学)在上世纪60年代左右作为正式的学科出现,广义社会工程学的定义是:建立理论并通过利用自然的、社会的和制度上的途径来逐步地解决各种复杂的社会问题,经过多年的应用发展,社会工程学逐渐产生出了分支学科,如公安社会工程学(简称公安社工学)和网络社会工程学。
常用搜索引擎
参考
《WEB 安全攻防 渗透测试实战指南》
《PHP WEB 安全开发实战》
Last updated
Was this helpful?