Tenable ブログ
ブログ通知を受信するCVE-2019-19781: Citrix ADC および Gateway におけるリモートコード実行の脆弱性を悪用するスクリプトが公開される
脆弱な Citrix Application Delivery Controller(ADC)および Gateway ホストを探査する活動が活発化しています。複数の概念実証スクリプトがリリースされているため、早急に緩和策を適用することが重要です。
背景
12月17日、Citrix は Citrix ADC(旧称 NetScaler ADC)および Citrix Gateway(旧称 NetScaler Gateway)のパストラバーサルの脆弱性である CVE-2019-19781に関するサポート記事を公開し、この脆弱性の悪用に成功すると、認証されていない攻撃者がリモートでコードを実行する可能性があると警告しています。 Citrix は、この脆弱性に対するパッチを提供していませんが、悪用の試みを阻止するために緩和策を適用するように呼びかけています。その後数週間、攻撃者は脆弱なホストを偵察のためにスキャンし始めています。この脆弱性はすでに攻撃者により悪用されている可能性があることを示唆する報告もあります。
1月3日、SANS Internet Storm Center (ISC) は、この脆弱性の「最初の悪用の試み」を実際に確認したとツイートしました。
Just saw the first exploit attempt for Citrix ADC/Gateway CVE-2019-19781 hit one of our honeypots from 223.167.22.29. More details shortly. #cve201919781 #citrix #netscaler
— SANS ISC (@sans_isc) January 3, 2020
Shodan 氏によると、125,000以上の Citrix ADC および Gateway ホストが公的にアクセス可能で、マイクロソフトのセキュリティレスポンスセンターの Nate Warfield 氏は、彼が「スポットチェック」したすべてのシステムが CVE-2019-19781に対して脆弱であることを発見しました。
If you run Citrix in your network you *really* need to read this. A decent @shodanhq dork to find systems is here:https://t.co/YP0yILjXED
— —(÷[ Nate Warfield ]÷)— (@n0x08) January 9, 2020
Every single system I've spot checked so far has been vulnerable; this will burn people for a while. Take steps to defend yourself ASAP. https://t.co/hmmfUxfe8f
分析
Citrix が緩和策として提供した情報には「 /vpns/」パスを含むリクエストの参照が含まれているため、脆弱性が存在する ADC および Gateway のコンポーネントについて推測できます。これはパストラバーサルの脆弱性であるため、脆弱な ADC または Gateway ホストを識別するには、リクエストされた元のパスの外側にあるファイルの存在を確認する必要があります。
1月7日、SANS ISC は、この脆弱性を悪用するためにハニーポットをスキャンする攻撃者に関する詳細を提供するブログを公開しました。このブログでは、「/vpns/cfg/」パスで smb.conf というファイルを探してリクエストを参照しています。脆弱な Citrix ADC または Gateway からこのファイルを要求すると、構成ファイルが返されます。Citrix が推奨する緩和策を適用したシステムは、HTTP 403エラーを返します。
1月8日、Tripwire の Vulnerabilities and Exposures Research Term (VERT) の主任研究員である Craig Young 氏は、脆弱な ADC ホストで「任意のコマンドを実行する」方法について説明するブログを公開しました。Young 氏によると、Citrix アプライアンスの「/vpns/」パスにある Perl スクリプトは標的となり、脆弱なホストでの制限されたファイル書き込みを許可する可能性があります。
1月10日、MDSec のシニアセキュリティコンサルタントである Rio Sherri 氏は、制限されたファイルの書き込みに関するさらなる洞察を提供するブログを公開し、UserPrefs perl モジュールの「csd」関数内のコードが、「サニタイズなしで NSC_USER HTTP ヘッダーからパスを作成し」、関数を呼び出すスクリプトによってトリガーされることを指摘しました。Sherri 氏は、ほぼすべてのスクリプトがこの機能を使用していることを発見しましたが、特に newbm.pl に注目しています。このファイルはパラメーター化された情報を受け入れ、脆弱なホスト上の XML ファイルに保存されている配列に構築します。ただし、この時点ではまだコードの実行は不可能です。そこで、Young 氏の研究が役立ちます。彼は、「細工されたディレクティブを処理するときに任意のコマンドの実行を許可する」Perl Template Toolkit の文書化されていない機能について指摘していますが、Sherri 氏は、これを「潜在的な悪用の手段」と見なしています。XML ファイルに任意のコードを挿入した後、テンプレートエンジンにファイルを解析させるだけでコードを実行することができます。Sherri 氏は、脆弱なホストに保存された XML ファイルに対して特別に細工された HTTP リクエストを送信することでこれを達成しました。
この脆弱性に対するパッチは、まだ Citrix によりリリースされていないため、セキュリティ研究者らは脆弱性に関する特定の詳細を共有していません。ただし、1月10日の時点では、コード実行を達成できるエクスプロイトスクリプトが公開されています。
概念実証
最近、CVE-2019-19781 に関連するいくつかのリポジトリが GitHub で作成されています。これには、リモートの認証されていない攻撃者によるコード実行につながる可能性のあるエクスプロイトスクリプトが含まれています。
ソリューション
約1か月前にリリースされたアドバイザリでは、Citrix は詳細な緩和手順を提供していますが、現在、パッチは提供されていません。この脆弱性に対するエクスプロイトスクリプトがすでに公開されているため、早急にこれらの緩和手順を適用することを強くお勧めします。また、ログでリクエストを確認し、アクティブなスキャンまたはエクスプロイトがすでに発生しているかどうかを判断することをお勧めします。これらのリクエストには、次のようなパスが含まれる場合があります。
- /vpns/
- /vpn/../vpns/cfg/smb.conf
- /vpn/../vpns/portal/scripts/newbm.pl
影響を受けているシステムの特定
Tenable Research has released a direct check plugin (ID 132752) to identify vulnerable assets in addition to the our version check plugin (ID 132397), which can be found here. Note that the version check plugin (ID 132397) requires enabling 'paranoid mode'.
詳細情報
- CVE-2019-19781 (CTX267027) に関する Citrix セキュリティアドバイザリ
- CVE-2019-19781 (CTX267679) に対する Citrix の緩和策
- CVE-2019-19781 に関する Tenable による以前(12月)の通知
Tenable コミュニティの Tenable セキュリティレスポンスチームに参加してみませんか。
現代のアタックサーフェスを総合的に管理する Cyber Exposure Platform を初めて提供した Tenable について詳細情報をご覧ください。
今すぐ Tenable.io Vulnerability Management の 30 日間無料トライアルをお試しいただけます。
関連記事
- Vulnerability Management