三分钟学会渗透测试——信息收集
什么是信息收集
信息收集主要是收集服务器的配置信息和网站的敏感信息,主要包括域名信息、子域名信息、目标网站信息、目标网站真实IP、目录文件、开放端口和服务、中间件信息等等。在进行渗透测试之前,第一步也是非常关键的一步就是对目标进行信息收集,我们尽可能收集关于目标的信息,这将会大大提高发现漏洞的概率
当拿到一个网站的时,从基本信息入手,可以收集如IP、端口、域名、网段等;从系统信息入手,可以获取其中操作系统与版本;从应用信息入手,获取各个端口应用服务,如web应用、邮件应用等;又或者从服务信息入手,获取高危服务,如文件共享服务
信息收集大致分类
第一类:主动信息收集。通过直接访问、扫描网站
第二类:被动信息收集。利用第三方的服务对目标进行访问了解,比例:谷歌搜索、SSL证书查询、Shodan搜索等等
Whois
在进行网站注册的时候,需要申请域名,申请之后这些注册的信息将会保存到相关的域名数据库服务器中,并且这些域名信息经常是公开的,任何人都可以查询。
如果我们可以获取目标的真实ip,那么还需要对网站域名whois信息进行收集。
Whois就是一个用于查询域名是否已经被注册,如果以及注册,可以查询相关信息的数据库(注册人姓名、注册人的E-mail、电话号、注册机构、通信地址、邮编、注册有效时间、失效时间查询等等),然后利用谷歌的语法搜索,搜索出关于域名的很多信息。
1)利用网站
网站查询:Network Tools by YouGetSignal.com
站长之家:http://whois.chinaz.com
2)利用kali下自带的whois
kali下的whois+域名
子域名探测
子域名也称二级域名,当进行渗透测试的时候,一些目标网站的规模比较大,主站会进行重点防御,安全性强,下手难度高。通过子域名探测,可以对目标网站下发现更多的域或子域,大大提高漏洞发现的概率,再通过这些子域,接近真正的目标。除了不太现实的手动探测外,一般使用工具进行挖掘,如Layer,subDomainsBrute,K8PortScan
一.工具
1)Layer子域名挖掘工具
直接输入域名,选择要扫描的端口,设置线程即可,而且图形化界面使用起来简单快捷
2)subDomainsBrute lijiejie
基本命令python subDomainsBrute.py baidu.com
扫描完成之后,在M:\子域名检测lijiejie\subDomainsBrute-master\tmp下存放着扫描到的子域名
3)scanport
二.语法搜索
利用谷歌的语法搜索子域名
谷歌常用语法及其说明
关键字 |
说明 |
举例 |
site |
限制搜索范围的域名 |
site:edu.cn |
inurl |
URL中存在关键字的网页 |
Inurl:ganyu |
intext |
搜索网页<body>部分的关键字 |
Intext:ganyu |
filetype |
搜索文件的特定后缀或者扩展名 |
filetype:txt |
intitle |
搜索网页标题的关键字 |
intitle:ganyu |
link |
返回所有与baidu.com做链接的URL |
link:baidu.com |
info |
查找指定站点的一些基本信息 |
Info:baidu |
三.SSL证书
https://myssl.com/ssl.html
CDN绕过
什么是CDN?
CDN全称是Content Delivery Network(内容分发网络),用处是将源站内容分发存储至各个节点,当用户需求源站资源时,只需取得距用户最近的一个节点,获取所需内容,大大提高了用户访问时的响应速度,解决因分布距离、带宽大小、服务器性能带来的访问延迟问题,其实就是将内容缓存在终端用户附近。
举个例子,当用户点击网站的一个URL时,DNS会根据点击的这个URL去寻求IP地址解析,如果网站开启了CDN服务,会由CDN专用DNS服务器去处理这个IP,然后将CDN的全局负载均衡设备IP地址返回用户。用户根据给的IP,访问全局负载均衡,负载均衡按照用户的URL,选择一台举例用户最近缓存服务器,将这台服务器的IP告诉用户,用户向缓存服务器发起请求,最后将资源传输给用户终端。
所以如果信息收集目标开启了CDN服务,虽然可以直接ping域名,但是得到的并非真正的IP,只是距离我们最近一台目标节点的CND服务器IP,所以使得我们无法或者真实的IP地址。
一.判断是否开启了CDN绕过
1)在不同的地方ping同一个域名【有时候ping出的ip不唯一但是固定的几个,可能未使用CDN而使用的是双线。】
2)利用在线网站进行多地区ping 多个地点Ping服务器,网站测速 - 站长工具
3)利用在线nslookup查询,如果查询多次发现返还的IP不同,说明开启
二.绕过CDN,寻求真实IP
1)利用国外在线网站ping(利用国内CDN往往只是对国内用户进行访问加速的原理)
Website uptime monitoring service, check is site down - Host-tracker - en
2)利用御剑CDN逆向IP查询(简洁高效)
3)利用一台国外主机进行ping
4)Netcraft 网址:http://searchdns.netcraft.com(还不错)
端口探测
在渗透测试中,对端口信息的收集极为重要,服务器开了几个端口,端口后面的服务是什么,这些都是十分关键的信息。一个IP地址标识了一台主机,而一台主机可以提供多种服务,如web服务、ftp服务、SMTP 服务等。但是如果说IP地址与主机提供的服务是一对多的关系的话呢,光靠IP地址是不行的,这时就需要端口号进行区分。就好比一栋房子,我们得知道有哪些窗户是打开或是闭合的,从哪里入手,因此端口探测就显得尤为关键。
除了手动探测外,最常见的就是利用Nmap扫描、Zmap或者御剑进行扫描。
Namp的基本使用
主要作用
目标探测:探测目标主机
端口探测:探测目标开放端口
版本探测:探测目标主机的网络服务,名称及版本号等等
脚本检测:漏洞扫描、检测病毒,入侵扫描等等
可以支持编写探测脚本或运行
同时可以进行c段嗅探,每个IP有ABCD四个段,举个例子,192.168.0.1,A段就是192,B段是168,C段是0,D段是1,而C段嗅探的意思就是专注于C段中0,对D段的1-255进行嗅探,然后获取敏感信息。
基本命令
1.【扫描单个ip地址】nmap 127.0.0.1
2.【扫描多个ip】nmap 127.0.0.1 127.0.0.1
3.【扫描指定的ip范围】nmap 127.0.0.1-2
4.【扫描整个d段】nmap 127.0.0.1/24
5.【扫描文件内的所有目标地址】nmap -iL M:\1.txt
6.【扫描除了127.0.0.1以外的地址】nmap 127.0.0.1/24 -exclude 127.0.0.1
7.【扫描除了M:\1.txt以外的地址】nmap 127.0.0.1/24 -exclude M:\1.txt
8.【扫描目标的20、21、22端口】nmap 127.0.0.1 -p 21,22,23
9.【对目标地址进行路由跟踪】nmap --traceroute 127.0.0.1
10.【扫描目标地址所在c段的在线状况】nmap -sP 127.0.0.1
11.【目标地址的操作系统的指纹识别】nmap -O 127.0.0.1
12.【服务器版本探测】nmap -sV 127.0.0.1
13.【探测防火墙状态】nmap -sF -T4 127.0.0.1
一些常见的端口号:
21端口 |
FTP 文件传输服务 |
22端口 |
SSH 远程连接服务 |
23端口 |
TELNET 终端仿真服务 |
25端口 |
SMTP 简单邮件传输服务 |
53端口 |
DNS 域名解析服务 |
80端口 |
HTTP 超文本传输服务 |
110端口 |
POP3 |
443端口 |
HTTPS 加密的超文本传输服务 |
1080端口 |
SOCKS代理协议服务器 |
1521端口 |
Oracle数据库 |
3306端口 |
MYSQL数据库端口 |
5432端口 |
PostgreSQL数据库端口 |
6379端口 |
Redis数据库端口 |
8080端口 |
TCP服务端默认端口 |
8888端口 |
Nginx服务器的端口 |
9200端口 |
Elasticsearch服务器端口 |
27017端口 |
mongoDB数据库默认端口 |
22122端口 |
fastdfs服务器默认端口 |
目录扫描
扫描目标站点的目录,寻找敏感信息【如目录名、文件(phpinfo.php、readme.php)、后台(admin.php)、robots.txt(告诉网络搜索引擎漫游器,此网站中的哪些内容是应该或者不应该被搜索引擎的漫游器获取的)、备份文件等(.bak .zip www.rar)】。
利用工具
1)御剑
输入域名,加入字典,选择线程和超时时间,点击开始。同时御剑还可以用于SQL注入检测,各种加密解密,cdn逆向ip查询,查询目标主机的信息
2)Dirsearch
基本命令:python dirsearch.py -e * -u www.baidu.com
指纹识别
通常来说指纹识别就是人的手指末端正面皮肤上凹凸不平的纹路,纹路规律的排列形成特有的独一无二的的指纹。这里讲的指纹识别其实就是网站cms指纹识别,计算机操作系统以及web容器的指纹识别,如果目标网站系统并非自主研发的,就很有可能是使用了一些cms建站系统,如phpcms、eshop、wordpress、dedecms、dicuz、phpweb等等,对网站进行指纹识别,将会识别出网站所使用的CMS信息
常见网站信息识别网站:
潮汐指纹:TideFinger 潮汐指纹 TideFinger 潮汐指纹
CMS指纹识别:在线指纹识别,在线cms识别小插件--在线工具
yunsee指纹:http://www.yunsee.cn/finger.html
三分钟学会渗透测试——信息收集相关推荐
- 【经验】渗透测试信息收集步骤、网站、工具分享
渗透测试信息收集步骤.网站.工具分享 刚刚参加完一次大型活动,感觉这个暑假自己的成长很明显.虽然之前的假期也有打算做些什么或者也确实做了什么,但收效甚微.也许人性如此吧,总是要有什么理由推着自己才能前 ...
- 渗透测试-----信息收集(通过DNS解析找IP地址、CDN、IP查询、IP物理地址、搜索引擎、网站信息收集)
文章目录 渗透测试 信息收集 一.IP地址信息收集 1. 通过DNS解析找IP地址 1.1 ping命令 1.2 nslookup命令 1.3 dig工具 1.4 dnsenum 1.5 站长工具 2 ...
- 【渗透测试基础-3】渗透测试信息收集的内容及方法
目录 1 信息收集概述 1.1 目的 1.2 收集内容 2 收集域名信息 2.1 Whois查询 2.1.1 Whois简介 2.1.2 Whois操作 2.2 反查 2.3 备案信息查询 3 收集子 ...
- 渗透测试信息收集:目录扫描
入行这么久,一次完整的渗透也没完成过,最近想从信息收集开始,完整的渗透一次网站,目前在进行信息收集,写篇文章,记录下自己在进行目录扫描中用过的工具. 渗透测试信息收集:目录扫描 目录 渗透测试信息收集 ...
- 渗透测试-----信息收集(概述、whois、子域名查询、爆破、vulhub域名传送漏洞复现、kali安装docker)
文章目录 渗透测试 信息收集 1. 概述 2. 供练手的网站 3. whois查询 4. 子域名查询 域传送漏洞 1. 概述 2. 解决办法 3. vulhub漏洞复现 4. 子域名爆破 渗透测试 信 ...
- 【每天学习一点新知识】渗透测试信息收集篇
目录 1.网页直接获取信息 2.端口扫描 3.子域名查询 4. C段旁注 5.网络空间搜索引擎.谷歌语法 6.whois查询 渗透测试流程: 信息收集是渗透测试的前期工作,对于渗透测试来说十分重要.只 ...
- 渗透测试——信息收集(详细)
信息收集: 前言: 信息收集是渗透测试除了授权之外的第一步,也是关键的一步,尽量多的收集目标的信息会给后续的渗透事半功倍.收集信息的思路有很多,例如:页面信息收集.域名信息收集.敏感信息收集.子域名收 ...
- Kali Linux渗透测试——信息收集
笔记内容参考安全牛课堂苑房弘老师的Kali Linux渗透测试教程 渗透测试标准(PTES:http://www.pentest-standard.org)的七个阶段: 1.前期交互阶段:讨论确定渗透 ...
- 渗透测试信息收集概要
文章目录 信息收集概要 Whois查询 指纹CMS 网站IP 旁站.C段服务器 服务器操作系统版本.容器版本.数据库类型 邮箱收集 端口服务(80.443等) 敏感文件搜索 目录遍历 说明.txt 目 ...
最新文章
- Python基础,面向对象
- win7安装gtp磁盘_GPT转MBR分区格式安装win7/win10系统教程
- python实现进程通信_python进程间的通讯实现
- springboot+mybatis实现动态切换数据源
- SharePoint 2010 Crawl Component Stuck in “Recovering” status
- centos8 安装mysql_Centos 离线安装mysql8(以及在线安装)
- 教程-Delphi资源文件(全面分析于使用)
- c 运算符重载前置++_C ++运算符重载–综合指南
- 用Docker构建与环境无关的系统
- rpc接口和http接口的区别和联系1 什么是http接口http接口是基于http协议的post和get接口。2 什么是rpc接口rpc接口就相当于调用本地接口一样调用远程服务的接口。
- [JNI]开发之旅(6)JNI函数中访问java类中对象的属性
- WAP 1.X 2.0 相关知识
- python设置excel表样式
- MySQL事务的保证机制
- c语言编程泰勒展开式计算,学习笔记:用c语言编写泰勒展开公式myexp()实现math.h.数学函数...
- “女人~,你在玩火”一个有磁性的声音说道——常用自动化测试工具
- js 5文钱可以买一只公鸡,3文钱可以买一只母鸡,一文钱可以买3只小鸡,现在100文买100只鸡,请问各多少只
- 小仙女讲JVM(1)—综述
- 【Unity】内存泄漏危害及处理方式(腾讯WeTest分析使用)
- 2022 第十三届 蓝桥杯 省赛 Java B组 真题 详细解析 答案
热门文章
- python读ad域日志_基于python LDAP3的AD域账号注册系统
- easyexcel 阿里巴巴官方文档地址
- 函数参数中带省略号的用法
- 基于视觉的手势识别系统(一)——前言
- win 2016 ssh_摄像机跟踪软件Vicon Boujou v5.0.2 (Win/mac)
- Word控件Spire.Doc 6.0.77版发布| 附下载
- 小米MIUI短信权限遇到的坑
- MySQL与mybatis查询精华(本人总结)持续更新中
- 电子签名功能-微信小程序
- 微信开放平台PC端扫码登录