PHP in Verbindgung mit Shellcode

Dieses Thema im Forum "Ruby, php, Perl, Python ..." wurde erstellt von tw-elektric, 26.03.2008.

  1. #1 tw-elektric, 26.03.2008
    tw-elektric

    tw-elektric Eroberer

    Dabei seit:
    07.12.2007
    Beiträge:
    63
    Zustimmungen:
    0
    Hallo zusammen,

    ich mal wieder am Nerven ;)
    Ich versuche mich ja im Moment etwas einzuarbeiten und möchte nun mit meinem m23server auf allen LinuxPC's einen Ordner unter / erstellen.
    Soweit funkioniert auch alles. hier der Code:
    Code:
    <?PHP
    include ("/m23/data+scripts/packages/m23CommonInstallRoutines.php");
    include ("/m23/inc/distr/debian/clientConfigCommon.php");
    
    
    function run($id)
    {
    echo("username=`who | awk \'{if ($0 ~ /tty7/) print $1}\'`
    mkdir /tw-elektric
    chgrp cam /tw-elektric
    chown $username /tw-elektric");
    };
    
    sendClientStatus($id,"done");
    executeNextWork();
    ?>
    
    Nun habe ich das Problem, dass der erstellte Ordner nicht /tw-elektric heißt, sondern /tw-elektric?

    ich kann mir nicht erklären, wo das ? herkommt.

    Irgendwelche Ideen?

    Gruß
    tw
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 Aqualung, 26.03.2008
    Aqualung

    Aqualung Routinier

    Dabei seit:
    12.02.2008
    Beiträge:
    404
    Zustimmungen:
    0
    Da kommt wohl noch ein \n mit. Das kannst Du mit

    Code:
    who | awk \'{if ($0 ~ /tty7/) print $1}\' | tr -d \"\n\" 
    fixen.

    Gruß Aqualung
     
  4. #3 tw-elektric, 26.03.2008
    tw-elektric

    tw-elektric Eroberer

    Dabei seit:
    07.12.2007
    Beiträge:
    63
    Zustimmungen:
    0
    Muss was Anderes sein.
    Habe es eben probiert, ohne Erfolg.
    Schreibe ich alle Befehle in eine normale Bashdatei und führe diese aus, so wird der Ordner ohne ? erstellt...
     
  5. #4 Wolfgang, 26.03.2008
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Das ist kein Problem der Shell, sondern von deinem PHP.
    Deshalb verschoben.

    Habe mit PHP nix am Hut, aber eventuell solltest du die Namen in Hochkomma setzen.

    Wolfgang
     
  6. #5 tw-elektric, 26.03.2008
    tw-elektric

    tw-elektric Eroberer

    Dabei seit:
    07.12.2007
    Beiträge:
    63
    Zustimmungen:
    0
    ich habe es nun so versucht:
    Code:
    echo("username=`who | awk \'{if ($0 ~ /tty7/) print $1}\'`
    mkdir /\'tw-elektric\'
    chgrp cam /\'tw-elektric\'
    chown $username /\'tw-elektric\'");
    
    nun macht er mir einen Ordner /'tw-elektric'
    So ist es ja auch nicht gewollt.
    Oder muss noch hinter den einzelnen Befehlen irgendwie ein Return oder so einbringen?

    So sieht das Beispiel des m23servers aus:
    Code:
    <?PHP
    /*
    Description: Enter your description here
    Priority: Enter the priority number here (scripts with lower numbers get executed earlier)
    */
    
    include ("m23CommonInstallRoutines.php");
    include ("/m23/inc/distr/debian/clientConfigCommon.php");
    
    function run($id)
    {
    	$serverIP=getServerIP();
    	echo("wget https://$serverIP/configs/allconfig.tb2 -O /tmp/allconfig.tb2
    	cd /
    	tar xfj /tmp/allconfig.tb2");
    };
    ?>
    
     
  7. #6 Wolfgang, 26.03.2008
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
  8. #7 tw-elektric, 26.03.2008
    Zuletzt bearbeitet: 26.03.2008
    tw-elektric

    tw-elektric Eroberer

    Dabei seit:
    07.12.2007
    Beiträge:
    63
    Zustimmungen:
    0
    Danke für die Info ;)

    Ich habe es nun so aufgebaut:
    Code:
    <?PHP
    include ("/m23/data+scripts/packages/m23CommonInstallRoutines.php");
    include ("/m23/inc/distr/debian/clientConfigCommon.php");
    
    
    function run($id)
    {
    [B]mkdir ( '/tw-elektric', 0777 );[/B]
    echo("username=`who | awk \'{if ($0 ~ /tty7/) print $1}\'`
    chgrp cam /tw-elektric
    chown $username /tw-elektric");
    };
    
    sendClientStatus($id,"done");
    executeNextWork();
    ?>
    
    Müsste nun eig. alles stimmen. Aber leider bin ich immer noch erfolglos...
    Lang würde es echt schneller gehen, wenn ich zu jedem Rechner hingehe, und es von Hand einrichte... Aber ich will ja auch was lernen.

    Jmd noch eine Idee?

    habe es nun hinbekommen:
    Code:
    <?PHP
    include ("/m23/data+scripts/packages/m23CommonInstallRoutines.php");
    include ("/m23/inc/distr/debian/clientConfigCommon.php");
    
    
    function run($id)
    {
    echo("username=`who | awk \'{if ($0 ~ /tty7/) print $1}\'`; mkdir /tw-elektric; chmod 777 /tw-elektric; chgrp cam /tw-elektric; chown `echo $username` /tw-elektric"); 
    };
    
    sendClientStatus($id,"done");
    executeNextWork();
    ?>
    
     
  9. dmaphy

    dmaphy Routinier

    Dabei seit:
    16.04.2004
    Beiträge:
    482
    Zustimmungen:
    0
    Ort:
    Hamburg
    Wie wärs denn mit Funktionen wie system() oder exec()?
     
  10. #9 tw-elektric, 26.03.2008
    tw-elektric

    tw-elektric Eroberer

    Dabei seit:
    07.12.2007
    Beiträge:
    63
    Zustimmungen:
    0
    kann ich nicht viel dazu sagen. Ich kenne mich damit nicht wirklich gut aus.
    Das sind Funktionen von PHP zum Code auf Linux auszuführen, oder?
     
  11. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  12. #10 whitenexx, 26.03.2008
    whitenexx

    whitenexx Doppel-As

    Dabei seit:
    11.11.2006
    Beiträge:
    148
    Zustimmungen:
    0
    Ort:
    Leverkusen
    Korrekt. Aber diese Funktionen müssen auch in der PHP-Konfig. erlaubt sein.
     
  13. #11 Gentfloo, 27.03.2008
    Gentfloo

    Gentfloo #470425

    Dabei seit:
    09.05.2007
    Beiträge:
    163
    Zustimmungen:
    0
    Ort:
    Hannover
    Wenn der Safe-Mode on ist muss auch die Variable in der php.ini richtig gesetzt sein und manche exec-Funktionen funktionieren nicht siehe php.net/exec.

    Code:
    safe_mode_exec_dir = "/bin":"/usr/bin"
    Ich wuerde zur Sicherheit nur ein Verzeichnis angeben, bzw. ein selbst erstelltes und die Programme hineinlinken.

    (zu beachten ist immer, dass (evtl. nur manche) Shell-Ausgaben mit einem newline enden)
     
Thema:

PHP in Verbindgung mit Shellcode

Die Seite wird geladen...

PHP in Verbindgung mit Shellcode - Ähnliche Themen

  1. Linux cp/chmod /etc/shadow Shellcode

    Linux cp/chmod /etc/shadow Shellcode: 126 bytes small Linux/x86 cp /etc/shadow /tmp && chmod 777 /tmp/shadow shellcode. Weiterlesen...
  2. Linux man /bin/cat Shellcode

    Linux man /bin/cat Shellcode: 121 bytes small Linux/x86 man /bin/cat shellcode. Weiterlesen...
  3. Linux Nmap Default Router Services Scan Shellcode

    Linux Nmap Default Router Services Scan Shellcode: 73 bytes small Linux/x86 Nmap default router services scan shellcode. Weiterlesen...
  4. Raspberry Pi Linux/ARM chmod("/etc/shadow",0777) Shellcode

    Raspberry Pi Linux/ARM chmod("/etc/shadow",0777) Shellcode: 41 bytes small Raspberry Pi Linux/ARM chmod("/etc/shadow", 0777) shellcode. Weiterlesen...
  5. Raspberry Pi Linux/ARM execve("/bin/sh",[0],[0 vars]) Shellcode

    Raspberry Pi Linux/ARM execve("/bin/sh",[0],[0 vars]) Shellcode: 30 bytes small Raspberry Pi Linux/ARM execve("/bin/sh",[0],[0 vars]) shellcode. Weiterlesen...