Ergebnis 1 bis 5 von 5

Thema: Shellcode und ausführung

Hybrid-Darstellung

  1. #1
    Registered User
    Registriert seit
    Sep 2009
    Beiträge
    154
    Renommee
    65

    Shellcode und ausführung

    hallo,
    laut Buch:
    <noP Blcok><shellcode><rücksprung>

    Nop ist da, weil es verschiedene Syteme gibt.
    Aber warum kann ich nicht gleiche mit dem shellcode anfangen?

    2.Frage:
    wiso Rücksprung, mir reicht doch den shellcode, wo ist die logig?

  2. #2
    Registered User
    Registriert seit
    Aug 2003
    Beiträge
    320
    Renommee
    141

    Re: Shellcode und ausführung

    Die 1. Frage kann ich dir beantworten.
    Und zwar kannst du nicht immer zu 100% sagen, an welche Stelle der Prozessor springt.
    Deswegen gibt es die NOP-Rampe Egal an welche Stelle er springt, er geht die NOP-Rampe entlang bis der Shellcode kommt.

    Die 2. Frage kann ich dir nicht beantworten.

    Gruß.
    Athlon 700, 256MB SD 133, 20GB WD 7200 U/Min IDE 133, Elsa Erazor III Pro, 17" TFT, Windows XP Pro SP0, Opera 6, DSL 786

  3. #3
    Registered User
    Registriert seit
    Sep 2008
    Beiträge
    359
    Renommee
    258

    Re: Shellcode und ausführung

    Zu 2) Shellcode nützt dir ja nix, wenn er nicht ausgeführt wird.

    Ich habe dir mal aus dieser PDF eine passende Stelle kopiert: http://www.zotteljedi.de/stacksmashi...cksmashing.pdf

    Sorry, Adobe Reader zerhaut die Sonderzeichen beim Kopieren.

    4. Eigenen Code einschleusen

    Inzwischen ist es uns moglich, die Rucksprungadresse beliebig zu manipuliern. Damit kann also Code
    angesprungen werden, der im Programm bereits vorhanden ist. Viel interessanter ist es aber, eigenen
    Code einzuschleusen, und diesen dann auszufuhren. Damit kann man dem Programm dann ganz neue
    Tricks beibringen, von denen es noch gar nichts wusste ;-)
    Die Idee ist ganz einfach: wir haben einen Pu er, in den wir zum Uberlauf sogar noch mehr Daten
    reinschreiben
    "
    durfen\, als reinpassen. Das heit erstmal: wir konnen nahezu beliebige Daten im
    Programm (genauer: auf seinem Stack) unterbringen. Nahezu beliebig, weil je nach Eingabefunktion
    moglicherweise bestimmte Zeichen nicht erlaubt sind. Die Funktion gets() beispielsweise bricht bei
    Auftreten von 'nn' das Einlesen ab. String-Funktionen wie strcpy() reagieren auf 'n0' innerhalb der
    Zeichenkette.
    Ziel ist es also, eine Zeichenkette zu erzeugen, die einerseits unseren beliebigen Code enthalt, und
    andererseits nur aus Zeichen besteht, die
    "
    verdaulich\ sind. Zunachst wollen wir dabei nur 'n0' und
    'nn' vermeiden, in Kapitel 4.5 werde ich jedoch ein Verfahren zeigen, mit dem man auch Funktionen
    uberlisten kann, die auf andere Zeichen reagieren.
    Die Website zur PDF findest du hier: http://www.zotteljedi.de/stacksmashing/index.html
    Über das neue Zeitalter der Gehirne eines Menschen!
    echo 'main() { char z[] = "ping "; for(;printf(z);z[1]^=6); }' > a.c; gcc a.c -o a; ./a # 16.11.2011 02:51

  4. #4
    Registered User
    Registriert seit
    Sep 2009
    Beiträge
    154
    Renommee
    65

    Re: Shellcode und ausführung

    thx all,
    zu 1.
    so steht es auch in meinem Buch.Aber es ist mir trotzdem nicht ganz klar.
    Geanu 10 Stellen hat die Variable x und beginnt 555500.
    Dann überflute ich 555500 bis 555510. Dann kann ich ja dierekt mit mit dem Shellcode beginnen.

    zu 2.
    Verstehe ich das richtig?
    Rücksprung Adressen springen = Shellcode ausführen?!

  5. #5
    Registered User
    Registriert seit
    Sep 2008
    Beiträge
    359
    Renommee
    258

    Re: Shellcode und ausführung

    Generell kann dein Shellcode anfangen, wo er will. Hauptsache er ist irgendwo im Speicher.

    Und wenn du dann im Stack die Rücksprungadresse so umgeschrieben hast, DASS SIE NOCH AUF DEINEN SHELLCODE ZURÜCKSPRINGT, dann haste was geleistet.
    Über das neue Zeitalter der Gehirne eines Menschen!
    echo 'main() { char z[] = "ping "; for(;printf(z);z[1]^=6); }' > a.c; gcc a.c -o a; ./a # 16.11.2011 02:51

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. [ASM] Shellcode - LoadLibrary smasht shellcode
    Von elrik im Forum Systemnahe Programmierung
    Antworten: 6
    Letzter Beitrag: 13.11.2004, 00:31
  2. [ASM] Problem bei Ausführung einer exe
    Von Random im Forum Systemnahe Programmierung
    Antworten: 3
    Letzter Beitrag: 22.08.2004, 19:51
  3. [XP] Exe-Dateine, Ausführung nur verzögert
    Von michaelp im Forum Windows
    Antworten: 14
    Letzter Beitrag: 10.09.2002, 17:01
  4. Ausführung eines Programms
    Von bitcrawler im Forum Systemnahe Programmierung
    Antworten: 5
    Letzter Beitrag: 05.10.2001, 22:05
  5. ausführung von exploits
    Von wysedaone im Forum (In)Security allgemein
    Antworten: 12
    Letzter Beitrag: 08.05.2001, 07:37

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •