.. | ||
blobrunner.md | ||
README.md |
htARTE(HackTricks AWS Red Team Expert) を通じて、ゼロからヒーローまでAWSハッキングを学ぶ!
HackTricksをサポートする他の方法:
- HackTricksで企業を宣伝したい場合やHackTricksをPDFでダウンロードしたい場合は、SUBSCRIPTION PLANSをチェックしてください!
- 公式PEASS&HackTricksスワッグを入手する
- The PEASS Familyを発見し、独占的なNFTsのコレクションを見る
- 💬 Discordグループに参加するか、telegramグループに参加するか、Twitter 🐦で@carlospolopmをフォローする@carlospolopm。
- HackTricksとHackTricks CloudのgithubリポジトリにPRを提出して、あなたのハッキングテクニックを共有する。
Wasm Decompilation and Wat Compilation Guide
WebAssemblyの世界では、decompilingとcompilingのためのツールは開発者にとって不可欠です。このガイドでは、**Wasm(WebAssemblyバイナリ)とWat(WebAssemblyテキスト)**ファイルを扱うためのいくつかのオンラインリソースやソフトウェアを紹介します。
オンラインツール
- WasmをWatにdecompileするためには、Wabtのwasm2watデモが便利です。
- WatをWasmにcompilingするためには、Wabtのwat2wasmデモが役立ちます。
- 別のdecompilationオプションは、web-wasmdecで見つけることができます。
ソフトウェアソリューション
- より堅牢なソリューションとして、PNF SoftwareのJEBが包括的な機能を提供しています。
- オープンソースプロジェクトであるwasmdecもdecompilationタスクに利用できます。
.Net Decompilation Resources
.Netアセンブリのdecompilingは、次のようなツールを使用して行うことができます:
- ILSpyは、Visual Studio Code用のプラグインも提供しており、クロスプラットフォームで使用できます。
- decompilation、modification、recompilationを含むタスクには、dnSpyが強く推奨されています。メソッドを右クリックしてModify Methodを選択すると、コードの変更が可能です。
- JetBrainsのdotPeekも、.Netアセンブリのdecompilingに対する別の選択肢です。
DNSpyを使用したデバッグとロギングの強化
DNSpy Logging
DNSpyを使用して情報をファイルに記録するには、次の.Netコードスニペットを組み込みます:
%%%cpp using System.IO; path = "C:\inetpub\temp\MyTest2.txt"; File.AppendAllText(path, "Password: " + password + "\n"); %%%
DNSpy Debugging
DNSpyを使用した効果的なデバッグのためには、デバッグを妨げる可能性のある最適化が無効になっていることを確認するために、Assembly属性を調整するための手順のシーケンスが推奨されます。このプロセスには、DebuggableAttribute
の設定の変更、アセンブリの再コンパイル、および変更の保存が含まれます。
さらに、IISで実行される.Netアプリケーションをデバッグするには、iisreset /noforce
を実行してIISを再起動します。デバッグのためにDNSpyをIISプロセスにアタッチするには、DNSpy内でw3wp.exeプロセスを選択し、デバッグセッションを開始します。
デバッグ中にロードされたモジュールの包括的な表示を得るためには、DNSpyのModulesウィンドウにアクセスし、すべてのモジュールを開き、アセンブリをソートしてナビゲーションとデバッグを容易にすることが推奨されます。
このガイドは、WebAssemblyと.Netのdecompilationの本質を網羅し、開発者がこれらのタスクを簡単に行えるようにする経路を提供しています。
Java Decompiler
Javaバイトコードをdecompileするために、これらのツールが非常に役立ちます:
DLLのデバッグ
IDAを使用する
- Rundll32は、64ビットおよび32ビットバージョン用に特定のパスからロードされます。
- Windbgは、ライブラリのロード/アンロード時に中断するオプションでデバッガとして選択されます。
- 実行パラメータには、DLLパスと関数名が含まれます。このセットアップにより、各DLLのロード時に実行が停止します。
x64dbg/x32dbgを使用する
- IDAと同様に、rundll32がDLLと関数を指定するためのコマンドラインの変更でロードされます。
- 設定は、DLLエントリポイントでのブレークポイント設定を許可するように調整されます。
画像
- 実行停止ポイントと構成は、スクリーンショットを通じて示されます。
ARM&MIPS
- エミュレーションには、arm_nowが便利なリソースです。
Shellcodes
デバッグテクニック
- Blobrunnerとjmp2itは、メモリにシェルコードを割り当て、Idaまたはx64dbgでデバッグするためのツールです。
- Blobrunner リリース
- jmp2it コンパイル済みバージョン
- Cutterは、GUIベースのシェルコードエミュレーションと検査を提供し、ファイルと直接シェルコードとしてのシェルコード処理の違いを強調します。
Deobfuscation and Analysis
-
scdbgは、シェルコードの機能とdeobfuscation機能を提供します。 %%%bash scdbg.exe -f shellcode # 基本情報 scdbg.exe -f shellcode -r # 分析レポート scdbg.exe -f shellcode -i -r # インタラクティブフック scdbg.exe -f shellcode -d # デコードされたシェルコードをダンプ scdbg.exe -f shellcode /findsc # 開始オフセットを検索 scdbg.exe -f shellcode /foff 0x0000004D # オフセットから実行 %%%
-
CyberChefを使用してシェルコードを逆アセンブルする:CyberChefレシピ
Movfuscator
- すべての命令を
mov
で置き換える難読化ツール。 - 有用なリソースには、YouTubeの説明とPDFスライドが含まれます。
- demovfuscatorは、movfuscatorの難読化を逆転させるかもしれませんが、
libcapstone-dev
やlibz3-dev
などの依存関係が必要であり、keystoneのインストールが必要です。
Delphi
- Delphiバイナリには、IDRが推奨されています。
Courses
- https://github.com/0xZ0F/Z0FCourse_ReverseEngineering
- https://github.com/malrev/ABD
Binary deobfuscation
htARTE(HackTricks AWS Red Team Expert) を通じて、ゼロからヒーローまでAWSハッキングを学ぶ!
HackTricksをサポートする他の方法:
- HackTricksで企業を宣伝したい場合やHackTricksをPDFでダウンロードしたい場合は、SUBSCRIPTION PLANSをチェックしてください!
- 公式PEASS&HackTricksスワッグを入手する
- The PEASS Familyを発見し、独占的なNFTsのコレクションを見る
- 💬 Discordグループに参加するか、telegramグループに参加するか、Twitter 🐦で@carlospolopmをフォローする@carlospolopm。
- HackTricksとHackTricks CloudのgithubリポジトリにPRを提出して、あなたのハッキングテクニックを共有する。