CJK Workbench
Product

Reverse-engineeringvaardigheden op je eigen bestanden

01

De eerste vaardigheden die je nodig hebt zijn assembly lezen, de stack volgen en notities bijhouden met discipline. CJK Workbench leest de tekst die je eigen tools exporteren, legt die regel voor regel uit, bewaart notities in bestanden en draait kleine Python-hulpscripts via Shell. Het disassembleert of voert zelf geen programma's uit.

01

Leest tekstexports

read_file en grep openen listings, strings-uitvoer en decompilertekst die je in je werkmap hebt opgeslagen.

02

Bewaart je notities

write_file en edit_file onderhouden een notitiebestand met functies en open vragen, en elke wijziging verschijnt als diff.

03

Draait hulpscripts op kopieën

Python-scripts die een bestandskop lezen of strings opsommen draaien via Shell, op kopieën van je bestanden.

Wat de agent voor je doet

Een sessie die je kunt volgen

Een typische sessie hasht een kopie van het bestand, leest de listing, zoekt naar aanroepen en bewaart notities in je werkmap. Elke kaart klapt open. Ze toont het echte commandoresultaat of de bestandsdiff.

Twee sessies in detail

Achterhaal hoe een oude checksum-routine werkte

Reverse engineering van een onbekend checksum-algoritme in je eigen oude programma begint met de geëxporteerde listing. Begin in Plan only, waar de agent de stappen opschrijft en niets uitvoert. Wissel daarna van modus, laat grep de lus in de listing vinden en read_file de regels eromheen openen. De agent legt uit wat elke instructie met het lopende totaal doet, en write_file slaat de uitleg op in notes/checksum.md. Plannen overleven herstarts. Een routine die bytes optelt ziet er in assembly anders uit dan een die bits roteert, en de notities leggen vast welke je vond. Vergelijk de notities met je oorspronkelijke broncode, doe je eigen test en accepteer de diff pas als beide kloppen.

Schrijf een Python-hulpscript voor een bestandskop

Programmeren voor reverse engineering betekent in de praktijk kleine scripts rond de analyse, en wie carrière wil maken in malware-analyse schrijft er al snel een paar. Beschrijf het bestand dat je wilt lezen, bijvoorbeeld de PE-header van een programma dat je zelf bouwde, en de agent schrijft header.py met write_file. Shell voert je Python-commando uit op een kopie en meldt de echte exitcode. Controleer het script eerst. Lees het in de diff en bevestig dat het alleen bytes uit de kopie leest en de kopie niet uitvoert. Mislukt het commando, dan leest de agent de fout en toont edit_file de oplossing als diff. Draai het script op een tweede kopie en bewaar de uitvoer in je notities.

Wat CJK Workbench niet doet

CJK Workbench is een Windows-app. Het is geen gehoste dienst of plug-in voor een ander programma en is alleen bedoeld voor bestanden die van jou zijn, bestanden die je mag analyseren en oefenmateriaal, op je eigen pc. Het disassembleert, decompileert of voert zelf geen programma's uit, en geen antwoord komt met een garantie op juistheid, dus controleer en test.

CJK Workbench voor Windows

Probeer het op een oefenbinary

CJK Workbench downloaden ↗