信息收集对于渗透测试前期来说是非常重要的,因为我们只有掌握了目标网站或目标主机足够多的信息之后,我们才能更好地对其进行漏洞检测。最简单的比如说目标站点的ip、中间件、脚本语言、端口、邮箱等等
信息收集方式区别
信息收集的方式可以分为两种:主动和被动
主动收集:相当于通过技术手段去侦察目标的情况,比如通过直接访问、扫描网站。这种流量将流经网站,目标可能会记录下我们的行为。
被动收集:相当于通过技术手段去收集目标遗留的信息,比如利用第三方的服务对目标进行访问了解,比例:Google搜索
域名信息收集
主域名信息
知道目标的域名之后,我们要做的第一件事就是获取域名的注册信息,包括该域名的DNS服务器信息和注册人的联系信息等。
whois查询
whois是一个标准的互联网协议,可以用于收集网络注册信息,注册的域名,ip地址等信息。
查询方法:
国外的who.is:https://who.is/
站长之家:http://whois.chinaz.com/
爱站:https://whois.aizhan.com/
微步:https://x.threatbook.cn/
子域名信息
子域名是在顶级域名下的域名,收集的子域名越多,我们测试的目标就越多,渗透的成功率也越大。往往主站找不到突破口的时候,我们从子域名入手,有时候就会带来意想不到的惊喜。
在线查询
https://phpinfo.me/domain/
http://i.links.cn/subdomain/
http://dns.aizhan.com
https://www.dnsscan.cn/dns.html
网络信息搜索
旁站、c段信息收集
旁站:是和目标网站在同一台服务器上的其它网站
c段:是和目标服务器ip处在同一个c段的其它服务器
查询方式
利用Bing.com:语法为:http://cn.bing.com/search?q=ip:111.111.111.111
站长之家:http://s.tool.chinaz.com/same
利用Google:语法:site:125.125.125.*
利用Nmap:语法:nmap -p 80,8080 –open ip/24
工具:K8、御剑、北极熊扫描器等
在线:http://www.webscan.cc/
绕过cdn获取真实ip
在渗透测试过程中,目标服务器可能只有一个域名,那么如何通过这个域名来确定目标服务器的真实ip呢。如果目标服务器不存在cdn可以直接通过ping域名或者nslookup解析域名信息。如果存在cdn就需要用到一些方法了。
网站架构分析
服务器类型
服务器信息包括服务器用的操作系统:linux还是windows。知道服务器操作系统后还需要知道其具体版本,因为很多低版本的操作系统都存在一直的漏洞。
判断方法
可以通过ping来探测,windows的TTL值一般都是128,linux则为64.所以大于100的肯定就是windows系统,而几十的就是linux
windows对大小写不敏感,linux则敏感。如www.xxx.com/index.php和www.xxx.com/index.Php打开的效果一样则说明是windows
用工具nmap进行探测
网站容器
知道操作系统后,我们就需要知道网站用的web服务器是什么类型的:apache、nginx、tomcat、iis。知道了类型后还要具体探测容器的具体版本,不同的web容器版本存在着不同的漏洞。我们可以使用whatweb进行探测。
判断方法
whatweb:https://whatweb.net/
或者命令行
数据库类型
还需要知道网站用的是哪种类型的数据库:mysql、oracle、sqlserver、access。
几种数据库的区别
1.Access 全名是 Microsoft Office Access,是由微软发布的关联式数据库管理系统。小 型数据库,当数据库达到 100M 左右的时候性能就会下降。数据库后缀名: .mdb 一般是 asp 的网页文件用 access 数据库
2.SQL Server 是由 Microsoft 开发和推广的关系数据库管理系统(DBMS),是一个比较大 型的数据库。端口号为 1433。数据库后缀名 .mdf
3.MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 旗 下产品。MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的应用软件 之一,MySQL 数据库大部分是 php 的页面。默认端口是 3306
4.Oracle 又名 Oracle RDBMS,或简称 Oracle。是甲骨文公司的一款关系数据库管理系统。 常用于比较大的网站。默认端口是 1521
CMS类型
指纹识别是有必要的,只有识别出相应的web容器或者cms才能查找出与其相关的漏洞。cms又称为整站系统,常见的cms有:WordPress、Dedecms、Discuz、PhpWeb、PhpWind、Dvbbs、PhpCMS、ECShop、、SiteWeaver、AspCMS、帝国、Z-Blog等。
主机及端口扫描
不仅仅要对目标网站进行扫描,还要对目标主机进行扫描,包括目标主机存在的漏洞,开放的端口,端口运行的服务等等。主机可以用nessus,端口扫描可以用nmap。
网站敏感目录和文件
在渗透测试中,探测web目录结构和隐藏的敏感文件是一个必不可少的环节,从中可以获取网站的后台管理页面,文件上传页面,甚至可以扫描出网站的源代码。
收集方向
后台目录:弱口令、万能密码、爆破
安装包:获取数据库信息,甚至是网站源码
上传目录:截断、上传图片马
mysql管理接口:弱口令、爆破、万能密码,甚至脱裤、拿到shell
安装页面:可以二次安装进行绕过
phpinfo:配置信息暴露
编辑器:fck、ke等
robots.txt文件:爬虫规范文件,侧面得知网站哪些目录重要
敏感文件、敏感目录的挖掘一般都是靠工具,常用的工具有:
字典爆破:dirb[kali 如:dirb http://192.168.200.113]对目标网站进行目录扫描]、DirBuster、 wwwscan 、御剑后台、Webdirscan 等
蜘蛛:Burp、OWASP ZAP、AWVS 等
在线工具:http://www.webscan.cc/
网络空间搜索引擎:zoomeye、shodan、fofa