Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
B2R2 — B2R2はF#で書かれたフルマネージドなバイナリ解析フレームワークです。リバースエンジニアリング、プログラム解析、バイナリレベルの検査のための豊富なアルゴリズム、関数、ツールを提供します。 | Kitploit
ツール/GitHubGitHub/b2r2-org/b2r2
静的分析動的分析 (サンドボックス)リバースエンジニアリングファジングバイナリ解析論文と研究学習と教育
GitHubb2r2-org/b2r2

B2R2

B2R2はF#で書かれたフルマネージドなバイナリ解析フレームワークです。リバースエンジニアリング、プログラム解析、バイナリレベルの検査のための豊富なアルゴリズム、関数、ツールを提供します。

リポジトリを見る
45967720時間2分前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
ウェブサイト
共有

alt text

B2R2 B2R2

B2R2

B2R2 は、F# で書かれた完全マネージドのバイナリ解析フレームワークです。リバースエンジニアリング、プログラム解析、バイナリレベルの検査のための豊富なアルゴリズム、関数、ツールを提供します。

B2R2 という名前は、スター・ウォーズの象徴的なロボット R2-D2 から着想を得ています。元々は B2-R2 と名付けられましたが、.NET の識別子や名前空間ではハイフンが許可されないため、後にハイフンなしの B2R2 に改められました。この名前はプロジェクトの目的を反映しています。「B」と「2」はバイナリと二状態計算を示し、「R」はリバース(reversing)を意味します。要するに、B2R2 はバイナリリバースのために作られています。

概要

  1. B2R2 は 解析に適しています:F# で書かれており、この言語はパターンマッチング、代数的データ型、表現力豊かな関数型抽象化などの機能により、プログラムアナライザの構築に適しています。

  2. B2R2 は 高速です:コアのバイナリ解析エンジンは効率性を重視して設計されており、関数型ファースト スタイルで書かれています。これにより、命令リフティングやCFG復元などの一般的な解析タスクにおいて、純粋な並列処理 に自然に適合します。

  3. B2R2 は 使いやすい です:完全マネージドライブラリとして、複雑なネイティブ依存関係の設定が不要です。.NET SDK をインストールすればすぐに使用できます。ネイティブの サポートにより、API の探索も容易です。

IntelliSense
  • B2R2 は OSに依存しません:Linux、macOS、Windows に加え、.NET がサポートするその他すべてのプラットフォームで動作します。

  • B2R2 は 相互運用可能 です:単一のプログラミング言語に縛られません。原理的には、B2R2 API はあらゆる CLI対応言語 から使用できます。

  • 機能

    B2R2 は、命令解析、バイナリ逆アセンブル、アセンブル、制御フロー復元、その他バイナリ解析のためのコア構成要素をサポートしています。また、readelf や objdump に匹敵する、プラットフォームに依存しないコマンドラインツールもいくつか含まれています。B2R2 は現在、4つのバイナリファイル形式(ELF、PE、Mach-O、WebAssembly)をサポートしています。

    以下の表は、B2R2 が現在サポートしている機能をまとめたものです。一部の分野はまだ開発中であり、貢献を歓迎します。プルリクエストを送る前に、コントリビューションガイドライン をお読みください。

    CPUDocsIns ParsingDisasmLiftingCFG RecoveryAssembly
    x86:full_moon::full_moon::full_moon::full_moon::full_moon::full_moon:
    x86-64:full_moon::full_moon::full_moon::full_moon::full_moon::full_moon:
    ARMv7:full_moon::full_moon::full_moon::full_moon::first_quarter_moon::new_moon:
    ARMv8 (AArch64):full_moon::full_moon::full_moon::full_moon::first_quarter_moon::new_moon:
    MIPS32:full_moon::full_moon::full_moon::full_moon::first_quarter_moon::new_moon:
    MIPS64:full_moon::full_moon::full_moon::full_moon::first_quarter_moon::new_moon:
    EVM:full_moon::full_moon::full_moon::full_moon::full_moon::new_moon:
    TMS320C6000:full_moon::full_moon::full_moon::new_moon::first_quarter_moon::new_moon:

    依存関係

    B2R2 は、ビルドをシンプルにし、バイナリ解析のための効率的なアルゴリズムとデータ構造にコアを集中させるために、依存関係のフットプリントを意図的に小さく保っています。コアライブラリには外部依存関係がなく、ほとんどの外部ライブラリはオプションであり、特定のコンポーネントやツールでのみ使用されます。以下は、プロジェクトで使用されている外部ライブラリのリストです。

    • System.IO.Hashing
    • FSharp.Compiler.Service
    • FParsec
    • BenchmarkDotNet
    • Avalonia.FuncUI

    API ドキュメント

    ドキュメントは fsdocs で生成され、https://b2r2.org/B2R2/ で公開されています。

    例

    B2R2 API を実際に使ってみましょう。

    1. まず、DIRNAME という名前の空のディレクトリを作成します。

      root@kitploit:~
      mkdir DIRNAME
      cd DIRNAME
      
    2. 次に、dotnet コマンドラインツールを使用して空のコンソールプロジェクトを作成します。

      root@kitploit:~
      $ dotnet new console -lang F#
      
    3. NuGet パッケージ B2R2.FrontEnd.API をプロジェクトに追加します。

      root@kitploit:~
      $ dotnet add package B2R2.FrontEnd.API
      
    4. お好みのエディタで Program.fs ファイルを以下のように変更します。

      root@kitploit:~
      open B2R2
      open B2R2.FrontEnd
      
      [<EntryPoint>]
      let main argv =
        let isa = ISA "amd64"
        let bytes = [| 0x65uy; 0xffuy; 0x15uy; 0x10uy; 0x00uy; 0x00uy; 0x00uy |]
        let hdl = BinHandle(bytes, isa)
        let lifter = hdl.NewLiftingUnit()
        let ins = lifter.ParseInstruction 0UL // parse the instruction at offset 0
        lifter.LiftInstruction ins |> printfn "%A"
        0
      
    5. dotnet run と入力して実行します。リフティングされた IR 文がコンソールに表示されるはずです。これで完了です!わずか数行の F# コードで Intel 命令をリフティングできました。

    ビルド

    B2R2 のビルドは簡単です。.NET 10 SDK 以降をインストールすれば、ソースルートからビルドする準備は完了です。

    • リリースモードでビルドするには:dotnet build -c Release
    • デバッグモードでビルドするには:dotnet build

    F# 開発環境のセットアップについては、公式 F# ウェブサイト(http://fsharp.org/)を参照してください。

    クレジット

    B2R2 は、KAIST の SoftSec Lab のメンバーと、KAIST の サイバーセキュリティ研究センター(CSRC) の協力により開発されました。貢献者の完全なリストは AUTHORS.md を参照してください。

    引用

    研究で B2R2 を使用する場合は、以下の 論文 を引用してください。

    root@kitploit:~
    @INPROCEEDINGS{jung:bar:2019,
      author = {Minkyu Jung and Soomin Kim and HyungSeok Han and Jaeseung Choi and Sang Kil Cha},
      title = {{B2R2}: Building an Efficient Front-End for Binary Analysis},
      booktitle = {Proceedings of the NDSS Workshop on Binary Analysis Research},
      year = 2019
    }
    

    チュートリアル

    B2R2 のオンラインチュートリアルが利用可能で、B2R2 の基本的な使い方と実践的な例を網羅しています。以下のリンクからご覧いただけます:https://b2r2.org/tutorial-icst2026/。

    出版物

    以下は、B2R2 を使用または基にした論文です。あなたの研究を含めたい場合は、プルリクエストを送ってください。

    • EVMpress: Precise Type Inference for Next-Generation EVM Decompilation, CBT 2025 (PDF)
    • Towards Sound Reassembly of Modern x86-64 Binaries, ASPLOS 2025 (PDF)
    • PoE: A Domain-Specific Language for Exploitation, SVCC 2024 (PDF)
    • FunProbe: Probing Functions from Binary Code through Probabilistic Analysis, FSE 2023 (PDF)
    • How'd Security Benefit Reverse Engineers? The Implication of Intel CET on Function Identification, DSN 2022 (PDF)
    • Smartian: Enhancing Smart Contract Fuzzing with Static and Dynamic Data-Flow Analyses, ASE 2021 (PDF)
    • NTFuzz: Enabling Type-Aware Kernel Fuzzing on Windows with Static Binary Analysis, Oakland 2021 (PDF)
    ツールをダウンロード
    AVR:full_moon::full_moon::full_moon::full_moon::first_quarter_moon::new_moon:
    PA-RISC:full_moon::full_moon::full_moon::new_moon::first_quarter_moon::new_moon:
    PPC32:full_moon::full_moon::full_moon::full_moon::first_quarter_moon::new_moon:
    SPARC:full_moon::full_moon::full_moon::full_moon::first_quarter_moon::new_moon:
    SH4:full_moon::full_moon::full_moon::new_moon::first_quarter_moon::new_moon:
    RISC-V:full_moon::full_moon::full_moon::full_moon::first_quarter_moon::new_moon:
    S390:full_moon::full_moon::full_moon::new_moon::first_quarter_moon::new_moon: