Auf PMA-UNIX unsecured eine Shell erstellen

Dieses Thema im Forum "Security Tutorials" wurde erstellt von daydreamer, 5. Mai 2009 .

Schlagworte:
  1. 5. Mai 2009
    Auf PMA-UNIX unsecured eine Shell erstellen:

    Benötigt:
    • Ein Result in dieser Form:
    http://123.123.123.123/phpMyAdmin/index.php - UNIX - 244ms - /home/aaronber/www/htdocs/mysql/libraries/"
    • Browser (und Internet^^)
    • Code einer Shell

    Interpretieren des Results:

    http://123.123.123.123/phpMyAdmin/index.php --> die Adresse zum connecten
    • UNIX --> Auf dem Server laufendes System
    • 244ms --> Zeit die der Server für eine Antwort brauchte
    • /home/aaronber/www/htdocs/mysql/libraries/  ein Beispiel für einen Pfad auf dem man genügend Rechte hat

    Vorgang:
    1.) Wir connecten mit dem Browser auf http://123.123.123.123/phpMyAdmin/index.php
    2.) Wir erstellen eine neue Datenbank mit dem Namen (z.B) „test“
    3.) In dieser Datenbank erstellen wir eine Tabelle mit dem Namen (z.B) „test“ und mit einem Feld
    4.) Dann benennen wir das Feld mit „test“; Unter Typ stellen wir text ein, den Rest kann man so lassen --> Speichern
    5.) Dann markieren wir diese Feld und drücken auf „Einfügen“
    6.) Dort fügen wir dann den Code unserer Shell ein. Hier ein Beispiel für eine c99-shell c99-shell
    7.) Dann gehen wir auf SQL
    8.) Dort fügen wir folgenden Befehl ein:
    Code:
    SELECT * FROM 'test' INTO OUTFILE '/home/aaronber/www/htdocs/mysql/libraries/shell.php'
    
    Sollten ein Fehler auftreten beim ausführen des SQL-Befehls ist hier ein Fehlerliste:
    Fehlerliste

    mfg
    daydreamer

    PS: Falls ihr Verbesserungsvorschläge habt oder Kritik oder Kommentare ... PN me!!
     
  2. 5. Mai 2009
    AW: Auf PMA-UNIX unsecured eine Shell erstellen

    also vom prinzip her ist das nicht so ganz falsch
    aber du hast den fakt auser acht gelassen, dass es sich hierbei um LINUX handelt und nicht um Windows

    Linux ist da etwas besser gegen gerüstet als windows
    bei windows wird apache als administrator installiert und mysql ebenso wenn man da so nen pma findet haste schreibrechte überall auf der HDD

    was bei linux jedoch nicht so ist.
    linux installieren die meisten admins apache mit
    apt-get install apache2 (oder wie das pack da heißt, weiß ich grad nich auswendig)
    es wird automatisch ein neuer user angelegt der www-data heißt
    homedir von apache ist meist irgendwo in
    /usr/www oder so

    mysql wird ebenfalls mit
    apt-get install mysql5 (wieder so ähnlich, packname und so^^)
    installiert und installiert sich automatisch unter dem user mysql

    wie du schon merkst gibt es nun 2 verschiedene user
    und pma ist eine schnittstelle zwischen apache/php und mysql
    dennoch greifst du (wenn auch als user root) auf die mysql datenbank zu
    und bist somit user mysql
    und user mysql hat keine schreibrechte in ordner die www-data gehören.
    das ist jedenfalls der standard

    klar gibt es hin und wieder mal schreibrechte für mysql im webdir
    das ist jedoch ziemlich selten

    von daher ist dein tut nicht ganz falsch, aber auf unix wirklich schlecht anwendbar
    dennoch danke fürs tut

    btw.
    wenn du neue tabellen oder gar datenbanken anlegst, nicht vergessen die nachher wieder zu löschen
    wir wollen doch unerkannt bleiben oder

    ahja und flushlogs natürlich auch ganz wichtig

    dennoch danke für das tut
     
  3. 5. Mai 2009
    AW: Auf PMA-UNIX unsecured eine Shell erstellen

    Sehe ich es falsch oder sollte man die Shell dann auch von außen erreichen können? Ich meine es bringt doch wenig ne .php Shell in ein dir zu klatschen, was net im Web ist.
    Man bräuchte also da man ja über MySQL zugreift ne Art "Unix-Reverse-Shell", die man wie bei Windows (dort halt als .dll) im dafür vorgesehendem Dir ableht und dann als UDF läd ?

    PS: So kann man jedes Betriebssystem shellen.

    //Ok, das kann man wohl abhaken, wie Homie mir gerade erklärt hat. War ja auch nur so ne Idee ^^
     
  4. 7. Mai 2009
    AW: Auf PMA-UNIX unsecured eine Shell erstellen

    Erstmal vielen Dank für eure Kritiken und Meinungen!!

    Ich möchte jetzt auch mal was dazu sagen ... ich habe dieses Tut geschrieben, kurz nachdem man mir dies erklärt hat!!

    Dadurch wollte ich eig nur Einsteiger helfen ... da häufig bei Tutorials schon ein gewissen Vorwissen um diese zu verstehen ... ich hoffe bei diesem hier ist das nicht der Fall!!

    mfg
    daydreamer
     
  5. 12. Mai 2009
    AW: Auf PMA-UNIX unsecured eine Shell erstellen

    /home/aaronber/www/htdocs/mysql/libraries/ ein solcher path wird in den wenigsten fällen write rechte haben d.h. man muss sich einen anderen path suchen der write rechte hat alle dirs die der root erstellt haben nur einfach read rechte für www-data doch es gibt durchaus dirs die von seiten eines admins upload rechte für www-data benötigen z.b. /home/aaronber/www/htdocs/forum/user_upload/ nur muss man die erstmal finden
     
  6. 16. Mai 2009
    AW: Auf PMA-UNIX unsecured eine Shell erstellen


    hmm nen pma steht meistens hinter einer webpage sieht man halt an den dbs .

    so wie bekommt man jetzt nen write able dir raus ? ansich sehr simple^^ wenn man bischen drüber nachdenkt muss man doch nur gucken was die webpage so macht haben wir zb ne schöne cms mit avataren bei oder sowas gucken wir uns einfach fix den pfad der bilder an nur ma so als beispiel gibt noch viele andere möglichkeiten aber will jetzt net zu viel verraten
     
  7. 22. Mai 2009
    AW: Auf PMA-UNIX unsecured eine Shell erstellen

    Was ich nur noch nicht so richtig verstehe, wenn man die shell hat, wie kommt man dann an die Root-rechte. Weil mit einem Standard mysql bzw. www-data account sollte das eigentlich nicht möglich sein, wenn der Admin etwas Ahnung hat.
    Um an die Rechte zu kommen müsste man doch schon entweder mit bruteforce versuchen den md5 hash des root-passwortes zu knacken oder ansonsten über ein local-root-exploit versuchen die rechte zu erlangen. Oder gibt es da noch ne trivialere Möglichkeit, weil mir gerade nichts anderes einfällt.

    bye
     
  8. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.