2
我正在寫一個小型的perl工具,它應該可以幫助我在盲目的SQL注入攻擊期間加速一些進程(這是一種道德工具,這是我的工作)。在HTTP請求中禁用URL編碼
我的腳本管理HTTP請求已經用十六進制值(%xx)進行網址編碼。 因此,當我使用HTTP::Request
將其發送到Web瀏覽器時,我的請求會被編碼兩次。
我用這樣的代碼:
my $ua = LWP::UserAgent->new;
my $httpreq = new HTTP::Request GET => 'http://192.168.0.1/lab/sqli.php?id=1%20and%20(select%20ascii(substring(user,3,1))%20from%20mysql.user%20limit%201)>100%23';
my $res = $ua->request($httpreq)
如何禁用我的要求內perl的URL編碼?
@ user755743,我說的並不完全正確。如果仔細觀察輸出,您會看到HTTP :: Request編碼爲「>」。它這樣做是因爲「>」在網址中是不允許的。它完全在HTTP :: Request的權限內,並且這樣做不會導致任何雙重編碼。 – ikegami 2011-05-16 18:49:14
嗨,的確。我錯了。沒有雙重編碼(我應該多睡一會兒)。 – user755743 2011-05-16 19:14:10