秘密のポートノックを知ることでシステムを開くことができます

良い人と悪い人はこの方法を使ってポートを開く

理想的には、ネットワークやコンピュータに許可されているトラフィックを制限して制御したいと考えています。 これはさまざまな方法で行うことができます。 主な方法の2つは、コンピュータ上の不要なポートが開いていないか、接続をリッスンしていないこと、およびファイアウォールをコンピュータ自体またはネットワーク境界で使用して、不正なトラフィックをブロックすることです。

トラフィックを監視し、イベントに基づいてファイアウォールルールを操作することにより、ゲートを開いてファイアウォールを通過させるような一種の「秘密ノック」を作成することが可能です。 その時点でポートが開かれていなくても、閉じられたポートへの特定の一連の接続試行は、通信のためにポートを開くトリガを提供することができる。

簡単に言えば、ネットワークアクティビティを監視する(通常はファイアウォールのログを監視する)ターゲットデバイス上でサービスを実行することになります。 サービスは、例えば、ポート103,102,108,102,105への接続失敗のような「秘密ノック」を知る必要があります。サービスが正しい順序で「秘密ノック」を検出した場合、ファイアウォールルールが自動的に変更されます指定されたポートを開いてリモートアクセスを許可します。

世界のマルウェア作者は、残念ながら(あるいは幸運なことに、何分もの理由を見て)、被害を受けたシステムでバックドアを開くためにこの手法を採用し始めました。 基本的には、容易に目に見えて検出可能なリモート接続のためのポートを開くのではなく、ネットワークトラフィックを監視するトロイの木馬が植え付けられます。 「秘密ノック」が傍受されると、マルウェアが目覚めて所定のバックドアポートを開き、攻撃者がシステムにアクセスできるようにします。

私はこれが実際には良いことかもしれないということを上に言った。 まあ、どんな種類のマルウェアに感染することは決して良いことではありません。 しかし、今度は、ウイルスやワームがポートを開け始めると、そのポート番号が公開され、感染したシステムは、バックドアを開いたマルウェアの作者だけでなく、誰でも攻撃できるようになります。 これにより、第1のマルウェアによって作成されたオープンポートを利用して、さらに侵害されたり、その後のウイルスやワームが発生する可能性が大幅に増加します。

「秘密のノック」を開く必要がある休止状態のバックドアを作成することで、マルウェア作者はバックドアの秘密を保持します。 再び、それは良いことと悪いことです。 Tom、Dick、Harryの各ハッカーは、マルウェアによって開かれたポートに基づいて脆弱なシステムを見つけるためにポートスキャンを実行しないため、良いことです。 もし休止状態なら、それがそこにあるかどうか分からず、ポートノッキングによって目を覚ますのを待っているあなたのシステムに休眠中のバックドアがあることを識別する簡単な方法がないかもしれないからです。

このトリックは、Bruce Schneierの最近のCrypto-Gramニュースレターで指摘されているような良い人たちによっても使用されます。 基本的に、管理者はシステムを完全にロックダウンすることができます。外部トラフィックは流入させず、ポートノッキングスキームを実装することができます。 「秘密ノック」を使用すると、管理者はリモート接続を確立するために必要なときにポートを開くことができます。

明らかに、「秘密ノック」コードの機密性を維持することは重要です。 基本的に、「秘密ノック」は、それを知っている人に無制限にアクセスできるようにする「パスワード」です。

ポートノッキングを設定し、ポートノッキングスキームの完全性を保証するにはいくつかの方法がありますが、ネットワーク上でセキュリティツールをノックするポートを使用することについての賛否両論はまだあります。 詳細については、LinuxJournal.comのHow to:Port Knockingまたはこの記事の右側にある他のリンクを参照してください。

編集者注:この記事は従来のコンテンツであり、Andy O'Donnellによって2011年8月28日に更新されました。