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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
RsaCtfTool — RSA攻撃ツール(主にCTF向け) - 弱い公開鍵から秘密鍵を取得し、および/またはデータを復号する | Kitploit
ツール/GitHubGitHub/rsactftool/rsactftool
脆弱性分析暗号化CTF学習と教育
GitHubrsactftool/rsactftool

RsaCtfTool

RSA攻撃ツール(主にCTF向け) - 弱い公開鍵から秘密鍵を取得し、および/またはデータを復号する

リポジトリを見る
7.1k9928日前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有

RsaCtfTool

Test Ruff CodeQL
GitHub issues GitHub forks GitHub stars GitHub license GitHub contributors

弱い公開鍵からデータを復号し、秘密鍵を回復するRSAマルチアタックツール。

概要

このツールは、弱い公開鍵からデータを復号し、対応する秘密鍵の回復を試みるためのユーティリティです。RSA暗号を解読するための包括的な攻撃オプションを提供します。

RSAのセキュリティは整数の素因数分解の複雑さに依存しています。このプロジェクトは複数の素因数分解アルゴリズムを組み合わせて、復号能力を高めています。

注記: このツールは主に教育目的で使用されます。すべての鍵が妥当な時間内に破られるわけではありません。このツールはRSA教科書的な半素数合成モジュラス(マルチプライムではない)のみをサポートしています。

高度な素因数分解については、msieve、yafu、またはcado-nfsを検討してください。

使用方法

root@kitploit:~
RsaCtfTool --publickey key.pub --private                   # 秘密鍵を回復
RsaCtfTool --publickey key.pub --decryptfile ciphertext    # ファイルを復号
RsaCtfTool --publickey key.pub --attack wiener             # 特定の攻撃を使用

完全な使用方法については、RsaCtfTool --help を実行してください。

インストール

前提条件

  • Python 3.9+
  • SageMath (推奨だが必須ではない)

仮想環境 (推奨)

root@kitploit:~
python3 -m venv venv
source venv/bin/activate
pip install -e .

Docker

root@kitploit:~
docker build -t rsactftool/rsactftool .
docker run -it --rm -v $PWD:/data rsactftool/rsactftool <arguments>

攻撃手法

非素因数分解攻撃

  • Wiener's attack
  • Hastad's attack (小さな公開指数)
  • Boneh-Durfee (小さな秘密指数 d < n^0.292)
  • 同じn、巨大なe
  • 小さなCRT指数
  • 部分的なq / 部分的なd
  • 格子基底縮小

整数素因数分解手法

CTF固有の手法

  • Noveltyprimes
  • Past CTF Primes
  • Gimmicky Primes
  • 非RSA (b^x 形式)
  • Z3 Theorem Prover
  • Wolfram Alpha

使用例

秘密鍵の回復

root@kitploit:~
RsaCtfTool --publickey key.pub --private

ファイルの復号

root@kitploit:~
RsaCtfTool --publickey key.pub --decryptfile ciphertext

複数の鍵への攻撃

root@kitploit:~
RsaCtfTool --publickey "*.pub" --private

nとeから公開鍵を作成

root@kitploit:~
RsaCtfTool --createpub -n 7828374823761928712873... -e 65537

鍵パラメータのダンプ

root@kitploit:~
RsaCtfTool --dumpkey --key key.pub
RsaCtfTool --dumpkey --ext --key key.pub  # CRTパラメータを含む

ECMによる素因数分解

root@kitploit:~
RsaCtfTool --publickey key.pub --ecmdigits 25 --private

特定の攻撃を使用

root@kitploit:~
RsaCtfTool --publickey key.pub --attack wiener --private
RsaCtfTool --publickey key.pub --attack factordb --private

結果をFactordbに送信

root@kitploit:~
RsaCtfTool --publickey "*.pub" --private --sendtofdb

ROCA脆弱性のチェック

root@kitploit:~
RsaCtfTool --isroca --publickey "examples/*.pub"

SSH鍵をPEMに変換

root@kitploit:~
RsaCtfTool --convert_idrsa_pub --publickey ~/.ssh/id_rsa.pub

その他の例については、pytest tests/ --collect-only を実行して利用可能なテストを確認してください。

テスト

テストはpytestを使用し、tests/ ディレクトリにあります。

テストの実行

root@kitploit:~
pytest tests/                 # すべてのテストを実行
pytest tests/ -m "not slow"   # 遅いテストをスキップ
pytest tests/ -v              # 詳細モード
pytest tests/ -k "fermat"     # "fermat" に一致するテストを実行

テストマーカー

  • @pytest.mark.slow - 遅い素因数分解テスト
  • @pytest.mark.network - ネットワークが必要なテスト (Factordb)
  • @pytest.mark.attack - 攻撃統合テスト

テストファイル

コントリビューション

コントリビューションの前に、CONTRIBUTING.md および CODE_OF_CONDUCT.md をお読みください。

ライセンス

元のプロジェクトはGPLv3でリリースされました。このコードはMITライセンスのもとで再ライセンスされています。

謝辞

ツールをダウンロード
メソッド説明
Fermat近接したpとq
Pollard Rho一般的な素因数分解
Elliptic Curve (ECM)滑らかな数
Pollard p-1滑らかな数
Williams p+1滑らかな数
ROCA脆弱な鍵生成
SQUFOF平方形式
Quadratic Sieve一般的な素因数分解
Dixonランダムな平方数
Factordbオンライン素因数分解データベース
共通因子攻撃因子を共有する鍵
GCD攻撃Mersenne, Primorial, Fibonacciなど
ファイル説明
test_number_theory.py数論関数 (gcd, is_prime, phi など)
test_algos.py素因数分解アルゴリズム (fermat, brent, pollard_rho など)
test_keys_wrapper.pyPublicKey/PrivateKey クラス
test_utils.pyユーティリティ関数
test_pubkey_decode.pyRSA公開鍵のデコード
test_attacks.py攻撃統合テスト
test_regression.pyバグ修正の回帰テスト
test_exceptions.pyカスタム例外
conftest.pypytestの設定とフィクスチャ