reverse-engineering-browser — ローカルファーストのmacOSリサーチブラウザ。カスタムBraveビルド上に構築され、Webアプリのリバースエンジニアリングのためにネットワークトラフィック、フィンガープリント、スクリプト、ランタイム証跡をキャプチャします。 | Kitploit
ツール / GitHub / sunghoojung / reverse-engineering-browser
sunghoojung/reverse-engineering-browser
reverse-engineering-browser ローカルファーストのmacOSリサーチブラウザ。カスタムBraveビルド上に構築され、Webアプリのリバースエンジニアリングのためにネットワークトラフィック、フィンガープリント、スクリプト、ランタイム証跡をキャプチャします。
5 8 1日前コミュニティで最も使われているツールを見つけましょう。
過去7日間 過去30日間
リバースエンジニアリングブラウザ
フィンガープリント、リクエスト、スクリプト、ランタイム動作の背後にあるブラウザの証拠を確認できます。
認可された Web アプリケーションを検査するための、ローカルファーストの研究用ブラウザおよび macOS ワークスペース。
v0.2.1 リリース
Origin Trace Traffic に、DevTools スタイルの全幅リクエストテーブルが追加されました。パスとホストが読みやすくなり、ステータス、タイプ、メソッド、タイミングが別々の列に表示されます。ライブリクエストはリストの下部に追従し、上にスクロールすると現在位置が保持され、新しいリクエストへジャンプできます。リクエストを選択すると完全な URL が表示され、Copy URL アクションを利用できます。v0.2.0 のセッションプライバシーと起動の改善も引き続き利用できます。
Origin Trace v0.2.1 をダウンロード
· リリースノート
· 完全な変更履歴
機能変更履歴
v0.2.1: ライブ Traffic を、パスとホストの階層、コンパクトなリクエストメタデータ、最下部への追従更新、新規リクエストへのジャンプ、完全な URL の検査とコピーを備えた、読みやすい全幅リクエストテーブルとして再設計。
v0.2.0: セッションごとのメタデータまたは制限付きコンテンツキャプチャの制御、明示的な Keychain オプトインを伴うプロンプトなしの分離プロファイル、検証済みのブラウザ準備状態と再試行/再起動フロー、プライベートな Brave 診断、セマンティック難読化解除ベンチマークコーパス、自動化された開発者ツールのブートストラップを追加。
v0.1.10: Origin Trace がオフラインシェルから新しく起動したライブワークスペースへ切り替わる際に NSURLErrorDomain error -999 が表示されることがあった、起動時の WebKit キャンセル競合を修正。
v0.1.9: 通常のアプリ起動で、ブローカー、アーティファクトレシーバー、デバッガー、アナライザー、ループバック UI、計測済みカスタム Brave セッションが自動的に起動するように変更。必要なヘルパーをパッケージ化し、明示的な起動失敗レポートと所有権に基づくクリーンアップを追加。
v0.1.8: Sources 内に制限付きの Rust/Oxc 難読化解除、元のバイトの来歴、ネスト保護、プロキシおよびカスタムデコーダーの評価、明示的な JSFuck 強制変換の前提、制限付きのループ/switch ディスパッチャー復元を追加。
v0.1.7: 研究用インターフェースを刷新し、高度なツール、ソース検査、リクエスト詳細、フィンガープリンティング、メモリ、実験を再編成。
v0.1.6: より強力なソース、メモリ、リクエストシグナル、アナリストのワークフローを追加し、ネイティブアプリケーションのパッケージ化と検証を更新。
v0.1.5: ネイティブの研究ワークフローと macOS 配布を拡張。
v0.1.4: ネイティブのフィンガープリントプローブを拡張し、タブごとの新しい順のアクティビティとライブタブ数、オプトインの Canvas 画像キャプチャ、より明確なキューギャップレポート、プローブの停止または現在のセッションのイベントをクリアする制御を追加。
v0.1.3: 本番アプリバンドルからサンプルのリクエスト、イベント、Canvas 出力を削除し、すべてのセッションが実際にキャプチャされた証拠から始まるように変更。
v0.1.2: Canvas 画像出力、ローカルリプレイプレビュー、キャプチャされた描画関数、フィンガープリントアクティビティ、イベント詳細、フィルター、リクエスト相関を備えた Fingerprinting ワークスペースを追加。
機能
ライブネットワークトラフィック: 読みやすいパス、ホスト、メソッド、ステータスコード、タイミングを備えた全幅テーブルでリクエストを検査し、1 つを選択して CDP 経由でキャプチャされた完全な URL、ヘッダー、リクエストボディ、レスポンスボディを確認できます。
タブとドメインによる整理: ブラウザタブごとにトラフィックを分離し、タブを特定の宛先ドメインまたはリソースタイプに絞り込めます。
ネイティブブラウザの証拠: Canvas、WebGL、Web Audio、デバイスおよびレイアウト API、Permissions、Storage、WebRTC、JavaScript ランタイムフィンガープリンティングにわたる呼び出しとプロパティ読み取り、およびカスタム Brave ビルドからのリクエストライフサイクルメタデータを記録します。
オリジントレース: リクエストに寄与した観測済みのイベント、スクリプト、フレーム、実行コンテキスト、キャプチャされたアーティファクトを遡って追跡します。
ソース検査とデバッグ: ページソースを閲覧し、ブレークポイントを設定し、JavaScript を一時停止してステップ実行し、スコープを検査し、ウォッチを評価し、ライブコンソールを使用できます。
アーティファクトキャプチャ: ネットワーク経由で配信されたものとランタイムで生成された JavaScript および WebAssembly の制限付きコピーを、ハッシュと来歴とともに保持し、明示的に認可された Canvas 画像出力も保持します。
メモリとバックトレースツール: ヒープスナップショット、ライブオブジェクト、デコードされたスタックフレーム、VM 関連の検出結果を検査します。
研究ワークフロー: リクエストをコレクションに保存し、分離されたリクエストをリプレイし、制御された実験を実行し、ローカルのアナリストノートを保持します。
ローカルで制限付きのキャプチャ: 証拠はマシン上に残ります。機密のリクエストヘッダーは秘匿化され、ボディは CDP キャプチャで 128 KiB に制限され、ネイティブキューとアーティファクト転送には明示的な制限があります。
ネイティブクワイエットモード: リクエストとレスポンスの内容が不要な場合、DevTools をアタッチせずにネイティブの証拠キャプチャを実行します。
使用方法
コンパイル済み macOS アプリをダウンロードする コンパイル済みアプリは Apple silicon Mac 用です。リンクされた Brave Browser Development プレビューは現在のプローブサポートより前のものです。すべてのネイティブプローブを使用するには、このリリースのソースから固定された Brave 統合をビルドしてください。ダウンロードしたプレビューではそれらを実演できません。Origin Trace にはサンプル証拠はバンドルされていません。アプリケーションはアドホック署名されていますが Apple の公証は受けていないため、初回起動時にはアプリを Control キーを押しながらクリックして Open を選択する必要がある場合があります。v0.2.1 の GitHub リリースタグは署名されていませんが、そのマージコミットは GitHub で検証されています。
コンパイル済み Brave アプリのダウンロードには 100 GiB を超えるソースチェックアウトは不要です。両方のアプリのダウンロードと展開に約 1 GiB を確保し、さらにブラウザプロファイルとキャプチャしたセッション用に保持したい容量を確保してください。
既存のカスタム Brave ビルドでライブキャプチャを実行する REB_CDP_NETWORK_CAPTURE=1 \
REB_BRAVE_BINARY="/path/to/Brave Browser Development.app/Contents/MacOS/Brave Browser Development" \
make live
Origin Trace とカスタム Brave ブラウザが一緒に開きます。その Brave ウィンドウでブラウズし、Traffic タブでリクエストを選択します。Brave を閉じるとセッションが終了します。キャプチャされた証拠は build/sessions/live/ の下に保存されます。
CDP コンテンツキャプチャはページコンテンツを保持する可能性があるため明示的です。authorization、cookie、proxy-authorization、set-cookie ヘッダーは秘匿化されます。ストリーミング、キャッシュ済み、内部、またはすでに削除されたレスポンスボディは利用できない場合があります。
フィンガープリントの操作名はデフォルトでキャプチャされます。この 1 回のセッションで HTMLCanvasElement.toDataURL() が返す正確な画像も保持するには、REB_CAPTURE_CANVAS_IMAGES=1 を追加します。Canvas 画像出力にはページコンテンツが含まれる可能性があるため、デフォルトでは無効になっており、ローカルセッションストアにのみ保持され、画像あたり 2 MiB に制限されます。
カスタム Brave ブラウザを初めてビルドする これらの要件はソースから Brave をコンパイルする場合にのみ適用されます。ダウンロード可能なコンパイル済み Brave アプリを使用する場合には適用されません。
完全な Xcode がインストールされた macOS;
Node.js と pnpm;
Python 3、C++20 コンパイラ、zlib、Make;
少なくとも 150 GiB の空き容量、200 から 250 GiB を推奨。
固定されたチェックアウトを準備し、統合を適用し、検証し、Brave をビルドします:
./scripts/bootstrap-brave.sh --init
./scripts/sync-browser-integration.sh
make brave-doctor
make brave-probe-check
./scripts/brave-toolchain.sh build
最初の完全ビルドには数時間かかることがあります。以降のビルドはインクリメンタルで、通常は既存のチェックアウトとコンパイル済みオブジェクトを再利用します。完了したら、前のセクションのコマンドでライブキャプチャを開始します。
CDP コンテンツキャプチャなしで実行する ライブ DevTools アタッチメントなしでネイティブのメタデータとアーティファクトをキャプチャする場合:
REB_NATIVE_QUIET_MODE=1 \
REB_BRAVE_BINARY="/path/to/Brave Browser Development.app/Contents/MacOS/Brave Browser Development" \
make live
ネイティブクワイエットモードでは、ソース、ブレークポイント、ステップ実行、ウォッチ、コンソール、完全な URL、ヘッダー、ボディは利用できません。
このプロジェクトは、所有しているシステム、または検査を明示的に認可されているシステムでのみ使用してください。