绕过CDN获取服务器真实IP地址
相关视频链接:(https://blog.sechelper.com/20220914/penetration-testing-guide/cdn-bypass)
CDN(Content Delivery Network) 内容分发网络。使用户就近获取所需内容,降低网络拥塞,提高响应速度。
网络空间搜索引擎
分析下网站关键元素信息
- 域名
- ip
- title
- icp
- logo
- body
以佛法为例子,其它引擎用法看文章后面
"sechelper.com" |
使用以上搜索语法可以收集到更多域名和IP信息。还可以结合公司地理位置、云厂商、IDC机房等多种因素精准搜索,例如:
asn="37963" && title="至察助安" |
参考:
什么是 ASN?
Shodan
Shodan是世界上第一个互联网连接设备搜索引擎。了解互联网智能如何帮助您做出更好的决策。
| 示例 | 说明 |
|---|---|
| HTTP Strict-Transport-Security | 需要HTTPS连接的网站 |
| product:Apache | Apache web服务器 |
| http.html:Apache | 在HTML中包含“Apache”一词的网站 |
| Apache | 标题中有“Apache”一词的服务 |
| hostname:google.com,facebook.com | 主机名包含“google.com”或“facebook.com”的服务 |
| http.component:bootstrap | 使用Bootstrap CSS框架的网站 |
| ssl.version:tlsv1.3 HTTP | 支持TLS 1.3的网站 |
| ssl.alpn:h2 | 支持HTTP/2的网站 |
| ssl.version:sslv2 -ssl.version:tlsv1,tlsv1.2,tlsv1.3 | 支持SSLv2但不支持TLS的服务 |
| ssl.cert.subject.cn:google.com | 为*.google.com颁发证书的SSL服务(HTTPS、SMTPS、POP3等) |
| ssl.cert.subject.cn:google.com -HTTP | 为*.google.com颁发证书的非HTTPS SSL服务 |
| ssh port:22,3333 | 端口22或3333上的SSH |
| ssh -port:2222 | 非标准端口上的SSH |
| has_screenshot:true rfb disabled port:80,443 | 隐藏在公共web端口后面的公共VNC服务 |
| has_screenshot:true encrypted attention | 搜索远程桌面中的OCR,以查看是否被勒索软件破坏 |
| screenshot.label:ics | 基于机器学习的工业控制系统辨识 |
| tag:ics | 运行工业协议的工业控制系统(即无网络服务器) |
| vuln:CVE-2014-0160 | 易受心脏出血影响的服务 |
| vuln:CVE-2019-19781 country:DE,CH,FR | 德国、瑞士或法国可能存在CVE-2019-19781漏洞的服务器 |
更多实例:
https://www.shodan.io/search/filters
https://www.shodan.io/search/examples
FOFA
FOFA 是白帽汇推出的一款网络空间搜索引擎,它通过进行网络空间测绘,能够帮助研究人员或者企业迅速进行网络资产匹配,例如进行漏洞影响范围分析、应用分布统计、应用流行度排名统计等。
| 逻辑连接符 | 具体含义 |
|---|---|
| = | 匹配,=""时,可查询不存在字段或者值为空的情况 |
| == | 完全匹配,==""时,可查询存在且值为空的情况 |
| && | 与 |
| || | 或者 |
| != | 不匹配,!=""时,可查询值为空的情况 |
| ~= | 正则语法匹配专用 |
| () | 确认查询优先级,括号内容优先级最高 |
搜索实例
| 例子 | 说明 |
|---|---|
| title=“beijing” | 从标题中搜索“beijing” |
| header=“elastic” | 从http头中搜索“elastic” |
| body=“商城” | 从html正文中搜索“商城” |
| fid=“sSXXGNUO2FefBTcCLIT/2Q==” | 查找相同的网站指纹 |
| domain=“qq.com” | 搜索根域名带有qq.com的网站。 |
| icp=“京ICP证030173号” | 查找备案号为“京ICP证030173号”的网站 |
| js_name=“js/jquery.js” | 查找网站正文中包含js/jquery.js的资产 |
| js_md5=“82ac3f14327a8b7ba49baa208d4eaa15” | 查找js源码与之匹配的资产 |
| cname=“ap21.inst.siteforce.com” | 查找cname为"ap21.inst.siteforce.com"的网站 |
| cname_domain=“siteforce.com” | 查找cname包含“siteforce.com”的网站 |
| icon_hash=“-614101761” | 搜索使用此 icon 的资产 |
| host=“.gov.cn” | 从url中搜索”.gov.cn” |
| port=“6379” | 查找对应“6379”端口的资产 |
| ip=“1.1.1.1” | 从ip中搜索包含“1.1.1.1”的网站 |
| ip=“220.181.111.1/24” | 查询IP为“220.181.111.1”的C网段资产 |
| status_code=“402” | 查询服务器状态为“402”的资产 |
| protocol=“quic” | 查询quic协议资产 |
| country=“CN” | 搜索指定国家(编码)的资产。 |
| city=“Beijing” | 搜索指定城市的资产。 |
| cert=“baidu” | 搜索证书(https或者imaps等)中带有baidu的资产。 |
| cert.subject=“Oracle Corporation” | 搜索证书持有者是Oracle Corporation的资产 |
| cert.issuer=“DigiCert” | 搜索证书颁发者为DigiCert Inc的资产 |
| cert.is_valid=true | 验证证书是否有效,true有效,false无效 |
| jarm=“2ad…83e81” | 搜索JARM指纹 |
| banner=“users” && protocol=“ftp” | 搜索FTP协议中带有users文本的资产。 |
| asn=“19551” | 搜索指定asn的资产。 |
| after=“2017” && before=“2017-10-01” | 时间范围段搜索 |
| app=“Microsoft-Exchange” | 搜索Microsoft-Exchange设备 |
| server==“Microsoft-IIS/10” | 搜索IIS 10服务器。 |
| os=“centos” | 搜索CentOS资产。 |
| type=“service” | 搜索所有协议资产,支持subdomain和service两种 |
钟馗之眼
ZoomEye 支持对公网开放的 IPv4、IPv6 及域名地址库进行多个端口服务或协议的探测,并整理收集相关返回 banner 数据提供搜索匹配。
ZoomEye 线上采用“覆盖式”更新模式:比如第一次扫描 IP 8.8.8.8 开放了 80 端口,第二次扫描 8.8.8.8 的 80
端口时,如果端口还存活,那么会用第二次扫描的结果覆盖更新第一次的扫描结果;如果第二次扫描时候 80
端口已经关闭,服务不存在,那么第一次扫描的结果不会被更新,时间节点也不会被更新。
搜索
用户在搜索输入框里输入对应关键字符串、语法词(也称为“过滤器”)及相关运算符进行检索。用户输入的关键字符串不区分大小写,在做全词匹配比如字符串里存在空格等字符时请使用引号闭合词组。
输入的字符串通过 ZoomEye
搜索引擎分词系统进行分词匹配,分词规则可使用搜索结果页面里“分词”功能帮助测试理解。输入语法词(也称为“过滤器”)后,搜索框提供了智能搜索提示:比如输入“思科”或者“Cisco”在搜索框下拉栏里会显示相关的 app 语法,选中后按“回车”即可进行检索。对于更多的组件指纹可以访问顶栏里的"导航"页面获取。
逻辑运算
| 逻辑词 | 说明 | 示例 |
|---|---|---|
| 空格 | 在搜索框中输入“空格”则表示“或”的运算逻辑 | [service:“ssh” service:“http”](https://www.zoomeye.org/searchResult?q=service%3A"ssh" service%3A"http") 搜索ssh或http协议的数据 |
| + | 在搜索框中输入“+”则表示“且”的运算逻辑 | device:“router”+after:“2020-01-01” 搜索2020-01-01后路由器的数据 |
| - | 在搜索框中输入“-”则表示“非”的运算逻辑 | [country:“CN”-subdivisions:“beijing”](https://www.zoomeye.org/searchResult?q=country%3A"CN" -subdivisions%3A"beijing") 搜索中国地区内除北京的数据 |
| () | 在搜索框中输入“()”则表示“优先处理”的运算逻辑 | (port:“80”+subdivisions:“加利福尼亚州”)+before:“2020-01-01” 搜索2020-01-01前在加利福尼亚州开放的80端口数据 |
地理位置
(注:中国地区资产只对中国IP及手机号码认证用户开放)
| 语法 | 说明 | 注 |
|---|---|---|
| country:“CN” | 搜索国家地区资产 | 可以使用国家缩写,也可以使用中/英文全称如country:“中国” country:“china” |
| subdivisions:“beijing” | 搜索相关指定行政区的资产 | 中国省会支持中文及英文描述搜索 subdivisions:“北京” |
| city:“changsha” | 搜索相关城市资产 | 中国城市支持中文及英文描述搜索如 city:长沙 |
** 证书搜索**
| 语法 | 说明 | 注 |
|---|---|---|
| ssl:“google” | 搜索ssl证书存在"google"字符串的资产 | 常常用来提取产品名及公司名搜索对应目标 |
** IP及域名信息相关搜索**
| 语法 | 说明 | 注 |
|---|---|---|
| ip:“8.8.8.8” | 搜索指定IPv4地址相关资产 | |
| ip:“2600:3c00::f03c:91ff:fefc:574a” | 搜索指定IPv6地址相关资产 | |
| cidr:52.2.254.36/24 | 搜索IP的C段资产 | cidr:52.2.254.36/16 为IP的B段资产,cidr:52.2.254.36/8 为IP的A段资产 |
| org:“北京大学” 或者 organization:“北京大学” | 搜索相关组织(Organization)的资产 | 常常用来定位大学、结构、大型互联网公司对应IP资产 |
| [isp:“China Mobile”](https://www.zoomeye.org/searchResult?q=isp%3A"China Mobile") | 搜索相关网络服务提供商的资产 | 可结合org数据相互补充 |
| asn:42893 | 搜索对应ASN(Autonomous system number)自治系统编号相关IP资产 | |
| port:80 | 搜索相关端口资产 | 目前不支持同时进行多端口目标搜索 |
| hostname:google.com | 搜索相关IP"主机名"的资产 | |
| site:baidu.com | 搜索域名相关的资产 | 搜索域名相关的资产 |
指纹相关搜索
| 语法 | 说明 | 注 |
|---|---|---|
| [app:“Cisco ASA SSL VPN”](https://www.zoomeye.org/searchResult?q=app%3A"Cisco ASA SSL VPN") | 搜索思科ASA-SSL-VPN的设备 | 更多的app规则请参考“导航”,在搜索框输入"思科"等关键词会有相关app提示 |
| service:“ssh” | 搜索对应服务协议的资产 | 常见服务协议包括:http、ftp、ssh、telnet等等(其他服务可参考搜索结果域名侧栏聚合展示) |
| device:“router” | 搜索路由器相关的设备类型 | 常见类型包括router(路由器)、switch(交换机)、storage-misc(存储设备)等等(其他类型可参考搜索结果域名侧栏聚合展示) |
| os:“RouterOS” | 搜索相关操作系统 | 常见系统包括Linux、Windows、RouterOS、IOS、JUNOS等等(其他系统可参考搜索结果域名侧栏聚合展示) |
| title:“Cisco” | 搜索html内容里标题中存在"Cisco"的数据 | |
| industry:“政府” | 搜索行业类型相关的资产 | 常见的行业类型包括科技、能源、金融制造业等等(其他类型可结合org数据相互补充) |
时间节点区间搜索
| 语法 | 说明 | 注 |
|---|---|---|
| [after:“2020-01-01” +port:“50050”](https://www.zoomeye.org/searchResult?q=after%3A"2020-01-01" +port%3A"50050") | 搜索更新时间为"2020-01-01"端口为"50050"以后的资产 | 时间过滤器需组合其他过滤器使用 |
| [before:“2020-01-01” +port:“50050”](https://www.zoomeye.org/searchResult?q=before%3A"2020-01-01" +port%3A"50050") | 搜索更新时间在"2020-01-01"端口为"50050"以前的资产 | 时间过滤器需组合其他过滤器使用 |
Jarm
Jarm是一个活动的传输层安全性(TLS)服务器指纹识别工具, 详情参考:https://github.com/salesforce/jarm
| 语法 | 说明 | 注 |
|---|---|---|
| jarm: “29d29d15d29d29d00029d29d29d29dea0f89a2e5fb09e4d8e099befed92cfa” | 搜索相关jarm内容的资产 |
Dig
| 语法 | 说明 | 注 |
|---|---|---|
| [dig:“baidu.com 220.181.38.148”](https://www.zoomeye.org/searchResult?q=dig%3A"baidu.com 220.181.38.148") | 搜索相关dig内容的资产 |
Iconhash
| 语法 | 说明 | 注 |
|---|---|---|
| iconhash:“f3418a443e7d841097c714d69ec4bcb8” | 通过 md5 方式对目标数据进行解析,根据图标搜索相关内容的资产 | 搜索包含“google”图标的相关资产 |
| iconhash:“1941681276” | 通过 mmh3 方式对目标数据进行解析,根据图标搜索相关内容的资产 | 搜索包含“amazon”图标的相关资产 |
Filehash
| 语法 | 说明 | 注 |
|---|---|---|
| filehash:“0b5ce08db7fb8fffe4e14d05588d49d9” | 通过上传方式进行查询,根据解析的文件数据搜索相关内容的资产 | 搜索包含“Gitlab”解析的相关资产 |
Censys
Censys帮助组织、个人和研究人员发现并监控互联网上的每台服务器,以减少暴露并提高安全性。

更多实例:
https://search.censys.io/search/examples?resource=hosts
异地PING


邮件头
大型公司邮件服务可能是自建的,从服务器内发出的邮件头会带着IP,这个极有可能是目标真实IP地址。foxmail导出邮件使用编辑器打开,可以看到一下内容。

Received: from wfbtxcdk.outbound-mail.sendgrid.net (unknown [159.183.172.209]) |
邮箱头查看真实IP,确定不是使用的第三方邮箱再看,否则就是浪费时间,使用nslookup查询mx记录
$ nslookup |
域传送漏洞
DNS协议支持使用axfr类型的记录进行区域传送,用来解决主从同步的问题。如果管理员在配置DNS服务器的时候没有限制允许获取记录的来源,将会导致DNS域传送漏洞。
*注意:*DNS配置错误才会出现域传送漏洞,打点时可以使用脚本批量探测。
vulab@sechelper:~$ nmap --script dns-zone-transfer.nse --script-args "dns-zone-transfer.domain=vulhub.org" -Pn -p 53 192.168.111.133 |
参考:
域名解析历史记录
域名历史解析记录,可以继续使用查出的IP地址反查域名,能够获取更多信息。
编辑
关注 至察助安 ,专注网络安全优质知识分享,无优质,不分享。
绕过CDN获取服务器真实IP地址的更多相关文章
- 绕过CDN查找网站真实IP方法收集
方法1很简单,使用各种多地 ping 的服务,查看对应 IP 地址是否唯一,如果不唯一多半是使用了CDN, 多地 Ping 网站有: http://ping.chinaz.com/ http://pi ...
- 绕过CDN测试出真实IP
前言 CDN的全称是Content Delivery Network,即内容分发网络.CDN是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡.内容分发.调度等功能模块 ...
- 绕过CDN查找网站真实ip
在渗透测试过程中,经常会碰到网站有CDN的情况.CDN即内容分发网络,主要解决因传输距离和不同运营商节点造成的网络速度性能低下的问题.说的简单点,就是一组在不同运营商之间的对接点上的高速缓存服务器,把 ...
- 获取客户端真实IP地址
Java-Web获取客户端真实IP: 发生的场景:服务器端接收客户端请求的时候,一般需要进行签名验证,客户端IP限定等情况,在进行客户端IP限定的时候,需要首先获取该真实的IP. 一般分为两种情况: ...
- Java 获取客户端真实IP地址
本文基于方法 HttpServletRequest.getHeader 和 HttpServletRequest.getRemoteAddr 介绍如何在服务器端获取客户端真实IP地址. 业务背景 服务 ...
- 伪造IP及获取客户端真实IP地址
Fiddler支持自定义规则,可以实现对HTTP请求数据发送给Server前或HTTP应答数据发送给浏览器前进行修改.下面的例子将演示如何向所有HTTP请求数据中增加一个头.1)打开Fiddler,点 ...
- Java中使用HttpRequest获取用户真实IP地址端口
import javax.servlet.http.HttpServletRequest; /** * 自定义访问对象工具类 * * 获取对象的IP地址等信息 * @author X-rapido * ...
- Java获取客户端真实IP地址
Java代码 import javax.servlet.http.HttpServletRequest; /** * 获取对象的IP地址等信息 */ public class IPUtil { /** ...
- java如何获取访问真实IP地址?
java如何获取访问真实IP地址 解决方法: 获取请求主机IP地址,如果通过代理进来,则透过防火墙获取真实IP地址,如果没有代理,则获取真实ip public static String getIp( ...
随机推荐
- AlterNats是如何做到高性能的发布订阅的?
前言 在过去的一些文章里面,我们聊了一些.NET平台上高性能编程的技巧,今天带大家了解一下AlterNats这个库是如何做到远超同类SDK性能的. NATS:NATS是一个开源.轻量级.高性能的分布式 ...
- APISpace 让你快速获取安徒生童话故事
<安徒生童话>是丹麦作家安徒生创作的童话集,共由166篇故事组成.该作爱憎分明,热情歌颂劳动人民.赞美他们的善良和纯洁的优秀品德:无情地揭露和批判王公贵族们的愚蠢.无能.贪婪和残暴. 接口 ...
- 2022-07-09 第六组 润土 CSS学习笔记
HTML:用来描述网页的一种语言. 超文本语言.动画.音频.视频.特效.超链. 用标签定义网页 浏览器 流行浏览器: IE微软宣布永久关闭 firefox火狐 Chrom谷歌 Sarifi vscod ...
- 2022-7-11第五组 pan小堂 js基础
##为何学习 JavaScript? ###JavaScript 是 web 开发者必学的三种语言之一: HTML 定义网页的内容 CSS 规定网页的布局 JavaScript 对网页行为进行编程 在 ...
- 记一次 .NET 某智慧物流 WCS系统 CPU 爆高分析
一:背景 1. 讲故事 哈哈,再次见到物流类软件,上个月有位朋友找到我,说他的程序出现了 CPU 爆高,让我帮忙看下什么原因,由于那段时间在苦心研究 C++,分析和经验分享也就懈怠了,今天就给大家安排 ...
- 20170622日行一记之PHP函数
fread() 函数读取文件(可安全用于二进制文件) fread(file,length) 参数 描述 file 必需.规定要读取打开文件. length 必需.规定要读取的最大字节数. 该函数在读取 ...
- odoo14 重启服务后权限不见了
1 Odoo14权限更新有两个地方: 2 一.你在编写xml权限记录的时候没有将noupdate设置为'1'这样导致你每次升级模块,你的权限都会重置一遍. 3 二.你在运行odoo-bin服务的时候, ...
- PHP 获取数组长度
count()函数,默认是获取一维数组,参数为:COUNT_NORMAL,添加第二个参数:COUNT_RECURSIVE,则可以获取多维关联数组的长度(意思为递归获取),例如:count($arr, ...
- JVM内存模型和结构详解(五大模型图解)
JVM内存模型和Java内存模型都是面试的热点问题,名字看感觉都差不多,实际上他们之间差别还是挺大的. 通俗点说,JVM内存结构是与JVM的内部存储结构相关,而Java内存模型是与多线程编程相关@mi ...
- AI+医疗:使用神经网络进行医学影像识别分析 ⛵
作者:韩信子@ShowMeAI 计算机视觉实战系列:https://www.showmeai.tech/tutorials/46 行业名企应用系列:https://www.showmeai.tech/ ...