国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權

這篇具有很好參考價值的文章主要介紹了WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

知識點:
1、Java安全-Druid監(jiān)控-未授權訪問&信息泄漏
2、Java安全-Swagger接口-文檔導入&聯(lián)動批量測試
2、Java安全-JWT令牌攻防-空算法&未簽名&密匙提取

一、演示案例-Java安全-Druid監(jiān)控-未授權訪問

參考:https://developer.aliyun.com/article/1260382
Druid是阿里巴巴數(shù)據(jù)庫事業(yè)部出品,為監(jiān)控而生的數(shù)據(jù)庫連接池。Druid提供的監(jiān)控功能,監(jiān)控SQL的執(zhí)行時間、監(jiān)控Web URI的請求、Session監(jiān)控。當開發(fā)者配置不當時就可能造成未授權訪問漏洞。

黑盒發(fā)現(xiàn)

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

白盒發(fā)現(xiàn)

在項目源碼配置文件中搜索druid關鍵字
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

攻擊點

1、直接拼接URL路徑,嘗試能否直接未授權訪問系統(tǒng)功能點。
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
2、結合泄露URL路徑和Session信息,利用BurpSuite進行嘗試登錄。
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
3、利用Cookie編輯器替換Session,再次訪問后臺路徑嘗試進入后臺。

二、演示案例-Java安全-Swagger接口-導入&聯(lián)動批量測試

Swagger就是將項目中所有(想要暴露的)接口展現(xiàn)在WEB頁面上,并可以進行接口調用和調式的服務(一般都是用spring boot框架搭建該服務)

所以可以對這個接口進行漏洞測試,看是否存在未授權訪問、sql注入、文件上傳等漏洞。由于接口太多,一個個接口測試的話太費時間,所以一般會采用自動化接口漏洞安全測試。

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

黑盒發(fā)現(xiàn)

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

白盒發(fā)現(xiàn)

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

1、自動化發(fā)包測試

Postman:https://github.com/hlmd/Postman-cn
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
如果postman上有出現(xiàn)200的響應,那么就有可能是一個未授權接口

2、自動化漏洞測試

聯(lián)動BurpSuite Xray
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
也可以在BP上看有沒有200響應的數(shù)據(jù)包,也有可能會是一個未授權接口

bp聯(lián)動xray
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

三、演示案例-Java安全-JWT令牌-空算法&未簽名&密匙提取

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
JSON Web Token(JWT)。它遵循JSON格式,將用戶信息加密到token里,服務器不保存任何用戶信息,只保存密鑰信息,通過使用特定加密算法驗證token,通過token驗證用戶身份。基于token的身份驗證可以替代傳統(tǒng)的cookie+session身份驗證方法。這使得JWT成為高度分布式網(wǎng)站的熱門選擇,在這些網(wǎng)站中,用戶需要與多個后端服務器無縫交互。
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

JWT識別

1、標頭(Header)

HeaderJWT的第一個部分,是一個JSON對象,主要聲明了JWT的簽名算法,如"HS256”、"RS256"等,以及其他可選參數(shù),如"kid"、"jku"、"x5u"
alg字段通常用于表示加密采用的算法。如"HS256"、"RS256"等(HS對稱加密、RS非對稱加密)
typ字段通常用于表示類型
還有一些其他可選參數(shù),如"kid"、"jku"、"x5u"

2、有效載荷(Payload)

PayloadJWT的第二個部分,這是一個JSON對象,主要承載了各種聲明并傳遞明文數(shù)據(jù),用于存儲用戶的信息,如id、用戶名、角色、令牌生成時間和其他自定義聲明。
iss:該字段表示jwt的簽發(fā)者。
sub:該jwt面向的用戶。
aud:jwt的接收方。
exp:jwt的過期時間,通常來說是一個時間戳。
iat:jwt的簽發(fā)時間,常來說是一個時間戳。
jti:此jwt的唯一標識。通常用于解決請求中的重放攻擊。該字段在大多數(shù)地方?jīng)]有被提及或使用。因為使用此字段就意味著必須要在服務器維護一張jti表, 當客戶端攜帶jwt訪問的時候需要在jti表中查找這個唯一標識是否被使用過。使用這種方式防止重放攻擊似乎讓jwt有點怪怪的感覺, 畢竟jwt所宣稱的優(yōu)點就是無狀態(tài)訪問

3、簽名(Signature)

Signature是對HeaderPayload進行簽名,具體是用什么加密方式寫在Header的alg 中。同時擁有該部分的JWT被稱為JWS,也就是簽了名的JWT。

第一部分:對 JSON 的頭部做 base64 編碼處理得到
第二部分:對 JSON 類型的 payload 做 base64 編碼處理得到
第三部分:分別對頭部和載荷做base64編碼,并使用.拼接起來
使用頭部聲明的加密方式,對base64編碼前兩部分合并的結果加鹽加密處理,作為JWT

4、人工識別

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

5、BURP插件識別

Hae(需要自己下載項目)

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

JSON Web Tokens(BP商店有,支持識別解析)

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

如何解析JWT數(shù)據(jù)?

1.JWT在線解析

https://jwt.io/
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

2.BP官方插件-JSON Web Tokens

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

JWT安全

1、空加密算法(攻擊頭部不使用加密)

簽名算法可被修改為none,JWT支持將算法設定為"None"。如果"alg"字段設為"None",那么簽名會被置空,這樣任何token都是有效的。
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

2、未校驗簽名(攻擊簽名不使用簽名認證)

某些服務端并未校驗JWT簽名,可以嘗試修改payload后然后直接請求token或者直接刪除signature再次請求查看其是否還有效。

3、暴力破解密鑰(攻擊簽名知道密鑰實現(xiàn)重組)

針對是對稱加密算法(非對稱沒有用)
非對稱要使用方法:從源碼獲取公鑰私鑰文件

某些簽名算法,例如HS256(HMAC+SHA-256),會像密碼一樣使用一個任意的、獨立的字符串作為秘密密鑰。這個秘鑰如被輕易猜到或暴力破解,則攻擊者能以任意的頭部和載荷值來創(chuàng)建JWT,然后用密鑰重新給令牌簽名。

4、其他安全參考:(源碼泄漏密匙,Kid注入等)

https://blog.csdn.net/weixin_44288604/article/details/128562796

JWTCTF

JWT利用項目

https://github.com/ticarpi/jwt_tool

項目命令幫助
# 使用None算法
python3 jwt_tool.py JWT_HERE -X a

# 自定義修改生成
python3 jwt_tool.py JWT_HERE -T

# 使用字典破解
python3 jwt_tool.py JWT_HERE -C -d dictionary.txt

# 指定密碼測試
python3 jwt_tool.py JWT_HERE -C -p password_here

Web345(None空加密算法)

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

Web346(None算法繞過簽名)

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
解題思路:alg強制設置為none繞過簽名
兩種方法:

BP插件-JSON Web Tokens

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

JWT利用項目-jwt_tool

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

Web347(弱口令密鑰獲取)

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
JWT利用項目-jwt_tool
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
知道密匙之后肯定要重新生成JWT呀,如何重新生成?
使用 JWT在線解析:https://jwt.io/來重新生成
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

Web348(爆破密鑰上題一樣)

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

Web349(公鑰私鑰泄露)

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
這里可以使用專門的js ide打開相關源碼文件,看的比較清楚
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
公鑰私鑰泄露,訪問/private.key、/public.key得到公鑰密鑰
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
源碼中私鑰生成jwt,利用公鑰解密jwt,只要有私鑰就可以重新生成JWT
test.py

import jwt
public = open('private.key', 'r').read()
payload={"user":"admin"}
print(jwt.encode(payload, key=public, algorithm='RS256'))

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
注意源碼中公匙解密的條件
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

Web350(密鑰混淆攻擊RS256=>HS256)

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
這里可以使用專門的js ide打開相關源碼文件,看的比較清楚
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
RS256算法改為HS256(非對稱密碼算法=>對稱密碼算法)
HS256算法使用密鑰為所有消息進行簽名和驗證。
而RS256算法則使用私鑰對消息進行簽名并使用公鑰進行身份驗證。
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
test.js

var jwt = require('jsonwebtoken');
var fs = require('fs');
var privateKey = fs.readFileSync('./public.key');
var token = jwt.sign({ user: 'admin' }, privateKey, { algorithm: 'HS256' });
console.log(token)

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid
WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權,# WEB安全篇,java,JWT,swagger,druid

黑盒JWT測試

首先找到需要JWT鑒權后才能訪問的頁面,如個人資料頁面,將該請求包重放

測試:文章來源地址http://www.zghlxwxcb.cn/news/detail-761862.html

1、未授權訪問:刪除Token后仍然可以正常響應對應頁面

2、敏感信息泄露:通過在線平臺JWt.io解密出Payload后查看其中是否包含敏感信息,如弱加密的密碼等

3、破解密鑰+越權訪問:通過JWT.io解密出Payload部分內容,通過空加密算法或密鑰爆破等方式實現(xiàn)重新簽發(fā)Token并修改Payload部分內容,重放請求包,觀察響應包是否能夠越權查看其他用戶資料

4、檢查Token時效性:解密查看payload中是否有exp字段鍵值對(Token過期時間),等待過期時間后再次使用該Token發(fā)送請求,若正常響應則存在Token不過期

5、通過頁面回顯進行探測:如修改Payload中鍵值對后頁面報錯信息是否存在注入,payload中kid字段的目錄遍歷問題與sql注入問題

到了這里,關于WEB攻防-Java安全&JWT攻防&Swagger自動化&算法&簽名&密匙&Druid未授權的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 智安網(wǎng)絡|攻防演練對抗:網(wǎng)絡邊界自動化防御的關鍵

    智安網(wǎng)絡|攻防演練對抗:網(wǎng)絡邊界自動化防御的關鍵

    在當今高度互聯(lián)的數(shù)字世界中,網(wǎng)絡安全的重要性日益凸顯。為了應對不斷增長的網(wǎng)絡威脅,組織和企業(yè)需要采取主動的防御策略,其中攻防演練對抗和自動化防御在保護網(wǎng)絡邊界方面扮演著重要的角色。本文將探討攻防演練對抗的意義,并介紹如何通過自動化防御技術來增

    2024年02月11日
    瀏覽(25)
  • swagger 接口測試,用 python 寫自動化時該如何處理?

    swagger 接口測試,用 python 寫自動化時該如何處理?

    在使用Python進行Swagger接口測試時,可以使用requests庫來發(fā)送HTTP請求,并使用json庫和yaml庫來處理響應數(shù)據(jù)。以下是一個簡單的示例代碼: 在以上代碼中,我們首先通過Swagger API文檔地址獲取接口信息,包括請求方法、請求參數(shù)和請求頭等信息。然后使用requests.get()方法發(fā)送G

    2024年02月10日
    瀏覽(17)
  • 如何使用螞蟻集團自動化混沌工程 ChaosMeta 做 OceanBase 攻防演練?

    如何使用螞蟻集團自動化混沌工程 ChaosMeta 做 OceanBase 攻防演練?

    當前,業(yè)界主流的混沌工程項目基本只關注如何制造故障的問題,而經(jīng)常做演練相關工作的工程師應該明白,每次演練時還會遇到以下痛點: 檢測當前環(huán)境是否符合演練預設條件(演練準入); 業(yè)務流量是否滿足(流量注入); 注入后判斷故障效果是否符合預期(故障度量

    2024年02月09日
    瀏覽(20)
  • 【Java萬花筒】代碼安全護航:Java自動化測試與BDD

    在當今軟件開發(fā)領域,自動化測試和行為驅動開發(fā)(BDD)已經(jīng)成為確保軟件質量和可維護性的不可或缺的一部分。Java開發(fā)者可以借助多種庫和框架來實現(xiàn)自動化測試,并通過BDD方法更清晰地表達軟件的行為規(guī)范。本文將深入探討一些在Java環(huán)境中廣泛使用的自動化測試和BDD庫

    2024年01月22日
    瀏覽(24)
  • 軟件測試——功能測試,使用Java,IDEA,Selenium進行web自動化測試

    軟件測試——功能測試,使用Java,IDEA,Selenium進行web自動化測試

    視頻地址:03-web元素定位ID_嗶哩嗶哩_bilibili p1.下載jdk,maven,idea p2.配置java-selenium環(huán)境正式開始: (1)創(chuàng)建代碼: (2)第一次運行會報錯:要下載東西? (3) Windows系統(tǒng)的輸入如下: ?(4)完成如下:(這個用的是Linux系統(tǒng)的) p3:web元素定位ID (1)先改一下之前的代碼 ?(

    2024年02月08日
    瀏覽(39)
  • selenium-java web自動化測試工具抓取百度搜索結果實例

    selenium-java web自動化測試工具抓取百度搜索結果實例

    ??? 交流討論: 歡迎加入我們一起學習! ?? 資源分享 : 耗時200+小時精選的「軟件測試」資料包 ??? 教程推薦: 火遍全網(wǎng)的《軟件測試》教程?? ?? 歡迎點贊 ?? 收藏 ?留言 ?? 如有錯誤敬請指正! selenium-java web自動化測試工具抓取百度搜索結果實例 這種方式抓百度

    2024年03月14日
    瀏覽(25)
  • 自動化工具 WEB 自動化工具

    自動化工具 WEB 自動化工具

    使用自動化測試框架編寫用例的時候,維護元素信息以及腳本較為麻煩。對應新手來說,編寫腳本的能力有限,使用工具會更容易入手。最重要的是可視化操作讓我覺得體驗舒服。 地址:hippo 賬號:test 密碼:A123456. 首次訪問稍慢一些 已有 demo 例子,由于部署在服務器,只能

    2024年02月01日
    瀏覽(30)
  • Web自動化測試簡介及web自動化測試實戰(zhàn)交教程

    Web自動化測試簡介及web自動化測試實戰(zhàn)交教程

    1.什么是自動化測試? 自動化測試的概念: 軟件自動化測試就是通過測試工具或者其他手段,按照測試人員的預定計劃對軟件產品進行自動化測試,他是軟件測試的一個重要組成部分,能夠完成許多手工測試無法完成或者難以實現(xiàn)的測試工作,正確合理的實施自動化測試,能

    2024年02月08日
    瀏覽(25)
  • 自動化測試 - Web自動化測試原理

    自動化測試 - Web自動化測試原理

    目前市面上有很多Web UI自動化測試框架,比如WatiN, Selinimu,WebDriver,還有VS2010中的Coded UI等等. 這些框架都可以操作Web中的控件,模擬用戶輸入,點擊等操作,實現(xiàn)Web自動化測試。其實這些工具的原理都一樣,都是通過調用IE COM接口和HTML DOM 對IE瀏覽器以及WEB測試對象的操作。

    2024年01月16日
    瀏覽(24)
  • 自動化測試之web自動化(Selenium)

    自動化測試之web自動化(Selenium)

    ??? 交流討論: 歡迎加入我們一起學習! ?? 資源分享 : 耗時200+小時精選的「軟件測試」資料包 ??? 教程推薦: 火遍全網(wǎng)的《軟件測試》教程?? ?? 歡迎點贊 ?? 收藏 ?留言 ?? 如有錯誤敬請指正! yycnblog 自動化測試概念:讓程序代替人為去驗證程序功能的過程,本

    2024年03月15日
    瀏覽(46)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包