デモ用 OpenNHP 保護サーバー

https://acdemo.opennhp.org

🎭
未認証
ユーザー
👤
認証済み
ユーザー
不可視 & ブロック
可視 & 許可
🛡️
NHP
Network-infrastructure
Hiding Protocol
🖥️
保護された
サーバー
acdemo.opennhp.org

1) 保護されたサーバーはデフォルトで未認証ユーザーから「不可視」

デフォルトでは、保護されたサーバーへの接続は全てタイムアウトエラーとなります。 全てのポートが閉じられているため、サーバーはオフラインに見え、事実上「不可視」となります。

保護されたサーバーにアクセスしてみてください:

🚀 アクセスを試す: https://acdemo.opennhp.org NHPデモ - 未認証ユーザーにはサーバーが不可視

2) ポートスキャンもタイムアウトを返す

サーバーをポートスキャンしてもタイムアウトエラーが返されます。 未認証のスキャナーには全てのポートが閉じて見えます。オンラインポートスキャナーで試してみてください:

3) ログインページまたはStealthDNSアプリで認証する

ログインページまたはStealthDNSアプリを使用してNHPサーバーで認証します。 ログインに成功すると、保護されたサーバーにアクセスできるようになります。

4) 認証後にアクセスが許可される

NHP認証が成功すると、保護されたサーバーにアクセスできるようになります。 以前は不可視だった保護されたコンテンツを閲覧できます。

認証済み ✓ アクセス許可
NHPデモ - 認証後にアクセス許可
ポート隠蔽

アプリケーションサーバーのポートを隠蔽

NHP導入前は全てのサーバーポートが露出しています。NHP導入後は完全に不可視になります。

NHP導入前 ⚠️ 露出

アプリケーションサーバーのポートが可視

$ nmap -sS -p 1-65535 server.example.com
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
443/tcp open https
3306/tcp open mysql
8080/tcp open http-proxy

全ポートが攻撃者に可視
攻撃面が完全に露出
ポートスキャンに脆弱

NHP導入後 🛡️ 保護済み

全ポートが未認証者から隠蔽

$ nmap -sS -p 1-65535 server.example.com
PORT STATE SERVICE
スキャンされた全65535ポートがフィルタリング済み
ホストがダウンまたは厳重なファイアウォールで保護されています。
未認証スキャナーにはポートが一切表示されません。

全ポートが攻撃者から不可視
攻撃面がゼロ
認証済みユーザーのみアクセス可能

プロセス

NHPの仕組み

認証してから接続するパラダイムの実際の動作。

ステップ 1

完全な不可視性

保護されたリソースは公開された存在を持ちません。DNSはNXDOMAINを返し、ポートは閉じて見え、 IPアドレスは不明です。未認証の観察者にとって、サービスは存在しません。

ステップ 2

暗号化ノック

認証済みクライアントはNoise Protocol Frameworkを使用して暗号化された「ノック」パケットを送信します。 これにより、サービスの存在を観察者に知られることなく、身元を証明します。

ステップ 3

相互認証

クライアントとサーバーの両方が最新の非対称暗号技術を使用して互いを認証します。 共有秘密なし、中間者攻撃の脆弱性なし、リプレイ攻撃なし。

ステップ 4

時間制限付きアクセス

認証が成功すると、クライアントは一時的なアクセスを取得します。 ファイアウォールルールが動的に作成され、自動的に期限切れとなり、露出を最小限に抑えます。

パフォーマンス

ベンチマーク結果

NHPは最小限のレイテンシーオーバーヘッドで高いパフォーマンスを実現します。

操作スループットレイテンシー
認証10K req/s< 10ms
ポート隠蔽100K req/s< 1ms
DNS解決50K req/s< 5ms

*AWS t3.xlargeインスタンスでテスト

統合

OpenNHPをアプリケーションに統合

アプリケーションの種類に応じて適切なSDKを選択してください:ネイティブクライアントアプリまたはWebアプリケーション。

🖥️

クライアントアプリ統合(デスクトップ & モバイル)

StealthDNSは、OpenNHP SDKをネイティブのデスクトップおよびモバイルアプリケーションに統合する方法を示すオープンソースのサンプルアプリケーションです。 ソースコードを学習することで、以下を理解できます:

  • アプリケーションでNHP-Agentを初期化する方法
  • NHP-Serverへの暗号化ノックリクエストを実行する方法
  • 認証とアクセストークンを処理する方法
  • NHP認可後に保護されたリソースにアクセスする方法
🌐

Webアプリ統合(JavaScript SDK)

OpenNHP JavaScript Agentは、NHP認証をWebアプリケーションに統合するための公式SDKです。 NHP保護リソースへのWebベースのアクセスのための軽量でブラウザ互換のソリューションを提供します。

  • ブラウザ環境向けの純粋なJavaScript実装
  • 既存のWebフレームワークとのシームレスな統合
  • NHP認証フローと接続状態の可視化
  • OpenNHPで保護された任意のバックエンドと連携
📖 OpenNHP SDKドキュメント

インフラを隠蔽する準備はできましたか?

OpenNHPを導入して、サービスを攻撃者から不可視にしましょう。