Cookie Base64注入

Base64介紹

在這裏插入圖片描述
Base64就是一種 基於64個可打印字符來表示二進制數據的表示方法
字符選用了"A-Z、a-z、0-9、+、/" 64個可打印字符

64個字符用6個bit位就可以全部表示,一個字節有8個bit 位,剩下兩個bit就浪費掉了,這樣就不得不犧牲一部分空間了。這裏需要弄明白的就是一個Base64字符是8個bit,但是有效部分只有右邊的6個 bit,左邊兩個永遠是0

那麼怎麼用6個有效bit來表示傳統字符的8個bit呢?8和6的最小公倍數 是24,也就是說3個傳統字節可以由4個Base64字符來表示,保證有效位數是一樣的,這樣就多了1/3的字節數來彌補Base64只有6個有效bit 的不足

Cookie Base64注入代碼分析

以Less-22爲例
在這裏插入圖片描述
第89行進行base64加密
在這裏插入圖片描述
根據126行和144行發現存在Cookie漏洞
即就是沒有過濾
在這裏插入圖片描述
當你在瀏覽器輸入賬戶和密碼時
用Burp抓包
你會在Cookie看到Base64加密的用戶名
在這裏插入圖片描述
然後你通過Decoder進行Base64解碼

Cookie Base64注入

在這裏插入圖片描述
意思就是把你想要注入的sql語句經過Base64編碼後注入

Sqlmap的安全測試

在這裏插入圖片描述
上圖的倒數第二行
使用上述命令可能不會成功
因爲我們注入語句不是base64編碼的
建議嘗試以下的
要用到sqlmap本身的文件
將我們注入sql語句變爲base64編碼後的
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章