kostenloser Webspace werbefrei: lima-city


Script zum Finden unerlaubter Dateiendungen

lima-cityForumDie eigene HomepageHomepage Allgemein

  1. Autor dieses Themas

    c****r

    Hi,

    vor kurzem hab ich irgendwo hier im Forum ein Script gesehen, dass mir meinen Webspace durchsucht und mir sagt, wo ich unerlaubte Dateiendungen habe.
    Ich glaub das hier war's:

    <?
        $test = array();
    
        //verbotene Dateiformate
        $data_format = array('.bmp','.avi','.midi','.mpeg','.mpg','.mp3','.wav','.wmv','.wma','.mov','.rar','.zip','.ace','.tar','.exe','.lzh','.tar.gz','.tar.bz2','.gz','.bz2','.jar','.psd','.cab','.mid','.zi0','.gz','.torrent','.dem','.w3g','.w3x','.wmf','.dll','.ogg','.bin','.psp','.mpeg','.tgz','.ram','.rmvb','.7z');
    
        function GetOrdner( $dir ) {
            $sFiles = glob($dir.'*', GLOB_ONLYDIR);
            foreach( $sFiles as $file ) {
                $aSubFiles = GetOrdner($dir.str_replace($dir,'',$file).'/');
                $sFiles = array_merge($sFiles, $aSubFiles);
            }
            return $sFiles;
        }
    
        function GetFiles( $dir ) {
            $sFiles = glob($dir.'/*.*');
            natsort($sFiles);
            return $sFiles;
        }
    
        $test = GetOrdner('');
    
        // natürlich sortieren, sieht einfach besser aus ...
        natsort($test);
    
        // zur Kontrolle
        //echo '<pre>', print_r($test, true), '</pre>';
    
        // Versuch der Ausgabe :-)
    
        foreach( $test as $file ) {
    
            $temp = GetFiles( $file );
            echo '<a href=''.$file.''><b>'.$file.'</b></a> ('.count($temp).' Dateien gefunden) <ul>';
            echo '<table>';
    
            foreach( $temp as $datei ) {
    
            $data_name = trim(str_replace($file,'',$datei),'/');
    
            $x=0;
            while($x<60){
              $a = $a + strpos($data_name,$data_format[$x]);
              $x++;
            }
    
               if($a > 0){
                 echo '<tr><td>- <a href=''.$file.'/'.$data_name.''><font color=red><b>'.$data_name.'</b></font></a> </td><td>          '.date('d.m.Y - H:i:s',filectime($file.'/'.$data_name)).'</td></tr>';
                 $a=0;
               }
            }
    
            echo '</ul>';
        }
    
    ?>


    Das funktionierte auch, aber jetzt:

    Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ';' in /home/webpages/lima-city/crunor/html/script.php on line 35


    Was ist da los? O.o
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. t****y

    Lima würde es vermutlich versauen, wenn ich dir das berichtige, aber du musst denke ich die Hochkommata escapen, also mit einem "\".
    Kannst mich per ICQ anschreiben: 149663522

    Dann kann ichs dir auch berichten. Nur Lima hat ja Probleme mit den Hochkommata.
  4. s*******e

    Versuch es einfach mal mit diesem Code:


    <?
        $test = array();
    
        //verbotene Dateiformate
        $data_format = array('.bmp','.avi','.midi','.mpeg','.mpg','.mp3','.wav','.wmv','.wma','.mov','.rar','.zip','.ace','.tar','.exe','.lzh','.tar.gz','.tar.bz2','.gz','.bz2','.jar','.psd','.cab','.mid','.zi0','.gz','.torrent','.dem','.w3g','.w3x','.wmf','.dll','.ogg','.bin','.psp','.mpeg','.tgz','.ram','.rmvb','.7z');
    
        function GetOrdner( $dir ) {
            $sFiles = glob($dir.'*', GLOB_ONLYDIR);
            foreach( $sFiles as $file ) {
                $aSubFiles = GetOrdner($dir.str_replace($dir,'',$file).'/');
                $sFiles = array_merge($sFiles, $aSubFiles);
            }
            return $sFiles;
        }
    
        function GetFiles( $dir ) {
            $sFiles = glob($dir.'/*.*');
            natsort($sFiles);
            return $sFiles;
        }
    
        $test = GetOrdner('');
    
        // natürlich sortieren, sieht einfach besser aus ...
        natsort($test);
    
        // zur Kontrolle
        //echo '<pre>', print_r($test, true), '</pre>';
    
        // Versuch der Ausgabe :-)
    
        foreach( $test as $file ) {
    
            $temp = GetFiles( $file );
            echo '<a href="'.$file.'"><b>'.$file.'</b></a> ('.count($temp).' Dateien gefunden) <ul>';
            echo '<table>';
    
            foreach( $temp as $datei ) {
    
            $data_name = trim(str_replace($file,'',$datei),'/');
    
            $x=0;
            while($x<60){
              $a = $a + strpos($data_name,$data_format[$x]);
              $x++;
            }
    
               if($a > 0){
                 echo '<tr><td>- <a href="'.$file.'/'.$data_name.'"><font color=red><b>'.$data_name.'</b></font></a> </td><td>          '.date('d.m.Y - H:i:s',filectime($file.'/'.$data_name)).'</td></tr>';
                 $a=0;
               }
            }
    
            echo '</ul>';
        }
    
    ?>
  5. Autor dieses Themas

    c****r

    Das ist doch der gleiche, den ich auch schon gepostet habe? :P

    Ich hab nochmal google suchen lassen und siehe da ...^^

    http://www.lima-city.de/boards/thread/58725


    um selber nach solchen endungen zu suche, hab ich mir dieses kleine Script, geschrieben, könnte zwar evtl. schneller laufen, nur krieg ich des gerade nicht schneller hin :D
    Damit kann jeder überprüfen, ob er solche dateien auf dem space hat ;)

    <pre>
    <?php
    $zeit = time() + microtime();
    $files = array();
    function extension($file) {
    	$parts = explode(".", $file);
    	$parts = end($parts);
    	return $parts;
    }
    function ext_not_ok($ext, $exts=0) {
    	if($exts == 0) {
    		$exts = array("bmp", "avi", "midi", "mpeg", "mpg", "mp3", "wav", "wmv", "wma", "mov", "rar", "zip", "ace", "tar", "exe", ".lzh", "tar.gz", "tar.bz2", ".gz", "bz2", ".jar", "psd", "cab", "mid", "zi0", "gz", "torrent", "dem", "w3g", "w3x", "wmf", "dll", "ogg", "bin", "psp", "mpeg", "tgz", "ram", "rmvb", "7z");
    	}else{
    		$exts = explode("|", $exts);
    	}
    	if(in_array($ext, $exts)) {
    		return true;
    	}else{
    		return false;
    	}
    	
    }
    $count = 0;
    function dirs($dir) {
    	global $files;
    	global $count;
    	$count++;
    	$open_dir = opendir($dir);
    	while($file = readdir($open_dir)) {
    		if($file != "." AND $file != "..") {
    			if(is_dir($dir.$file)) {
    					dirs($dir.$file."/");
    			}else{
    				$files[] = $dir.$file;
    			}
    		}
    	}
    }
    dirs("./");
    sort($files);
    $i = 0;
    $zaehler=0;
    foreach($files AS $file) {
    	$i++;
    	$lenght = strlen($i);
    	$ext = "";
    	for ($v = $lenght;$v <= 4; $v++) {
    		$ext.= " ";
    	}
    	$e = $ext.$i;
    	if(ext_not_ok(extension($file)) == true) {
    		echo("<span style=\"color:#996666;\">$e: ".str_replace("./", "", $file)."</span>\n");
    		$zaehler++;
    	}
    }
    if($zaehler == 0) {
    	echo("<br><br>Prima, es wurden keine Verbotenen Endungen Gefunden!<br><br>");
    }elseif($zaehler > 1){
    	echo("<br><br>Es wurden $zaehler verbotene Dateien gefunden!<br><br>");
    }else{
    	echo("<br><br>Es wurde eine verbotene Datei gefunden!<br><br>");
    }
    $i = 0;
    $zeit2 = time() + microtime();
    $zeit = $zeit2 - $zeit;
    echo "\n\n\nDiese seite wurde in ".round($zeit, 3)." Sekunden generiert.";
    ?>
    </pre>


    Beitrag geaendert: 20.2.2007 21:39:41 von ruehrer


    Danke ruehrer! =]

    Hat sich hiermit erledigt! ;)
  6. Hat sich hiermit erledigt! ;)


    Okay.


    >> CLOSED <<

    Bei Rückfragen PN an mich!
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!