Zum Inhalt wechseln

Als Gast hast du nur eingeschränkten Zugriff!


Anmelden 

Benutzerkonto erstellen
Du bist nicht angemeldet und hast somit nur einen sehr eingeschränkten Zugriff auf die Features unserer Community.
Um vollen Zugriff zu erlangen musst du dir einen Account erstellen. Der Vorgang sollte nicht länger als 1 Minute dauern.
  • Antworte auf Themen oder erstelle deine eigenen.
  • Schalte dir alle Downloads mit Highspeed & ohne Wartezeit frei.
  • Erhalte Zugriff auf alle Bereiche und entdecke interessante Inhalte.
  • Tausche dich mich anderen Usern in der Shoutbox oder via PN aus.
 

   

Foto

[PHP] Rekursive Scanner-Klasse (geeignet für PHP Shell)

- - - - -

  • Bitte melde dich an um zu Antworten
Keine Antworten in diesem Thema

#1
B1nary

B1nary

    Samurai

  • Elite Member
  • Likes
    477
  • 499 Beiträge
  • 334 Bedankt

Eine selbst geschriebene Klasse zum rekursiven Scannen des gegebenen Start-Verzeichnisses.

Die Kommentare sollten die meisten Fragen erklären. Die Klasse ist grundlegend für eine PHP Shell, stellt aber keine vollständige Shell dar!

<?php
/*
    Recursive Directory Scanner Class
    Eminently Suitable For PHP Shell
    By B1nary @ Toolbase.me
*/

class RecursiveProc
{
    
    public
        $hide = array();
    
    private
        $list = '';
    
    /*
        Surf every directory and display subfolder and files.
        Recursive handling of subfolders
    */
    public function scan_dir($path)
    {
        
        // Open given directory
        if ($content = @opendir($path)):
            
            $this->list .= '<ul>';
            
            while (($item = readdir($content)) !== false):
            
                // Hide defined directories and files
                if (!in_array($item, $this->hide)):
                
                    // Element is a directory
                    if (is_dir($path.'/'.$item)):
                        
                        /*
                            Add found directory to the list and check
                            if this directory itself contains more subfolders
                            or files
                        */
                        $this->list .= '<li><b>'.$item.'</b>';
                        $this->scan_dir($path.'/'.$item);
                        $this->list .= '</li>';
                        
                    // Element is a file
                    else:
                        
                        // Add found file to the list and make it clickable
                        $this->list .= '<li><a href="'.$path.'/'.$item.'" target="_blank">'.$item.'</a></li>';
                        
                    endif;
                
                endif;
                
                
            endwhile;
            
            closedir($content);
            
            $this->list .= '</ul>';
        
        // The given root directory wasn't found. Exiting...
        else: exit('Directory not found!');
        endif;
        
        return $this->list;
    
    }

}

// Initiate class
$shell = new RecursiveProc;

/*
    Add any directory or file that should NOT be displayed.
    Use it for both virtual directories (. and ..) or system
    files of no interest
*/
$shell->hide = array('.', '..', '.DS_Store');

// Start recursive scan
echo $shell->scan_dir('./');
?>

  • most_uniQue und len0 gefällt das

Thanked by 2 Members:
InternetFreak , lNobodyl


  Thema Forum Themenstarter Statistik Letzter Beitrag

Besucher die dieses Thema lesen: 1

Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0

Die besten Hacking Tools zum downloaden : Released, Leaked, Cracked. Größte deutschsprachige Hacker Sammlung.