Wie kriege ich mit ROP einen "/bin/sh" Pointer in rdi?

Ich versuche, rücksprungorientierte Programmierung (ROP) zu lernen.

Und zwar habe ich ein Programm mit einem Pufferüberlauf auf dem Stack, und ich möchte das Programm dazu bringen, /bin/sh zu öffnen.

Das geht mit dem execve Syscall, wenn ich die richtigen Instruktionen finden kann, um die Funktionsparameter vorzubereiten. Das ist die Signatur von execve:

int execve(const char *pathname, char *const _Nullable argv[], char *const _Nullable envp[]);

Also muss ich die folgenden Register setzen:

  • rax = 0x3b (Syscallnummer von execve)
  • rdi = "/bin/sh" Pointer
  • rsi = NULL
  • rdx = NULL

Die folgenden Instruktionen habe ich bereits gefunden:

pop rax ; ret
pop rdi ; ret
pop rsi ; ret
pop rdx ; ret
syscall

Ich kann also die Instruktionen und Registerwerte mit dem Pufferüberlauf auf den Stack schreiben und so meine Register füllen. Das Problem ist aber, dass ich einen "/bin/sh" Pointer in rdi brauche (also nicht "/bin/sh" im Register, sondern eine Speicheradresse, an der "/bin/sh" steht).

Ich kann natürlich "/bin/sh" in den Puffer auf dem Stack schreiben, aber leider ist die Speicheradresse jedes Mal anders und ich kenne sie vorher nicht.

Ich weiß, dass "/bin/sh" in libc vorkommt, aber auch dort ist die Speicheradresse jedes Mal anders und ich kenne sie vorher nicht.

Wie komme ich also an einen "/bin/sh" Pointer? Gibt es Tricks oder bestimmte Instruktionen, nach denen ich mich umsehen sollte?

hacken, Hack, Programm, programmieren, pointer, Assembler, Hacker, Hacking, Informatik, IT-Sicherheit, Shell, stack, x64, assemblersprache, Assembly, Exploit, hacken lernen, IT-Sicherheitsexperte, Register, Capture The Flag
Pflege oder Studium (anderer Bereich)?

Hi,

Ich (aktuell 23) mache eine Ausbildung zum Pflegefachmann und stehe im sehr sehr großen Zwiespalt, ob ich danach wieder Studieren (anderer Bereich als Gesundheit/Pflege) soll.

Ich bin bis zum Ende meiner Ausbildung 25 und wollte danach wieder Biologie studieren.

Wie ihr gelesen habt „wieder“. Ich habe 1 Jahr lang Biologie studiert, aber wegen einigen Punkten abgebrochen, die wesentlichen wären:

  • Ich war & bin es aktuell noch ziemlich Lernfaul
  • hatte & habe finanzielle Probleme (5000-6000€ Schulden), schon zum Teil vor dem Studium & das meiste während des Studiums angehäuft, da ich mit dem wenigen Geld (Bafög+Kindergeld) nicht umgehen konnte & kann.
  • die marginalen Jobaussichten in der Biologie, vor allem in dem Bereich in den ich wollte (Zoologie)
  • „Depressive-Stimmung“, ich bin sozialer Umgebung, ziemlich zurückhalten & schüchtern (kann draußen nicht mal alleine Essen), ich wohne 200km von Familie & Freunden entfernt & sehe sie nur 1 mal im Jahr
  • fehlende Kenntnisse in Chemie (kein schulisches Grundwissen, eigne mir alles alleine an)
  • ich kriege meine Lernfaulheit etwas mehr & mehr in den Griff, aber sehr sehr langsam
  • ich versuche mich auch etwas mehr nach außen zu öffnen
  • meine Finanziellenprobleme, kann ich erst mit den ersten 2-3 Nettoeinnahmen als Fachkraft begleichen

Ich würd gerne Biologie studieren da mich das Leben & vor allem die Tier- & Pflanzenwelt sehr interessiert, am meisten die Tierwelt. Hätte gerne ne Tierpfleger Ausbildung nach dem Studiumsabbruch gemacht (war mein Kindheitswunsch), aber durch die nicht vorhandenen Ausbildungsangebote & dem Gehalt als Ausgelehrter, habe ich immer davon abgesehen

Pflegefachmann ist der nächst interessanteste Ausbildungsjob für mich, daher mache ich jetzt die Ausbildung.

Ich will die ganze Zeit nach der Ausbildung das Biologie-Studium wieder aufnehmen, aber bin im großen Zwiespalt, wegen den oben genannten Punkten.

Meine Eltern sagen ich soll in der Pflege bleiben & mich da steigern mit Weiterbildungen oder einem Studium in der Pflege oder im Gesundheitsbereich.

Ich weis nur eins, wenn ich in der Pflege bzw im Gesundheitsbereich bleibe, will & werde ich nicht bis zur Rente als Altenpfleger verbleiben, sondern Weiterbildungen machen (Praxisanleiter, WBL etc.) & besten Falls noch ein Duales-Studium Pflegemanagement.

Ich habe Interessen in sehr vielen Bereichen, Mathe (da ich dies in der Schule immer auf anhieb verstanden hab), Elektrogerät-Reparaturen, PC-bau, Natur, Tiere, Reisen, Archäologie, Schauspiel (Film & Serien), Maschienenbau & Bauing. sind Studiengänge die mich eventuell Interessieren könnten.

Die Ausbildung mache ich zu Ende (noch 2,5 Jahre), da ich diese eh vor den Studiumswünschen & dem abgebrochenen Studium machen wollte & vor allem damit ich etwas in der Hand habe.

Studium, Schule, Pflege, Bewerbung, Gehalt, Berufswahl, duales Studium, Abschluss, Abitur, Bachelor, BAföG, Fachabitur, Hochschule, Informatik, Universität, Weiterbildung
Reguläre Grammatik vs regulärer Ausdruck?

Hallo,

ich arbeite gerade das Buch Compiler Engineering von Cooper durch und habe schon mehrere Fragen dazu. Vllt gibt es ja einen ITler, der mir helfen kann.

Im zweiten Kapitel habe ich reguläre Ausdrücke kennengelernt, mit welcher man eine reguläre Sprache beschreiben kann.

Der Scanner erzeugt also Wörter, die an den Parser weitergegeben werden.

Frage 1: Jetzt arbeitet der Parser mit einer regulären Grammatik, um eine Syntaxanalyse durchzuführen. Zu Beginn dachte ich, bei den Terminalen handelt es sich um Wörter aus der Sprache, aber wenn ich es jetzt richig verstehe, sind Terminale Zeichen aus dem Alphabet, über welchem die Sprache gebildet wird.

Wie erzeugt der Parser daraus eine Syntaxprüfung, wenn nicht die Reihenfolge der Wörter, sondern die, der Buchstaben analysiert wird. Sind die Grammatiken denn so komplex, dass die Wortreihenfolge kontrolliert werden kann? Bzw. wieso werden für beide Phasen dann nicht einfach eine Grammatik oder RegExes genutzt, anstatt beides zu definieren?

Frage 2: Ich dachte immer, eine Reg Gram und eine RegEx wären unterschiedliche Dinge. Hier https://de.wikipedia.org/wiki/Regul%C3%A4re_Grammatik#Regul%C3%A4re_Sprachen und im Beitrag unter Regulären Sprachen, wird aber gesagt, dass dies beide äquivalente Konzepte sind.

Was mich daran stört.

Als nicht reguläre Sprache wird häufig die Sprache L = a^n b^n genannt. Mir ist zwar bewusst, dass ich die Sprache nicht durch eine RegEx oder einen Automaten abbilden kann (von denen mir bewusst ist, dass sie äquivalent sind), aber ich könnte doch mit einer Regulären Grammatik bspw. die Ableitungsregel S -> aSb | € (epislon soll das sein :P) erzeugen und hätte damit doch eine Beschreibung für die Sprache.

Wenn RegExes und RegGrams aber äquivalent sind, dann scheine ich ja einen Fehler in der Ableitung zu machen.

Frage 3: Definition Reguläre Sprachen https://de.wikipedia.org/wiki/Regul%C3%A4re_Sprache#Definition

Hier wird beschrieben, dass eine der Bedingungen erfüllt sein muss, damit es sich um eine Reg Sprache handelt. Aber wenn eine Bedingung erfüllt ist, sind nicht gleichzeitig alle Bedingungen erfüllt?

Verwirrt mich alles ziemlich

Mathematik, IT, Informatik, Scanner, Theoretische Informatik, Regulärer Ausdruck
Welcher Job passt zu mir?

Was würdet ihr mir für meine weitere berufliche Laufbahn empfehlen ?

Ich bin 22 Jahre alt und mein Lebenslauf sieht enttäuschend aus :

  • Fachoberschulreife mit Quali für das Gymnasium
  • Fachhochschulreife ( Fachabitur )
  • Abgeschlossene Ausbildung im Bereich Gestaltungstechnik
  • Zwei Praktika als Mediengestalter
  • Abgebrochene Ausbildung zum Präparator ( Geologie )

Ich werde auf keinen Fall körperlich oder im Handwerk arbeiten. Eher Büro und mit wenig Leuten , wo ich möglichst meine Ruhe vor Menschen habe.

In der praktischen Präparation war ich eigentlich ganz kreativ und wurde auch immer mit "gut" bewertet , außer die naturwissenschaftlichen Fächer , sowas liegt mir gar nicht.

Diese Ausbildung musste ich aber aus gesundheitlichen Gründen abbrechen.

Vorher gab es Bereiche in der Branche Gestaltungstechnik , wo ich eigentlich ganz gut war. Bis heute habe ich einen sicheren Umgang mit Text , kam gut mit Grafikprogrammen zurecht , hatte Spaß am Erstellen von Logos und das Zusammenfassen von Konzepten und / oder Text habe ich immer gemocht. Fotografie ging gerade mal so in Ordnung und Fächer wie Informatik oder Programmierung , da war ich sofort raus.

Konnte mir danach nichts mehr in dem Berufsfeld Gestaltung vorstellen und ging unsicher in den Bereich Präparation. Dies musste ich wie schon erwähnt abbrechen.

Beratung, Arbeit, Beruf, Kündigung, Schule, Bewerbung, Job, Gehalt, Berufswahl, Arbeitgeber, stellenangebote, Karriere, Azubi, Berufsausbildung, Berufsberatung, Berufskolleg, Berufsschule, Bewerbungsgespräch, Fachabitur, Gestaltung, Informatik, Praktikum, Praktikumsplatz, Weiterbildung, Zeugnis
Ist das Schreiben für Fachinformatiker ausbildung ok?

Ich versuche eine fachinformatiker für Systemintegration Ausbildung zu bekommen, leider ist das Bewerbungsschreiben der Teil wo ich immer Probleme habe. Ist das ok oder soll ich Änderungen machen. Ps. Deutsch ist meine zweitsprache

"Sehr geehrte,

auf Ihrer Homepage bin ich auf die offene Ausbildungsstelle als Fachinformatiker für Systemintegration aufmerksam geworden und mit diesem Schreiben möchte ich mich auf die Stelle bewerben.

Ich hatte immer Interesse an Technik und Computers und deren Einfluss auf alles um uns herum. Leider habe ich nur Grundkenntnisse in diesen Bereich bin aber hoch motiviert und bereit mein alles in der Schule sowie auch im Betrieb zu geben.

In meiner vorherigen Ausbildung als Verkäufer habe ich als teil eines Teams aber auch selbstständig gearbeitet. Auf Probleme bin ich immer objektiv und methodisch eingegangen. Auch in stressigen Situationen war ich ruhig und verlor nicht das Ziel vor Augen.

Ich besitze sehr gute Englisch-Kenntnisse, die ich auch täglich eingesetzt habe, auch Verantwortung war mir nicht fremd, da Tresorverantwortung und Tagesvertretung auch zu meinen Aufgaben gehörten.

Ich würde gerne mit Ihnen und Ihrem Team neue Herausforderungen bestreiten und mich beruflich und persönlich weiterentwickeln.

Sehr gerne stehe ich für ein persönliches Gespräch zur Verfügung und freue mich auf eine Rückmeldung."

Bewerbung, Ausbildung, Ausbildungsplatz, Azubi, Fachinformatiker, Informatik, Fachinformatiker Systemintegration

Meistgelesene Fragen zum Thema Informatik