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