HTTP Proxy Scanner v0.1@ 31/10/09 02:53 am
I wrote this HTTP proxy scanner. It's non-threaded, using IO::Select to multiplex a bunch of sockets (this lowers cpu usage by about a gazillion percent). As always, it's only tested on linux (debian lenny to be exact). If it works on another OS, that's a bonus but I'm not supporting it on any other platform. Get it here.
It only requires IO::Socket::INET and IO::Select, both core perl modules.
Here's a little demo:
That's how you use it, nice and simple. Give it a file with one ip and port on each line, seperated by a comma, and it will test them against a URL of your choosing (configurable in the source). If the response contains a fragment of text that you specify, it is considered "good" and is appended to "good.txt", along with being printed to the screen.
For the proxy check details, I suggest uploading a text file with some uncommon text in it (such as a randomly generated string from here) and using that.
This doesn't implement most of the HTTP protocol, so it might get false negatives/positives. As with everything I make, there's a margin of error but it comes with a huge speed increase.
Happy hacking!
It only requires IO::Socket::INET and IO::Select, both core perl modules.
Here's a little demo:
mcj@galaxy:~/hax/scanners/proxies$ ./http.pl proxies.txt
190.144.139.227:8080
208.43.112.5:808
208.43.64.236:808
208.43.64.237:808
208.43.64.238:808
208.43.64.239:808
189.17.150.3:3128
201.245.112.74:3128
118.220.175.207:80
201.76.170.178:3128
200.111.152.26:3128
123.111.230.139:8080
212.113.5.2:80
190.144.139.227:8080
208.43.112.5:808
208.43.64.236:808
208.43.64.237:808
208.43.64.238:808
208.43.64.239:808
189.17.150.3:3128
201.245.112.74:3128
118.220.175.207:80
201.76.170.178:3128
200.111.152.26:3128
123.111.230.139:8080
212.113.5.2:80
That's how you use it, nice and simple. Give it a file with one ip and port on each line, seperated by a comma, and it will test them against a URL of your choosing (configurable in the source). If the response contains a fragment of text that you specify, it is considered "good" and is appended to "good.txt", along with being printed to the screen.
For the proxy check details, I suggest uploading a text file with some uncommon text in it (such as a randomly generated string from here) and using that.
This doesn't implement most of the HTTP protocol, so it might get false negatives/positives. As with everything I make, there's a margin of error but it comes with a huge speed increase.
Happy hacking!
permalink
0 comments

