Back to top

Autore Topic: Forse mi ha riattaccato l'hacker Nizar?  (Letto 1546 volte)

Offline Rick66

  • Esploratore
  • **
  • Post: 73
  • Sesso: Maschio
    • Mostra profilo
Forse mi ha riattaccato l'hacker Nizar?
« il: 09 Ago 2007, 20:27:47 »
Salve a tutti,

ho notato che la testata del sito si и un po' abbassata e, cambiando pagine,  appare la seguente scritta:

не могу создать .time, проверьте права на файлы (w+)

Ho aperto la home page con blocco note e ho trovato alla prima riga il seguito:

не могу создать .time, проверьте права на файлы (w+)
<?xml version="1.0" encoding="iso-8859-1"?>

Dato che l'hacker Nizar il 19 luglio mi aveva costretto a rifare il sito ho dato un'occhiata ai referrer di un servizio di statistiche e ho trovato un accesso da Google con le chiavi "nizar perugia".

Vi chiedo: questo Nizar, grandissimo f.d.p. maledetto, mi ha hackerato ancora?

Ciao.
FEDEROSSOBLU
IL BOLOGNESE
IL TAVOLO DI WOLF IL PALCOSCENICO

Offline Rick66

  • Esploratore
  • **
  • Post: 73
  • Sesso: Maschio
    • Mostra profilo
Re: Forse mi ha riattaccato l'hacker Nizar?
« Risposta #1 il: 10 Ago 2007, 14:14:33 »
Salve a tutti,

ho trovato un codice simile nel bot Flood Control v.1.0 e precisamente nel file "floodcontrol.systembot.php".

E' un bug o и proprio una funzione del bot?

Vi riporto qui sotto il codice del file.

<?
error_reporting(0);
defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' );

$_MAMBOTS->registerFunction( 'onStart', 'jeFloodTest' );


function jeFloodTest()
{
   
    global $database;
    // load mambot params info
    $query = "SELECT id"
    . "\n FROM #__mambots"
    . "\n WHERE element = 'floodcontrol.systembot'"
    . "\n AND folder = 'system'"
    ;
    $database->setQuery( $query );
    $id     = $database->loadResult();
    $mambot = new mosMambot( $database );
    $mambot->load( $id );
    $botParams = new mosParameters( $mambot->params );
 
    $rts1    = $botParams->def( 'rulle1_times', 10 );
    $rt1       = $botParams->def( 'rulle1_time', 10 );
    $rts2    = $botParams->def( 'rulle2_times', FALSE );
    $rt2       = $botParams->def( 'rulle2_time', FALSE );
    $rts3    = $botParams->def( 'rulle3_times', FALSE );
    $rt3       = $botParams->def( 'rulle3_time', FALSE );

   
    $file_dir = getenv( "DOCUMENT_ROOT" )."/.flood/";
    $nf_fip   = $file_dir.getenv("REMOTE_ADDR");
    $nf_fcron = $file_dir.".time";
   
    if(!is_dir($file_dir)){ mkdir($file_dir, 0700);}
   
    $nf_flood[$rt1]=$rts1;
    if($rts2 && $rt2) $nf_flood[$rt2]=$rts2;
    if($rts3 && $rt3) $nf_flood[$rt3]=$rts3;
   
    //print_r($nf_flood);
   
     
    $nf_cron_run=1200;
    $nf_old_file=7200;
   
    $nf_cron_code=cron_update($nf_fcron,$nf_cron_run);
    if ($nf_cron_code==-1) return;
    if ($nf_cron_code==1) {
      if ($nf_dir=@opendir($file_dir)) {
         $nf_time=time()-$nf_old_file;
         while (($nf_tmp=readdir($nf_dir))!==false) {
            if ($nf_tmp[0]==".") continue;
            if (filemtime($file_dir.$nf_tmp)<$nf_time &&
               preg_match("!^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$!",$nf_tmp))
            {
               if (!unlink($file_dir.$nf_tmp)) {
                  echo "Cannot delete $nf_tmp
";
               }
            }
         }
         closedir($nf_dir);
      }
    }
    unset($nf_cron_code);
   
   
    if (file_exists($nf_fip)) {
      $nf_f=@fopen($nf_fip,"r+");
      if (!flock($nf_f,6)) exit("Proceso parallelo disabilitato.");
      if (!$nf_f) {
         echo "Non aperto ".basename($nf_fip)." (r+)
";
         return;
      }
      $nf_buf=fgets($nf_f,1000);
      $nf_buf=explode("|",$nf_buf);
    }
    else {
      for ($nf_i=0; $nf_i<count($nf_flood)*2; $nf_i++) $nf_buf[]=0;
      $nf_f=@fopen($nf_fip,"a+");
      if (!$nf_f) {
         echo "Non creato ".basename($nf_fip)." (a+)
";
         return;
      }
      if (!flock($nf_f,6)) exit("Proceso parallelo disabilitato.");
    }
   
   
    $nf_i=0;
    $nf_stopflag=0;
   
    //echo "
";print_r($nf_buf);
   
    foreach ($nf_flood as $nf_k=>$nf_v) {
      if ($nf_bu
f[$nf_i+1]+$nf_k<time()) {
         $nf_buf[$nf_i]=1;
         $nf_buf[$nf_i+1]=time();
      }
      else {
         if ($nf_buf[$nf_i]>$nf_v) {
            $nf_stopflag=1;
            $nf_buf[$nf_i+1]=time();
         }
         $nf_buf[$nf_i]++;
      }
      $nf_i+=2;
    }
   
   
    ftruncate($nf_f,0);
    fseek($nf_f,0);
    fputs($nf_f,implode("|",$nf_buf));
   
    //print_r($nf_buf);
    if ($nf_stopflag) exit("Rilevato Flood!!");
   
    unset($nf_f);
    unset($nf_i);
    unset($nf_k);
    unset($nf_v);
    unset($nf_stopflag);
    unset($nf_buf);
    unset($nf_fip);
    unset($file_dir);
    unset($nf_flood);
    unset($nf_cron_run);
    unset($nf_cron_idle);
}




function cron_update($fn,$update) {

   if (!file_exists($fn)) {
      if (!@touch($fn)) {
         echo "не могу создать ".basename($fn).", проверьте права на файлы (w+)
";
         return -1;
      }
   }
   else {
      if (time()-filemtime($fn)<$update) {return 0;}
   }
   
   $f=@fopen($fn,"r+");
   if (!$f) {
      echo "не могу открыть ".basename($fn).", проверьте права на файлы (r+)
";
      return -1;
   }
   if (!flock($f,6)) {return;}
   $text=fgets($f,100);
   if (time()-intval($text)<$update) {return 0;}
   fseek($f,0,SEEK_SET);
   fwrite($f,time()."    ");
   fclose($f);

   return 1;

}

?>
FEDEROSSOBLU
IL BOLOGNESE
IL TAVOLO DI WOLF IL PALCOSCENICO

 



Web Design Bolzano Kreatif