信息收集合集
声明! 学习视频来自B站up主 **泷羽sec** 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!有兴趣的小伙伴可以点击下面连接进入b站主页[B站泷羽sec](https://space.bilibili.com/350329294)
目的:增加渗透测试的攻击面,一个目标扩大到多个目标
注:根域名是一个网站的主站点,防护严密,渗透的一个思路是找子域名,从防护薄弱的子域名下手。通过信息收集增加攻击面,可以寻找其子域名,可能主站点和子域名处于同一个服务器IP地址
微步在线X情报社区-威胁情报查询_威胁分析平台_开放社区 微步社区信息整理
威胁情报收集与分析,情报共享与协作 力,威胁分析与决策支持,安全博客与社交媒体数据:
工商数据收集
目的:更好帮助测试人员了解公司信息,以便收敛测试的目标范围
例:通过工商数据收集获取公司的控股子公司,经营业务,对外发布的产品等信息
信息来源:
爱企查,天眼查,启信宝,小蓝本,公开信息(小程序,IoT设备,公众号),企业股权架构,网站备案,法人电话和邮箱
用处:
- 获取股权子公司名称,收集边缘子公司资产
- 获取备案根域名
- 获取其他互联网资产
- 收集用户名等
信息收集步骤
- 收集域名被注册信息,搜索网站:
爱站网Whois查询( 站长工具_whois查询工具_爱站网)
华为云Whois查询
西部数码Whois查询( whois/的whois查询信息-西部数码,方便快捷的whois查询平台)
美橙互联Whois查询( 美橙域名whois查询-域名whois查询_whois查询_whois,美橙互联域名whois信息查询中心.)
站长工具Whois查询( WHOIS查询-网站WHOIS-站长工具-开发者工具网)
Bugscaner: http://whois.bugscaner.com
VirusTotal: VirusTotal
kali⼯具 whois www.secdriver.com
还可以通过 IP 反查域名
检查哪些后缀名被注册过了,和渗透测试的网站站点有无直接关系
多查询几个网站以找我到我们需要的信息
信息的收集并甄别,需要和官网来比对,有用且准确的记录
信息收集中可能会收集到信息泄露的内容,例如子域名
注:CDN加速会 导致无法查询到真 实的IP , CDN 加速利用的是最近距离的 IP。此CDN 不仅可以用来加速网站还可以保护真实域名,但服务价格高昂
CDN加速,即内容分发网络(Content Delivery Network)加速,是一种通过在网络中分布多个节点来提高网站内容传输速度的技术。CDN通过将网站的静态内容缓存到这些节点上,当用户访问网站时,CDN会将用户的请求路由到距离最近的节点,从而加快内容传输速度。这种技术特别适用于静态内容较多的网站,如图片、CSS文件和JavaScript文件等
检查是否CDN是否存在,键盘win+R,键入nslookup +域名
若回馈非权威应答,且只有一个IP,则大概率没有使用CDN
如下图,多个IP存在着CDN加速服务
- 访问子域名网站进行查看,不同的子域名能负责不同的功能,尤其注意存在信息资产的网站
总结:通过各大威胁集团的搜索引擎,尽可能全面的收集有用的攻击面,然后查看各大子域名平台中是否有关联链接。信息收集做到极致才能把攻击面扩大
工具推荐 :
利用查询到网站管理员手机号码、姓名、邮箱通过Whois反查查询出网站管理员所注册过的域名,可以对注册的其他域名进行漏洞挖掘。
邮箱反查:http://whois.chinaz.com/reverse?ddlSearchMode=1
注册人反查:http://whois.chinaz.com/reverse?ddlSearchMode=1
电话反查:http://whois.chinaz.com/reverse?ddlSearchMode=1
爱站https://whois.aizhan.com/
微步https://x.threatbook.cn/
国外的who.is https://who.is/
阿里云域名信息查询https://whois.aliyun.com
腾讯查询https://whois.cloud.tencent.com/
中国互联网信息中心http://ipwhois.cnnic.net.cn/
ICP(Internet Content Provider)备案查询
可以查询该单位备案的其它网站
国家企业信用信息公示系统http://www.gsxt.gov.cn/index.html
ICP备案查询网https://www.beianx.cn/
ICP备案查询 - 站长工具http://icp.chinaz.com/
天眼查https://www.tianyancha.com/
根据前面获取的企业名称可以获取目标企业的微信公众号、微博、备案站点、APP、软件著作权等信息
企查查https://www.qcc.com/
SEO(Search Engine Optimization)查询
爱站-SEO综合查询https://www.aizhan.com/cha/
可以根据域名来收集目标站点的备案信息、名称、注册人等信息
站长-SEO综合查询http://seo.chinaz.com/
Google、bing、baidu
Google需要翻墙,一般用来收集一些敏感信息,用老生常谈的方法
这样收集特定的域名
我通常用来收集特定资产的敏感信息
如 intext:``身份证 intext:``电话再指定后缀 xlsx pdf docs等
另外的时候会收集一些藏的比较深的路由
指定inurl:xxx可能会发现额外的资产
不过相比起Google我更喜欢用Bing,因为不用翻墙
语法的话与Google同理,不过Bing如果用谷歌语法的话搜集的内容会模糊一些,不是精准搜索
最后就是百度,也是搜集信息的一种方式
Ps:``搜索引擎一般用来收集信息泄露和隐藏较深的路由
这里给大家推荐一个网站 (本人也是看别人的知道的【信息收集之-你不知道的骚思路】https://www.bilibili.com/video/BV1yP4y117Q2?vd_source=6ce69e079d1dd642d7810fbf2e9c817e)
二开谷歌语法------https://searchtool.drtsrc.com/ (国内版)
-----------------https://dorks.faisalahmed.me/ (国外版)
Github
GitHub源码泄露肯定都听说过,但是真正找的源码的案例可能很少,可能是你用的方法有问题,网站域名、网站JS路径、网站备案、网站下的技术支持这些都可以放进去GitHub搜
精确搜索:被双引号引起来的部分代表精确匹配
Fofa 360 鹰图 钟馗之眼
鹰图提炼图标很好用
web.icon=="4eeb8a8eb30b70af511dcc28c11a3216"
=模糊
==精准
Fofa
icon_hash="174665376"
其实,这时候可以发现很多图标,两者是相辅相成的,通过收集图标提炼共性标题,通过收集标题找到共性图标
最好多加个几个精准条件web.icon=="4eeb8a8eb30b70af511dcc28c11a3216"&&title="ruoyi"
`Web``的内容```
body=ruoyi
大家记得多看前端源码
提炼特殊路由
不同的站点路由其实是不一样的,在这里的话若依站点最特殊的路由是prod-api
因此我们从路由的角度来体验,一种是找超链接的提炼方式
body=prod-api/
可以找到站点中带有若依的超链接路由
打开之后我们就可以发现确实超链接指向的是若依的系统
如果收集的若依系统够多,可以发现存在二开的系统有其他的路由,比如admin-api dev-api 等等
另一种方式可能就需要用到搜索引擎去相辅相成的寻找特殊路由
GIT提炼
很多开源的若依二开可以在github找到相关的项目,往往修改较多的就是默认的prod-api为主,可以按照上面的内容去提炼,这样可以直接收集各个二开若依系统
傻蛋
活动:Shodan****黑五1美元一个,淘宝、咸鱼可以看看
普通:69美元 每月最多 100 万个结果 每月扫描多达 5,120 个 IP 5,120 个 IP 的网络监控
高级:359美元 每月最多 2000 万个结果 每月扫描多达 65,536 个 IP 65,536 个 IP 的网络监控
超级:1099元 每月无限 每月扫描多达 327,680 个 IP 327,680 个 IP 的网络监控
普通与高级功能差别:漏洞搜索过滤器
语法
- city:搜索指定城市 例如:city:"tokyo "
- country:搜索指定国家 例如:country:"JP"
- http.title:搜索指定网站标题 列如:http.title:"hacked by"
- http.html:搜索指定网页类容 例如:http.html:"hello world"
- http.status:搜索指定返回响应码 例如:http.status:"200"
- http.server:搜索指定返回中的server类型 例如:http.server:"PHP"
- net:搜索指定网络范围或 IP段,例如:net:"8.8.0.0/16"
- org:搜索指定的组织或机构,例如:org:"google"
- port:搜索指定的端口或服务,例如:port:"22"
- product:搜索指定的操作系统/软件/中间件,列如:product:"Samsung"
- screenshot.label:搜索指定描述图像内容的标签 列如:screenshot.label:"ics"
- os:搜索指定限定系统OS版本, 例如:os:"Windows Server 2008 R2"
- hostname:搜索指定的主机或域名,例如:hostname:"google"
- vuln:搜索指定CVE漏洞编号,例如:vuln:"CVE-2014-0723"
- isp:搜索指定的ISP供应商,例如:isp:"China Telecom"
- version:搜索指定的软件版本,例如:version:"1.2.3"
- geo:搜索指定的地理位置,参数为经纬度,例如:geo:"44.55,66.77"
搜索案例
搜索日本国家,中间件是Apache服务器并且状态码是200的机器
country:"JP" && apache && http.status:"200"
搜索日本国家,摄像头是海康威视
country:"JP" && Hikvision-Webs
搜索日本国家,操作系统是Windows Server 2008 R2并且开放3389端口的机器
country:jp && os:Windows Server 2008 R2 && port:3389
搜索日本国家,操作系统是Windows Server并且存在永恒之蓝漏洞的机器(更高级会员才能使用vuln)
country:jp && os:Windows Server * && vuln:CVE-2017-0146
shodan语法参考资料
Filter Reference https://www.shodan.io/search/filters
Shodan使用指南 - zha0gongz1 - 博客园https://www.cnblogs.com/H4ck3R-XiX/p/12950736.html
暗黑引擎 -- Shodan常用搜索语法_web安全工具库的博客-CSDN博客_shodan搜索语法https://blog.csdn.net/weixin_41489908/article/details/110404340
钟馗之眼--知道创宇
ZoomEye - Cyberspace Search Engine https://www.zoomeye.org/
免费:查询结果展示量:4百条 查询API额度:每月1w
高级:4800/年 查询结果展示量:1千条 查询API额度:每月3w
VIP:9600/年 查询结果展示量:2千条 查询API额度:每月4w
高级与VIP功能差别:蜜罐识别
语法
- country:搜索指定国家 例如:country:"JP"
- city:搜索指定城市 例如:city:"San Diego"
- subdivisions:搜索相关指定行政区的资产 例如:subdivisions:"****东京"
- ssl.cert.availability:搜索证书是否在有效期内 例如:ssl:"1"or"0"
- ip:搜索指定的IP(ipv4/6) 列如:ip:"8.8.8.8"
- cidr:搜索指定的IP段 列如:cidr:"52.2.254.36/24"
- org:搜索指定的组织或机构,例如:org:"google"
- isp:搜索相关网络服务提供商的资产 例如:isp:"China Mobile"
- port:搜索指定的端口或服务,例如:port:"22"
- hostname:搜索相关IP"主机名"的资产 例如:hostname:"google.com"
- site:搜索域名相关的资产 例如:site:"baidu.com"
- device:搜索路由器相关的设备类型 例如:device:"router"
- os:搜索指定限定系统OS版本, 例如:os:"Windows Server 2008 R2"
- title:搜索指定网页类容 例如:title:"hello world"
- app:搜索指定的组件 列如:app:"apache "
- ver:搜索指定的版本 l例如:ver"1.2.3"
- service:指定服务类型 例如:service:"ftp"
钟馗之眼语法参考资料
Zoomeye-钟馗之眼语法参考_Pika_mia的博客-CSDN博客_zoomeye语法
zoomeye用户使用手册_ncafei的博客-CSDN博客_zoomeye
ZoomEye(钟馗之眼)搜索技巧记录:- _H0f - 博客园
信息收集利器:ZoomEye - FreeBuf网络安全行业门户
360 QUAKE--360
360网络空间测绘 --- 因为看见,所以安全
免费 数据广度开放性:5百条 Quake积分:3千/月
高级:299/年 数据广度开放性:5千条 Quake积分 :3W/月
终身:999 数据广度开放性:1W条 Quake积分 :5W/月
功能差别:相似图标、深度识别、专用语法、圈内交流
邀请码:Cm2TX9
语法
- country:搜索指定国家(中文添加_cn) 例如:country:"JP"
- city:搜索指定城市 例如:city:"tokyo "
- owner:搜索IP归属单位 例如:owner:"tencent.com"
- isp:搜索IP归属运营商 例如:isp:"amazon.com"
- ip:查询IP地址或网段 列如:ip:"1.1.1.1/22"
- is_ipv6:查询IPV6格式的IP 列如:sis_ipv6:"true"
- port:搜索指定的端口或服务 例如:port:"[50 TO 60]"
- transport:查询udp数据 例如:transport:"udp"
- domain:查询资产域名 例如:domain:"google.com"
- hostname:查询主机名包含指定资产的数据 例如: hostname:"google.com"
- app:搜索指定的组件 列如:app:"apache "
- response:查询端口原生返回数据中包含指定参数的资产 列如:response:"google.com"
相应网站
Censys Search
GreyNoise
各个国家代码是什么?_百度知道
https://github.com/0x727/Space_view
聚合测绘空间搜索工具
项目名称:聚合测绘空间搜索(HW****蓝队情报收集) 项目地址:https://github.com/atdpa4sw0rd/Search-Tools
支持搜索的引擎:Fofa****、Zoomeye、Quake、Shodan、Censys、BinaryEdge、threatbook
- git clone https://github.com/atdpa4sw0rd/Search-Tools.git
- cd Search-Tools && pip3 install -r requirements.txt
- python3 search_main.py
APP、小程序、公众号信息收集
1、APP信息搜集
1.1、七麦数据
1.2、AppStore(安卓和IOS)
查询同开发者应用
2、微信公众号和小程序
通过微信搜索公众号并去关注,然后进去点击文章之类的,下拉可以看到它的网页来源,大部分是微信提供的,所以需要去阅读原文,但是原文也可能是第三方提供的,所以还需要自己自行去判断,找到它的url后又可以去爆一波子域名了,
4、logo
当你不确定目标产品是什么时,比如你不知道他是谁家的WAF或者路由器,可以利用查看网站logo地址,然后复制logo地址,点击按图片搜索,到谷歌里面查询;也可以把目标logo下载下来,利用上传图片来查询,通过搜索出来的结果可以判断目标产品和厂商。5、favicon.ico
首先先来介绍一下什么favicon.ico文件,所谓favicon,便是其可以让浏览器的收藏夹中除显示相应的标题外,还以图标的方式区别不同的网站。favicon.ico也被称为 website icon(网页图标)、page icon(页面图标)或url icon(URL图标),具体细节请问度娘。下面这个小东西就是 Favicon.ico,我们可以通过在shodan里寻找它的哈希并去查找相关资产,打开shodan页面,或者用shodan插件都行。
三、子域名收集(挖掘)
1、SSL(HTTPS)证书
点击浏览器网站旁边的小锁,然后点击证书就可以查看到该网站的SSL证书了
1.1、大厂商SSL证书一证多用
大厂商的SSL证书一般都是一证多用,根据证书透明日志这个特性,可以得知一些子域名。
如百度:百度一下,你就知道
1.2、HTTPS证书错误泄露域名
有时候https证书报错会泄露域名
1.3、在线网站证书查询
2、网络深度爬虫
以www.sina.com.cn为例,我们使用正则表达式抓取页面以sina.com.cn结尾的所有的URL(一级深度)。
\#!/usr/bin/env python
\# coding=utf-8
\# author=dave.fang@outlook.com
\# create=20160701
import re
import requests
from pprint import pprint
def crawl_page(url, domain):
print('[*] Crawl URL: {0}'.format(url))
found_url = set()
req = requests.get(url, timeout=15)
content = req.text
link_list = re.findall(r"(?<=href=\").+?(?=\")|(?<=href=\').+?(?=\')", content)
for url in link_list:
result = re.findall('http[s]?://(.*?)\.sina\.com\.cn', url)
if len(result) > 0:
found_url.add('{0}.{1}'.format(result[0], domain))
pprint(found_url)
if name == 'main':
page_url = 'http://www.sina.com.cn/'
main_domain = 'sina.com.cn'
crawl_page(page_url, main_domain)
一级深度爬出来的结果,就有146个子域名,这个小脚本权当抛砖引玉,可以再深度定制。
[*] Crawl URL: http://www.sina.com.cn/
{'2016.sina.com.cn',
...
[*] Found Links Num: 146
3、域传送漏洞
快速判断出某个特定区域的所有主机,获取域信息,如网络拓扑结构、服务器ip地址,为攻击者的入侵提供大量敏感信息。
3.1、常用DNS记录
主机记录(A记录): A记录是用于名称解析的重要记录,它将特定的主机名映射到对应主机的IP地址上。
IPv6主机记录(AAAA记录): 与A记录对应,用于将特定的主机名映射到一个主机的IPv6地址。
别名(CNAME记录): CNAME记录用于将某个别名指向到某个A记录上,这样就不需要再为某个新名字另外创建一条新的A记录。
电子邮件交换记录(MX记录): 记录一个邮件域名对应的IP地址
域名服务器记录 (NS记录): 记录该域名由哪台域名服务器解析
反向记录(PTR记录): 也即从IP地址到域名的一条记录
TXT记录:记录域名的相关文本信息
3.2、DNS区域传送
DNS服务器分为主服务器、备份服务器和缓存服务器。而域传送指的是一台备用服务器使用来自主服务器的数据更新自己的域(zone)数据库。这为运行中的DNS服务提供了一定的冗余度,其目的是为了防止主的域名服务器因意外故障变得不可用时影响到整个域名的解析。
3.3、域传送漏洞
DNS区域传送(DNS transfer)指后备DNS服务器从主服务器获取数据,以更新自己的zone数据库,这可以防止因主DNS服务器故障造成的业务中断,为DNS服务提供了冗余备份,但是许多DNS服务器却被错误配置成只要收到AXFR请求,就向对方进行域传送。
当存在这种错误配置时,攻击者就可以获取整个域的所有记录,造成整个网络架构泄露。正确的配置包括
allow-transfer {ipaddress;}; 通过ip限制可进行域传送的服务器
allow-transfer { key transfer; }; 通过key限制可进行域传送的服务器
3.4、检测
nmap脚本扫描
nmap --script dns-zone-transfer --script-args dns-zone-transfer.domain=targetdomain -p 53 -Pn dns.xxx
dig命令
dig @114.114.114.114 twosmi1e.com axfr @指定DNS服务器, 后面指定域名,axfr为域传送请求
nslookup
输入nslookup命令进入交互式shell界面;
server 命令参数设定查询将要使用的DNS服务器;针对某个域名可先输入域名获取dns信息。
ls命令列出某个域中的所有域名;如果太长不适合查看可定向保存至文件夹中。
exit命令退出
4、在线DNS数据
有许多第三方服务聚合了大量的DNS数据集,并通过它们来检索给定域名的子域名。
4.1、VirusTotal https://www.virustotal.com/#/home/search
4.2、DNSdumpster https://dnsdumpster.com/
4.2、dnsdb https://www.dnsdb.io/zh-cn/
5、自身泄漏
robots.txt
crossdomain.xml(跨域策略文件cdx)
从流量中分析提取
6、Github泄露
7、Google Hacking
搜索引擎查询都会做一些反制爬虫的手段,目前使用google去采集的方法是调用google的官方API,或者调用bing的API去辅助采集。
8、在线子域名查询
http://tool.chinaz.com/subdomain/
9、子域名枚举爆破
向DNS服务器(如8.8.8.8和8.8.4.4)请求字典里面的子域名,看返回的数据里面是否有记录,如果有则说明这是一个存在的子域名。比如说,向114.114.114.114定向请求www.qq.com的记录,返回了一条A记录指向182.254.34.74,就说明存在这个域名;相应的请求wooyun.qq.com并没有相应的记录返回,这就说明没有这个域名存在。
*注:一般只使用同一套主、副DNS,即8.8.8.8和8.8.4.4,DNS服务器不宜混搭,否则容易出现大量误报*
发包可以用第三方库,比如说lijiejie的subDomainBrute使用了dnspython这个包。使用第三方包的确好,但是免不了一层封装和不能很好地理解DNS报文协议,也可能会降低一定的效率,和没有解决泛解析的好办法。
**泛解析这个问题的解决方法很简单,向DNS请求*记录,然后把枚举子域名回来的记录和*的记录比对,如果相同则直接排除***。但是实际上,如果使用第三方包,不自己造轮子的话,是无法实现这个的。因为有些域名的记录是CNAME,而第三方包只能解析出IP却不会返回出CNAME给你。举个例子,以www.baidu.com,大家ping一下都知道会跳转到www.a.shifen.com,这就是一个CNAME记录,但是我们用第三方包只能获得最后解析出来的ip。
也就是说,如果一个域名他的泛解析是一个CNAME记录而且这又是一个CDN域名(恰巧这个又不少),那么不是自己定制的dns查询函数,一般都会出现大量泛解析误报。这就有点像是灯下黑,知道了怎么做就可以了,却一直没有解决的办法。
如果要自己定制的话需要研究一下DNS报文协议,这里引用两张图片做简要分析
这是向DNS请求部分的:
这是DNS服务器回传的报文:
只需要按照这个协议的格式做正则提取即可获得我们想要的信息,A记录的是固定的正则,CNAME记录需要嵌套一层正则才能获取。
这里提供几个测试域名,都有CNAME记录作为泛解析的。
9.1、OneForAll
下载地址:https://github.com/shmilylty/OneForAll
目前支持一键收集:子域、子域常用端口、子域Title、子域状态、子域服务器等
020_信息收集_子域名OneForAll
9.2、subDomainBrute
工具地址:https://github.com/lijiejie/subDomainsBrute
高并发的DNS暴力枚举工具
020_信息收集_子域名subDomainsBrute
9.3、Layer
Layer子域名挖掘机是一款域名查询工具,可提供网站子域名查询服务;拥有简洁的界面、简单的操作模式,支持服务接口、暴力搜索、同服挖掘三种模式,支持打开网站、复制域名、复制IP、复制CDN、导出域名、导出IP、导出域名+IP、导出域名+IP+WEB服务器以及导出存活网站!
通过查看WEB服务器信息,筛选版本比较低的服务器(win2003+iis6.0),查看每个子域名是否开启常见的端口(3389、3306、21端口等),利用爆破工具进行枚举,会达到事半功倍的效果。
9.4、FuzSub
https://github.com/DavexPro/FuzSub
9.5、Fierce
https://github.com/davidpepper/fierce-domain-scanner
9.6、御剑
9.7、wydomain
9.8、orangescan
9.9、DNSRecon
9.10、K8
四、IP信息收集
首先,我们要判断该域名是否存在CDN的情况,我们可以去在线CDN查询网站:http://ping.chinaz.com/ 。如果查询出的ip数量大于一个的话,则说明该ip地址不是真实的服务器地址。以我的经验来看,如果是2个或者3个,并且这几个地址是同一地区的不同运营商的话,则很有可能这几个地址是服务器的出口地址,该服务器在内网中,通过不同运营商NAT映射供互联网访问,同时采用几个不同的运营商可以负载均衡和热备份。如果是多个ip地址,并且这些ip地址分布在不同地区的话,则基本上可以断定就是采用了CDN了。
1、CDN概念
内容分发网络(content delivery network或content distribution network,缩写作CDN)指一种通过互联网互相连接的电脑网络系统,利用最靠近每位用户的服务器,更快、更可靠地将音乐、图片、视频、应用程序及其他文件发送给用户,来提供高性能、可扩展性及低成本的网络内容传递给用户,主要就是通过多个不同节点加快网站的访问速度。
2、判断是否真实IP
2.1、nslookup
命令端
意义:用了CDN的会返回多个IP地址
在线工具
http://tools.bugscaner.com/nslookup/
http://tool.chinaz.com/nslookup/
2.2、多地ping
看IP是否一致,在线工具:
2.3、IP反查
反查IP有多个域名,那IP多半不是真实IP
3、绕CDN找真实IP
定位真实ip比较快的方法
我们很多时候做渗透的时候,总会遇到CDN,这样
这里我们借助fofa
思路如下
我们想确定一个网站的真实IP地址,通常现在网站都会使用https协议,用到SSL证书是必不可少的,绝大多数企业证书都是通配符证书,因此我们可以把证书的序列号拿下来然后搜索这个证书用在了哪些业务里,然后如果部分业务中没有使用CDN或者没有覆盖到CDN,真实ip就出现了
3.1、子域名
CDN不便宜,所以很多站都是主站做了CDN,而很多小站没做CDN,所以可以通过上面收集到的子域名查询到真实的IP地址,进而知道网站真实IP的C段了。
3.2、历史DNS解析记录
查询未使用CDN前的DNS服务器解析记录,查看IP与域名绑定的历史记录,可能会存在使用CDN前的记录
https://dnsdb.io/zh-cn/ DNS查询
http://toolbar.netcraft.com/site_report?url= 在线域名信息查询
http://viewdns.info/ DNS、IP等查询
https://tools.ipip.net/cdn.php CDN查询IP
3.3、邮件服务器
大部分网站会有注册,订阅,找回密码的功能会发送邮件,因为邮件系统一般都在内部,所以就可以通过邮箱获得真实的IP,邮件头信息中会有真实IP
3.4、信息泄漏
有些网站会有phpinfo页面,一些debug模式不关等信息泄漏问题,上面会有真实IP
3.5、网络空间搜索引擎
通过shadan、fofa等搜索引擎,通过对目标
网站的特征进行搜索,很多时候可以获取网站的真实IP
3.6、利用SSL证书查询
https://censys.io/certificates/
3.7、国外访问
一般的站点在国内可能会有CDN,但是在国外的用户覆盖率比较低,所以通过国外的节点进行请求往往能获取真实IP
3.8、LTM解码法
当服务器使用F5 LTM做负载均衡时,通过对set-cookie关键字的解码真实ip也可被获取,例如:Set-Cookie:
BIGipServerpool_8.29_8030=487098378.24095.0000,先把第一小节的十进制数即487098378取出来,然后将其转为十六进制数1d08880a,接着从后至前,以此取四位数出来,也就是0a.88.08.1d,最后依次把他们转为十进制数10.136.8.29,也就是最后的真实ip。
五、基本目录、敏感目录及文件
由于发布网站时,服务器配置问题,导致目录浏览功能打开,从而引起信息泄露,造成安全隐患。在信息收集过程中,需要收集的敏感目录/文件信息包括:
1.robots.txt
2.crossdomin.xml
3.sitemap.xml
4.后台目录
5.网站安装包
6.网站上传目录
7.mysql管理页面
8.phpinfo
9.网站文本编辑器
10.测试文件
11.网站备份文件(.rar、zip、.7z、.tar.gz、.bak)
12.DS_Store 文件
13.vim编辑器备份文件(.swp)
14.WEB---INF/web.xml文件
目录扫描对应信息收集来说特为重要,比如robots文件当中就可能泄露网站的后台或者CMS信息等,安装包中便泄露了网站的源码,phpinfo泄露了服务器的一些配置信息,编辑器、上传页面便可以进行利用相关的漏洞进行渗透,mysql、后台管理页面可以进行枚举爆破来尝试登陆进行下一步的安全测试。
扫描网站目录结构,看看是否可以遍历目录,或者敏感文件泄漏
后台目录:弱口令,万能密码,爆破
安装包:获取数据库信息,甚至是网站源码
上传目录:截断、上传图片马等
mysql管理接口:弱口令、爆破,万能密码,然后脱裤,甚至是拿到shell
安装页面 :可以二次安装进而绕过
phpinfo:会把你配置的各种信息暴露出来
编辑器:fck、ke、等
iis短文件利用:条件比较苛刻 windows、apache等
robots.txt 文件是专门针对搜索引擎机器人robot 编写的一个纯文本文件。我们可以在这个文件中指定网站中不想被robot访问的目录。这样,我们网站的部分或全部内容就可以不被搜索引擎收录了,或者让搜索引擎只收录指定的内容。因此我们可
以利用robots.txt让Google的机器人访问不了我们网站上的重要文件,GoogleHack的威胁也就不存在了。
假如编写的robots.txt文件内容如下:
User-agent: *
Disallow: /data/
Disallow: /db/
Disallow: /admin/
Disallow: /manager/
Allow:/images/
其中"Disallow"参数后面的是禁止robot收录部分的路径,例如我们要让robot禁止收录网站目录下的"data"文件夹,只需要在Disallow参数后面加上 /data/ 即可。如果想增加其他目录,只需按此格式继续添加。文件编写完成后将其上传到网站的根目录,就可以让网站远离Google Hack了。
虽然robots文件目的是让搜索蜘蛛不爬取想要保护的页面,但是如果我们知道了robots文件的内容的话,我们就可以知道目标网站哪些文件夹不让访问,从侧面说明这些文件夹是很重要的了。
1、dirsearch
工具地址:https://github.com/maurosoria/dirsearch
002_目录信息_dirsearch
2、dirbuster
当使用扫描工具对站点进行扫描,网站存在WAF后,会给我们的工具进行拦截,这时候我们需要修改User Agent值来绕过WAF的拦截,而DirBuster这款扫描工具便可以修改User Agent值
Mozilla/5.0 (compatible; Baiduspider/2.0; http://www.baidu.com/search/spider.html) 百度蜘蛛抓取欺骗
Mozilla/5.0 (compatible; Googlebot/2.1; http://www.google.com/bot.html) 谷歌蜘蛛抓取欺骗
Firefox 3.6 Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.2.8;baidu Transcoder) Gecko/20100722 Firefox/3.6.8 ( .NET CLR 3.5.30729) 百度转码浏览欺骗
Chrome Mozilla/5.0 (en-us) AppleWebKit/534.14 (KHTML, like Gecko; Google Wireless Transcoder) Chrome/9.0.597 Safari/534.14 谷歌转码浏览欺骗
3、7kbscan工具:https://github.com/7kbstorm/7kbscan-WebPathBrute
4、Webrobot
5、御剑
6、爬虫-中国菜刀
7、wwwscan
8、cansina
9、dirmap
10、Webdirscan
11、BBscan
12、GSIL
六、端口扫描
通过端口扫描可以判断出网站开启的服务,从而通过爆破枚举或者漏洞利用进行突破,进一步提升网站权限,常见的如 135 、137 、138 、139 、445,这几个端口经常爆发漏洞。
扫描到的端口也许是网站的一个旁站,可以尝试对旁站进行漏洞探测,但是有些服务开启的端口可能被管理员修改,通过手工判断分析即可(例如开启了8888端口,通过尝试远程桌面连接确定该端口为3389修改过的端口)。
windows下的命令
显示一个所有的有效连接信息列表,包括已建立的连接(ESTABLISHED ),也包括监听连接请求(LISTENING )的那些连接,
断开连接(CLOSE_WAIT )或者处于联机等待状态的(TIME_WAIT )等 :netstat -a
以数字形式显示地址和端口号,显示所有已建立的有效连接:netstat -n
列出所有端口的情况:netstat -ano
查看被占用端口80对应的应用的PID:netstat -ano|findstr "80"
查看80端口被哪个进程或程序占用:tasklist|findstr "80"
结束该进程或程序:taskkill /f /t /im XX.exe
1、各服务开启的默认端口以及攻击方向
|-------------------------|--------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 服务 | 默认端口 | 可能的攻击方向 |
| tcpmux | 1 | 寻找SGIIrix机器,利用默认无密码账户入侵(Irix机器发布时含有的默认无密码账户如IP、GUESTUUCP等可能被利用)1 |
| Echo | 7 | 当搜索Fraggle放大器时,发送到X.X.X.0和X.X.X.255的信息可能被利用,存在安全风险1 |
| CharacterGenerator | 19 | UDP版本收到UDP包后回应含垃圾字符包,TCP连接时发送含垃圾字符数据流直至连接关闭。黑客可利用IP欺骗发动DoS攻击,如伪造两个chargen服务器间UDP包,或通过Fraggle DoS攻击向目标端口广播带伪造受害者IP数据包使受害者回应过载1 |
| FTP | 21 | 寻找打开anonymous的FTP服务器(带有可读写目录的服务器)进行攻击1 |
| Ssh | 22 | 如果配置成特定模式,许多使用RSAREF库的版本存在漏洞可被攻击1 |
| Telnet | 23 | 扫描此端口可用于寻找机器运行的操作系统,也可通过其他技术获取密码,木马TinyTelnetServer开放此端口1 |
| SMTP | 25 | 入侵者寻找SMTP服务器传递SPAM,多种木马(Antigen、EmailPasswordSender等)开放此端口1 |
| BootstrapProtocolServer | 67 | 黑客可进入,分配地址将自己作为局部路由器发起中间人攻击1 |
| DomainNameServer(DNS) | 53 | 入侵者可能试图进行区域传递(TCP)、欺骗DNS(UDP)或隐藏其他通信1 |
| HTTP | 80 | 可被用于各种针对Web服务的攻击,例如SQL注入、跨站脚本攻击等(未在搜索结果明确提及,但为常见攻击方向) |
| POP3 | 109 | 存在用户名和密码交换缓冲区溢出等弱点,入侵者可在真正登陆前进入系统,登陆后也存在其他缓冲区溢出错误1 |
| SUN公司的RPC服务 | 110 | 未提及明确攻击方向(根据搜索结果) |
| AuthenticationService | 113 | 可作为许多服务(FTP、POP、IMAP、SMTP和IRC等)的记录器被利用,阻断此端口可能影响客户端与E - MAIL服务器连接速度1 |
| NEWS新闻组传输协议 | 119 | 未提及明确攻击方向(根据搜索结果) |
2、在线查询网站
https://tool.lu/portscan/index.htm
3、端口扫描工具
端口扫描工具常见有nmap和masscan。nmap扫描的准确性较高,但是扫描的比较慢。masscan扫描的比较快,但是准确性较低,如果网站存在WAF可以通过调节扫描线程或者利用FTP连接工具、SSH连接工具、Mysql连接等工具进行手工探测
3.1、nmap(zmap)
Nmap扫描中一些常见的服务
msmq? :默认对于的是1801端口,是 MSMQ Microsoft Message Queuing微软消息队列的简称,是windows系统提供的一个功能,开启了该功能,则默认1801端口打开。该服务暂未发现漏洞。
msrpc:Microsoft Remote Procedure Call微软远程过程调用,是 Windows 操作系统使用的一个协议。RPC 提供一种内部进程通讯机制,允许在一台电脑上运行的程序无缝的执行远程系统中的代码。
tcpwrapped:端口状态后经常标记tcpwrapped。tcpwrapped表示服务器运行 tcp_wrappers服务。tcp_wrappers是一种应用级防火墙。它可以根据预设,对SSH、Telnet、FTP服务的请求进行拦截,判断是否符合预设要求。如果符合,就会转发给对应的服务进程;否则,会中断连接请求。这说明tcp三次握手已经完成,但是并没有和目标主机建立连接。这表明,虽然目标主机的某项服务是可提供的,但你不在允许访问主机的名单列表中。当大量的端口服务都为tcpwrapped时,这说明可能是有负载均衡或者防火墙阻断了你的连接请求。
Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP):这是SQL Server中的SQL Reporting Service 服务使用的Microsoft HTTPAPI。
3.2、masscan
3.3、ScanPort
通过ping等方式获取网站IP,然后开始扫描
3.4、webrobot
七、旁站C段
旁站:是和目标网站在同一台服务器上的其它网站
C端:是和服务器IP处在一个C段的其他服务器
对于防护比较强的主站,通常是很难挖掘到漏洞的,这时需要查看该站点的旁站,通过探测旁站的漏洞进行利用,从而拿下主站的权限。
当网站不存在旁站时,就需要进行C段探测(有些网站买断了相邻的几个IP做为分站,如果拿到分站的管理员敏感信息,如密码之类的,可以尝试对主站进行撞库),通过拿下C段中服务器进行ARP欺骗达到劫持域名的效果
对于红蓝对抗和护网,C段扫描比较有意义。对于单独网站的渗透测试,C段扫描意义不大。C段指的是同一内网段内的其他服务器,每个IP有ABCD四个段,举个例子,192.168.0.1,A段就是192,B段是168,C段是0,D段是1,而C段嗅探的意思就是拿下它同一C段中的其中一台服务器,也就是说是D段1-255中的一台服务器,然后利用工具嗅探拿下该服务器。
1、在线查询
1.1、站点
1.2、Google Hacking、Bing
site:125.125.125.*
http://cn.bing.com/search?q=ip:111.111.111.111
1.2、网络空间搜索引擎
fofa、shodan在线工具 语法:ip="106.15.141.18/24"
2、探测工具
2.1、K8Cscan
https://github.com/k8gege/K8CScan
2.2、nmap、masscan
nmap -p 22,21,443,8080-Pn 172.178.40.0/24
nmap -p 80,8080 --open ip/24
masscan -p 22,21,443,8080-Pn --rate=1000172.178.40.0/24
2.3、goby
2.4、御剑
2.5、北极熊扫描器
2.6、通过手动ping
八、整站分析
1、服务器类型
服务器信息包括服务器用的操作系统:Linux 还是 Windows 。现在企业网站服务器的操作系统有百分之九十以上用的是Linux操作系统。知道了服务器的操作系统之后,还需要知道操作系统使用的具体版本。因为很多低版本的操作系统都存在已知的漏洞。
判断是Linux还是Windows最简单就是通过ping来探测,Windows的TTL值都是一般是128,Linux则是64。所以大于100的肯定是Windows,而几十的肯定是Linux。但是,通过TTL值来判断服务器类型也不是百分之百准确的,有些windows服务器的TTL值也是几十,而且有的服务器禁止ping。
而判断目标网站服务器的具体的版本的话,可以采用 nmap 进行扫描, -O 和 -A 参数都能扫描出来
检测服务器平台、版本等,获取后可以制定漏洞挖掘方案(如IIS6.0存在解析漏洞等)。
将首页或者其他页面通过修改大小写辨别网站所使用的系统:
区分大小写(页面报错)--Linux
不区分大小写(页面正常)--Windows
WEB信息收集----指纹
一、网站指纹(web指纹)
Web指纹定义**:Web指纹是一种对目标网站的识别技术,通过识别网站所使用的服务器、运行的脚本、安装的CMS等信息对目标进行精准的分类和定位。Web指纹识别可以帮助安全研究人员在安全测试中快速了解目标网站的基本信息,有助于搜索其相关漏洞。**
二、CMS简介
内容管理系统(Content Management System,CMS),是一种位于WEB前端(Web 服务器)和后端办公系统或流程(内容创作、编辑)之间的软件系统。内容的创作人员、编辑人员、发布人员使用内容管理系统来提交、修改、审批、发布内容。这里指的"内容"可能包括文件、表格、图片、数据库中的数据甚至视频等一切你想要发布到Internet、Intranet以及Extranet网站的信息。
常见的CMS系统:
企业网站系统:MetInfo(米拓)、蝉知、SiteServer CMS
B2C商城系统:商派shopex、ecshop、hishop、xpshop
门建站系统:DedeCMS(织梦)、帝国CMS、PHPCMS、动易、cmstop
博客系统:wordpress、Z-Blog
论坛社区:discuz、phpwind、wecenter
问题系统:Tipask、whatsns
知识百科系统:HDwiki
B2B门户系统:destoon、B2Bbuilder、友邻B2B
人才招聘网站系统:骑士CMS、PHP云人才管理系统
房产网站系统:FangCms
在线教育建站系统:kesion(科汛)、EduSoho网校
电影网站系统:苹果cms、ctcms、movcms
小说文学建站系统:JIEQI CMS、linhuaming
根据编程语言也可以分为
php类cms系统:dedeCMS、帝国CMS、php168、phpCMS、cmstop、discuz、phpwind等
asp类cms系统:zblog、KingCMS等
.net类cms系统:EoyooCMS等
java类cms系统: RuoYi等
国外的著名cms系统:joomla、WordPress 、magento、drupal 、mambo等
(1):DedeCMS(织梦)
织梦内容管理系统(DedeCMS)以简单、实用、开源而闻名,是国内最知名的PHP开源网站管理系统,也是使用用户最多的PHP类CMS系统。DedeCMS免费版主要目标锁定在个人站长,功能更加专注于个人网站或中小型门户的构建,当然也有企业用户和学校等在使用本系统。
(2):Discuz
Crossday Discuz! Board(简称Discuz!)是康盛创想(北京)科技有限公司推出的一套通用的社区论坛软件系统,用户可以在不需要任何编程的基础上,通过简单的设置和安装,在互联网上搭建起具备完善功能、很强负载能力和可高度定制的论坛服务。Discuz! 的基础架构采用世界上最流行的web编程组合PHP+MySQL实现,是一个经过完善设计,适用于各种服务器环境的高效论坛系统解决方案。
(3):帝国CMS
帝国CMS又称为Empire CMS,简称Ecms,它是基于B/S结构并且功能强大而易用的网站管理系统。它采用了系统模型功能:用户通过此功能可直接在后台扩展与实现各种系统,因此又被称为是万能建站工具。帝国CMS具有强大的功能,并且现在已经全部开源。
(4):WordPress
WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站,WordPress也被当作一个内容管理系统(CMS)。WordPress是一款个人博客系统,使用PHP和MySQL语言进行开发的。
(5)RuoYi
是一款基于Spring boot框架的权限管理系统,你可以轻松的使用若依来进行开发,更加专注于业务逻辑的开发,而不用在意一些繁琐的增删改查操作。
也是现在红队必会的CMS框架,很多网站都是二开若依
三、判断CMS的方法
1.查看robots.txt文件
robots.txt文件中存放的是一些禁止被爬虫爬取的目录,因此有些robots.txt文件中就会存放一些关于CMS的敏感信息。例如如果robots.txt文件中存在wp-admin目录,那么就表名这个CMS是WordPress。
2.查看网页源代码
在有些网站中的源代码中会存放着网站的CMS信息和相应的版本信息,通过查看源代码可以发现使用的CMS类别。
3.通过版权信息
有些网站的版权信息中会包含使用的CMS类别和版本信息
4.提炼特殊路由
不同的站点路由其实是不一样的,在这里的话若依站点最特殊的路由是prod-api
因此我们从路由的角度来体验
一种是找超链接的提炼方式
body=prod-api/
可以找到站点中带有若依的超链接路由
打开之后我们就可以发现确实超链接指向的是若依的系统
如果收集的若依系统够多,可以发现存在二开的系统有其他的路由,比如admin-api dev-api 等等
另一种方式可能就需要用到搜索引擎去相辅相成的寻找特殊路由
四.使用工具进行扫描
1.御剑Web指纹识别 2.WhatWeb 3.WebRobo 4.椰树 5.轻量Web指纹识别 6.在线工具
潮汐指纹识别 :http://finger.tidesec.net/
BugScaner http://wahtweb.bugscaner.com/look/
云悉指纹识别 :https://www.yunsee.cn/
whatweb https://whatweb.net
BugScaner :http://whatweb.bugscaner.com/look
工具识别
工具1--Ehole:https://github.com/EdgeSecurityTeam/EHole EHole是一款对资产中重点系统指纹识别的工具,在红队作战中,信息收集是必不可少的环节,如何才能从大量的资产中提取有用的系统(如OA、VPN、Weblogic...)。EHole旨在帮助红队人员在信息收集期间能够快速从C段、大量杂乱的资产中精准定位到易被攻击的系统,从而实施进一步攻击。
工具2--TideFinger(潮汐指纹识别工具版):https://github.com/TideSec/TideFinger
工具3--WhatWeb(kali集成了该工具):https://github.com/urbanadventurer/WhatWeb
工具4--Finger:https://github.com/EASY233/Finger 一款红队在大量的资产中存活探测与重点攻击系统指纹探测工具。
手动识别
1、根据HTTP响应头判断,重点关注X-Powered-By、Cookie等字段。
2、根据HTML特征,重点关注body、title、meta等标签的内容和属性。
3、根据特殊的CLASS类型判断,HTML中存在特定CLASS属性的某些DIV标签。
Wappalyzer插件识别
Wappalyzer是一款功能强大且非常实用的Chrome网站技术分析插件,通过该插件能够分析目标网站所采用的平台构架、网站环境、服务器配置环境、JavaScript框架、编程语言、中间件架构类型等参数,还可以检测出CMS的类型。
项目地址:https://www.wappalyzer.com/
安装:google商店安装自行下载
1、 云悉WEB资产梳理
http://www.yunsee.cn/,根据IIS版本判断Windows系统,系统对应版本通过搜索引擎查。**注:使用AppScan、WVS等扫描工具也可以判断。**
2、网站容器
知道了这些信息之后,我们就需要知道网站用的web服务器是什么类型的:Apache、Nginx、Tomcat 还是 IIS。知道了web服务器是哪种类型后,我们还要探测web服务器具体的版本。比如Ngnix版本<0.83会有解析漏洞 ,IIS6.0会有文件名解析漏洞、IIS7.0会有畸形解析漏洞等。不同的web服务器版本,存在着不同漏洞。
搭建网站的服务组件,例如:iis、Apache、nginx、tomcat等,通过网站容器判断存在的漏洞(如:Apache解析漏洞,nginx解析漏洞)。
2.1、火狐渗透测试浏览器
2.2、云悉WEB资产梳理
2.3、脚本类型
我们需要知道网站用的脚本类型:php 、Jsp 、Asp 、Aspx 。
1)可以根据网站URL来判断
2)site:xxx filetype:php
3)可以根据Firefox的插件来判断
3.1、通过修改首页文件后缀查看页面响应判断
通过修改index.xxx后缀内容(为ASP\ASPX\PHP\JSP),查看页面返回情况,页面返回正常便可以判断脚本类型,判断脚本类型是信息收集中最基本的工作之一。
3.2、通过搜索框查找相关文章辨别脚本类型
在网站搜索框中输入任意字符,查询后,通过浏览器上的URL判断网站脚本类型。
3.3、通过爬虫工具爬取网站目录判断网站脚本类型
Webrobot
4、CMS类型
在渗透测试中,对目标服务器进行指纹识别是相当有必要的,因为只有识别出相应的Web容器或者CMS,才能查找与其相关的漏洞,然后才能进行相应的渗透操作。这是我们想要识别这些网站的指纹,我们就可以利用以下一些指纹识别在线网站。
识别dedecms、phpcms、emlog、帝国cms等,通过网站使用的CMS找取该CMS已经公布的漏洞进行利用,进一步渗透网站。
4.1、云悉指纹 https://www.yunsee.cn/
4.2、ThreatScan https://scan.top15.cn/web/
4.3、wappalyzer https://www.wappalyzer.com/
4.4、WhatWeb http://whatweb.net/
4.5、BugScaner http://whatweb.bugscaner.com/
4.6、潮汐指纹http://finger.tidesec.net/
指纹识别(全)
1、指纹识别--在线平台
(3)http://whatweb.bugscaner.com/look/
(4)https://fp.shuziguanxing.com/
2、指纹识别--本地化工具
(1)WhatWeb:https://github.com/urbanadventurer/WhatWeb
(2)Wapplyzer:https://github.com/AliasIO/Wappalyzer
(3)Whatruns:https://www.whatruns.com/downloads/
(4)Plecost:https://github.com/iniqua/plecost
(5)BlindElephant:https://github.com/lokifer/BlindElephant
(6)WebEye:https://github.com/zerokeeper/WebEye/
(7)WTF_Scan:https://github.com/dyboy2017/WTF_Scan
(8)Webfinger:https://github.com/se55i0n/Webfinger
(9)FingerPrint:https://github.com/tanjiti/FingerPrint
(10)御剑web指纹识别程序:https://www.webshell.cc/4697.html
(11)Test404轻量WEB指纹识别:https://www.test404.com/post-1618.html
(12)w11scan分布式WEB指纹识别平台:https://github.com/w-digital-scanner/w11scan
(13)Dayu指纹识别工具:https://github.com/Ms0x0/Dayu
3、指纹识别--whatweb
WhatWeb是一个开源的网站指纹识别软件。可识别Web技术,包括内容管理系统(CMS),博客平台,统计/分析包,Javascript库,服务器和嵌入式设备。它有超过1000个插件,每个插件都能识别不同的东西。WhatWeb还标识版本号,电子邮件地址,账户ID,Web框架模块,SQL错误等
安装:
Ubuntu:apt-get install whatweb
Centos:yum updateyum install ruby ruby-devel rubygems
wget http://www.morningstarsecurity.com/downloads/whatweb-0.4.7.tar.gz
tar xzvf whatweb-0.4.7.tar.gz
cd whatweb-0.4.7
./whatweb url
使用
whatweb www.target.com #扫描单个域名
whatweb -i target.txt #批量扫描
whatweb www.target.com --log-xml=baidu.xml #保存结果
whatweb --no-errors -t 255 内网网段 #快速本地扫描(扫描内网主机)
-i 指定要扫描的文件
-v 详细显示扫描的结果
-a 指定运行级别,1-4
4、指纹识别--Wapplyzer
Wappalyzer最新版是一款强大的网站技术栈嗅探工具,Wappalyzer官方版插件能够快速识别一个网站用到的前后端技术框架、运行容器、脚本库等,Wappalyzer还提供跨平台实用程序,能够发现网站上使用的技术,还可以检测内容管理系统,电子商务平台,Web框架,服务器软件,分析工具等。
该软件是浏览器插件,所以安装方式也比较简单,只需要在浏览器的插件管理器中下载安装该插件即可。下面以火狐浏览器为例介绍其安装和使用
Wapplyzer:
打开火狐浏览器在输入框中输入about:addons,找到插件,再查询输入框中输"Wappalyzer","添加到firefox",在浏览器中即可使用。打开待测试网站,右击该插件即可。
5、数据库类型
我们需要知道网站用的是哪种类型的数据库:Mysql、Oracle、SqlServer 还是 Access 。虽然这几种数据库的语法大体上相同,但是还是有区别的。所以我们还是要知道目标网站用的是哪种数据库,并且数据库是哪个版本的
各端口对应数据库类型:
sql server--1433
oracle--1521
mysql--3306
postgresql--5432
access--默认不开放连接端口,数据库存储在FTP服务器上。
几种数据库的区别:
Access 全名是Microsoft Office Access,是由微软发布的关联式数据库管理系统。小型数据库,当数据库达到100M左右的时候性能就会下降。数据库后缀名:.mdb 一般是asp的网页文件用access数据库
SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS),是一个比较大型的数据库。端口号为1433。数据库后缀名 .mdf
MySQL 是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL是最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的应用软件之一,MySQL数据库大部分是php的页面。默认端口是3306
Oracle又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。常用于比较大的网站。默认端口是1521
首先,成本上的差距,access是不要钱的,mysql也是开源的,sql server 是收费的一般也就几千,Oracle的费用则数万。其次,处理能力,access支持千以内的访问量,sql server支持几千到上万的访问,而Oracle则支持海量的访 问。再次,从数据库的规模来看,access是小型数据库,,mysql 是中小型数据库,sql server是中型数据库,Oracle是大型数据库。
通常情况:access--asp mysql--php oracle--jsp sqlserver--aspx
postgresql--php,常见搭配:
ASP 和 ASPX:ACCESS、SQL Server
PHP:MySQL、PostgreSQL
JSP:Oracle、MySQL
端口扫描判断数据库类型的方法较为准确,但是管理员也可能选择不开放外网数据库端口,开放内网的数据库端口,也有些管理员喜欢使用站库分离的方法或者使用WAF进行拦截端口扫描来防护站点,这样我们通过端口扫描判断数据库类型的方法便有些失效了。
6、WAF
判断安全狗、阿里云云盾、360网站卫士、护卫神等WEB应用程序防火墙,便于采取绕过WAF的办法。
Nmap探测WAF有两种脚本。
一种是http-waf-detect。
命令:nmap -p80,443 --script=http-waf-detect ip
一种是http-waf-fingerprint。
命令:nmap -p80,443 --script=http-waf-fingerprint ip
WAFW00F探测WAF
命令:wafw00f -a 域名
6.1、在线资产识别
云悉WEB资产梳理
6.2、手动检测是拦截页面或者HTTP可识别字段
在搜索框中输入XSS弹窗代码 ,WAF拦截后判断WAF。
在可能存在的注入页面输入检测注入漏洞代码and 1=2,被WAF拦截后判断WAF。
九、后台查找
·1弱口令默认后台:admin,admin/login.asp,manage,login.asp等等常见后台
·2查看网页的链接;一般来说,网站的主页有管理登陆类似的东西,大多数在网站底部版权处或鲁在冒页导肌程等,有些可能被管理员删掉
·3查看网站图片的属性有可能图片是上传大管理后台目录,但是是在前台显示
·4查看网站使用的管理系统,从而确定后台
·5用工具查找:wwwscan,intellitamper,御剑,进行爬虫、字典穷举扫描
·6robots.txt的帮助:robots.txt文件告诉蜘蛛程序在服务器上什么样的文件可以被查看
·7 GoogleHacker通过语法查找后台
·8查看网站使用的编辑器是否有默认后台,FCK、ewb等默认后台
·9短文件利用短文件漏洞进行猜解
·10、子域名有可能管理后台为admin.xxxxx.com、login.xxxxx.com
·11sqlmap-sql-shell load_file('d:/wwroot/index.php');利用sql注入查看文件源码获取后台
·12社工、XSS利用社会工程系获取后台,利用存储型XSs获取后台