目录
注:
端口扫描问题
一、应用服务器-操作系统&IP资产
#操作系统
#IP资产
二、应用服务器-端口扫描&角色定性
#端口资产
#应用服务
#角色定性判定
三、Web应用&备案产权&Whois反查&域名枚举&DNS记录&证书特征&相似查询
主动信息收集
被动信息收集
域名
子域名
四、Web应用-架构分析-WAF&蜜罐识别
编辑
五、Web应用-架构分析-框架组件指纹识别
#Web架构
开源CMS
前端技术
开发语言
框架组件
Web服务器
应用服务器
数据库类型
操作系统信息
应用服务信息
CDN信息
WAF信息
蜜罐信息
其他组件信息
#指纹识别
#WAF识别
#蜜罐识别
#框架组件识别
六、源码获取-已知指纹&未知指纹
七、源码获取-泄漏问题&发现指纹
#源码泄漏原因
源码泄漏大概集合
思路点
#演示案例
拓展
#源码泄漏实战文章
八、JS前端分析-人工&提取项目
案例
九、JS前端分析-插件&流量匹配
#项目插件工具
十、#前置知识
国内服务商
国外服务商
十一、#CDN配置
十二、#参考知识
参考
十三、#前置后置-CDN服务-识别加速&绑定访问
十四、#某应用-CDN绕过-主动漏洞&遗留文件&综合查询
十五、#某应用-CDN绕过-主动漏洞&遗留文件&邮件系统
十六、#某应用-CDN绕过-全网扫描
ICO图标
Django
Flask
Tornado
十七、#JavaScript-开发框架-Vue&Node.js
Vue
Node.js
十八、#PHP-开发框架-ThinkPHP&Laravel&Yii
ThinkPHP
Laravel
Yii
十九、#Java-框架组件-Fastjson&Shiro&Solr&Spring
52类110个主流Java组件和框架介绍
框架
Struts2
SpringBoot
组件
Shiro
Solr识别
二十、#工具使用
二十一、APP应用-公开信息-知识产权&开发者定位
移动安全
逻辑安全问题
二十二、APP应用-资产信息-抓包&静态提取&动态调试
#公开信息收集
#APP资产提取
二十三、 小程序应用-公开信息-知识产权&平台搜索
#小程序获取-各大平台&关键字搜索
#微信小程序-源码架构解析
二十四、小程序应用-资产信息-抓包&提取&动态调试
#信息收集-小程序抓包-Proxifier&BurpSuite联动
#信息收集-小程序逆向-解包反编译&动态调试&架构
二十五、自动化-网络空间-Yakit&TScanPlus
#自动化-网络空间-Yakit&TscanPlus
二十六、自动化-移动资产-ENScan_Go
#自动化-企查信息-ENScan
二十七、自动化-综合管理-ARL&Nemo&TestNet
#自动化-综合架构-ARL&Nemo&TestNet
-ARL灯塔
-Nemo_Go
-Testnet
二十八、自动化-环境部署-F8x
#自动化-武器库部署-F8x
二十九、公众号-渠道资产-第三方引入
#公众号-渠道资产-第三方引入
#信息泄漏-源码文档-敏感配置监控
三十、 供应链-目标旁路-获取和拓展
#供应链-目标旁路-获取和拓展
注:
端口扫描问题
1、扫描不到 防火墙 白名单或者入站策略导致通讯不上扫描不到
换扫描协议 几率性绕过
2、扫描错误 目标在内网环境 看到的就是一个转发机器 扫就是转发机器和目标上面的端口不一致
借助漏洞进行反链 ssrf
一、应用服务器-操作系统&IP资产
#操作系统
1、Web大小写
2、端口服务特征
3、TTL值判断返回
#IP资产
归属地查询
归属云厂商
IP反查机构
IP反查域名
IP-C段查询
这里可以转换成Web上,机构上,从而获取更多信息
二、应用服务器-端口扫描&角色定性
#端口资产
1、网络资产引擎:直接使用网络测绘引擎(Fofa、Hunter、Quake、00信安等搜索IP;此类网络资产测绘引擎都是每隔一段时间会对全网的网络资产去做一个轮询,那可能每个引擎的轮询周期、扫描精准度都不同,故建议可使用不同的搜索引擎以获取更多资产。
地址导航:渊龙Sec安全团队导航
参考:十大网络空间安全搜索引擎(黑客必备)
2、在线端口扫描:百度或google直接搜索在线端口扫描就会有一些网站,同理很多功能都可以直接搜索在线xxx;例如在线正则提取解析、在线编码转换等。
3、本地离线工具:推荐使用Nmap、Masscan、Fscan、KScan,其中Nmap最为准确,但最慢;Masscan最快,误报相对更高。
端口扫描:https://xz.aliyun/t/15753
演示:Yakit Nmap TscanPlus FScan Tanggo等
考虑:1、防火墙 2、内网环境
可能出现案例:数据库端口开放,但进行端口扫描,发现数据库端口没有开放(排除防火墙)*注意:扫描中选择扫描协议是绕过安全组防火墙设置的一种手法,具体成功需看出网入网配置
#应用服务
见上图端口协议对应服务应用
#角色定性判定
1、网站服务器
2、数据库服务器
3、邮件系统服务器
4、文件存储服务器
5、网络通信服务器
6、安全系统服务器
三、Web应用&备案产权&Whois反查&域名枚举&DNS记录&证书特征&相似查询
标签 | 名称 | 地址 |
---|---|---|
企业信息 | 天眼查 | 天眼查-商业查询平台_企业信息查询_公司查询_工商查询_企业信用信息系统 |
企业信息 | 小蓝本 | 获客营销系统_ai智能拓客系统_企业获客系统-小蓝本获客系统 |
企业信息 | 爱企查 | 百度安全验证 |
企业信息 | 企查查 | 企查查 - 查企业_查老板_查风险_企业信息查询系统 |
企业信息 | 国外企查 | https://opencorporates/ |
企业信息 | 启信宝 | 启信宝-企业查询_企业信用信息平台 |
备案信息 | 备案信息查询 | http://www.beianx/ |
备案信息 | 备案管理系统 | https://beian.miit.gov/ |
注册域名 | 域名注册查询 | 域名注册购买_域名注册选购 - 腾讯云 |
IP反查 | IP反查域名 | 微步在线X情报社区-威胁情报查询_威胁分析平台_开放社区 |
标签 | 名称 | 地址 |
---|---|---|
DNS数据 | dnsdumpster | https://dnsdumpster/ |
证书查询 | CertificateSearch | crt.sh | Certificate Search |
网络空间 | FOFA | 网络空间测绘,网络空间安全搜索引擎,网络空间搜索引擎,安全态势感知 - FOFA网络空间测绘系统 |
网络空间 | 全球鹰 | 鹰图平台(hunter)-奇安信网络空间测绘系统 |
网络空间 | 360 | https://quake.360/quake/ |
威胁情报 | 微步在线 情报社区 | 微步在线X情报社区-威胁情报查询_威胁分析平台_开放社区 |
威胁情报 | 奇安信 威胁情报中心 | 奇安信威胁情报中心 |
威胁情报 | 360 威胁情报中心 | 360安全大脑 |
枚举解析 | 在线子域名查询 | 在线子域名二级域名查询工具 - 在线工具 |
枚举解析 | DNSGrep子域名查询 | https://www.dnsgrep/subdomain |
枚举解析 | 工具强大的子域名收集器 | https://github/shmilylty/OneForAll |
标签 | 名称 | 地址 |
---|---|---|
网络空间 | 钟馗之眼 | https://www.zoomeye/ |
网络空间 | 零零信安 | 零零信安 | ASM | 攻击面 | 外部攻击面管理专家 | 比攻击者更快一步了解您自己的风险 |
网络空间 | Shodan | https://www.shodan.io/ |
网络空间 | Censys | Attack Surface Management and Threat Hunting Solutions | Censys |
网络空间 | ONYPHE | Big Data for Cyber Defense | ONYPHE |
网络空间 | FullHunt | https://fullhunt.io/ |
网络空间 | Soall Search Engine | soall |
网络空间 | Netlas | https://applas.io/responses/ |
网络空间 | Leakix | LeakIX |
网络空间 | DorkSearch | DorkSearch - Speed up your Google Dorking |
威胁情报 | VirusTotal在线查杀平台 | https://www.virustotal/gui/ |
威胁情报 | VenusEye 威胁情报中心 | VenusEye威胁情报中心 |
威胁情报 | 绿盟科技 威胁情报云 | NTI - 威胁情报中心 |
威胁情报 | IBM 情报中心 | IBM X-Force Exchange |
威胁情报 | 天际友盟安全智能平台 | https://redqueen.tj-un |
威胁情报 | 华为安全中心平台 | https://isecurity.huawei/sec |
威胁情报 | 安恒威胁情报中心 | 安全星图平台 |
威胁情报 | AlienVault | LevelBlue - Open Threat Exchange |
威胁情报 | 深信服 | https://sec.sangfor/ |
威胁情报 | 丁爸情报分析师的工具箱 | 丁爸网-首页 |
威胁情报 | 听风者情报源 start.me | https://start.me/p/X20Apn |
威胁情报 | GreyNoise Visualizer | GreyNoise Visualizer |
威胁情报 | URLhaus 数据库 | URLhaus | Checking your browser |
威胁情报 | Pithus | Pithus |
主动信息收集
通过直接经过目标服务器网络流量的信息收集方式。
被动信息收集
不与目标系统直接交互的情况下获取信息收集方式。
域名
1、备案信息
通过域名查备案信息,备案信息获取更多域名
2、企业产权
通过企业产权查询Web,APP,小程序等版权资产
3、域名相关性
Whois信息:例如域名所有人、域名注册商、邮箱等。
通过域名注册接口获取后缀
查询域名注册邮箱
通过域名查询备案号
通过备案号查询域名
反查注册邮箱
反查注册人
通过注册人查询到的域名在查询邮箱
通过上一步邮箱去查询域名
查询以上获取出的域名的子域名
子域名
在后续测试中,还要注意对子域名进行筛选整理,太多的垃圾子域名和没用的子域名,主要看你的收集的子域名方法决定。
1、DNS数据
以DNS解析历史记录查询域名资产
2、证书查询
以SSL证书解析查询域名资产
3、网络空间
多网络空间综合型获取的记录
4、威胁情报
各类接口的集成的记录
5、枚举解析
结果主要以字典决定
https://github/knownsec/ksubdomain
https://github/shmilylty/OneForAll
6、JS提取子域名
后续会讲到
四、Web应用-架构分析-WAF&蜜罐识别
蜜罐 | Quake系统搜索语法 |
---|---|
STRUTSHONEYPOT | app:"StrutsHoneypot" |
CONPOT HTTP 蜜罐 | app:"Conpot Http 蜜罐" |
CONPOT MODBUS 蜜罐 | app:"Conpot modbus 蜜罐" |
CONPOT S7 蜜罐 | app:"Conpot s7 蜜罐" |
KIPPO 蜜罐 | app:"kippo 蜜罐" |
HONEYPY HTTP 蜜罐 | app:"Honeypy Http 蜜罐" |
HONEYPY ES蜜罐 | app:"Honeypy ES蜜罐" |
AMUN IMAP 蜜罐 | app:"amun imap 蜜罐" |
AMUN HTTP蜜罐 | app:"amun http蜜罐" |
NEPENTHES NETBIOS蜜罐 | app:"Nepenthes netbios蜜罐" |
NEPENTHES FTP 蜜罐 | app:"Nepenthes FTP 蜜罐" |
SSHESAME SSH 蜜罐 | app:"sshesame ssh 蜜罐" |
OPENCANARY蜜罐管理后台 | app:"opencanary蜜罐管理后台" |
DIONAEA SIPD 蜜罐 | app:"Dionaea sipd 蜜罐" |
DIONAEA SMBD 蜜罐 | app:"Dionaea smbd 蜜罐" |
DIONAEA HTTP 蜜罐 | app:"Dionaea Http 蜜罐" |
DIONAEA MSSQL 蜜罐 | app:"Dionaea MSSQL 蜜罐" |
DIONAEA FTP 蜜罐 | app:"Dionaea ftp 蜜罐" |
DIONAEA MEMCACHED 蜜罐 | app:"Dionaea Memcached 蜜罐" |
KOJONEY SSH 蜜罐 | app:"Kojoney SSH 蜜罐" |
WEBLOGIC 蜜罐 | app:"weblogic蜜罐" |
MYSQL 蜜罐 | app:"MySQL蜜罐" |
HFISH 蜜罐 | app:"HFish蜜罐" |
HFISH 蜜罐管理后台 | app:"HFish蜜罐管理后台" |
HONEYTHING 物联网蜜罐 | app:"honeything物联网蜜罐" |
ELASTICSEARCH 蜜罐 | app:"elasticsearch蜜罐" |
HOSTUS 蜜罐 | app:"HostUS蜜罐" |
WHOISSCANME 蜜罐 | app:"whoisscanme蜜罐" |
未知蜜罐 | app:"未知蜜罐" |
COWRIE TELNETD 蜜罐 | app:"Cowrie telnetd蜜罐" |
GLASTOPF 蜜罐 | app:"glastopf蜜罐" |
五、Web应用-架构分析-框架组件指纹识别
#Web架构
开源CMS
Discuz、WordPress、PageAdmin、蝉知等
前端技术
HTML5、Jquery、Bootstrap、Vue、NodeJS等
开发语言
PHP、JAVA、Ruby、Python、C#、JS、Go等
框架组件
SpringMVC、Thinkphp、Yii、Tornado、Vue等
Web服务器
Apache、Nginx、IIS、Lighttpd等
应用服务器
Tomcat、Jboss、Weblogic、Websphere等
数据库类型
Mysql、SqlServer、Oracle、Redis、MongoDB等
操作系统信息
Linux、Windows、Mac等
应用服务信息
FTP、SSH、RDP、SMB、SMTP、LDAP、Rsync等
CDN信息
帝联、Cloudflare、网宿、七牛云、阿里云等
WAF信息
创宇盾、宝塔、ModSecurity、玄武盾、OpenRASP等。
蜜罐信息
HFish、TeaPot、T-Pot、Glastopf等
其他组件信息
FastJson、Shiro、Log4j、Solr、XStream等
#指纹识别
1、平台:
yunsee-2.0TideFinger 潮汐指纹 TideFinger 潮汐指纹
指纹收录平台
2、项目:
https://github/AliasIO/wappalyzer
https://github/HackAllSec/hfinger
https://github/Tuhinshubhra/CMSeeK
https://github/lemonlove7/EHole_magic
https://github/emo-crab/observer_ward
#WAF识别
拦截页面,identywaf项目内置
https://github/stamparm/identYwaf
https://github/EnableSecurity/wafw00f
#蜜罐识别
1、项目识别:
https://github/graynjo/Heimdallr
https://github/360quake/quake_rs
quake.exe init apikey值
quake.exe honeypot 目标
2、人工识别:
端口多而有规律性(针对多服务蜜罐)
Web访问协议就下载(针对多服务蜜罐)
设备指纹分析(见上图,针对蜜罐特征)
#框架组件识别
后续会讲到更多识别方法及项目插件
例子:
FastJson:奇安信攻防社区-浅谈黑盒识别Fastjson/Jackson组件
Shiro:Hvv必问 | 你说你不懂shiro各种流量特征?
六、源码获取-已知指纹&未知指纹
标签 | 名称 | 地址 |
---|---|---|
指纹识别 | EHole_magic | https://github/lemonlove7/EHole_magic |
指纹识别 | Wappalyzer | https://github/AliasIO/wappalyzer |
指纹识别 | TideFinger潮汐 | TideFinger 潮汐指纹 TideFinger 潮汐指纹 |
指纹识别 | 云悉指纹 | yunsee-2.0 |
指纹识别 | hfinger | https://github/HackAllSec/hfinger |
指纹识别 | 数字观星Finger-P | 指纹收录平台 |
指纹识别 | CMSeek | https://github/Tuhinshubhra/CMSeeK |
参考:
常见的Web源码泄漏漏洞及其利用 - SecPulse.COM | 安全脉搏
信息搜集之源码泄漏
安服水洞系列 | Vue源码泄露
七、源码获取-泄漏问题&发现指纹
#源码泄漏原因
1、从源码本身的特性入口
2、从管理员不好的习惯入口
3、从管理员习惯的开发入口
4、从管理员不好的配置入口
5、从管理员不好的意识入口
6、从管理员资源信息搜集入口
源码泄漏大概集合
Webpack打包泄漏
composer.json
GitHub源码泄漏
git源码泄露
svn源码泄露
网站备份压缩文件
DS_Store文件泄露
hg源码泄漏
SWP 文件泄露
CVS泄露
Bzr泄露
WEB-INF/web.xml 泄露
思路点
1、使用指纹识别平台获取到目标是什么名字的源码程序
通过搜索引擎获取到源码
2、使用指纹识别平台不能获取目标信息
后端:借助svn git composer.json ds_store 备份扫描等配置泄漏安全
前端:webpack打包 谷歌插件获取源码
如果没有这些问题 还想获取源码怎么办 见下面方法
3、借助资源平台去搜索(github gitee oschina等源码)
-特定文件
-特征联系方式
-github监控( 除了源码,漏洞更新,工具更新等都有用处)
目标使用的源码是开源还是闭源,是否公开
#演示案例
1、已知指纹识别获取源码途径
2、GIT泄漏-未知指纹识别获取源码途径
3、SVN泄漏-未知指纹识别获取源码途径
4、DS_Store泄漏-未知指纹识别获取源码途径
GIT:https://github/lijiejie/GitHack
SVN:https://github/callmefeifei/SvnHack
DS_Store:https://github/lijiejie/ds_store_exp
通用:https://github/0xHJK/dumpall
5、WebPack打包-未知指纹识别获取源码途径
https://github/NothingCw/SourceDetector-dist
6、composer.json-未知指纹识别获取源码途径
7、源码文件备份泄漏-未知指纹识别获取源码途径
目录文件扫描工具获取存在,直接访问
8、Github资源搜索-未知指纹识别获取源码途径
拓展
配合后期监控保证第一时间通知
资源搜索语法:
in:name test #仓库标题搜索含有关键字
in:descripton test #仓库描述搜索含有关键字
in:readme test #Readme文件搜素含有关键字
stars:>3000 test #stars数量大于3000的搜索关键字
stars:1000..3000 test #stars数量大于1000小于3000的搜索关键字 forks:>1000 test #forks数量大于1000的搜索关键字
forks:1000..3000 test #forks数量大于1000小于3000的搜索关键字 size:>=5000 test #指定仓库大于5000k(5M)的搜索关键字 pushed:>2019-02-12 test #发布时间大于2019-02-12的搜索关键字 created:>2019-02-12 test #创建时间大于2019-02-12的搜索关键字 user:test #用户名搜素
license:apache-2.0 test #明确仓库的 LICENSE 搜索关键字 language:java test #在java语言的代码中搜索关键字
user:test in:name test #组合搜索,用户名test的标题含有test的
关键字配合谷歌搜索:
site:Github smtp
site:Github smtp @qq
site:Github smtp @126
site:Github smtp @163
site:Github smtp @sina
site:Github smtp password
site:Github String password smtp
9、另类目标源码获取
互站网 - 国内知名的网站、域名、软件、APP源码交易平台
闲鱼 - 闲不住?上闲鱼!
从目标转到寻找源码系统上,从源码系统上找应用目标
#源码泄漏实战文章
渗透测试实战---某资金盘信息收集(.idea目录泄露)
渗透测试实战---某资金盘信息收集(.idea目录泄露)
SRC挖掘-js.map泄露到接管云上域控
SRC挖掘-js.map泄露到接管云上域控
八、JS前端分析-人工&提取项目
标签 | 名称 | 地址 |
---|---|---|
FUZZ测试 | ffuf | https://github/ffuf/ffuf |
匹配插件 | Hae | https://github/gh0stkey/HaE |
JS提取 | JSFinder | https://github/Threezh1/JSFinder |
JS提取爬虫 | URLFinder | https://github/pingc0y/URLFinder |
WebPack分析 | Packer-Fuzzer | https://github/rtcatc/Packer-Fuzzer |
JS匹配插件 | BurpAPIFinder | https://github/shuanx/BurpAPIFinder |
JS提取 | LinkFinder | https://github/GerbenJavado/LinkFinder |
WebPack分析 | jjjjjjjjjjjjjs | https://github/ttstormxx/jjjjjjjjjjjjjs |
JS提取爬虫 | FindSomething | https://github/momosecurity/FindSomething |
JS匹配插件 | Unexpected_information | https://github/ScriptKid-Beta/Unexpected_information |
FUZZ字典 | 字典集合 | https://wordlists.assetnote.io |
在日常渗透测试中,从JavaScript(JS)文件中提取信息是一项关键的步骤,以往有些案例就是通过JS文件中发现的敏感信息从而拿下重要的系统。在JS开发的WEB应用和PHP,JAVA,NET等区别在于即没有源代码,也可以通过浏览器的查看源代码获取部分源代码逻辑。从而获取URL,获取JS敏感信息,获取代码传参等,所以相当于JS开发的WEB应用大部分属于白盒测试(默认有大量源码参考),一般会在JS中寻找更多的URL地址,在JS代码逻辑(加密算法,APIkey配置,验证逻辑等)进行后期安全测试。
0、JS信息收集
接口URL提取
后端地址提取
敏感信息提取
配置信息提取
其他信息提取(环境,注释,用途等)
1、JS安全问题
源码泄漏,代码审计,JS逆向分析
未授权访问=JS里面分析更多的URL访问确定接口路径
敏感Key泄漏=JS文件中配置接口信息(云应用,短信,邮件,数据库等)
API接口安全=(代码中加密提交参数传递,更多的URL路径)
2、流行的Js框架有那些?
Vue NodeJS jQuery Angular等
3、如何判定JS开发应用?
插件wappalyzer
源程序代码简短
引入多个js文件
一般有/static/js/app.js等顺序的js文件
一般cookie中有connect.sid
4、如何获取更多的JS文件?
手工-浏览器搜索
半自动-Burpsuite插件
工具化-各类提取&FUZZ项目
5、如何快速获取价值信息?
src=
path=
method:"get"
http.get("
method:"post"
http.post("
$.ajax
http://service.httppost
http://service.httpget
案例
0、人工JS中提取URL信息
1、从JS中提取到URL信息
2、从JS中提取到敏感信息
3、从JS中提取到配置信息
4、从JS中Fuzz提取到更多
5、WebPack打包器信息获取
九、JS前端分析-插件&流量匹配
#项目插件工具
https://github/ffuf/ffuf
用Go编写的快速 Web 模糊测试程序。
https://github/gh0stkey/HaE
HaE是一款网络安全(数据安全)领域下的框架式项目,采用了乐高积木式模块化设计理念,巧妙地融入了人工智能大模型辅助技术,实现对HTTP消息(包含WebSocket)精细化的标记和提取。
https://github/Threezh1/JSFinder
一款用作快速在网站的js文件中提取URL,子域名的工具
https://github/pingc0y/URLFinder
URLFinder是一款快速、全面、易用的页面信息提取工具
用于分析页面中的js与url,查找隐藏在其中的敏感信息或未授权api接口
https://github/rtcatc/Packer-Fuzzer
针对Webpack等前端打包工具所构造的网站进行快速、高效安全检测的扫描工具
https://github/shuanx/BurpAPIFinder
攻防演练过程中,我们通常会用浏览器访问一些资产,但很多未授权/敏感信息/越权隐匿在已访问接口过html、JS文件等,通过该BurpAPIFinder插件我们可以:
1、发现通过某接口可以进行未授权/越权获取到所有的账号密码、私钥、凭证
2、发现通过某接口可以枚举用户信息、密码修改、用户创建接口
3、发现登陆后台网址
4、发现在html、JS中泄漏账号密码或者云主机的Access Key和SecretKey
5、自动提取js、html中路径进行访问,也支持自定义父路径访问 ...
https://github/GerbenJavado/LinkFinder
功能类似于JSFinder,但JSFinder好久没更新了。
https://github/ttstormxx/jjjjjjjjjjjjjs
针对webpack站点,爬取网站JS文件,分析获取接口列表,自动结合指纹识别和fuzz获取正确api根,可指定api根地址(针对前后端分离项目,可指定后端接口地址),根据有效api根组合爬取到的接口进行自动化请求,发现未授权/敏感信息泄露,回显api响应,定位敏感信息、敏感文件、敏感接口。支持批量模式。支持需认证接口自动尝试bypass。
https://github/momosecurity/FindSomething
该工具是用于快速在网页的html源码或js代码中提取一些有趣的信息的浏览器插件,包括请求的资源、接口的url,请求的ip和域名,泄漏的证件号、手机号、邮箱等信息。
https://github/ScriptKid-Beta/Unexpected_information
BurpSuite插件用来标记请求包中的一些敏感信息、JS接口和一些特殊字段,
防止我们疏忽了一些数据包,使用它可能会有意外的收获信息。
十、#前置知识
1.传统访问:用户访问域名–>解析服务器IP–>访问目标主机
2.普通CDN:用户访问域名–>CDN节点–>真实服务器IP–>访问目标主机
3.带WAF的CDN:用户访问域名–>CDN节点(WAF)–>真实IP–>访问目标主机
安全影响:主要对于信息收集时端口扫描和IP探针的相关真实信息存在有误等
国内服务商
阿里云 百度云 七牛云
又拍云 腾讯云 Ucloud
360 网宿科技 ChinaCache
国外服务商
CloudFlare StackPath Fastly
Akamai CloudFront Edgecast
CDNetworks Google Cloud CDN
CacheFly Keycdn Udomain CDN77
十一、#CDN配置
配置1:加速域名-需要启用加速的域名(子域名没配置)
配置2:加速区域-需要启用加速的地区(国外地区没加速)
配置3:加速类型-需要启用加速的资源
配置4:其他SSL证书,DNS解析记录等(历史记录查询)
十二、#参考知识
超级Ping:网站测速|网站速度测试|网速测试|电信|联通|网通|全国|监控|CDN|PING|DNS 一起测试|17CE.COM
超级Ping:多个地点Ping服务器,网站测速 - 站长工具
接口查询:Get Site IP - Find IP Address and location from any URL
接口查询:NOSEC|FOFA用户中心
国外请求:全球 CDN 服务商查询_专业精准的IP库服务商_IPIP
国外请求:阿里云网站运维检测平台
IP社区库:纯真网络,中国历史最悠久的IP地理位置库
CDN厂商查询:最新CDN数据查询 - 站长工具
CDN厂商查询:全球 CDN 服务商查询_专业精准的IP库服务商_IPIP
全网扫描:https://github/Tai7sy/fuckcdn
全网扫描:https://github/boy-hack/w8fuckcdn
全网扫描:https://github/Pluto-123/Bypass_cdn
参考
一网打尽!20种绕过CDN查找真实IP的实用方法
干货 | 渗透测试中最全的CDN绕过总结
常见方法:
子域名,邮件系统,国外访问,证书查询,APP抓包,网络空间
通过漏洞或泄露获取,扫全网,以量打量,第三方接口查询等
-
查询历史DNS记录:通过查询历史DNS记录,可以找到使用CDN前的IP地址。常用网站有DNSDB、微步在线、Netcraft、ViewDNS等。
-
查询子域名:一些网站可能只对主站或流量大的子站点使用CDN。通过查询子域名对应的IP地址,可以辅助找到网站的真实IP。常用工具包括微步在线、Dnsdb查询法、Google搜索等。
-
网络空间引擎搜索:利用网络空间搜索引擎(如Shodan、Fofa、ZoomEye)搜索特定关键词或特征,可以找到使用CDN的网站的真实IP地址。
-
SSL证书:扫描互联网获取SSL证书,进而找到服务器的真实IP。Censys是一个用于搜索联网设备信息并扫描整个互联网的强大工具。
-
HTTP标头:通过比较HTTP标头来查找原始服务器。例如,使用SecurityTrails平台搜索特定HTTP标头。
-
网站源代码:浏览网站源代码,寻找独特的代码片段或隐藏的IP地址信息。
-
国外主机解析域名:由于一些CDN服务在国外地区可能无法提供完整的保护,使用国外的主机直接访问目标网站可能会获取到真实IP地址。
-
遗留文件:如phpinfo页面泄露,可能会显示服务器的外网IP地址。9. 漏洞探针:利用网站上的漏洞(如SSRF漏洞)让VPS获取对方反向连接的IP地址。
-
网站邮件订阅:查看RSS邮件订阅的邮件源码,通常包含服务器的真实IP地址。
-
全网扫描:使用Zmap、Masscan等工具对整个互联网进行扫描,针对扫描结果进行关键字查找,获取网站真实IP。
-
解码F5 LTM负载均衡器:当服务器使用F5 LTM做负载均衡时,通过对set-cookie关键字的解码,可以获取到真实IP地址。
-
利用MX记录:如果网站在与web相同的服务器和IP上托管自己的邮件服务器,那么原始服务器IP将在MX记录中。
-
利用favicon.ico:查看网站的favicon.ico文件,通过其唯一的hash值进行识别,有时可以找到与网站相关的真实IP地址。
-
配置错误:检查CDN的配置细节,有时小小的配置错误就可能导致CDN防护被绕过。例如,CDN只配置了www域名,而直接访问非www域名可能获取到真实IP。
-
协议差异:如果站点同时支持http和https访问,而CDN只配置了https协议,那么访问http可能获取到真实IP。
-
利用网站功能:通过网站提供的某些功能(如邮箱注册、找回密码等),让网站主动暴露真实IP地址。
-
搜索引擎查询:利用搜索引擎的特定查询语法(如site:和inurl:),结合目标网站的信息,可能找到与网站相关的真实IP地址。
-
子域名挖掘机:输入域名即可基于字典挖掘子域名,通过查找子域名的IP地址来辅助找到网站的真实IP。
-
IP库查询:使用IP库(如纯真数据库)来查询IP段,结合网站特征进行爆破,可能找到真实IP地址。
十三、#前置后置-CDN服务-识别加速&绑定访问
超级Ping:网站测速|网站速度测试|网速测试|电信|联通|网通|全国|监控|CDN|PING|DNS 一起测试|17CE.COM
超级Ping:多个地点Ping服务器,网站测速 - 站长工具
拨测工具:阿里云网站运维检测平台
各地ping(出现多个IP即启用CDN服务)
后置:绑定HOST访问解析(参考基础课CDN安全影响)
十四、#某应用-CDN绕过-主动漏洞&遗留文件&综合查询
配置加速选项中只加速主域名,导致其他子域名未加速(解析IP可能同IP也可能C段)
1、国外接口访问
2、子域名解析IP
3、综合查询(历史记录,证书记录等)
综合接口查询:Get Site IP - Find IP Address and location from any URL
综合接口查询:NOSEC|FOFA用户中心
使用网络空间&第三方功能集合查询判断
十五、#某应用-CDN绕过-主动漏洞&遗留文件&邮件系统
1、漏洞如:SSRF RCE等
利用漏洞让对方真实服务器主动出网连接,判断来源IP即真实IP
2、遗留文件:phpinfo类似功能
通过访问类似PHPINFO类似代码函数获取本地IP造成的地址泄漏
3、邮箱系统:
判断条件:发信人是当前域名邮件用户名
-让他主动给你发:
部署架设的邮件服务器如果向外部用户发送邮件的话,
那么邮件头部的源码中会包含此邮件服务器的真实IP地址。
常见的邮件触发点有:
1、RSS订阅
2、邮箱注册、激活处
3、邮箱找回密码处
4、产品更新的邮件推送
5、某业务执行后发送的邮件通知
6、员工邮箱、邮件管理平台等入口处的忘记密码
-你给未知邮箱发:(需要自己的邮件服务器不能第三方)
通过发送邮件给一个不存在的邮箱地址,因为该用户邮箱不存在,所以发送将失败,并且还会收到一个包含发送该电子邮件给你的服务器的真实IP通知。
十六、#某应用-CDN绕过-全网扫描
案例1:结合关键字固定IP段找真实IP
1、判断加速厂商
2、IP库筛地址段
3、配置范围扫描
厂商查询:
最新CDN数据查询 - 站长工具
全球 CDN 服务商查询_专业精准的IP库服务商_IPIP
工具项目:
纯真网络,中国历史最悠久的IP地理位置库
https://github/Tai7sy/fuckcdn
案例2:ico筛选资产+特征端口找真实IP
Fofa平台使用入门--利用网站小图标绕过CDN
ICO图标
1、某个应用系统的标示
2、某个公司/机构/个人团队的标示
#Python-开发框架-Django&Flask
Django
1、识别插件
2、固定的数据包格式:Set-Cookie:expires=
Flask
1、识别插件
2、固定的数据包格式:Etag: "flask X-Powered-By: Flask
Tornado
1、识别插件
2、固定的数据包格式:Server: TornadoServer
十七、#JavaScript-开发框架-Vue&Node.js
Vue
1、识别插件
2、JS语法和加载文件
Node.js
1、识别插件
2、固定的数据包格式:ETag: W/"
十八、#PHP-开发框架-ThinkPHP&Laravel&Yii
ThinkPHP
0、识别插件
1、X-Powered-By: ThinkPHP
2、CMS识别到源码体系TP开发
Laravel
1、识别插件
2、Set-Cookie中特征的格式 XSRF-TOKEN= laravel_session=
Yii
1、识别插件
2、Set-Cookie中特征的格式 YII_CSRF_TOKEN=
十九、#Java-框架组件-Fastjson&Shiro&Solr&Spring
52类110个主流Java组件和框架介绍
52类110个主流Java组件和框架介绍_基于java的组件有哪些-CSDN博客
框架
Struts2
一般使用struts2框架后缀带do或action,可以尝试进行利用
SpringBoot
1、默认web应用标签小绿叶图标
2、通过springboot框架默认页面
3、ICO源码体系采用SpringBoot开发
组件
FastJson/Jackson
在提交JSON数据包中修改测试:
-FastJson组件会把01解析成1
-Jackson组件在解析01时会抛出异常
奇安信攻防社区-浅谈黑盒识别Fastjson/Jackson组件
Shiro
请求包的cookie中存在rememberMe字段。
返回包中存在set-Cookie:remeberMe=deleteMe。
请求包中存在rememberMe=x时,响应包中存在rememberMe=deleteMe。
有时候服务器不会主动返回remeberMe=deleteMe,直接发包即可,将Cookie内容改为remember Me=1,若相应包有rememberMe=deleteMe,则基本可以确定网站apache shiro搭建的。
Solr识别
一般开放8983端口,访问页面也可以探针到
二十、#工具使用
https://github/projectdiscovery/nuclei
二十一、APP应用-公开信息-知识产权&开发者定位
APP渗透测试的范围应涵盖APP所有功能和组件,包括但不限于以下几个方面:
• 前端安全:包括界面交互、输入验证、会话管理等。
• 后端安全:包括API接口、数据库交互、业务逻辑等。
• 数据传输安全:包括数据传输过程中的加密、签名、完整性校验等。
• 用户认证与授权:包括登录、注册、权限分配、会话管理等。
• 第三方库与组件:包括使用的第三方库、SDK、插件等的安全性和稳定性。
• 配置与环境:包括APP的配置文件、环境变量、日志管理等。
移动安全
1、站着逆向角度
有无保护,源码修改打包HOOK
删除验证代码 证书 代理 抓包
删除验证代码 破解版(突破会员制度等)
翻到密钥 接口 密码等关键敏感
2、站着渗透角度
APP架构资产-表现,源码,调试逻辑
web 域名 cms api接口 web安全问题
ip 端口 服务 web服务(见上) 数据库 中间件 等服务测试
API 接口 测试
逻辑安全问题
通过获取App配置、数据包,去获取url、api、osskey、js等敏感信息。
1、资产信息-IP 域名 网站 -转到对应Web测试 API接口测试 服务测试
2、泄露信息-配置key 资源文件 - key(osskey利用,密钥配置等)
3、代码信息-代码安全 HOOK绕过限制(证书,代理,脱壳等)- 逆向相关
APP中收集资产:通讯抓包,静态提取,动态调试
二十二、APP应用-资产信息-抓包&静态提取&动态调试
#公开信息收集
通过搜索引擎、社交媒体、应用商店等渠道,收集目标APP信息,如APP名称、版本、开发者、下载量等。名称获取APP信息(爱企查/小蓝本/七麦/点点)
1、查备案信息在搜
2、网站上有APP下载
3、市场直接搜单位名称
七麦数据 -专业移动产品商业分析平台-关键词优化-ASA优化-七麦科技
点点数据-App数据查询分析,AppStore排行榜,ASO,ASM优化平台
百度安全验证
获客营销系统_ai智能拓客系统_企业获客系统-小蓝本获客系统
#APP资产提取
1、动态抓包
Burpsuite+Reqable
参考前期部分抓包技术
技术优点:没有误报
技术缺点:无法做到完整
2、静态提取-反编译
技术优点:数据较为完整
技术缺点:有很多无用的资产
APKDeepLens收集APP的权限、组件信息、IP、Secret。
https://github/d78ui98/APKDeepLens
APKLeaks工具,用于检查APK文件中的硬编码URL、API密钥等敏感信息。
https://github/dwisiswant0/apkleaks
AppInfoScanner对Android、iOS、WEB多场景应用进行信息扫描,收集IP、URL、Server、CDN等信息。
https://github/kelvinBen/AppInfoScanner
3、动态调试-反调试
技术优点:HOOK可解决不能抓包不能代理等情况
技术优点;搞逆向的人能看到实时的app调用链等
技术缺点:部分APP有反调试等无法做到完整
MobSF是一种自动化的移动应用(Android/iOS/Windows)静态和动态分析的测试,恶意软件分析和安全评估框架。
https://github/MobSF/Mobile-Security-Framework-MobSF
二十三、 小程序应用-公开信息-知识产权&平台搜索
#小程序获取-各大平台&关键字搜索
-微信
-百度
-支付宝
-抖音头条
#微信小程序-源码架构解析
1.主体结构
小程序包含一个描述整体程序的 app 和多个描述各自页面的 page。
一个小程序主体部分(即app)由三个文件组成,必须放在项目的根目录,如下:
文件 必需 作用
app.js 是 小程序逻辑
app.json 是 小程序公共配置
app.wxss 否 小程序公共样式表
2.一个小程序页面由四个文件组成,分别是:
xxx.js 页面逻辑
xxx.json 页面配置
xxx.wxml 页面结构
xxx.wxss 页面样式
3.项目整体目录结构
pages 页面文件夹
index 首页
logs 日志
utils
util 工具类(mina框架自动生成,你也可建立:api)
app.js 入口js(类似于java类中的main方法)、全局js
app.json 全局配置文件
app.wxss 全局样式文件
project.config.json 跟你在详情中勾选的配置一样
sitemap.json 用来配置小程序及其页面是否允许被微信索引
二十四、小程序应用-资产信息-抓包&提取&动态调试
#信息收集-小程序抓包-Proxifier&BurpSuite联动
1、抓包工具的证书要安装到系统的受信任和中间两个地方
2、Proxifier规则设置里面一定要确定默认规则没有走代理
-对抓到的IP或域名进行Web安全测试
-对抓到的IP或域名进行API安全测试
-对抓到的IP或域名进行端口服务测试
#信息收集-小程序逆向-解包反编译&动态调试&架构
对源码架构进行分析
-更多的资产信息
-敏感的配置信息
-未授权访问测试
-源码中的安全问题
https://github/r3x5ur/unveilr
https://github/Ackites/KillWxapkg
https://github/biggerstar/wedecode
https://github/eeeeeeeeee-code/e0e1-wx
微信开发者工具(稳定版 Stable Build)下载地址与更新日志 | 微信开放文档
二十五、自动化-网络空间-Yakit&TScanPlus
#自动化-网络空间-Yakit&TscanPlus
项目地址:https://www.yaklang/
项目地址:https://github/TideSec/TscanPlus
集成Fofa、Hunter、Quake、Zoomeye、Shodan、censys、VT、0.zone、微步等接口查询
二十六、自动化-移动资产-ENScan_Go
#自动化-企查信息-ENScan
项目地址:https://github/wgpsec/ENScan_GO
1、介绍:
剑指HW/SRC,解决在HW/SRC场景下遇到的各种针对国内企业信息收集难题
2、配置:
ENScanGo在第一次使用时需要使用-v命令生成配置文件信息后进行配置
3、使用:
见项目文档
二十七、自动化-综合管理-ARL&Nemo&TestNet
#自动化-综合架构-ARL&Nemo&TestNet
-ARL灯塔
项目地址1:https://github/adysec/ARL(升级版)
项目地址2:https://github/ki9mu/ARL-plus-docker
1、介绍:
旨在快速侦察与目标关联的互联网资产,构建基础资产信息库。 协助甲方安全团队或者渗透测试人员有效侦察和检索资产,发现存在的薄弱点和攻击面。
2、配置:(docker搭建)
安装环境:Aliyun HK服务器 Ubuntu20.04
apt update
apt install unzip wget docker.io docker-compose -y
cd /opt/
mkdir docker_arl
wget -O docker_arl/docker.zip https://github/ki9mu/ARL-plus-docker/archive/refs/tags/v3.0.1.zip
cd docker_arl
unzip -o docker.zip
docker volume create arl_db
cd ARL-plus-docker-3.0.1
docker-compose pull
docker-compose up -d
3、使用:见直播操作
-Nemo_Go
项目地址:https://github/hanc00l/nemo_go
1、介绍:
Nemo是用来进行自动化信息收集的一个简单平台,通过集成常用的信息收集工具和技术,实现对内网及互联网资产信息的自动收集,提高隐患排查和渗透测试的工作效率,用Golang完全重构了原Python版本。
2、配置:(docker搭建)
安装环境:Aliyun HK服务器 Ubuntu18.04
https://github/hanc00l/nemo_go/blob/main/docs/docker.md
下载release的nemo_linux_amd64.tar后执行:
mkdir nemo;tar xvf nemo_linux_amd64.tar -C nemo;cd nemo
docker-compose up -d
3、使用:见直播操作
-Testnet
项目地址:https://github/testnet0/testnet
1、介绍:
TestNet资产管理系统旨在提供全面、高效的互联网资产管理与监控服务,构建详细的资产信息库。 该系统能够帮助企业安全团队或渗透测试人员对目标资产进行深入侦察和分析,提供攻击者视角的持续风险监测,协助用户实时掌握资产动态,识别并修复安全漏洞,从而有效收敛攻击面,提升整体安全防护能力。2、配置:(docker搭建)
2、配置:(docker搭建)
安装环境:Aliyun HK服务器 Ubuntu22.04
git clone https://github/testnet0/testnet.git
cd testnet && bash build.sh
3、使用:见直播操作
二十八、自动化-环境部署-F8x
#自动化-武器库部署-F8x
项目地址:https://github/ffffffff0x/f8x
1、介绍:
一款红/蓝队环境自动化部署工具,支持多种场景,渗透,开发,代理环境,服务可选项等.
2、配置:
通过 CF Workers 下载 [推荐]
wget : wget -O f8x https://f8x.io/
curl : curl -o f8x https://f8x.io/
3、使用:见项目文档
二十九、公众号-渠道资产-第三方引入
#公众号-渠道资产-第三方引入
目标公众号服务获取
官方服务&第三方资产
#信息泄漏-源码文档-敏感配置监控
1、Github监控 GITHUB资源搜索: in:name test #仓库标题搜索含有关键字 in:descripton test #仓库描述搜索含有关键字 in:readme test #Readme文件搜素含有关键字 stars:>3000 test #stars数量大于3000的搜索关键字 stars:1000..3000 test #stars数量大于1000小于3000的搜索关键字
forks:>1000 test #forks数量大于1000的搜索关键字 forks:1000..3000 test #forks数量大于1000小于3000的搜索关键字
size:>=5000 test #指定仓库大于5000k(5M)的搜索关键字
pushed:>2019-02-12 test #发布时间大于2019-02-12的搜索关键字
created:>2019-02-12 test #创建时间大于2019-02-12的搜索关键字
user:test #用户名搜素 license:apache-2.0 test #明确仓库的 LICENSE 搜索关键字
language:java test #在java语言的代码中搜索关键字 user:test in:name test #组合搜索,用户名test的标题含有test的 关键字配合谷歌搜索: site:Github smtp site:Github smtp @qq site:Github smtp @126 site:Github smtp @163 site:Github smtp @sina site:Github smtp password site:Github String password smtp
系统源码:特征,文件等
敏感信息:密码,文档,人员等
监控项目:
https://github.yhuisec/
https://github/madneal/gshark
https://github/NHPT/FireEyeGoldCrystal
https://github/Explorer1092/Github-Monitor
2、其他渠道(搜索引擎)
个人信息 网盘泄漏 文档泄漏
inurl:xxx filetype:xls
inurl:xxx password admin
site:xxx filetype:xls|doc|pdf
三十、 供应链-目标旁路-获取和拓展
#供应链-目标旁路-获取和拓展
这是一种典型的迂回攻击方式。攻击者将目光聚集在目标企业的上下游供应商,比如IT供应商、安全供应商等,从这些上下游企业中找到软件或系统、管理上的漏洞,进而攻进目标企业内部。
-商业购买系统
-软件开发商
-外包业务
-代理商
-招投标文件
供应链例子edusrc挖洞思路:
1、找供应链公司,通过演示站点或提供的ico或特征文件找到大量高校使用系统的目标,一旦测出这个应用产品系统的漏洞,形成了通杀
2、找高校目标,通过高校系统的信息或者ico等找到供应链,再从供应链继续找使用同样的系统的高校目标,一旦测出这个应用产品系统的漏洞,形成了通杀
核心:如何找到系统的漏洞
1、尽量找到源码(源码获取途径)
2、旁入方法(找相似目标的存在脆弱点为突破)
目标供应链获取:可以企业产权或应用提示等
供应链信息收集:ico拓展 演示站点 成功案例等
案例文章:
教育EDU证书站挖掘(转战供应链思路篇)
记!一次供应链导致教育漏洞通杀,通杀五十多个学校弱口令,SQL注入,越权修改密码!(新手小白也能看懂的文章)
某次授权渗透通过供应链拿到目标后台权限
目录
注:
端口扫描问题
一、应用服务器-操作系统&IP资产
#操作系统
#IP资产
二、应用服务器-端口扫描&角色定性
#端口资产
#应用服务
#角色定性判定
三、Web应用&备案产权&Whois反查&域名枚举&DNS记录&证书特征&相似查询
主动信息收集
被动信息收集
域名
子域名
四、Web应用-架构分析-WAF&蜜罐识别
编辑
五、Web应用-架构分析-框架组件指纹识别
#Web架构
开源CMS
前端技术
开发语言
框架组件
Web服务器
应用服务器
数据库类型
操作系统信息
应用服务信息
CDN信息
WAF信息
蜜罐信息
其他组件信息
#指纹识别
#WAF识别
#蜜罐识别
#框架组件识别
六、源码获取-已知指纹&未知指纹
七、源码获取-泄漏问题&发现指纹
#源码泄漏原因
源码泄漏大概集合
思路点
#演示案例
拓展
#源码泄漏实战文章
八、JS前端分析-人工&提取项目
案例
九、JS前端分析-插件&流量匹配
#项目插件工具
十、#前置知识
国内服务商
国外服务商
十一、#CDN配置
十二、#参考知识
参考
十三、#前置后置-CDN服务-识别加速&绑定访问
十四、#某应用-CDN绕过-主动漏洞&遗留文件&综合查询
十五、#某应用-CDN绕过-主动漏洞&遗留文件&邮件系统
十六、#某应用-CDN绕过-全网扫描
ICO图标
Django
Flask
Tornado
十七、#JavaScript-开发框架-Vue&Node.js
Vue
Node.js
十八、#PHP-开发框架-ThinkPHP&Laravel&Yii
ThinkPHP
Laravel
Yii
十九、#Java-框架组件-Fastjson&Shiro&Solr&Spring
52类110个主流Java组件和框架介绍
框架
Struts2
SpringBoot
组件
Shiro
Solr识别
二十、#工具使用
二十一、APP应用-公开信息-知识产权&开发者定位
移动安全
逻辑安全问题
二十二、APP应用-资产信息-抓包&静态提取&动态调试
#公开信息收集
#APP资产提取
二十三、 小程序应用-公开信息-知识产权&平台搜索
#小程序获取-各大平台&关键字搜索
#微信小程序-源码架构解析
二十四、小程序应用-资产信息-抓包&提取&动态调试
#信息收集-小程序抓包-Proxifier&BurpSuite联动
#信息收集-小程序逆向-解包反编译&动态调试&架构
二十五、自动化-网络空间-Yakit&TScanPlus
#自动化-网络空间-Yakit&TscanPlus
二十六、自动化-移动资产-ENScan_Go
#自动化-企查信息-ENScan
二十七、自动化-综合管理-ARL&Nemo&TestNet
#自动化-综合架构-ARL&Nemo&TestNet
-ARL灯塔
-Nemo_Go
-Testnet
二十八、自动化-环境部署-F8x
#自动化-武器库部署-F8x
二十九、公众号-渠道资产-第三方引入
#公众号-渠道资产-第三方引入
#信息泄漏-源码文档-敏感配置监控
三十、 供应链-目标旁路-获取和拓展
#供应链-目标旁路-获取和拓展
注:
端口扫描问题
1、扫描不到 防火墙 白名单或者入站策略导致通讯不上扫描不到
换扫描协议 几率性绕过
2、扫描错误 目标在内网环境 看到的就是一个转发机器 扫就是转发机器和目标上面的端口不一致
借助漏洞进行反链 ssrf
一、应用服务器-操作系统&IP资产
#操作系统
1、Web大小写
2、端口服务特征
3、TTL值判断返回
#IP资产
归属地查询
归属云厂商
IP反查机构
IP反查域名
IP-C段查询
这里可以转换成Web上,机构上,从而获取更多信息
二、应用服务器-端口扫描&角色定性
#端口资产
1、网络资产引擎:直接使用网络测绘引擎(Fofa、Hunter、Quake、00信安等搜索IP;此类网络资产测绘引擎都是每隔一段时间会对全网的网络资产去做一个轮询,那可能每个引擎的轮询周期、扫描精准度都不同,故建议可使用不同的搜索引擎以获取更多资产。
地址导航:渊龙Sec安全团队导航
参考:十大网络空间安全搜索引擎(黑客必备)
2、在线端口扫描:百度或google直接搜索在线端口扫描就会有一些网站,同理很多功能都可以直接搜索在线xxx;例如在线正则提取解析、在线编码转换等。
3、本地离线工具:推荐使用Nmap、Masscan、Fscan、KScan,其中Nmap最为准确,但最慢;Masscan最快,误报相对更高。
端口扫描:https://xz.aliyun/t/15753
演示:Yakit Nmap TscanPlus FScan Tanggo等
考虑:1、防火墙 2、内网环境
可能出现案例:数据库端口开放,但进行端口扫描,发现数据库端口没有开放(排除防火墙)*注意:扫描中选择扫描协议是绕过安全组防火墙设置的一种手法,具体成功需看出网入网配置
#应用服务
见上图端口协议对应服务应用
#角色定性判定
1、网站服务器
2、数据库服务器
3、邮件系统服务器
4、文件存储服务器
5、网络通信服务器
6、安全系统服务器
三、Web应用&备案产权&Whois反查&域名枚举&DNS记录&证书特征&相似查询
标签 | 名称 | 地址 |
---|---|---|
企业信息 | 天眼查 | 天眼查-商业查询平台_企业信息查询_公司查询_工商查询_企业信用信息系统 |
企业信息 | 小蓝本 | 获客营销系统_ai智能拓客系统_企业获客系统-小蓝本获客系统 |
企业信息 | 爱企查 | 百度安全验证 |
企业信息 | 企查查 | 企查查 - 查企业_查老板_查风险_企业信息查询系统 |
企业信息 | 国外企查 | https://opencorporates/ |
企业信息 | 启信宝 | 启信宝-企业查询_企业信用信息平台 |
备案信息 | 备案信息查询 | http://www.beianx/ |
备案信息 | 备案管理系统 | https://beian.miit.gov/ |
注册域名 | 域名注册查询 | 域名注册购买_域名注册选购 - 腾讯云 |
IP反查 | IP反查域名 | 微步在线X情报社区-威胁情报查询_威胁分析平台_开放社区 |
标签 | 名称 | 地址 |
---|---|---|
DNS数据 | dnsdumpster | https://dnsdumpster/ |
证书查询 | CertificateSearch | crt.sh | Certificate Search |
网络空间 | FOFA | 网络空间测绘,网络空间安全搜索引擎,网络空间搜索引擎,安全态势感知 - FOFA网络空间测绘系统 |
网络空间 | 全球鹰 | 鹰图平台(hunter)-奇安信网络空间测绘系统 |
网络空间 | 360 | https://quake.360/quake/ |
威胁情报 | 微步在线 情报社区 | 微步在线X情报社区-威胁情报查询_威胁分析平台_开放社区 |
威胁情报 | 奇安信 威胁情报中心 | 奇安信威胁情报中心 |
威胁情报 | 360 威胁情报中心 | 360安全大脑 |
枚举解析 | 在线子域名查询 | 在线子域名二级域名查询工具 - 在线工具 |
枚举解析 | DNSGrep子域名查询 | https://www.dnsgrep/subdomain |
枚举解析 | 工具强大的子域名收集器 | https://github/shmilylty/OneForAll |
标签 | 名称 | 地址 |
---|---|---|
网络空间 | 钟馗之眼 | https://www.zoomeye/ |
网络空间 | 零零信安 | 零零信安 | ASM | 攻击面 | 外部攻击面管理专家 | 比攻击者更快一步了解您自己的风险 |
网络空间 | Shodan | https://www.shodan.io/ |
网络空间 | Censys | Attack Surface Management and Threat Hunting Solutions | Censys |
网络空间 | ONYPHE | Big Data for Cyber Defense | ONYPHE |
网络空间 | FullHunt | https://fullhunt.io/ |
网络空间 | Soall Search Engine | soall |
网络空间 | Netlas | https://applas.io/responses/ |
网络空间 | Leakix | LeakIX |
网络空间 | DorkSearch | DorkSearch - Speed up your Google Dorking |
威胁情报 | VirusTotal在线查杀平台 | https://www.virustotal/gui/ |
威胁情报 | VenusEye 威胁情报中心 | VenusEye威胁情报中心 |
威胁情报 | 绿盟科技 威胁情报云 | NTI - 威胁情报中心 |
威胁情报 | IBM 情报中心 | IBM X-Force Exchange |
威胁情报 | 天际友盟安全智能平台 | https://redqueen.tj-un |
威胁情报 | 华为安全中心平台 | https://isecurity.huawei/sec |
威胁情报 | 安恒威胁情报中心 | 安全星图平台 |
威胁情报 | AlienVault | LevelBlue - Open Threat Exchange |
威胁情报 | 深信服 | https://sec.sangfor/ |
威胁情报 | 丁爸情报分析师的工具箱 | 丁爸网-首页 |
威胁情报 | 听风者情报源 start.me | https://start.me/p/X20Apn |
威胁情报 | GreyNoise Visualizer | GreyNoise Visualizer |
威胁情报 | URLhaus 数据库 | URLhaus | Checking your browser |
威胁情报 | Pithus | Pithus |
主动信息收集
通过直接经过目标服务器网络流量的信息收集方式。
被动信息收集
不与目标系统直接交互的情况下获取信息收集方式。
域名
1、备案信息
通过域名查备案信息,备案信息获取更多域名
2、企业产权
通过企业产权查询Web,APP,小程序等版权资产
3、域名相关性
Whois信息:例如域名所有人、域名注册商、邮箱等。
通过域名注册接口获取后缀
查询域名注册邮箱
通过域名查询备案号
通过备案号查询域名
反查注册邮箱
反查注册人
通过注册人查询到的域名在查询邮箱
通过上一步邮箱去查询域名
查询以上获取出的域名的子域名
子域名
在后续测试中,还要注意对子域名进行筛选整理,太多的垃圾子域名和没用的子域名,主要看你的收集的子域名方法决定。
1、DNS数据
以DNS解析历史记录查询域名资产
2、证书查询
以SSL证书解析查询域名资产
3、网络空间
多网络空间综合型获取的记录
4、威胁情报
各类接口的集成的记录
5、枚举解析
结果主要以字典决定
https://github/knownsec/ksubdomain
https://github/shmilylty/OneForAll
6、JS提取子域名
后续会讲到
四、Web应用-架构分析-WAF&蜜罐识别
蜜罐 | Quake系统搜索语法 |
---|---|
STRUTSHONEYPOT | app:"StrutsHoneypot" |
CONPOT HTTP 蜜罐 | app:"Conpot Http 蜜罐" |
CONPOT MODBUS 蜜罐 | app:"Conpot modbus 蜜罐" |
CONPOT S7 蜜罐 | app:"Conpot s7 蜜罐" |
KIPPO 蜜罐 | app:"kippo 蜜罐" |
HONEYPY HTTP 蜜罐 | app:"Honeypy Http 蜜罐" |
HONEYPY ES蜜罐 | app:"Honeypy ES蜜罐" |
AMUN IMAP 蜜罐 | app:"amun imap 蜜罐" |
AMUN HTTP蜜罐 | app:"amun http蜜罐" |
NEPENTHES NETBIOS蜜罐 | app:"Nepenthes netbios蜜罐" |
NEPENTHES FTP 蜜罐 | app:"Nepenthes FTP 蜜罐" |
SSHESAME SSH 蜜罐 | app:"sshesame ssh 蜜罐" |
OPENCANARY蜜罐管理后台 | app:"opencanary蜜罐管理后台" |
DIONAEA SIPD 蜜罐 | app:"Dionaea sipd 蜜罐" |
DIONAEA SMBD 蜜罐 | app:"Dionaea smbd 蜜罐" |
DIONAEA HTTP 蜜罐 | app:"Dionaea Http 蜜罐" |
DIONAEA MSSQL 蜜罐 | app:"Dionaea MSSQL 蜜罐" |
DIONAEA FTP 蜜罐 | app:"Dionaea ftp 蜜罐" |
DIONAEA MEMCACHED 蜜罐 | app:"Dionaea Memcached 蜜罐" |
KOJONEY SSH 蜜罐 | app:"Kojoney SSH 蜜罐" |
WEBLOGIC 蜜罐 | app:"weblogic蜜罐" |
MYSQL 蜜罐 | app:"MySQL蜜罐" |
HFISH 蜜罐 | app:"HFish蜜罐" |
HFISH 蜜罐管理后台 | app:"HFish蜜罐管理后台" |
HONEYTHING 物联网蜜罐 | app:"honeything物联网蜜罐" |
ELASTICSEARCH 蜜罐 | app:"elasticsearch蜜罐" |
HOSTUS 蜜罐 | app:"HostUS蜜罐" |
WHOISSCANME 蜜罐 | app:"whoisscanme蜜罐" |
未知蜜罐 | app:"未知蜜罐" |
COWRIE TELNETD 蜜罐 | app:"Cowrie telnetd蜜罐" |
GLASTOPF 蜜罐 | app:"glastopf蜜罐" |
五、Web应用-架构分析-框架组件指纹识别
#Web架构
开源CMS
Discuz、WordPress、PageAdmin、蝉知等
前端技术
HTML5、Jquery、Bootstrap、Vue、NodeJS等
开发语言
PHP、JAVA、Ruby、Python、C#、JS、Go等
框架组件
SpringMVC、Thinkphp、Yii、Tornado、Vue等
Web服务器
Apache、Nginx、IIS、Lighttpd等
应用服务器
Tomcat、Jboss、Weblogic、Websphere等
数据库类型
Mysql、SqlServer、Oracle、Redis、MongoDB等
操作系统信息
Linux、Windows、Mac等
应用服务信息
FTP、SSH、RDP、SMB、SMTP、LDAP、Rsync等
CDN信息
帝联、Cloudflare、网宿、七牛云、阿里云等
WAF信息
创宇盾、宝塔、ModSecurity、玄武盾、OpenRASP等。
蜜罐信息
HFish、TeaPot、T-Pot、Glastopf等
其他组件信息
FastJson、Shiro、Log4j、Solr、XStream等
#指纹识别
1、平台:
yunsee-2.0TideFinger 潮汐指纹 TideFinger 潮汐指纹
指纹收录平台
2、项目:
https://github/AliasIO/wappalyzer
https://github/HackAllSec/hfinger
https://github/Tuhinshubhra/CMSeeK
https://github/lemonlove7/EHole_magic
https://github/emo-crab/observer_ward
#WAF识别
拦截页面,identywaf项目内置
https://github/stamparm/identYwaf
https://github/EnableSecurity/wafw00f
#蜜罐识别
1、项目识别:
https://github/graynjo/Heimdallr
https://github/360quake/quake_rs
quake.exe init apikey值
quake.exe honeypot 目标
2、人工识别:
端口多而有规律性(针对多服务蜜罐)
Web访问协议就下载(针对多服务蜜罐)
设备指纹分析(见上图,针对蜜罐特征)
#框架组件识别
后续会讲到更多识别方法及项目插件
例子:
FastJson:奇安信攻防社区-浅谈黑盒识别Fastjson/Jackson组件
Shiro:Hvv必问 | 你说你不懂shiro各种流量特征?
六、源码获取-已知指纹&未知指纹
标签 | 名称 | 地址 |
---|---|---|
指纹识别 | EHole_magic | https://github/lemonlove7/EHole_magic |
指纹识别 | Wappalyzer | https://github/AliasIO/wappalyzer |
指纹识别 | TideFinger潮汐 | TideFinger 潮汐指纹 TideFinger 潮汐指纹 |
指纹识别 | 云悉指纹 | yunsee-2.0 |
指纹识别 | hfinger | https://github/HackAllSec/hfinger |
指纹识别 | 数字观星Finger-P | 指纹收录平台 |
指纹识别 | CMSeek | https://github/Tuhinshubhra/CMSeeK |
参考:
常见的Web源码泄漏漏洞及其利用 - SecPulse.COM | 安全脉搏
信息搜集之源码泄漏
安服水洞系列 | Vue源码泄露
七、源码获取-泄漏问题&发现指纹
#源码泄漏原因
1、从源码本身的特性入口
2、从管理员不好的习惯入口
3、从管理员习惯的开发入口
4、从管理员不好的配置入口
5、从管理员不好的意识入口
6、从管理员资源信息搜集入口
源码泄漏大概集合
Webpack打包泄漏
composer.json
GitHub源码泄漏
git源码泄露
svn源码泄露
网站备份压缩文件
DS_Store文件泄露
hg源码泄漏
SWP 文件泄露
CVS泄露
Bzr泄露
WEB-INF/web.xml 泄露
思路点
1、使用指纹识别平台获取到目标是什么名字的源码程序
通过搜索引擎获取到源码
2、使用指纹识别平台不能获取目标信息
后端:借助svn git composer.json ds_store 备份扫描等配置泄漏安全
前端:webpack打包 谷歌插件获取源码
如果没有这些问题 还想获取源码怎么办 见下面方法
3、借助资源平台去搜索(github gitee oschina等源码)
-特定文件
-特征联系方式
-github监控( 除了源码,漏洞更新,工具更新等都有用处)
目标使用的源码是开源还是闭源,是否公开
#演示案例
1、已知指纹识别获取源码途径
2、GIT泄漏-未知指纹识别获取源码途径
3、SVN泄漏-未知指纹识别获取源码途径
4、DS_Store泄漏-未知指纹识别获取源码途径
GIT:https://github/lijiejie/GitHack
SVN:https://github/callmefeifei/SvnHack
DS_Store:https://github/lijiejie/ds_store_exp
通用:https://github/0xHJK/dumpall
5、WebPack打包-未知指纹识别获取源码途径
https://github/NothingCw/SourceDetector-dist
6、composer.json-未知指纹识别获取源码途径
7、源码文件备份泄漏-未知指纹识别获取源码途径
目录文件扫描工具获取存在,直接访问
8、Github资源搜索-未知指纹识别获取源码途径
拓展
配合后期监控保证第一时间通知
资源搜索语法:
in:name test #仓库标题搜索含有关键字
in:descripton test #仓库描述搜索含有关键字
in:readme test #Readme文件搜素含有关键字
stars:>3000 test #stars数量大于3000的搜索关键字
stars:1000..3000 test #stars数量大于1000小于3000的搜索关键字 forks:>1000 test #forks数量大于1000的搜索关键字
forks:1000..3000 test #forks数量大于1000小于3000的搜索关键字 size:>=5000 test #指定仓库大于5000k(5M)的搜索关键字 pushed:>2019-02-12 test #发布时间大于2019-02-12的搜索关键字 created:>2019-02-12 test #创建时间大于2019-02-12的搜索关键字 user:test #用户名搜素
license:apache-2.0 test #明确仓库的 LICENSE 搜索关键字 language:java test #在java语言的代码中搜索关键字
user:test in:name test #组合搜索,用户名test的标题含有test的
关键字配合谷歌搜索:
site:Github smtp
site:Github smtp @qq
site:Github smtp @126
site:Github smtp @163
site:Github smtp @sina
site:Github smtp password
site:Github String password smtp
9、另类目标源码获取
互站网 - 国内知名的网站、域名、软件、APP源码交易平台
闲鱼 - 闲不住?上闲鱼!
从目标转到寻找源码系统上,从源码系统上找应用目标
#源码泄漏实战文章
渗透测试实战---某资金盘信息收集(.idea目录泄露)
渗透测试实战---某资金盘信息收集(.idea目录泄露)
SRC挖掘-js.map泄露到接管云上域控
SRC挖掘-js.map泄露到接管云上域控
八、JS前端分析-人工&提取项目
标签 | 名称 | 地址 |
---|---|---|
FUZZ测试 | ffuf | https://github/ffuf/ffuf |
匹配插件 | Hae | https://github/gh0stkey/HaE |
JS提取 | JSFinder | https://github/Threezh1/JSFinder |
JS提取爬虫 | URLFinder | https://github/pingc0y/URLFinder |
WebPack分析 | Packer-Fuzzer | https://github/rtcatc/Packer-Fuzzer |
JS匹配插件 | BurpAPIFinder | https://github/shuanx/BurpAPIFinder |
JS提取 | LinkFinder | https://github/GerbenJavado/LinkFinder |
WebPack分析 | jjjjjjjjjjjjjs | https://github/ttstormxx/jjjjjjjjjjjjjs |
JS提取爬虫 | FindSomething | https://github/momosecurity/FindSomething |
JS匹配插件 | Unexpected_information | https://github/ScriptKid-Beta/Unexpected_information |
FUZZ字典 | 字典集合 | https://wordlists.assetnote.io |
在日常渗透测试中,从JavaScript(JS)文件中提取信息是一项关键的步骤,以往有些案例就是通过JS文件中发现的敏感信息从而拿下重要的系统。在JS开发的WEB应用和PHP,JAVA,NET等区别在于即没有源代码,也可以通过浏览器的查看源代码获取部分源代码逻辑。从而获取URL,获取JS敏感信息,获取代码传参等,所以相当于JS开发的WEB应用大部分属于白盒测试(默认有大量源码参考),一般会在JS中寻找更多的URL地址,在JS代码逻辑(加密算法,APIkey配置,验证逻辑等)进行后期安全测试。
0、JS信息收集
接口URL提取
后端地址提取
敏感信息提取
配置信息提取
其他信息提取(环境,注释,用途等)
1、JS安全问题
源码泄漏,代码审计,JS逆向分析
未授权访问=JS里面分析更多的URL访问确定接口路径
敏感Key泄漏=JS文件中配置接口信息(云应用,短信,邮件,数据库等)
API接口安全=(代码中加密提交参数传递,更多的URL路径)
2、流行的Js框架有那些?
Vue NodeJS jQuery Angular等
3、如何判定JS开发应用?
插件wappalyzer
源程序代码简短
引入多个js文件
一般有/static/js/app.js等顺序的js文件
一般cookie中有connect.sid
4、如何获取更多的JS文件?
手工-浏览器搜索
半自动-Burpsuite插件
工具化-各类提取&FUZZ项目
5、如何快速获取价值信息?
src=
path=
method:"get"
http.get("
method:"post"
http.post("
$.ajax
http://service.httppost
http://service.httpget
案例
0、人工JS中提取URL信息
1、从JS中提取到URL信息
2、从JS中提取到敏感信息
3、从JS中提取到配置信息
4、从JS中Fuzz提取到更多
5、WebPack打包器信息获取
九、JS前端分析-插件&流量匹配
#项目插件工具
https://github/ffuf/ffuf
用Go编写的快速 Web 模糊测试程序。
https://github/gh0stkey/HaE
HaE是一款网络安全(数据安全)领域下的框架式项目,采用了乐高积木式模块化设计理念,巧妙地融入了人工智能大模型辅助技术,实现对HTTP消息(包含WebSocket)精细化的标记和提取。
https://github/Threezh1/JSFinder
一款用作快速在网站的js文件中提取URL,子域名的工具
https://github/pingc0y/URLFinder
URLFinder是一款快速、全面、易用的页面信息提取工具
用于分析页面中的js与url,查找隐藏在其中的敏感信息或未授权api接口
https://github/rtcatc/Packer-Fuzzer
针对Webpack等前端打包工具所构造的网站进行快速、高效安全检测的扫描工具
https://github/shuanx/BurpAPIFinder
攻防演练过程中,我们通常会用浏览器访问一些资产,但很多未授权/敏感信息/越权隐匿在已访问接口过html、JS文件等,通过该BurpAPIFinder插件我们可以:
1、发现通过某接口可以进行未授权/越权获取到所有的账号密码、私钥、凭证
2、发现通过某接口可以枚举用户信息、密码修改、用户创建接口
3、发现登陆后台网址
4、发现在html、JS中泄漏账号密码或者云主机的Access Key和SecretKey
5、自动提取js、html中路径进行访问,也支持自定义父路径访问 ...
https://github/GerbenJavado/LinkFinder
功能类似于JSFinder,但JSFinder好久没更新了。
https://github/ttstormxx/jjjjjjjjjjjjjs
针对webpack站点,爬取网站JS文件,分析获取接口列表,自动结合指纹识别和fuzz获取正确api根,可指定api根地址(针对前后端分离项目,可指定后端接口地址),根据有效api根组合爬取到的接口进行自动化请求,发现未授权/敏感信息泄露,回显api响应,定位敏感信息、敏感文件、敏感接口。支持批量模式。支持需认证接口自动尝试bypass。
https://github/momosecurity/FindSomething
该工具是用于快速在网页的html源码或js代码中提取一些有趣的信息的浏览器插件,包括请求的资源、接口的url,请求的ip和域名,泄漏的证件号、手机号、邮箱等信息。
https://github/ScriptKid-Beta/Unexpected_information
BurpSuite插件用来标记请求包中的一些敏感信息、JS接口和一些特殊字段,
防止我们疏忽了一些数据包,使用它可能会有意外的收获信息。
十、#前置知识
1.传统访问:用户访问域名–>解析服务器IP–>访问目标主机
2.普通CDN:用户访问域名–>CDN节点–>真实服务器IP–>访问目标主机
3.带WAF的CDN:用户访问域名–>CDN节点(WAF)–>真实IP–>访问目标主机
安全影响:主要对于信息收集时端口扫描和IP探针的相关真实信息存在有误等
国内服务商
阿里云 百度云 七牛云
又拍云 腾讯云 Ucloud
360 网宿科技 ChinaCache
国外服务商
CloudFlare StackPath Fastly
Akamai CloudFront Edgecast
CDNetworks Google Cloud CDN
CacheFly Keycdn Udomain CDN77
十一、#CDN配置
配置1:加速域名-需要启用加速的域名(子域名没配置)
配置2:加速区域-需要启用加速的地区(国外地区没加速)
配置3:加速类型-需要启用加速的资源
配置4:其他SSL证书,DNS解析记录等(历史记录查询)
十二、#参考知识
超级Ping:网站测速|网站速度测试|网速测试|电信|联通|网通|全国|监控|CDN|PING|DNS 一起测试|17CE.COM
超级Ping:多个地点Ping服务器,网站测速 - 站长工具
接口查询:Get Site IP - Find IP Address and location from any URL
接口查询:NOSEC|FOFA用户中心
国外请求:全球 CDN 服务商查询_专业精准的IP库服务商_IPIP
国外请求:阿里云网站运维检测平台
IP社区库:纯真网络,中国历史最悠久的IP地理位置库
CDN厂商查询:最新CDN数据查询 - 站长工具
CDN厂商查询:全球 CDN 服务商查询_专业精准的IP库服务商_IPIP
全网扫描:https://github/Tai7sy/fuckcdn
全网扫描:https://github/boy-hack/w8fuckcdn
全网扫描:https://github/Pluto-123/Bypass_cdn
参考
一网打尽!20种绕过CDN查找真实IP的实用方法
干货 | 渗透测试中最全的CDN绕过总结
常见方法:
子域名,邮件系统,国外访问,证书查询,APP抓包,网络空间
通过漏洞或泄露获取,扫全网,以量打量,第三方接口查询等
-
查询历史DNS记录:通过查询历史DNS记录,可以找到使用CDN前的IP地址。常用网站有DNSDB、微步在线、Netcraft、ViewDNS等。
-
查询子域名:一些网站可能只对主站或流量大的子站点使用CDN。通过查询子域名对应的IP地址,可以辅助找到网站的真实IP。常用工具包括微步在线、Dnsdb查询法、Google搜索等。
-
网络空间引擎搜索:利用网络空间搜索引擎(如Shodan、Fofa、ZoomEye)搜索特定关键词或特征,可以找到使用CDN的网站的真实IP地址。
-
SSL证书:扫描互联网获取SSL证书,进而找到服务器的真实IP。Censys是一个用于搜索联网设备信息并扫描整个互联网的强大工具。
-
HTTP标头:通过比较HTTP标头来查找原始服务器。例如,使用SecurityTrails平台搜索特定HTTP标头。
-
网站源代码:浏览网站源代码,寻找独特的代码片段或隐藏的IP地址信息。
-
国外主机解析域名:由于一些CDN服务在国外地区可能无法提供完整的保护,使用国外的主机直接访问目标网站可能会获取到真实IP地址。
-
遗留文件:如phpinfo页面泄露,可能会显示服务器的外网IP地址。9. 漏洞探针:利用网站上的漏洞(如SSRF漏洞)让VPS获取对方反向连接的IP地址。
-
网站邮件订阅:查看RSS邮件订阅的邮件源码,通常包含服务器的真实IP地址。
-
全网扫描:使用Zmap、Masscan等工具对整个互联网进行扫描,针对扫描结果进行关键字查找,获取网站真实IP。
-
解码F5 LTM负载均衡器:当服务器使用F5 LTM做负载均衡时,通过对set-cookie关键字的解码,可以获取到真实IP地址。
-
利用MX记录:如果网站在与web相同的服务器和IP上托管自己的邮件服务器,那么原始服务器IP将在MX记录中。
-
利用favicon.ico:查看网站的favicon.ico文件,通过其唯一的hash值进行识别,有时可以找到与网站相关的真实IP地址。
-
配置错误:检查CDN的配置细节,有时小小的配置错误就可能导致CDN防护被绕过。例如,CDN只配置了www域名,而直接访问非www域名可能获取到真实IP。
-
协议差异:如果站点同时支持http和https访问,而CDN只配置了https协议,那么访问http可能获取到真实IP。
-
利用网站功能:通过网站提供的某些功能(如邮箱注册、找回密码等),让网站主动暴露真实IP地址。
-
搜索引擎查询:利用搜索引擎的特定查询语法(如site:和inurl:),结合目标网站的信息,可能找到与网站相关的真实IP地址。
-
子域名挖掘机:输入域名即可基于字典挖掘子域名,通过查找子域名的IP地址来辅助找到网站的真实IP。
-
IP库查询:使用IP库(如纯真数据库)来查询IP段,结合网站特征进行爆破,可能找到真实IP地址。
十三、#前置后置-CDN服务-识别加速&绑定访问
超级Ping:网站测速|网站速度测试|网速测试|电信|联通|网通|全国|监控|CDN|PING|DNS 一起测试|17CE.COM
超级Ping:多个地点Ping服务器,网站测速 - 站长工具
拨测工具:阿里云网站运维检测平台
各地ping(出现多个IP即启用CDN服务)
后置:绑定HOST访问解析(参考基础课CDN安全影响)
十四、#某应用-CDN绕过-主动漏洞&遗留文件&综合查询
配置加速选项中只加速主域名,导致其他子域名未加速(解析IP可能同IP也可能C段)
1、国外接口访问
2、子域名解析IP
3、综合查询(历史记录,证书记录等)
综合接口查询:Get Site IP - Find IP Address and location from any URL
综合接口查询:NOSEC|FOFA用户中心
使用网络空间&第三方功能集合查询判断
十五、#某应用-CDN绕过-主动漏洞&遗留文件&邮件系统
1、漏洞如:SSRF RCE等
利用漏洞让对方真实服务器主动出网连接,判断来源IP即真实IP
2、遗留文件:phpinfo类似功能
通过访问类似PHPINFO类似代码函数获取本地IP造成的地址泄漏
3、邮箱系统:
判断条件:发信人是当前域名邮件用户名
-让他主动给你发:
部署架设的邮件服务器如果向外部用户发送邮件的话,
那么邮件头部的源码中会包含此邮件服务器的真实IP地址。
常见的邮件触发点有:
1、RSS订阅
2、邮箱注册、激活处
3、邮箱找回密码处
4、产品更新的邮件推送
5、某业务执行后发送的邮件通知
6、员工邮箱、邮件管理平台等入口处的忘记密码
-你给未知邮箱发:(需要自己的邮件服务器不能第三方)
通过发送邮件给一个不存在的邮箱地址,因为该用户邮箱不存在,所以发送将失败,并且还会收到一个包含发送该电子邮件给你的服务器的真实IP通知。
十六、#某应用-CDN绕过-全网扫描
案例1:结合关键字固定IP段找真实IP
1、判断加速厂商
2、IP库筛地址段
3、配置范围扫描
厂商查询:
最新CDN数据查询 - 站长工具
全球 CDN 服务商查询_专业精准的IP库服务商_IPIP
工具项目:
纯真网络,中国历史最悠久的IP地理位置库
https://github/Tai7sy/fuckcdn
案例2:ico筛选资产+特征端口找真实IP
Fofa平台使用入门--利用网站小图标绕过CDN
ICO图标
1、某个应用系统的标示
2、某个公司/机构/个人团队的标示
#Python-开发框架-Django&Flask
Django
1、识别插件
2、固定的数据包格式:Set-Cookie:expires=
Flask
1、识别插件
2、固定的数据包格式:Etag: "flask X-Powered-By: Flask
Tornado
1、识别插件
2、固定的数据包格式:Server: TornadoServer
十七、#JavaScript-开发框架-Vue&Node.js
Vue
1、识别插件
2、JS语法和加载文件
Node.js
1、识别插件
2、固定的数据包格式:ETag: W/"
十八、#PHP-开发框架-ThinkPHP&Laravel&Yii
ThinkPHP
0、识别插件
1、X-Powered-By: ThinkPHP
2、CMS识别到源码体系TP开发
Laravel
1、识别插件
2、Set-Cookie中特征的格式 XSRF-TOKEN= laravel_session=
Yii
1、识别插件
2、Set-Cookie中特征的格式 YII_CSRF_TOKEN=
十九、#Java-框架组件-Fastjson&Shiro&Solr&Spring
52类110个主流Java组件和框架介绍
52类110个主流Java组件和框架介绍_基于java的组件有哪些-CSDN博客
框架
Struts2
一般使用struts2框架后缀带do或action,可以尝试进行利用
SpringBoot
1、默认web应用标签小绿叶图标
2、通过springboot框架默认页面
3、ICO源码体系采用SpringBoot开发
组件
FastJson/Jackson
在提交JSON数据包中修改测试:
-FastJson组件会把01解析成1
-Jackson组件在解析01时会抛出异常
奇安信攻防社区-浅谈黑盒识别Fastjson/Jackson组件
Shiro
请求包的cookie中存在rememberMe字段。
返回包中存在set-Cookie:remeberMe=deleteMe。
请求包中存在rememberMe=x时,响应包中存在rememberMe=deleteMe。
有时候服务器不会主动返回remeberMe=deleteMe,直接发包即可,将Cookie内容改为remember Me=1,若相应包有rememberMe=deleteMe,则基本可以确定网站apache shiro搭建的。
Solr识别
一般开放8983端口,访问页面也可以探针到
二十、#工具使用
https://github/projectdiscovery/nuclei
二十一、APP应用-公开信息-知识产权&开发者定位
APP渗透测试的范围应涵盖APP所有功能和组件,包括但不限于以下几个方面:
• 前端安全:包括界面交互、输入验证、会话管理等。
• 后端安全:包括API接口、数据库交互、业务逻辑等。
• 数据传输安全:包括数据传输过程中的加密、签名、完整性校验等。
• 用户认证与授权:包括登录、注册、权限分配、会话管理等。
• 第三方库与组件:包括使用的第三方库、SDK、插件等的安全性和稳定性。
• 配置与环境:包括APP的配置文件、环境变量、日志管理等。
移动安全
1、站着逆向角度
有无保护,源码修改打包HOOK
删除验证代码 证书 代理 抓包
删除验证代码 破解版(突破会员制度等)
翻到密钥 接口 密码等关键敏感
2、站着渗透角度
APP架构资产-表现,源码,调试逻辑
web 域名 cms api接口 web安全问题
ip 端口 服务 web服务(见上) 数据库 中间件 等服务测试
API 接口 测试
逻辑安全问题
通过获取App配置、数据包,去获取url、api、osskey、js等敏感信息。
1、资产信息-IP 域名 网站 -转到对应Web测试 API接口测试 服务测试
2、泄露信息-配置key 资源文件 - key(osskey利用,密钥配置等)
3、代码信息-代码安全 HOOK绕过限制(证书,代理,脱壳等)- 逆向相关
APP中收集资产:通讯抓包,静态提取,动态调试
二十二、APP应用-资产信息-抓包&静态提取&动态调试
#公开信息收集
通过搜索引擎、社交媒体、应用商店等渠道,收集目标APP信息,如APP名称、版本、开发者、下载量等。名称获取APP信息(爱企查/小蓝本/七麦/点点)
1、查备案信息在搜
2、网站上有APP下载
3、市场直接搜单位名称
七麦数据 -专业移动产品商业分析平台-关键词优化-ASA优化-七麦科技
点点数据-App数据查询分析,AppStore排行榜,ASO,ASM优化平台
百度安全验证
获客营销系统_ai智能拓客系统_企业获客系统-小蓝本获客系统
#APP资产提取
1、动态抓包
Burpsuite+Reqable
参考前期部分抓包技术
技术优点:没有误报
技术缺点:无法做到完整
2、静态提取-反编译
技术优点:数据较为完整
技术缺点:有很多无用的资产
APKDeepLens收集APP的权限、组件信息、IP、Secret。
https://github/d78ui98/APKDeepLens
APKLeaks工具,用于检查APK文件中的硬编码URL、API密钥等敏感信息。
https://github/dwisiswant0/apkleaks
AppInfoScanner对Android、iOS、WEB多场景应用进行信息扫描,收集IP、URL、Server、CDN等信息。
https://github/kelvinBen/AppInfoScanner
3、动态调试-反调试
技术优点:HOOK可解决不能抓包不能代理等情况
技术优点;搞逆向的人能看到实时的app调用链等
技术缺点:部分APP有反调试等无法做到完整
MobSF是一种自动化的移动应用(Android/iOS/Windows)静态和动态分析的测试,恶意软件分析和安全评估框架。
https://github/MobSF/Mobile-Security-Framework-MobSF
二十三、 小程序应用-公开信息-知识产权&平台搜索
#小程序获取-各大平台&关键字搜索
-微信
-百度
-支付宝
-抖音头条
#微信小程序-源码架构解析
1.主体结构
小程序包含一个描述整体程序的 app 和多个描述各自页面的 page。
一个小程序主体部分(即app)由三个文件组成,必须放在项目的根目录,如下:
文件 必需 作用
app.js 是 小程序逻辑
app.json 是 小程序公共配置
app.wxss 否 小程序公共样式表
2.一个小程序页面由四个文件组成,分别是:
xxx.js 页面逻辑
xxx.json 页面配置
xxx.wxml 页面结构
xxx.wxss 页面样式
3.项目整体目录结构
pages 页面文件夹
index 首页
logs 日志
utils
util 工具类(mina框架自动生成,你也可建立:api)
app.js 入口js(类似于java类中的main方法)、全局js
app.json 全局配置文件
app.wxss 全局样式文件
project.config.json 跟你在详情中勾选的配置一样
sitemap.json 用来配置小程序及其页面是否允许被微信索引
二十四、小程序应用-资产信息-抓包&提取&动态调试
#信息收集-小程序抓包-Proxifier&BurpSuite联动
1、抓包工具的证书要安装到系统的受信任和中间两个地方
2、Proxifier规则设置里面一定要确定默认规则没有走代理
-对抓到的IP或域名进行Web安全测试
-对抓到的IP或域名进行API安全测试
-对抓到的IP或域名进行端口服务测试
#信息收集-小程序逆向-解包反编译&动态调试&架构
对源码架构进行分析
-更多的资产信息
-敏感的配置信息
-未授权访问测试
-源码中的安全问题
https://github/r3x5ur/unveilr
https://github/Ackites/KillWxapkg
https://github/biggerstar/wedecode
https://github/eeeeeeeeee-code/e0e1-wx
微信开发者工具(稳定版 Stable Build)下载地址与更新日志 | 微信开放文档
二十五、自动化-网络空间-Yakit&TScanPlus
#自动化-网络空间-Yakit&TscanPlus
项目地址:https://www.yaklang/
项目地址:https://github/TideSec/TscanPlus
集成Fofa、Hunter、Quake、Zoomeye、Shodan、censys、VT、0.zone、微步等接口查询
二十六、自动化-移动资产-ENScan_Go
#自动化-企查信息-ENScan
项目地址:https://github/wgpsec/ENScan_GO
1、介绍:
剑指HW/SRC,解决在HW/SRC场景下遇到的各种针对国内企业信息收集难题
2、配置:
ENScanGo在第一次使用时需要使用-v命令生成配置文件信息后进行配置
3、使用:
见项目文档
二十七、自动化-综合管理-ARL&Nemo&TestNet
#自动化-综合架构-ARL&Nemo&TestNet
-ARL灯塔
项目地址1:https://github/adysec/ARL(升级版)
项目地址2:https://github/ki9mu/ARL-plus-docker
1、介绍:
旨在快速侦察与目标关联的互联网资产,构建基础资产信息库。 协助甲方安全团队或者渗透测试人员有效侦察和检索资产,发现存在的薄弱点和攻击面。
2、配置:(docker搭建)
安装环境:Aliyun HK服务器 Ubuntu20.04
apt update
apt install unzip wget docker.io docker-compose -y
cd /opt/
mkdir docker_arl
wget -O docker_arl/docker.zip https://github/ki9mu/ARL-plus-docker/archive/refs/tags/v3.0.1.zip
cd docker_arl
unzip -o docker.zip
docker volume create arl_db
cd ARL-plus-docker-3.0.1
docker-compose pull
docker-compose up -d
3、使用:见直播操作
-Nemo_Go
项目地址:https://github/hanc00l/nemo_go
1、介绍:
Nemo是用来进行自动化信息收集的一个简单平台,通过集成常用的信息收集工具和技术,实现对内网及互联网资产信息的自动收集,提高隐患排查和渗透测试的工作效率,用Golang完全重构了原Python版本。
2、配置:(docker搭建)
安装环境:Aliyun HK服务器 Ubuntu18.04
https://github/hanc00l/nemo_go/blob/main/docs/docker.md
下载release的nemo_linux_amd64.tar后执行:
mkdir nemo;tar xvf nemo_linux_amd64.tar -C nemo;cd nemo
docker-compose up -d
3、使用:见直播操作
-Testnet
项目地址:https://github/testnet0/testnet
1、介绍:
TestNet资产管理系统旨在提供全面、高效的互联网资产管理与监控服务,构建详细的资产信息库。 该系统能够帮助企业安全团队或渗透测试人员对目标资产进行深入侦察和分析,提供攻击者视角的持续风险监测,协助用户实时掌握资产动态,识别并修复安全漏洞,从而有效收敛攻击面,提升整体安全防护能力。2、配置:(docker搭建)
2、配置:(docker搭建)
安装环境:Aliyun HK服务器 Ubuntu22.04
git clone https://github/testnet0/testnet.git
cd testnet && bash build.sh
3、使用:见直播操作
二十八、自动化-环境部署-F8x
#自动化-武器库部署-F8x
项目地址:https://github/ffffffff0x/f8x
1、介绍:
一款红/蓝队环境自动化部署工具,支持多种场景,渗透,开发,代理环境,服务可选项等.
2、配置:
通过 CF Workers 下载 [推荐]
wget : wget -O f8x https://f8x.io/
curl : curl -o f8x https://f8x.io/
3、使用:见项目文档
二十九、公众号-渠道资产-第三方引入
#公众号-渠道资产-第三方引入
目标公众号服务获取
官方服务&第三方资产
#信息泄漏-源码文档-敏感配置监控
1、Github监控 GITHUB资源搜索: in:name test #仓库标题搜索含有关键字 in:descripton test #仓库描述搜索含有关键字 in:readme test #Readme文件搜素含有关键字 stars:>3000 test #stars数量大于3000的搜索关键字 stars:1000..3000 test #stars数量大于1000小于3000的搜索关键字
forks:>1000 test #forks数量大于1000的搜索关键字 forks:1000..3000 test #forks数量大于1000小于3000的搜索关键字
size:>=5000 test #指定仓库大于5000k(5M)的搜索关键字
pushed:>2019-02-12 test #发布时间大于2019-02-12的搜索关键字
created:>2019-02-12 test #创建时间大于2019-02-12的搜索关键字
user:test #用户名搜素 license:apache-2.0 test #明确仓库的 LICENSE 搜索关键字
language:java test #在java语言的代码中搜索关键字 user:test in:name test #组合搜索,用户名test的标题含有test的 关键字配合谷歌搜索: site:Github smtp site:Github smtp @qq site:Github smtp @126 site:Github smtp @163 site:Github smtp @sina site:Github smtp password site:Github String password smtp
系统源码:特征,文件等
敏感信息:密码,文档,人员等
监控项目:
https://github.yhuisec/
https://github/madneal/gshark
https://github/NHPT/FireEyeGoldCrystal
https://github/Explorer1092/Github-Monitor
2、其他渠道(搜索引擎)
个人信息 网盘泄漏 文档泄漏
inurl:xxx filetype:xls
inurl:xxx password admin
site:xxx filetype:xls|doc|pdf
三十、 供应链-目标旁路-获取和拓展
#供应链-目标旁路-获取和拓展
这是一种典型的迂回攻击方式。攻击者将目光聚集在目标企业的上下游供应商,比如IT供应商、安全供应商等,从这些上下游企业中找到软件或系统、管理上的漏洞,进而攻进目标企业内部。
-商业购买系统
-软件开发商
-外包业务
-代理商
-招投标文件
供应链例子edusrc挖洞思路:
1、找供应链公司,通过演示站点或提供的ico或特征文件找到大量高校使用系统的目标,一旦测出这个应用产品系统的漏洞,形成了通杀
2、找高校目标,通过高校系统的信息或者ico等找到供应链,再从供应链继续找使用同样的系统的高校目标,一旦测出这个应用产品系统的漏洞,形成了通杀
核心:如何找到系统的漏洞
1、尽量找到源码(源码获取途径)
2、旁入方法(找相似目标的存在脆弱点为突破)
目标供应链获取:可以企业产权或应用提示等
供应链信息收集:ico拓展 演示站点 成功案例等
案例文章:
教育EDU证书站挖掘(转战供应链思路篇)
记!一次供应链导致教育漏洞通杀,通杀五十多个学校弱口令,SQL注入,越权修改密码!(新手小白也能看懂的文章)
某次授权渗透通过供应链拿到目标后台权限