Videolabs 社製ソフトウェアの特定のライブラリには、サービス拒否の脆弱性と任意コード実行の脆弱性が、複数含まれています。Videolabs 社は VideoLAN の元メンバーによって設立された企業です。VLC のモバイルアプリは現在同社が担当で、VLC 全体にとっても大きな存在です。VLC メディアプレーヤーで mDNS サービスの発見に使用される libmicrodns ライブラリも、同社の開発です。しかしこのライブラリには複数の脆弱性が確認されました。サービス妨害によって任意コードを実行されるなど、さまざまな危険性が考えられます。
Cisco Talos は情報開示方針に従って Videolabs と協力し、今回の脆弱性が解決済みであり、影響を受けた利用者向けにアップデートが利用可能であることを確認しています。
脆弱性の詳細
Videolabs libmicrodns 0.1.0 で圧縮ラベル分析時に再帰が確認されないことに起因する、サービス妨害の脆弱性(TALOS-2020-0994 / CVE-2020-6071)
Videolabs libmicrodns(0.1.0)のリソースレコード解析機能に、エクスプロイト可能な脆弱性が存在します。mDNS メッセージ内の圧縮されたラベルを解析する際に、圧縮ポインタの再帰がチェックされないため、サービス妨害につながる危険性があります。攻撃者は、mDNS メッセージを送信することで脆弱性をトリガーできる可能性があります。
詳細は、こちらからアドバイザリ全文をお読みください。
Videolabs libmicrodns 0.1.0 の rr_decode リターン値に起因する、リモートコード実行の脆弱性(TALOS-2020-0995 / CVE-2020-6072)
Videolabs libmicrodns(0.1.0)のラベル解析機能には、エクスプロイト可能な任意コード実行の脆弱性が存在します。mDNS メッセージ内の圧縮されたラベルを解析する際に、`rr_decode` 関数の戻り値がチェックされないため double free が起き、任意コードを実行される危険性があります。攻撃者は、mDNS メッセージを送信することで脆弱性をトリガーできる可能性があります。
詳細は、こちらからアドバイザリ全文をお読みください。
Videolabs libmicrodns 0.1.0 の TXT レコード/RDATA セクション分析に起因する、サービス妨害の脆弱性(TALOS-2020-0996 / CVE-2020-6073)
Videolabs libmicrodns(0.1.0)の TXT レコード解析機能に、エクスプロイト可能な脆弱性が存在します。mDNS メッセージの TXT レコード内にある RDATA セクションを解析すると、複数の整数オーバーフローが引き起こされ、サービス拒否につながる危険性があります。攻撃者は、mDNS メッセージを送信することで脆弱性をトリガーできる可能性があります。
詳細は、こちらからアドバイザリ全文をお読みください。
Videolabs libmicrodns 0.1.0 のメッセージ解析(境界外読み込み)に起因する、サービス妨害の脆弱性(TALOS-2020-1000 / CVE-2020-6077)
Videolabs libmicrodns(0.1.0)のメッセージ解析機能に、エクスプロイト可能な脆弱性が存在します。mDNS メッセージを解析する場合、メッセージ内の使用可能なデータが適切に追跡されないため、境界外読み取り(out-of-bounds read)とサービス拒否を引き起こされる危険性があります。攻撃者は、mDNS メッセージを送信することで脆弱性をトリガーできる可能性があります。
詳細は、こちらからアドバイザリ全文をお読みください。
Videolabs libmicrodns 0.1.0 の mdns_recv 戻り値に起因する、サービス妨害の脆弱性(TALOS-2020-1001 / CVE-2020-6078)
Videolabs libmicrodns(0.1.0)のメッセージ解析機能に、エクスプロイト可能な脆弱性が存在します。`mdns_recv` で mDNS メッセージを解析する際に、「mdns_read_header」関数の戻り値がチェックされません。そのため、初期化していない変数が使われ、null ポインタの逆参照が発生してサービスがクラッシュする可能性があります。攻撃者は、一連の mDNS メッセージを送信することで脆弱性をトリガーできる可能性があります。
詳細は、こちらからアドバイザリ全文をお読みください。
Videolabs libmicrodns 0.1.0 のリソースの割り当てに起因する、サービス妨害の脆弱性(TALOS-2020-1002 / CVE-2020-6079 および CVE-2020-6080)
Videolabs libmicrodns(0.1.0)のリソース割り当て処理には、エクスプロイト可能なサービス拒否の脆弱性が複数存在します。mDNS メッセージの解析中にエラーが発生した場合、割り当てられたデータの一部は解放されずにリソース枯渇を引き起こし、サービス妨害状態を引き起こす危険性があります。攻撃者は、1 通の mDNS メッセージを繰り返し送信することで脆弱性をトリガーできる可能性があります。
詳細は、こちらからアドバイザリ全文をお読みください。
脆弱性が確認されたバージョン
Talos では、Videolabs 社製 libmicrodns ライブラリ(バージョン 0.1.0)が今回の脆弱性の影響を受けることをテストして確認済みです。
カバレッジ
脆弱性のエクスプロイトは、以下の SNORTⓇ ルールにより検出可能です。今後、脆弱性に関する新たな情報が追加されるまでの間は、ルールが追加されたり、現行のルールが変更されたりする場合がありますのでご注意ください。最新のルールの詳細については、Firepower Management Center または Snort.org を参照してください。
Snort ルール:47811, 53071, 53046, 53099, 53102, 53103
本稿は 2020年3月23日に Talos Group のブログに投稿された「 Vulnerability Spotlight: Multiple vulnerabilities in Videolabs libmicrodns」の抄訳です。