Reverse engineering: Les programvare du ikke har kildekoden til
Reverse engineering er fagområdet som analyserer kompilert programvare for å forstå hvordan den fungerer – uten tilgang til den opprinnelige kildekoden. Sikkerhetsforskere bruker det til å finne sårbarheter, skadevareanalytikere bruker det til å dissekere skadelig kode, og firmwareingeniører bruker det til å forstå innebygde systemer. Dette læringsløpet dekker hele stakken: fra rå binærformater og Assembly via statisk og dynamisk analyse til utvikling av exploits og avanserte anti-RE-teknikker.
Dette lærer du
Du begynner med grunnleggende binærkunnskap – kjørbare formater, minneoppsett og hvordan kode på høyt nivå avbildes som maskininstruksjoner. Deretter leser og tolker du x86/x64 Assembly slik det vises i faktiske resultater fra disassemblering. Du bruker verktøy for statisk analyse til å undersøke binærfiler uten å kjøre dem, før du går over til dynamisk analyse og feilsøking for å observere kjøring i sanntid. Senere kurs dekker skadevareanalyse, kompilatoroptimaliseringer og hvordan de skjuler hensikten, skripting for automatisert statisk analyse og triks for å motvirke reverse engineering som brukes i praksis. Læringsløpet avsluttes med RE av firmware og innebygde systemer, sårbarhetsforskning, utvikling av exploits og en gjennomgang av hvor fagfeltet er på vei.
Læringsløpet
Tolv kurs spenner fra A1 til C2. Det første kurset introduserer kjernebegrepene på A1-nivå med en gratis første introduksjon; de to neste kursene (A2–B2) bygger binærforståelse og ferdigheter i å lese Assembly. Deretter dekker fire B2/C1-kurs de viktigste arbeidsflytene for analyse: statiske verktøy, dynamisk feilsøking, grunnleggende skadevareanalyse og skripting. De fire siste kursene er på C1–C2-nivå og tar for seg det vanskeligste stoffet: kompilatoroptimaliseringer og effekten de har på disassemblering, firmware og innebygde mål, sårbarhetsforskning og utvikling av exploits samt avanserte emner, inkludert aktuelle trender i fagfeltet.
Slik fungerer det
Hvert kurs er delt inn i korte, fokuserte leksjoner med praktiske øvelser i den innebygde redigereren – du leser Assembly, kommenterer binærfiler og arbeider med reelle analyseoppgaver med tilbakemelding i sanntid. En AI-veileder er tilgjengelig underveis når du står fast på en instruksjonssekvens, en parameter for et verktøy eller en ukjent binærstruktur.