Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
PKCS11SSHAgent — SRO PKCS11 – SSH Agent CNGは、自己完結型で超軽量、依存関係ゼロのWindowsエージェントであり、PKCS#11、SSH-agent、Pageant、CNG/Smartcardを1つの堅牢なバイナリに統合します。要求の厳しい環境向けに設計されており、ネイティブハードウェア暗号化、サービス/ユーザーランドの分離、完全なスマートカードサポートを提供します。 | Kitploit
ツール/GitHubGitHub/sanmilie/pkcs11sshagent
暗号化/復号化ツール暗号化ハードウェアセキュリティユーティリティとフレームワークアイデンティティ&アクセス管理 (IAM)認証
GitHubsanmilie/pkcs11sshagent

PKCS11SSHAgent

SRO PKCS11 – SSH Agent CNGは、自己完結型で超軽量、依存関係ゼロのWindowsエージェントであり、PKCS#11、SSH-agent、Pageant、CNG/Smartcardを1つの堅牢なバイナリに統合します。要求の厳しい環境向けに設計されており、ネイティブハードウェア暗号化、サービス/ユーザーランドの分離、完全なスマートカードサポートを提供します。

リポジトリを見る
24117ヶ月前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

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

SRO PKCS11 – SSH Agent CNG

Compatibility Memory Service Memory Agent Stability GitHub release

PKCS#11 + SSHエージェント + Pageant + CNG/スマートカードの主権的統合

伝統的に分離されていた4つの機能を1つのWindows実行ファイルに統合します:

  • 完全なPKCS#11モジュール(Firefox、OpenSC、ssh -I)
  • OpenSSH/Git/VS/WSL対応のSSHエージェント
  • PuTTY/plink/pscp対応のPageantサーバー
  • スマートカード向けの安全なCNG/KSPオーケストレーター

目次

  1. 哲学
  2. アーキテクチャ
  3. 実行モード
  4. インストール
  5. 設定
  6. 対応プロトコル
  7. PIN管理
  8. CNGバックエンド
  9. セキュリティ
  10. 互換性
  11. 公開鍵のエクスポート
  12. トレイアイコン
  13. WSL2サポート
  14. 競合検出
  15. 依存関係
  16. 既知の制限
  17. ロードマップ

哲学

主権的. CRTへの依存なし。すべてのメモリ操作は RtlCopyMemory、RtlZeroMemory、RtlEqualMemory(FreeCRT.h)を使用します。全てUnicode(ネイティブWin32)。malloc、memcpy、strlen、printf は一切使用しません。

安全. 秘密鍵は決してエクスポートされません。PINは転送されません。CNG/KSPはWindowsネイティブのPIN UIを管理します。安全なパイプを介した厳格なサービス↔ユーザーランドの分離。

ミニマリスト. 単一のバイナリ。外部DLLは不要。レジストリの肥大化なし。簡単なインストール(regsvr32 または -install)。

多目的. 同じプロセス内でPKCS#11、SSHエージェント、Pageant、WSL2を同時にサポート。


アーキテクチャ```

┌──────────────────────────────────────────────────────────────┐ │ Clients (Git, VS, WSL, OpenSSH, PuTTY, Firefox) │ └────────────────────────┬─────────────────────────────────────┘ │ ┌───────────────┼───────────────┬─────────────────┐ │ │ │ │ SSH-agent Pageant (WM_COPYDATA) PKCS#11 WSL2 (TCP) │ │ │ │ v v v v ┌──────────────────────────────────────────────────────────────┐ │ Service Stub (session 0, SYSTEM) │ │ - Accepte connexions sur \.\pipe\openssh-ssh-agent │ │ - Crée pipe interne par client (GUID unique) │ │ - Lance helper userland avec token interactif │ │ - Forwarde messages sans manipuler de secrets │ └────────────────────────┬─────────────────────────────────────┘ │ lancé par le service v ┌──────────────────────────────────────────────────────────────┐ │ Helper Userland (session interactive) │ │ - Connecte au pipe interne │ │ - Décode protocole SSH-agent/Pageant │ │ - Invoque CNG/KSP pour signature │ │ - UI PIN native Windows (pas de relay) │ │ - Renvoie signature au service │ │ - Fenêtre Pageant cachée pour WM_COPYDATA │ │ - Listener TCP 127.0.0.1:10022 pour WSL2 │ │ - Tray icon avec menu contextuel │ └────────────────────────┬─────────────────────────────────────┘ │ v ┌──────────────────────────────────────────────────────────────┐ │ CNG/KSP Backend │ │ - NCryptSignHash avec PKCS#1/PSS padding │ │ - Enumération certificats Windows Store │ │ - Filtrage SmartCardOnly / AllowedKSP │ │ - Support RSA + ECDSA (P-256, P-384, P-521) │ │ - Support EdDSA (Ed25519, Ed448) │ │ - Support Brainpool (P256r1, P384r1, P512r1) │ │ - Cache clés + providers (4h timeout) │ └──────────────────────────────────────────────────────────────┘

---

## 実行モード

### 1. PKCS#11 モード (自動)

ロード元:
- `ssh -I ssh-agent.exe user@host`
- Firefox (Security Devices → Load PKCS#11 Module)
- `pkcs11-tool --module ssh-agent.exe --list-objects`

標準PKCS#11エクスポートを公開:
- `C_Initialize`, `C_Finalize`, `C_GetInfo`
- `C_GetSlotList`, `C_GetSlotInfo`, `C_GetTokenInfo`
- `C_GetMechanismList`, `C_GetMechanismInfo`
- `C_OpenSession`, `C_CloseSession`, `C_Login`, `C_Logout`
- `C_FindObjectsInit`, `C_FindObjects`, `C_FindObjectsFinal`
- `C_GetAttributeValue`
- `C_SignInit`, `C_Sign`
- `C_VerifyInit`, `C_Verify`
- `C_DecryptInit`, `C_Decrypt`
- `C_GenerateRandom`, `C_SeedRandom`

**サポートされているメカニズム (合計14):**
- `CKM_RSA_PKCS` (raw パディングあり)
- `CKM_RSA_X_509` (raw パディングなし)
- `CKM_SHA1_RSA_PKCS` (レガシー ssh-rsa)
- `CKM_SHA256_RSA_PKCS` (rsa-sha2-256)
- `CKM_SHA384_RSA_PKCS` (rsa-sha2-384)
- `CKM_SHA512_RSA_PKCS` (rsa-sha2-512)
- `CKM_SHA256_RSA_PKCS_PSS` (RSA-PSS SHA-256)
- `CKM_SHA384_RSA_PKCS_PSS` (RSA-PSS SHA-384)
- `CKM_SHA512_RSA_PKCS_PSS` (RSA-PSS SHA-512)
- `CKM_ECDSA` (raw)
- `CKM_ECDSA_SHA1` (レガシー)
- `CKM_ECDSA_SHA256` (ecdsa-sha2-nistp256/384/521)
- `CKM_ECDSA_SHA384`
- `CKM_ECDSA_SHA512`

### 2. ユーザーランドエージェントモード (スタンドアロン)```bash
ssh-agent.exe
  • ユーザーセッションにパイプ \\.\pipe\openssh-ssh-agent を作成します
  • SSHエージェントプロトコルを実装します
  • マルチクライアントサポート (最大16同時接続)
  • Pageantサーバーを自動起動
  • WSL2リスナーを自動起動 (127.0.0.1:10022)
  • CNG/KSPを直接使用 (サービス不要)
  • 現在のセッションでPIN UI
  • オプションのPINキャッシュ (設定可能)
  • トレイアイコンとリアルタイム統計

互換性:

  • Git for Windows (set SSH_AUTH_SOCK=\\.\pipe\openssh-ssh-agent)
  • Visual Studio
  • WSL (npiperelay または socat 経由)
  • WSL2 (TCP 127.0.0.1:10022 経由)
  • OpenSSH for Windows
  • PuTTY, plink, pscp, psftp (Pageant 経由)

3. サービススタブモード```bash

ssh-agent.exe -install net start SROSSHAgentCNG

- セッション0(SYSTEM)で動作
- グローバルパイプで接続を受け付ける
- クライアントごとに内部パイプを作成(SIDで保護)
- `CreateProcessAsUserW` を使用してユーザーランドヘルパーを起動
- 秘密情報には触れずにメッセージを転送
- タイムアウト4時間のヘルパープール(自動再利用)
- プール満杯時にLRU退避

**利点:**
- ユーザーセッションでのUI PIN(セッション0ではない)
- 堅牢化された環境に対応
- サービス ↔ 暗号処理の厳格な分離
- マルチユーザーマルチプレックス

### 4. ユーザーランド暗号ヘルパーモード```bash
ssh-agent.exe -useragent -pipe \\.\pipe\ssh-ksp-helper-{GUID}

サービスによって自動的に起動されます:

  • 内部パイプに接続
  • SSH-agent/Pageantリクエストを処理
  • NCryptSignHash を呼び出し(ネイティブPIN UI)
  • 署名をサービスに返送
  • Pageantを起動(非表示ウィンドウ)
  • WSL2リスナーを起動(127.0.0.1:10022)
  • トレイアイコンを表示(SERVICEモード)
  • タイムアウトまたは切断後に終了

インストール

PKCS#11モジュールとして登録```bash

regsvr32 ssh-agent.exe

キーを作成します:
- `HKLM\SOFTWARE\San@sro Inc\PKCS11-SSH-Agent`
- `HKCU\SOFTWARE\San@sro Inc\PKCS11-SSH-Agent`
- `HKCU\SOFTWARE\Mozilla\Firefox\PKCS11Modules\SROSSHAgent`

### Windows サービスをインストールする```bash
ssh-agent.exe -install
net start SROSSHAgentCNG

WSL2の設定

~/.bashrc または ~/.zshrc に追加 :```bash

--- Pont SSH Agent Windows (TCP -> Unix Socket) ---

export SSH_AUTH_SOCK="$HOME/.ssh/agent.sock"

Vérifier si le socket est déjà géré par un socat actif

if ! pgrep -u $USER socat > /dev/null || [ ! -S "$SSH_AUTH_SOCK" ]; then # Nettoyage préventif rm -f "$SSH_AUTH_SOCK"

# Lancement du bridge en arrière-plan
# Note: Utiliser 127.0.0.1 si mode 'mirrored'
# sinon l'IP du host (ex: 192.168.99.x)
socat UNIX-LISTEN:"$SSH_AUTH_SOCK",fork,unlink-early \
      TCP:127.0.0.1:10022 > /dev/null 2>&1 &

fi

### アンインストール```bash
regsvr32 /u ssh-agent.exe
ssh-agent.exe -remove

構成

キー: HKLM\SOFTWARE\San@sro Inc\pkcs11-cng または HKCU\SOFTWARE\San@sro Inc\pkcs11-cng

ツールをダウンロード