IDA Proでx86-64の擬似コードを取得することを知っている人はいますか?疑似コードを取得するためにHex-Raysプラグインをすでに試しましたが、試すと、「32ビットコードのみがサポートされています」というエラーが表示されます。
コメント
- さて、あなたはどんな種類のバイナリを持っていますか? x86、x86_64、ARM …?
回答
ここにある他の2つの回答は古くなっています。
hex-rays Webサイトから、hex-raysデコンパイラーに関するページ:
現在、逆コンパイラーは、x86、x64、ARM32、ARM64、およびPowerPCプロセッサー用にコンパイラーが生成したコードをサポートしています。他のプラットフォームに移植し、プログラマティックAPIを追加する予定です。これにより、お客様は独自の分析方法を実装できるようになります。脆弱性の検索、ソフトウェアの検証、カバレッジ分析は、すぐに頭に浮かぶ方向です。
2014/06/04、IDA 6.6hexのリリース-raysは64ビットx86デコンパイラーを正式にリリースし、それ以来着実に改善されてきました。公式リリースは、IDA 6.6 ページで最初の新機能として、また変更ログで確認できます。
これは別の製品であり、x86 32ビットデコンパイラーとは別に販売されており、現在、他のデコンパイラーと同じ価格で見積もられています(価格見積り page )。
最初のリリースから2年以上経過した後、逆コンパイラーは完全な機能を備えており、高品質と見なされます。
2つの画像IDAの64ビットx86逆コンパイルおよび逆コンパイルの使用方法(hex-rayのIDA 6.6ページから):
(出典: hex-rays.com )
その他のソリューション
ただし、逆コンパイル用のIDAプラグインを提供するソリューションは他にもあります。正確にはあなたが探していたものではありませんが、それらはあなたの望ましい目標を達成するための別の可能な方法を提供します:
- スノーマン、完全-IDAプラグインを備えた吹き飛ばされた逆コンパイラ
- AVGのプラグインリターゲット可能な逆コンパイラ オンライン逆コンパイラ( @wsが言及)
- ida-decompiler <と呼ばれるPythonのみのIDA逆コンパイラプラグイン/ a>( @ 0xeaによる言及)
コメント
- retdec.com/idaplugin のプラグインもあります。これは、Intel x86、ARM、ARM + Thumb、MIPS、PIC32、ELFのPowerPC、PEをサポートします。 、COFF、AR(アーカイブ)およびIntelHEX形式。逆コンパイルプロセスはローカルではなくサーバーで行われることに注意してください。
回答
私の知る限り、IDA Hex-rayプラグインはx86とARMの逆コンパイルのみをサポートしています( ARMのライセンス)。 x86_64では機能しません。
ただし、x86_64で機能するものが必要な場合は、 ida-decompiler を参照してください。
関数の逆コンパイルを試みるIDAプラグイン。Pythonで記述されています。IDAで試すには、関数にカーソルを置いてプラグインを実行します。 。逆コンパイルされた関数が出力ウィンドウに表示されます。
明らかに、Hex-Raysほど高度ではありませんが、優れたオープンデコンパイラ。
コメント
- これは最初の執筆時点では正しいものでしたが、現在はそうではありません。私の答えを見てください。 。
回答
絶対に疑似コードが必要で、IDA Proがうまくいかない場合は、 ホッパーのデモバージョンを試してみたい:x86、x86-64、およびARMの疑似コードを生成できます。