哥们儿,还在为SRC漏洞挖掘发愁吗?别慌!今天就给你整一份热乎乎的漏洞挖掘思路清单,保证你看了之后,挖洞就像开了金手指,直接起飞!这可不是随便瞎编的,都是实战经验总结,干货满满,助你成为漏洞猎手!
01. 原始笔记大公开:挖洞姿势全解锁!
-
C段扫描,地毯式搜索:信息搜集别忘了C段!用
ffuf
配合你写的批量脚本,对着C段一顿猛扫,记得部署在VPS上,后台跑起来,结果保存好,说不定哪个犄角旮旯就藏着宝贝! -
上传漏洞,参数FUZZ大法好:对着
upload.php
空白界面,FUZZ
参数名,爆破参数值,看到上传表单就别犹豫,直接上传shell
,再FUZZ
上传路径,搞定! -
XSS绕过,花式玩转JS:
- 输出在JS内的闭合与注释,是你的好伙伴!
Function()
代替eval()
,效果杠杠的!atob
解密base64
加密的JS,绕过alert()
过滤,秀起来!- 反引号代替括号和引号,绕过对
()
的过滤,骚操作!
-
SSRF,远程加载图片是突破口:
FUZZ
目录、参数名,得到/xxx?image_url=xx
,八成是远程加载图片的参数,直接get
一个SSRF
漏洞,简单粗暴! -
水平越权,删参数大法:删除
openid
参数,得到所有用户信息,再用账号用户名进行用户名喷洒,登录成功,就问你爽不爽! -
云服务器元数据,信息泄露重灾区:修改
imageurl
参数为dnslog
地址,发现成功回显,探测内网失败?别灰心,试试云服务器元数据,说不定有惊喜! -
认证缺陷,遍历ID是关键:遍历
id
获得多个手机号,openid
又用手机号做唯一的身份校验,漏洞就在眼前! -
密码重置,手机号替换术:任意用户密码重置,登录接口遍历手机号,密码重置时,把手机号替换为其他手机号,成功重置密码,安排!
-
信息泄露,手机号滞空大法:输入手机号获得对应订单信息,滞空手机号返回所有用户信息,这波操作666!
-
管理员Token,改参数就完事儿:一个获取管理员
token
的接口,把username
参数改为admin
,就返回了管理员token
,复用此凭证可访问更多敏感接口,简直不要太简单! -
弱Cookie,SQL注入来一发:弱
cookie
问题,修改cookie
的UserCode
值为admin
,直接获得了管理员权限,猜测UserCode
会进行数据库交互,直接尝试SQL
注入,成功报错注出数据,刺激! -
信息泄露,A站泄露B站:A站点是大屏系统,B站点是存放大屏数据的后台,A站点的大屏有些数据是从B站点调用的,发现了A站点某个接口直接泄露了B站点的URL、用户名、密码,因为数据需要认证才能获取调用,因此账号密码直接写在了调用链里面,这波血赚!
-
JS文件泄露API,用户名喷洒走起:
js
文件泄露API
接口,拼接base
路径,批量访问,得到用户名规测,按照规测批量生成用户名字典,再用户名喷洒成功进入系统,操作起来! -
日志分析,上传点GetShell:日志中有一个IP进行了大量扫描活动,访问该ip找到了上传点,上传ASPX马,返回了路径在82端口,但是82端口无法访问,幸运的是在80端口发现
/upload
目录遍历漏洞,也可访问ASPX马,getshell
,安排! -
修改POST参数,重置管理员密码:修改
POST
参数username
为admin
获得管理员权限,登录普通账号,来到修改密码处,抓包用户名改为admin
,重置了管理员密码,拿下! -
ASPX木马,ChatGPT来帮忙:上传了
aspx
木马,无法使用webshell
管理工具连接,但是可以解析aspx
代码,于是使用ChatGPT
生成执行了某些命令的aspx
脚本并上传,间接的执行了脚本并获得了回显,高端操作! -
Nginx默认界面,Struts2漏洞利用:
Nginx
默认界面->扫描目录->发现一个302跳转,跳转到了一个http://内网地址/xxx/xxx
,把内网地址换为目标的外网地址,成功发现一个登录系统。- 基本流程走一遍无果,发现可下载APP端->
jadx
逆向看看接口->拿到接口批量未授权测试->发现是.do
上个Struts2
利用工具->失败->尝试sqlmap
注入成功->发现了另一个端口的系统->发现又是.do
上个Struts2
利用工具->成功利用->getshell
,一环扣一环!
-
前端显示敏感信息,数据包里找真相:前端显示敏感信息是*号的时候,数据可能就在数据包里!这次遇到的情况就是仅仅在前端展示的时候用*号替代,其实数据包返回了未脱敏的数据,造成信息泄露,细心是关键!
-
上传头像,参数修改是关键:一个上传头像功能点,尝试绕过后缀检测均未成功,看到
type ileTypereach
,根据以往渗透测试经验就是把参数修改成0、1、2这些看是不是能绕过文件类型检测。发现都不可以,以往fileType
可能是1代表文件、2代表图片文件。但是都以失败告终准备放弃了,突然想起来还有一个参数all
代表全部,修改为all
,代表接收所有类型的文件,直接上传成功,峰回路转! -
小程序越权,OpenID替换术:拿到小程序后,访问需要授权登录,直接授权登录,没有
sign
值保护,在换绑手机号时,直接尝试修改Mobile
为其他手机号,换绑成功;转战小程序代码反编译,找到了小程序上没有的功能接口,直接进行拼接测试,并没有对权限校验的很严格,导致可以利用目前的帐号去访问,越权获取所有用户的openId
值和手机号,取到的openid
值可以直接替换在登陆包文里,只校验了openid
参数,替换后成功登陆其他用户帐号,越权就是这么简单! -
弱Cookie,任意用户伪造:弱
cookie
导致的篡改Cookie
实现任意用户伪造,简直不要太刺激! -
前端检验,换绑手机号是突破口:前端检验关键数据(如:手机号)导致任意换绑从而任意用户密码重置,拿下!
-
存储型XSS + 换绑验证码,无感换绑:存储型
XSS
与换绑的验证码输出在前端的组合拳实现任意账户无感换绑,秀! -
前端数据截图伪造 + 水平越权,退款欺骗:前端数据截图伪造与水平越权数据泄露的组合拳实现退款欺骗,骚操作!
-
OAuth缺陷,CSRF任意用户换绑:
OAuth
缺陷导致CSRF
任意用户换绑从而实现任意用户接管,拿下! -
四舍五入,支付逻辑漏洞:四舍五入数据处理不当导致支付逻辑漏洞,薅羊毛的机会来了!
-
四舍五入,越权逻辑漏洞:四舍五入数据处理不当导致越权逻辑漏洞,权限提升!
-
并发漏洞,重放攻击:并发漏洞导致的各种重放攻击,搞起来!
-
前端校验数据伪造,各种问题:前端校验数据伪造数据导致的各种问题,等着你来挖!
-
用户名枚举,Fuzz模块来帮忙:用户名枚举时还可使用
fuzz
模块生成二到三位的简单用户名,效率更高! -
中文名汉字字典,用户名枚举:用户名枚举时还可使用使用TOP中文名汉字字典,扩大范围!
-
Google黑语法,信息搜集利器:
Goole
黑语法搜寻学号,默认密码,信息搜集利器! -
Github语法,代码泄露分析:
Github
语法找CMS
源码,项目源码,敏感信息,代码审计走起! -
熟悉业务流程,功能点是关键:熟悉目标的整个业务流程,功能点很重要,知己知彼百战不殆!
-
前端泄露调试器,敏感信息大放送:前端泄露调试器全局搜索
key
、security
、ak
、sk
、password
、username
、/*
、//
、默认,总有意外惊喜! -
F12 XHR,异步流量分析:
F12 XHR
截取异步流量(接口信息) 获取请求的API
接口,接口分析是关键! -
参数遍历,0元购不是梦:参数遍历寻找隐藏商品、赠品、附属商品实现0元购,薅羊毛!
-
越权测试,双账号大法:越权测试时不要嫌麻烦,注册两个账号测试,方便对比!
-
售罄商品,尝试购买:尝试购买售罄的商品,说不定有漏洞!
-
优惠劵复用,薅羊毛:优惠劵多次复用,薅羊毛!
-
响应包长度,临界值分析:看响应包长度时,看最大、最小、临界值,发现异常!
-
未授权接口,前缀拼接:找未授权接口时,若大多数是404说明可能接口有前缀,
F12
翻找js
进行前缀拼接;如果接口跳转,开启bp
拦截,再次看发送是否加载新的接口,耐心! -
未授权接口,请求方法修改:找未授权接口时,405 改
POST
、GET
、OPTIONS
、PUT
、HAED
,换个姿势试试! -
未授权接口,参数缺失:找未授权接口时,
5xx
可能是参数缺失,F12
前端去找参数或者FUZZ
参数,填补缺失! -
未授权接口,媒体类型FUZZ:找未授权接口时,
Unsupportted Media Type
不支持内容类型,FUZZ
媒体类型,换个口味!
text/html:HTML 文档
application/json:JSON 数据
application/xml:XML 数据
image/jpeg:JPEG 图像
image/png:PNG 图像
application/pdf:PDF 文档
application/octet-stream:二进制数据流
application/x-www-form-urlencoded:用于表单数据的 URL 编码格式
multipart/form-data:用于表单数据的多部分数据格式
-
未授权接口,403 Bypass:找未授权接口时 403时,继续
FUZZ
爆破次级目录,或者403Bypass
,绕过限制! -
密码爆破,横向突破:爆破密码时有次数限制时,横向爆破用户名;爆破密码,达到错误阈值,再使用正确密码登录,看是否是虚假锁定,换个思路!
-
前端校验,绕过限制:看前端是否对控制错误尝试的校验字段可控,从而绕过限制,前端漏洞!
-
校验与处理分离,跳过校验:校验过程与处理过程业务分离,导致通过一次校验后,得到处理过程,之后可跳过校验过程直接进行处理过程,越权!
-
验证码未绑定,任意用户登录:验证码未绑定,只校验此时数据库中的该验证码是否有效,导致的任意用户登录,简单粗暴!
-
NULL情况未考虑,验证码绕过:在代码层未考虑
NULL
的情况导致的验证码可删除从而绕过校验,空指针! -
二次注入/XSS,输入过滤不严:仅仅只对输入校验过滤导致的二次注入、二次
XSS
,二次伤害! -
MySQL数据截断,任意用户覆盖:
MySQL
中insert into
数据长度溢出时截断数据的特性导致的注册时的任意用户覆盖,数据覆盖! -
流程凭证缺失,未授权访问:没有流程凭证(
session
),业务流程步骤未校验是否上一步骤是否完成,导致中间流程被跳过导致的未授权访问,流程漏洞! -
流程凭证未绑定账号,任意用户重置密码:流程凭证未绑定账号信息,导致的任意有效流程凭证可复用,从而实现任意用户密码重置,密码危机!
-
密保问题简单,轻松破解:密保问题简单可猜解,安全形同虚设!
-
密保答案泄露,前端明文:密保问题答案泄露在前端,直接暴露!
-
验证码爆破,4-5位是机会:验证码4-5位可爆破,暴力破解!
-
验证码回显,Cookie泄露:验证码回显在响应的
set-cookie
中,信息泄露! -
万能/默认验证码,直接绕过:万能、默认验证码,直接绕过,安全意识差!
-
Token未过期,越权操作:未使用的
token
不过期,且不包含用户凭证信息,导致的任意用户越权操作,Token
管理混乱! -
Token可猜解,伪造越权:
token
可猜解,可预测,导致token
伪造实现任意用户越权操作,Token
安全性低! -
邮箱重置链接,账号ID篡改:邮箱密码重置链接中的凭证不包含账号信息或者叫凭证不会账号做校验,则可通过修改账号ID,实现任意用户密码重置,账号接管!
-
账号激活链接未加密,任意注册:账号激活邮箱链接未加密且参数简单,无需登录他人邮箱就可以构造激活链接导致的任意用户注册,随便注册!
-
PID校验,RoleID替换:以
pid
作为校验身份的唯一参数,但是是经过了加密,无法遍历的,返回的响应包中是roleid=112
,代表该用户的id
,尝试把pid
替换为roleid
竟然也可以返回用户所有信息,这样通过roleid
可遍历出用户凭证,再利用获得的凭证去其他接口获取更多信息,拿下了所有账号权限,权限管理混乱! -
UserGroupId遍历,权限提升:注册时,获取注册的数据包,有一个参数
userGroupId
,遍历userGroupId
成功以更高的权限注册,可用29个应用,随便点击一个提示不是有效用户,说明权限还不够高,在个人中心发现一个用户类别选择的功能,直接获取保存的数据包,果然有userGroupId
,直接改成1,应用数量也随之增加了,权限又提升了,权限提升! -
404僵局,目录爆破SSRF:开局404,爆出一个目录,打破了404僵局,在一个接口里面发现页面加载了远程服务器资源,打一手
SSRF
内网探测,柳暗花明! -
递归FUZZ,免密登录:对接口进行递归
FUZZ
,得到登录接口,提示没有用户名,尝试只填用户名admin
,滞空密码,成功免密登录,惊不惊喜! -
管理员账号,简单密保爆破:意想不到的管理员账号密码重置,密保问题过于简单,导致可爆破,防不胜防!
-
司机身份,越权取消订单:首先需要注册司机并进行实名认证,然后以司机的身份登录,此时便可以看到平台上用户发布的订单。接着,通过抓包,随机选择一个用户订单号进行获取。为了测试越权问题,我们需要获取乘客取消订单的数据包。为此,我们需要通过切换身份为乘客,发布行程订单,然后立即取消订单,以此获取订单取消的数据包数据。在成功获取数据包后,我们替换之前选定的订单号进行取消操作,但提示出现参数错误。事实上,取消订单是由三个部分构成的:
auto
、route_id
、user_cid
。其中,已知的是user_cid
是用户身份ID,不能进行篡改;而route_id
则是订单号,如果修改其他用户的订单号,取消操作将会失败。在测试了几次之后,我决定尝试将auto=0
改为1,取消成功!脑洞大开! -
SessionKey泄露,越权篡改:
session_key
泄漏导致可通过session_key
和iv
解密encrypteData
参数,并对其数据进行越权篡改,从而造成任意账号登录,Session
管理不善! -
DDOS攻击,请求范围扩大:
DDOS
请求包是2023-6-1到2023-6-8,7天会去查询这7天的报表内容,那我多尝试几天呢?修改查询范围为:1023-6-1到29023-6-8,单次请求10220000次,然后多请求几次,岂不是把它的处理能力给拉满,达到拒绝服务的效果,成功干蹦了,暴力美学! -
弱口令 + IE + 文件名欺骗,解密成功:弱口令->上传点失效->用IE打开->上传马子->
filename="1.asp";filename="1.jpg"
绕过->成功得到加密文件->用社工字典生成器生成->成功解密,环环相扣!
02. 漏洞类型大汇总:对症下药,事半功倍!
- 信息搜集与资产发现:知己知彼,百战不殆!
- 文件上传漏洞:上传漏洞,yyds!
- XSS漏洞:前端安全,重中之重!
- SSRF漏洞:内网穿透,利器!
- 逻辑漏洞:脑洞大开,逻辑致胜!
- 其他漏洞:各种奇葩漏洞,等你来发现!
03. 挖洞思路再整理:精益求精,漏洞无处遁形!
01
信息搜集与资产发现
- C段扫描:使用
ffuf
+自写脚本对C段进行批量目录扫描,部署在VPS上后台运行,保存扫描结果。 - JS文件泄露API接口:通过JS文件泄露的API接口,拼接
base
路径,批量访问,获取用户名规则,生成用户名字典进行喷洒。 - Google黑语法:使用Google黑语法搜寻学号、默认密码等敏感信息。
- Github语法:通过Github语法查找CMS源码、项目源码、敏感信息。
- 前端泄露调试器:全局搜索
key
、security
、ak
、sk
、password
、username
等敏感信息。 - F12 XHR截取异步流量:获取请求的API接口信息。
02
文件上传漏洞
- FUZZ上传参数:对
upload.php
空白界面FUZZ
参数名,爆破参数值,出现上传表单后上传shell
。 - 绕过文件类型检测:修改
type
、fileType
、breach
等参数为0、1、2或all
,绕过文件类型检测,上传成功。 - IE上传绕过:用IE打开上传点,上传马子,通过
filename="1.asp";filename="1.jpg"
绕过检测。
03
XSS漏洞
- WAF绕过:输出在JS内的闭合与注释;使用
Function()
代替eval()
;atob
解密base64
加密的JS,绕过对alert()
的过滤;反引号代替括号与引号,绕过对()的过滤。 - 存储型XSS与换绑验证码组合:通过存储型
XSS
与换绑的验证码输出在前端的组合,实现任意账户无感换绑。
04
SSRF漏洞
- FUZZ目录与参数名:通过
FUZZ
目录、参数名得到/xxx?image_url=xx
,直接无脑get
一个SSRF
漏洞。 - 修改imageurl参数:将
imageurl
参数修改为dnslog
地址,探测内网或云服务器元数据。
05
逻辑漏洞
- 水平越权:删除
openid
参数获取所有用户信息,用得到的账号用户名进行喷洒,成功登录。 - 任意用户密码重置:登录接口遍历手机号,密码重置时将手机号替换为其他手机号,成功重置密码。
- 认证缺陷:遍历
id
获得多个手机号,openid
使用手机号做唯一的身份校验。 - 订单信息泄露:输入手机号获取对应订单信息,滞空手机号返回所有用户信息。
- 管理员token获取:修改
username
参数为admin
,返回管理员token
,复用此凭证访问敏感接口。 - 弱cookie问题:修改
cookie
的UserCode
值为admin
,直接获得管理员权限,尝试SQL
注入成功。 - A站点泄露B站点信息:A站点接口泄露B站点的URL、用户名、密码,直接调用B站点数据。
- 日志扫描:通过日志中的IP进行大量扫描活动,找到上传点,上传ASPX马,通过目录遍历漏洞
getshell
。 - 修改POST参数:修改
POST
参数username
为admin
获得管理员权限,重置管理员密码。 - 并发漏洞:通过并发漏洞进行重放攻击。
- 前端校验数据伪造:前端校验数据伪造导致的各种问题。
- 用户名枚举:使用
fuzz
模块生成二到三位的简单用户名,或使用TOP中文名汉字字典。 - 优惠券多次复用:尝试多次复用优惠券。
- 购买售罄商品:尝试购买售罄的商品。
- 参数遍历:通过参数遍历寻找隐藏商品、赠品、附属商品,实现0元购。
- 越权测试:注册两个账号进行越权测试。
- 响应包长度分析:分析响应包长度,寻找最大、最小、临界值。
- 未授权接口寻找:通过
FUZZ
、405改请求方法、5xx错误寻找未授权接口。 - 403 Bypass:通过
FUZZ
爆破次级目录或403Bypass
绕过限制。 - 密码爆破绕过:横向爆破用户名,或通过虚假锁定绕过密码爆破限制。
- 校验过程与处理过程分离:通过一次校验后,跳过校验过程直接进行处理过程。
- 验证码未绑定:只校验验证码是否有效,导致任意用户登录。
- NULL情况未考虑:验证码可删除绕过校验。
- 输入校验过滤不严:导致二次注入、二次
XSS
。 - MySQL数据截断:
insert into
数据长度溢出时截断数据,导致注册时的任意用户覆盖。 - 流程凭证未绑定账号信息:导致任意有效流程凭证可复用,实现任意用户密码重置。
- 密保问题简单可猜解:通过简单猜解密保问题绕过验证。
- 验证码回显在set-cookie中:通过
set-cookie
中的验证码回显绕过验证。 - 万能、默认验证码:使用万能或默认验证码绕过验证。
- 未使用的token不过期:导致任意用户越权操作。
- token可猜解:通过猜解或预测
token
实现任意用户越权操作。 - 邮箱密码重置链接凭证不绑定账号:通过修改账号ID实现任意用户密码重置。
- 账号激活链接未加密:通过构造激活链接实现任意用户注册。
- pid作为唯一校验参数:通过
roleid
替换pid
遍历用户凭证,获取更多信息。 - userGroupId遍历:通过遍历
userGroupId
以更高权限注册,提升权限。 - 404僵局打破:通过爆出目录打破404僵局,发现
SSRF
漏洞。 - 递归FUZZ登录接口:通过递归
FUZZ
得到登录接口,滞空密码免密登录。 - 管理员账号密码重置:通过简单密保问题爆破重置管理员密码。
- 司机身份越权:通过司机身份获取用户订单,替换订单号取消订单。
- session_key泄漏:通过
session_key
和iv
解密encrypteData
参数,越权篡改数据,实现任意账号登录。 - DDOS攻击:通过修改查询范围,拉满处理能力,达到拒绝服务效果。
06
其他漏洞
- 前端数据截图伪造:通过前端数据截图伪造与水平越权数据泄露的组合,实现退款欺骗。
- OAuth缺陷:通过
OAuth
缺陷实现CSRF
任意用户换绑,接管任意用户。 - 四舍五入数据处理不当:导致支付逻辑漏洞或越权逻辑漏洞。
- 前端校验关键数据:前端校验关键数据(如手机号)导致任意换绑,实现任意用户密码重置。
- 弱cookie导致的任意用户伪造:通过弱
cookie
篡改实现任意用户伪造。
04. 结尾彩蛋:师傅们,一起进步!
欢迎各位师傅留言补充!我会持续更新更多优秀的漏洞挖掘思路!由于这只是思路清单,解释可能不够详细,如果师傅们对某些思路不太理解,欢迎留言或者私信随时提问,我都会一一回复!技术有限,如有写得不好的地方,还请各位大师傅们斧正!一起进步,共同成长!
黑客/网络安全学习包
资料目录
-
成长路线图&学习规划
-
配套视频教程
-
SRC&黑客文籍
-
护网行动资料
-
黑客必读书单
-
面试题合集
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
*************************************CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享*************************************
1.成长路线图&学习规划
要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
*************************************CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享*************************************
2.视频教程
很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,其中一共有21个章节,每个章节都是当前板块的精华浓缩。
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
*************************************CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享*************************************
3.SRC&黑客文籍
大家最喜欢也是最关心的SRC技术文籍&黑客技术也有收录
SRC技术文籍:
黑客资料由于是敏感资源,这里不能直接展示哦!
4.护网行动资料
其中关于HW护网行动,也准备了对应的资料,这些内容可相当于比赛的金手指!
5.黑客必读书单
**
**
6.面试题合集
当你自学到这里,你就要开始思考找工作的事情了,而工作绕不开的就是真题和面试题。
更多内容为防止和谐,可以扫描获取~
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
*************************************CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享*********************************