Tip
Leer en oefen AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Leer en oefen Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Ondersteun HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die đŹ Discord groep of die telegram groep of volg ons op Twitter đŠ @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
Identifisering van gepakte binĂȘre
- gebrek aan strings: Dit is algemeen om te vind dat gepakte binĂȘre amper geen string het nie
- ân Baie onbenutte strings: Ook, wanneer ân malware ân soort kommersiĂ«le pakker gebruik, is dit algemeen om ân baie strings sonder kruisverwysings te vind. Alhoewel hierdie strings bestaan, beteken dit nie dat die binĂȘre nie gepak is nie.
- Jy kan ook ân paar gereedskap gebruik om te probeer uitvind watter pakker gebruik is om ân binĂȘre te pak:
- PEiD
- Exeinfo PE
- Language 2000
Basiese Aanbevelings
- Begin om die gepakte binĂȘre van die onderkant in IDA te analiseer en beweeg op. Unpackers verlaat wanneer die uitgepakte kode verlaat, so dit is onwaarskynlik dat die unpacker uitvoering aan die uitgepakte kode aan die begin oorgee.
- Soek na JMPâs of CALLs na registers of gebiede van geheue. Soek ook na funksies wat argumente en ân adresrigting druk en dan
retnaanroep, want die terugkeer van die funksie in daardie geval kan die adres wat net na die stapel gedruk is, aanroep voordat dit aanroep. - Plaas ân breekpunt op
VirtualAllocaangesien dit ruimte in geheue toewys waar die program uitgepakte kode kan skryf. Die âloop na gebruikerskodeâ of gebruik F8 om na waarde binne EAX te kom nadat die funksie uitgevoer is en âvolg daardie adres in dumpâ. Jy weet nooit of dit die gebied is waar die uitgepakte kode gestoor gaan word. VirtualAllocmet die waarde â40â as ân argument beteken Lees+Skryf+Voer uit (sommige kode wat uitvoering benodig, gaan hier gekopieer word).- Terwyl jy kode unpack, is dit normaal om verskeie oproepe na aritmetiese operasies en funksies soos
memcopyofVirtualAllocte vind. As jy in ân funksie is wat blykbaar net aritmetiese operasies uitvoer en dalk ânmemcopy, is die aanbeveling om te probeer die einde van die funksie te vind (miskien ân JMP of oproep na ân register) of ten minste die oproep na die laaste funksie en loop dan na dit toe, aangesien die kode nie interessant is nie. - Terwyl jy kode unpack, let op wanneer jy geheuegebied verander aangesien ân verandering in geheuegebied ân aanduiding kan wees van die begin van die unpacking kode. Jy kan maklik ân geheuegebied dump met Process Hacker (proses â> eienskappe â> geheue).
- Terwyl jy probeer om kode te unpack, is ân goeie manier om te weet of jy reeds met die uitgepakte kode werk (sodat jy dit net kan dump) om die strings van die binĂȘre te kontroleer. As jy op ân stadium ân sprong maak (miskien die geheuegebied verander) en jy opmerk dat baie meer strings bygevoeg is, dan kan jy weet jy werk met die uitgepakte kode.
As die pakker egter reeds ân baie strings bevat, kan jy kyk hoeveel strings die woord âhttpâ bevat en sien of hierdie getal toeneem. - Wanneer jy ân uitvoerbare lĂȘer van ân geheuegebied dump, kan jy ân paar koptekste regstel met behulp van PE-bear.
Tip
Leer en oefen AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Leer en oefen Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Ondersteun HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die đŹ Discord groep of die telegram groep of volg ons op Twitter đŠ @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
HackTricks

