0x00 前言我在使用Python Requests庫發送HTTP數據包時,發現Requests庫默認會對url進行編碼。而在測試某些漏洞時,觸發漏洞需要url的原始數據,禁用編碼url的功能。本文將要介紹我的解決方法,記錄研究細節。
0x01 簡介本文將要介紹以下內容:
測試環境
解決方法
0x02 測試環境我在研究CVE-2022-44877時遇到以下情況:
實現寫文件的POC如下:
根據POC我們可以寫出對應的Python測試代碼:
為了便於測試,Python測試代碼在發送POST數據時添加了代理,我們可以藉助BurpSuite觀察實際發送的內容,如下圖
0x03 解決方法
url未做編碼,問題解決
0x04 解決方法2這裡還可以使用C Sharp實現發送POST數據,避免url編碼,實現代碼如下:
0x05 小結本文介紹了通過修改Python Requests庫禁用編碼url的方法,也給出了C Sharp禁用編碼url的實現代碼,記錄研究細節。