Vet någon om att få pseudokod för x86-64 i IDA Pro? Jag har redan provat Hex-Rays-plugin för att få pseudokod, men när jag försöker dyker upp följande fel: ”endast 32bit-kod stöds”.
Kommentarer
- ja, vilken typ av binär har du? x86, x86_64, ARM …?
Svar
De två andra svaren här är föråldrade.
Från hex-ray-webbplatsen, på -sidan om hex-ray-dekompilatorn:
För närvarande stöder dekompilatorn kompilatorgenererad kod för x86-, x64-, ARM32-, ARM64- och PowerPC-processorer. Vi planerar att porta den till andra plattformar och lägga till ett programmatiskt API. Detta gör att våra kunder kan implementera sina egna analysmetoder. Sårbarhetssökning, mjukvaruvalidering, täckningsanalys är de riktningar som omedelbart kommer att tänka på.
2014/06/04, med utgivningen av IDA 6.6 -strålar släppte officiellt sin 64bit x86 decompiler, och den har förbättrats stadigt sedan dess. Den officiella utgåvan kan ses på IDA 6.6 sida som den första nya funktionen samt på deras changelog .
Det är en separat produkt och säljs bortsett från deras x86 32-bitars dekompilator och är för närvarande noterad till samma pris som de andra dekompileringarna (se prisuppgifter sida för namngivna licenser).
Mer än två år efter den första utgåvan är dekompilern fullt utrustad och anses vara högklassig.
Två bilder att använda IDA ”s 64 bitars x86 demontering och dekompilering (från hex-ray” s IDA 6.6 sida):
(källa: hex-rays.com )
Andra lösningar
Det finns dock andra lösningar som ger ett IDA-plugin för dekompilering. Även om det inte exakt var vad du letade efter, ger de ett annat möjligt sätt att uppnå ditt önskade mål:
- Snowman , en fullständig -blåst decompiler med ett IDA-plugin
- ett plugin för AVG ”s Retargetable Decompiler online decompiler ( Nämnd av @ws)
- Ett python-endast IDA-decompiler-plugin som heter ida-decompiler ( Nämnd av @ 0xea)
Kommentarer
- Det finns också ett plugin från retdec.com/idaplugin . Det stöder Intel x86, ARM, ARM + Thumb, MIPS, PIC32, PowerPC i ELF, PE , COFF, AR (arkiv) och Intel HEX-format. Observera att dekompileringsprocessen sker på deras server, inte lokalt.
Svar
Såvitt jag vet stöder IDA Hex-ray-plugin endast x86 och ARM-dekompilering (om du har en licens för ARM). Det fungerar inte på x86_64.
Men om du behöver något som fungerar på x86_64, ta en titt på ida-decompiler :
Ett IDA-plugin som försöker dekompilera en funktion. Skrivet i Python. För att prova det i IDA placerar du markören på en funktion och kör plugin . Den dekompilerade funktionen visas i utgångsfönstret.
Det är uppenbarligen inte så avancerat som Hex-Rays, men det är ett bra steg mot en bra, öppen dekompilator.
Kommentarer
- Detta var korrekt vid skrivningens ursprungliga tidpunkt men är inte längre så. Ta en titt på mitt svar .
Svar
Om du absolut vill ha pseudokod och är otur med IDA Pro, kanske du vill prova en demoversion av hopper : den kan generera pseudokod för x86, x86-64 och ARM.