
ArmisによるURGENT/11検出ツール

urgent11-detector は、デバイスが Interpeak IPnet TCP/IP スタックを実行しているかどうかを検出し、その結果 URGENT/11 の脆弱性に対してリスクがあるかどうかを判断するツールです。
最近の discoveries(https://armis.com/urgent11 を参照)に照らして、私たちは、それを動かす RTOS に関係なく、デバイスが Interpeak の IPnet TCP/IP スタックを使用しているかどうかを検出するために設計されたツールを開発することにしました。 IPnet TCP/IP スタックは、バージョン 6.5 以降の VxWorks のネイティブで組み込みのスタックですが、過去には幅広い RTOS でもサポートされてきました。 デバイスが使用している基盤となる TCP/IP スタックを検出することは簡単な作業ではないため、このツールを使用することで、URGENT/11 の脆弱性に対して脆弱なデバイスを特定できます。
このツールは、対象ホストに対する TCP および ICMP フィンガープリントという形で、4 つの独自の検出方法を実装しています。 すべてのメソッドのスコアの合計を計算することで、デバイスが IPnet TCP/IP スタックに依存する OS を実行しているかどうか、またその OS が VxWorks であるかどうかを高い精度で判定できます。 さらに、IPnet を使用するすべての VxWorks バージョンに影響を与える URGENT/11 脆弱性の 1 つである CVE-2019-12258 に対して、ホストが脆弱かどうかもテストします。 デバイスが VxWorks 上で IPnet を実行していると検出され、かつこの CVE に対して脆弱でない場合、そのデバイスは URGENT/11 の脆弱性に対してパッチが適用されていると推測できます。
pip3 でツールを直接インストールします:
pip3 install urgent11-detector
そして、次のように実行します:
urgent11-detector IP PORT
あるいは、依存関係をインストールして手動で実行することもできます。
./urgent11-detector.py IP PORT

python3 がインストールされている前提で、唯一の依存関係は scapy と python-iptables です。 次のコマンドでインストールします:
pip3 install scapy python-iptables
または、公式の scapyインストールガイド と公式の python-iptables ドキュメント を参照してください。
さらに、urgent11-detector は現在、Linux 環境でのみ実行をサポートしています。
Copyright 2019 Armis.
GNU Affero General Public License、バージョン 3.0(以下「本ライセンス」)の下でライセンスされています。 あなたは、本ライセンスに準拠する場合を除き、このファイルを使用することはできません。 本ライセンスのコピーは、以下で入手できます。
https://www.gnu.org/licenses/agpl-3.0.txt
適用される法律で要求される場合、または書面による合意がない限り、本ライセンスの下で配布されるソフトウェアは、明示的または黙示的な保証または条件のいかなる種類もなく、「現状のまま」(AS IS)で配布されます。 本ライセンスの下での許可と制限の詳細については、本ライセンスを参照してください。