Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/perl
- use strict;
- use threads;
- use threads::shared;
- use LWP::UserAgent;
- use HTTP::Request;
- my $threads = 5;
- my $ua = LWP::UserAgent->new;
- $ua->timeout(15);
- $ua->agent('Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.1) Gecko/20090624 Firefox/3.5');
- my @ips : shared;
- my @linkz : shared;
- system("cls");
- print "++++++++++++++++++++++++++++++++++++++++++++++++\n";
- print "+ M-A project +\n",
- print "+ +\n";
- print "+++++++++++++++++++++++++++++++++++++++++++++++\n";
- print "\n\n[+] Search engine: hackteach.org\n";
- print "\[.] Starting...\n";
- GetIps();
- print "[+] Quantity of ips: ".scalar(@ips)."\n";
- GetLinks();
- while (threads->list) {}
- print "[+] Links Found: ".scalar(@linkz)."\n";
- print "[.] Begin work...\n\n";
- CheckLinks();
- while (threads->list) {}
- sub CheckLinks {
- foreach my $link( @linkz ) {
- my $ctr = 0;
- foreach my $thr ( threads->list ) { $ctr++; }
- if ($ctr < $threads){
- threads->create( \&wordpress, $link );
- }
- else { redo; }
- }
- }
- sub GetLinks {
- foreach my $ip( @ips ) {
- my $ctr = 0;
- foreach my $thr ( threads->list ) { $ctr++; }
- if ($ctr < $threads){
- threads->create( \&GetLinks_hackteach,$ip );
- }
- else { redo; }
- }
- }
- sub GetIps {
- open( DOM, "ips.txt" ) or die "$!\n";
- while( defined( my $line_ = <DOM> ) ) {
- chomp( $line_ );
- push( @ips, $line_ );
- }
- close( DOM );
- }
- sub GetLinks_hackteach {
- my $ip= shift;
- my (@rr,@ff);
- my $xx = "http://viewdns.info/reverseip/?host=".$ip."&t=1";
- my $get = $ua->get($xx);
- @rr = split (/Last Resolved Date/,$get->content);
- @ff = split(/<\/table>/,$rr[1],0);
- while ($ff[0] =~m{<\/td><\/tr><tr><td>(.*?)<\/td>}g){
- push (@linkz,$1);
- }
- threads->detach();
- }
- sub wordpress {
- my $link = shift;
- my @files = ("/","/wp/","/wordpress/","/blog/",);
- foreach my $vul(@files){
- my $wp = "http://".$link.$vul;
- my $req = $ua->get($wp."wp-includes/wlwmanifest.xml");
- if ($req->content=~ /<clientType>WordPress<\/clientType>/){
- print "[+] $wp :[WordPress]\n";
- open(TNN,">>get-wordpress.txt");
- print TNN "$wp\n";
- close(TNN);
- }
- else {
- print "[-] $link :[Unknown] \n";
- }
- }
- threads->detach();
- }
Advertisement
Add Comment
Please, Sign In to add comment