maxpl0it – Interview mit einem Sicherheitsforscher
Jeremiah nahm einen weiteren Schluck von seinem dunkelschwarzen Kaffee, gähnte und rieb sich die Augen. Sein Kopf schmerzte und er war ausgelaugt. Vielleicht war es an der Zeit, einen Spaziergang zu machen und sich etwas Zeit zum Nachdenken zu nehmen. Warum deinen Kopf gegen eine Wand schlagen?
Er nahm seinen Mantel, seine Schlüssel und sein Telefon mit. Während Jeremiah seine Schnürsenkel anfertigte, ging er alles durch, was er über das Projekt wusste. Das ging schon seit Monaten so; Überprüfen Sie den Quellcode, verweisen Sie auf Notizen, sprechen Sie mit Kollegen und tauchen Sie immer tiefer in die Eingeweide dieses Browsers ein. Schließlich öffnete er die Haupttür und verließ sein Haus. Der Sonnenschein berührte seine Haut und beruhigte ihn ein wenig. Mit schnellen Schritten machte er sich auf den Weg ... und dachte immer noch nach. Erzählen Sie das Speicherlayout, die Heap-Zuweisungen und die Funktionsweise des JIT-Compilers. Gehen Sie die Bewegungen langsam und methodisch durch.
Forscher lernen nach einer Weile, ihrem Bauchgefühl zu vertrauen, nachdem sie Hunderttausende Zeilen Quellcode durchgeblättert haben, lernt man das ein oder andere. Er war sich sicher, dass die Schwachstelle vorhanden war, nur ein paar kleine Details. Und dann hörte er auf. Es hat ihn getroffen.
Jeremiah drehte sich um und rannte zurück nach Hause. Ich trank noch einen Schluck Kaffee und machte mich wieder an die Arbeit.
Heute spreche ich mit maxpl0it , der als Senior Vulnerability Researcher für Interrupt Labs arbeitet . Wir besprechen seine Reise, Herangehensweise, Erfolge und mehr.
Abschnitt „Interview“.
Erzählen Sie mir zunächst ein wenig über sich. Wie sind Sie zu Ihrem Beruf gekommen?
Eigentlich bin ich durch die Spieleentwicklung in diese ganze Hacking-Malerei geraten. Als Kind wollte ich Spiele machen und hatte das Glück, Zugang zu alten, heruntergekommenen Laptops zu haben, bevor sie zur Entsorgung verarbeitet wurden. Irgendwann hörte ich von Cheat Engine und erkannte, dass es viel mehr Spaß machte, Dinge zu zerstören, als sie zu erschaffen!
In meinen Teenagerjahren widmete ich mich mehr dem Erlernen des Hackens von Web-Apps und stellte fest, dass die niedrigere Ebene noch spannender war. Wenn ich etwa 15 Jahre vorwärts springe, bin ich immer noch da und arbeite immer noch … aber mit einem Gehalt.
Vom Game-Hacking bis zur Schwachstellenforschung, das ist interessant! Welche Fähigkeiten haben Sie gelernt, die Ihnen jetzt helfen? Und können Sie mir etwas über den Game-Hacking-Bereich erzählen?
Das Spiel-Hacking, das ich durchgeführt habe, war ziemlich einfach, aber die Art und Weise, wie man sich darauf verlässt, Zeigern auf verschiedene Datenbits zu folgen, ähnelt einigen Dingen, die ich in den letzten Jahren getan habe (z. B. dem Aktivieren einer Funktion durch Ablaufverfolgung). eine Reihe von Zeigern an verschiedenen Offsets, um den booleschen Wert zu finden, der bestimmt, ob er aktiviert oder deaktiviert ist).
Allerdings ist das alles noch weit entfernt von den unglaublichen Dingen, die junge Leute jetzt tun, um Anti-Cheat zu umgehen, also würde ich nicht unbedingt sagen, dass ich jemals wirklich im Game-Hacking-Bereich tätig war! Bis ich einen Job bei MWR bekam, lernte ich niemanden kennen, der tatsächlich Hacker war.
Ich nehme an, dass Sie mit MWR MWR CyberSec meinen? Wie war Ihre Zeit dort und was hat sie Ihnen gebracht?
Eigentlich ist MWR Infosecurity – das Unternehmen Cybersec – ein neues Spin-off-Unternehmen, das nach der Übernahme von F-Secure entstand. Lustigerweise besteht Interrupt aus dem Forschungsteam des ursprünglichen MWR, also aus Leuten, mit denen ich früher zusammengearbeitet habe, und einer Reihe von OGs, zu denen ich vor Jahren aufgeschaut habe (und ehrlich gesagt immer noch aufschaue!).
Meine Zeit bei MWR hat mich in meiner Karriere wirklich vorangebracht. Sie gaben mir die Chance, Pwn2Own im ersten Monat nach meinem Beitritt zu nutzen, und halfen mir, mich in Bereichen weiterzuentwickeln, mit denen ich noch nicht viel Erfahrung hatte. Es ist schön, wieder mit ihnen allen unter einer neuen, rein forschungsorientierten Flagge zusammenzuarbeiten!
Wie verlief der Übergang von MWR zu Interrupt? Was ist jetzt anders an Ihrer Arbeit für Interrupt im Vergleich zu MWR?
Bei MWR gab es jede Menge Pentests, während es sich bei Interrupt um reine Schwachstellenforschungsarbeit handelt, die mir viel mehr Spaß macht.
Als Pentester muss ich fragen. Was sind die Hauptunterschiede zwischen Pentesting und Schwachstellenforschung? Für dich.
Ich denke, dass Sie bei den meisten Schwachstellenforschungsaufgaben wahrscheinlich auf einem relativ niedrigen Niveau arbeiten oder C/C++-Code prüfen.
Bei den Pentesting-Aufgaben, die ich durchgeführt habe, handelte es sich im Allgemeinen um Webapp- oder Tests oder Konfigurationsüberprüfungen, die sich für mich ganz ähnlich anfühlten wie bei der Schwachstellenforschung, bei der man ständig neue Orte finden muss, an denen man herumstöbern und versuchen muss, alle Softwareentwicklungsentscheidungen eines zu verstehen Vielzahl von Entwicklern.
Ein weiterer großer Unterschied ist meiner Meinung nach die Länge dieser Projekte. Pentests dauern im Allgemeinen recht kurzfristig (vielleicht höchstens ein paar Wochen), aber Projekte zur Schwachstellenforschung können sich über Jahre hinziehen.
Wie ist es, ein Schwachstellenforscher zu sein? Wie sieht Ihr Alltag aus?
Es ist großartig, kann aber manchmal auch eine Hassliebe sein. Wenn Sie an den schwierigsten Zieltypen arbeiten, kann das Auffinden ausnutzbarer Fehler einige Zeit in Anspruch nehmen. Manchmal sind die gefundenen Fehler nicht einmal ausnutzbar. Es hilft, mit Leuten zusammenzuarbeiten, die das verstehen, und man kann Ideen weitergeben. Ich schätze mich sehr glücklich, mit einigen der besten Hacker der Welt zusammenarbeiten zu dürfen.
Mein Alltag besteht normalerweise aus einer Mischung aus manueller Prüfung, Fuzzer-Entwicklung und der Verwendung von Code-Abfragetools – manchmal begleitet von einer großen Kanne Kaffee.
Gibt es etwas, das ein Penetrationstester in die Forschung einbringen kann? Die Grundlagen werden wahrscheinlich übernommen, aber gibt es noch etwas anderes?
Absolut! Orange Tsai hat MS Exchange mit den Fehlern geplagt, die ich normalerweise von einem Pentest erwarten würde. Eine Reihe von Fehlern in Firefox traten in privilegiertem JavaScript auf, das vom Browser für Dinge wie die Info- oder Konfigurationsseiten verwendet wird.
Fehler wie diese sind immer unglaublich interessant, weil sie eine Person erfordern, die eine Schwachstellenforscher-Denkweise hat, aber auch über Pentesting-Fähigkeiten verfügt, um sie zu finden.
Welche Fähigkeiten sind für einen Schwachstellenforscher erforderlich? Und wie kann man es schaffen, einer zu werden?
Ich würde sagen, Sie müssen in der Lage sein, über längere Zeiträume tief auf ein einzelnes Ziel zu zielen. Ein weiterer wichtiger Aspekt dabei ist das ständige Erlernen der Interna verschiedener Komponenten in diesem Ziel. Ich denke, dass dies auch einen emotionalen Tribut fordern kann, wenn es einem nicht gelingt, etwas zu finden. Deshalb ist es eine gute Idee, etwas anderes zu haben, das man in seiner Freizeit tun kann (einige Leute klettern, andere spielen, andere gehen). einen neuen Ort erkunden).
Auch hier habe ich das unglaubliche Glück, in einem Umfeld zu sein, in dem jeder diesen Tribut versteht und sich gegenseitig unterstützt. Wir veranstalten Betriebsausflüge, bei denen wir uns eine Woche von der Arbeit frei nehmen, um etwas Lustiges und Anderes auszuprobieren und Dinge wie Paintball zu spielen.
Wenn Sie ein Forscher werden möchten, würde ich vorschlagen, zu lernen, wie eine bestimmte Sache funktioniert (vielleicht interessieren Sie sich für Escapes für virtuelle Maschinen, lesen Sie dann VirtualBox-Code und schreiben Sie, vielleicht interessieren Sie sich für Browser, lesen Sie Chrome- oder WebKit-Beiträge). Sie müssen nicht an einer Schulung teilnehmen, aber diese kann Ihnen immer dabei helfen, die anfängliche Lernhürde zu überwinden.
Es ist auch ziemlich wichtig, eine Grundlage für die Ausbeutung zu schaffen. Es gibt viele Orte, an denen man einige der Grundlagen erlernen kann (Exploit-Übungen, die pwnable-Websites, OverTheWire usw.). Lesen Sie auch viele Artikel!
Eine weitere tolle Idee ist die Teilnahme an einem Juniorprogramm. Wir führen beispielsweise ein Vulnerability Researcher Development Program durch, das Menschen ausbildet, die vielleicht ein wenig über Kenntnisse in der Vulnerabilitätsforschung verfügen, sich aber vertiefen und daraus eine vollwertige Karriere machen möchten.
Sie haben erwähnt, dass die Arbeit einen emotionalen Tribut fordert … was meiner Meinung nach wirklich wichtig ist, da Burnout in der Cybersicherheit und in der IT im Allgemeinen eine so große Sache ist. Was tun Sie, um dem entgegenzuwirken? Ich für meinen Teil habe Probleme, mir eine Auszeit von der Arbeit zu nehmen oder meine Arbeit nicht mit nach Hause zu nehmen.
Viele Dinge! Früher habe ich viel trainiert (während der Corona-Zeit war das eine tolle Möglichkeit, etwas Dampf abzulassen und mir etwas Zeit zum Verarbeiten und Planen zu geben). Ich schaue viele Filme, spiele Spiele und probiere mit meinem Partner neue Restaurants und Bars aus.
Manchmal möchte ich etwas außerhalb meiner Arbeit erforschen, das ist also eine gute Möglichkeit, mich vom alltäglichen Projekt zu lösen. Auch Spaziergänge oder Ausflüge eignen sich gut zur Erfrischung.
Müssen Sie sich davon abhalten, weiter an einem Projekt zu arbeiten? Ich stelle mir vor, dass es einen bei der Arbeit fesseln würde, wenn man an etwas feststeckt oder kurz davor steht, endlich etwas herauszufinden.
Oh, auf jeden Fall. An manchen Tagen übertreibe ich zwar etwas, aber mein Partner redet mir streng zu, wenn ich zu viel übertreibe!
Können Sie mir etwas über das bereits erwähnte Vulnerability Researcher Development Program erzählen? Benötige ich eine ordnungsgemäße Wissensdatenbank, um mich anzumelden?
VRDP zielt darauf ab, Menschen in der Schwachstellenforschung weiterzubilden, daher sind keine echten Qualifikationen erforderlich. Wir achten mehr darauf, ob sie die Einstellung eines potenziellen Forschers haben und nicht darauf, ob sie über die bereits vorhandenen Fähigkeiten verfügen (die sie während des Programms erlernen).
Es ist eine Möglichkeit, mehr Menschen in die Schwachstellenforschung einzubeziehen und auszubilden, unabhängig davon, ob sie frisch von der Universität kommen oder woanders etwas über Cybersicherheit gelernt haben!
Könnten Sie einen kurzen Überblick darüber geben, was VRDP beinhaltet?
VRDP ist im Grunde ein Praktikum, das viele Schulungen in verschiedenen Bereichen (von Debugging und Pwning bis hin zu realen Zielen wie Browsern und Betriebssystemen) sowie einzelne Projekte und das Ausprobieren von VR an realen Zielen (z. B. für pwn2own) umfasst. nur zum Spaß!). Am Ende sind sie in der Lage, sich in die tatsächliche Arbeit einzubringen und Mitarbeiter im Unternehmen zu werden. Es ist ziemlich hart, es lohnt sich auf jeden Fall für sie. Die meisten Leute im Unternehmen sind daran beteiligt und organisieren Schulungen und Veranstaltungen.
Wie sieht es in Ihrem Team aus, wenn jemand Schwierigkeiten hat, Fehler zu finden? Ist es nur allgemeines Plaudern, bis eine Idee aufkommt, oder greift ihr selbst Hand an?
Ja, in den Diskussionen wechseln sich viele Ideen ab. Es gab Fälle, in denen Menschen auch aktiv mitgeholfen haben. Wir haben eine Menge Leute mit ihren eigenen Erfahrungen, also klappt es wirklich gut.
Wann haben Sie Ihren ersten CVE gefunden? Was war das und wie verlief die Entdeckungsreise?
Mein erster tatsächlicher CVE war also wahrscheinlich 2017/2018. Davor war ich es gewohnt, Fehler direkt an Unternehmen zu melden, die normalerweise nicht reagierten. Es handelte sich um einen Fehler bei der Formatierung von Zeichenfolgen in einer eingeschränkten CLI eines Routers. Schön zu wissen, dass diese Käfer immer noch im Umlauf sind! Ich glaube, es dauerte ein paar Tage, bis ich das Gerät untersuchte, bis ich es fand (es war nicht sehr versteckt).
Wir haben den ersten CVE hinter uns…. aber welches ist dein Favorit? Und könnten Sie den Prozess der Suche erläutern?
Wahrscheinlich CVE-2021–2310 . Es ist ein Heap-Überlauf in VirtualBox. Ich habe es gefunden, indem ich die verschiedenen vom Angreifer kontrollierten Parameter im Netzwerkcode analysiert und ein Python-Skript geschrieben habe, um Werte zu brute-forcen und eine Kombination zu finden, die einen Überlauf verursachte. Das hat ziemlich viel Spaß gemacht!
In dem Blog, den Sie auf Twitter verlinken, erwähnen Sie das Hacken des IoT. Aber Sie haben auch die Sicherheitslücke in VirtualBox erwähnt und ich habe Browser-Exploits gesehen. Haben Sie in all diesen Bereichen den gleichen Lernansatz verfolgt? Und sind die meisten Menschen in Ihrem Team auch so vielseitig?
Mein Ansatz war schon immer äußerst unstrukturiert, haha! Ich scrolle viel durch den Code und lese viele Blog-Segmente, die für das, was ich mir ansehe, relevant sind. Das Wissen baut sich mit der Zeit auf und Sie werden nie alle Einzelheiten all dieser komplizierten Ziele kennen.
Was die Menschen betrifft, mit denen ich zusammenarbeite, denke ich, dass wir alle über ein breites Wissensspektrum in verschiedenen Bereichen verfügen. Abhängig von der Mannschaft, der Sie angehören, haben Sie natürlich auch alle ein einziges Hauptziel, das sich also immer weiter entwickelt.
Glauben Sie, dass CTFs oder Pwn2Owns Ihnen dabei geholfen haben, dorthin zu gelangen, wo Sie jetzt sind?
Ich hatte nie wirklich die Gelegenheit, CTFs zu machen (ich wünschte, ich hätte es getan!), aber viele der Herausforderungen, über die ich Leute gesehen habe, die Artikel geschrieben haben, waren wirklich beeindruckend. Ich habe eine Reihe dieser pwnable-Seiten erstellt und dabei eine Menge nützlicher Tricks gelernt. Pwn2owns hat mir auf jeden Fall auch sehr geholfen. Da ich vorher noch kein wirkliches „Netzwerk“ hatte, war es großartig, andere Teilnehmer zu treffen und zu beginnen, mich zu verzweigen und Leute aus der Cybersicherheit kennenzulernen.
Nun zu meiner Lieblingsfrage. Welchen Rat würden Sie Ihrem jüngeren Ich geben?
„Überspringen Sie nicht die Grundlagen“ . Ich habe immer versucht, die „langweiligen“ Dinge zu überspringen und mich direkt mit den lustigen Dingen zu beschäftigen. Ich glaube, das hatte den gegenteiligen Effekt von dem, was ich wollte: Es dauerte länger, bis ich ein einigermaßen anständiges Niveau erreichte. Auch jetzt noch mache ich es manchmal. Ich glaube, ich finde einen Fehler und versuche, ihn auszulösen, ohne die Komponente zu verstehen, in der er sich befindet, was es viel schwieriger macht.
Schlussgedanken
Das Interview mit Max war eine rundum tolle Erfahrung. Er war sehr geduldig mit mir und wir haben es auch geschafft, nebenbei ein bisschen zu plaudern. Ein weiterer toller Mensch. Darüber hinaus sind seine Leistungen und sein Wissen ein weiteres großartiges Beispiel für fantastische Forscher.
Sie finden maxpl0it auf Twitter , GitHub und seinem Blog .
Vielen Dank fürs Lesen, wir sehen uns hoffentlich bald.

![Was ist überhaupt eine verknüpfte Liste? [Teil 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































