High

アドバイザリーID : cisco-sa-20190925-ftp

初公開日 : 2019-09-25 16:00

最終更新日 : 2019-11-20 15:15

バージョン 1.1 : Final

CVSSスコア : 8.6

回避策 : Yes

Cisco バグ ID : CSCvn02419

CVE-2019-12655

Download CVRF

Email

日本語による情報は、英語による原文の非公式な翻訳であり、英語原文との間で内容の齟齬がある場合には、英語原文が優先します。

概要

Cisco IOS XE ソフトウェアのネットワーク アドレス変換（NAT）、NATにおける IPv6 から IPv4 への変換（NAT64）、ゾーンベース ポリシー ファイアウォール（ZBFW）で使用される FTP アプリケーション層ゲートウェイ（ALG）機能で脆弱性が確認されました。認証されていないリモートからの攻撃者によって、標的デバイスのリロードが引き起こされる危険性があります。

この脆弱性は、標的デバイスが特定の FTP トラフィックを検査するときに発生するバッファ オーバーフローに起因します。デバイスを介して特定の FTP 転送を実行することで、エクスプロイトされる可能性があります。エクスプロイトに成功すると、攻撃者は標的デバイスのリロードを引き起こすことができるようになります。

シスコはこの脆弱性に対処するソフトウェアアップデートをリリースしています。本脆弱性に対処する回避策がいくつかあります。

このアドバイザリは、次のリンクより確認できます。

https://sec.cloudapps.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20190925-ftp

このアドバイザリは、2019 年 9 月 25 日に公開された Cisco IOS および IOS XE ソフトウェア リリースのセキュリティ アドバイザリ資料の一部です。この資料には、13 件の脆弱性に関する 12 件のシスコ セキュリティ アドバイザリが記載されています。アドバイザリとリンクの一覧については、『Cisco Event Response: September 2019 Semiannual Cisco IOS and IOS XE Software Security Advisory Bundled Publication』を参照してください。

該当製品

脆弱性のある製品

この脆弱性の影響を受けるのは、デバイスで脆弱性のある Cisco IOS XE ソフトウェア リリースを実行しており、FTP インスペクションで NAT、NAT64、ZBFW のいずれかの設定が有効になっている場合です。

脆弱性が存在する Cisco IOS XE ソフトウェア リリースについては、このアドバイザリの「修正済みソフトウェア」セクションを参照してください。

注：この脆弱性は、該当デバイスを通過し、ALG機能によって検査されるトラフィックによって引き起こされる可能性があります。ZBFW がセルフ ゾーンの FTP トラフィックを検査するように設定されている場合、標的デバイスを宛先とするトラフィックによって、トリガーされることもあります。

NAT が設定されているかどうかの確認

デバイスが NAT を実行するように構成されているか調べるには、管理者は NAT がデバイス上でアクティブになっているか（推奨）、または NAT コマンドがデバイス構成に存在するかを確認します。

NAT がデバイス上でアクティブかどうかを確認するには、管理者がデバイスにログインして、CLI で show ip nat statistics コマンドを実行します。NAT がアクティブの場合は、コマンドの出力で Outside interfaces と Inside interfaces のセクションに、少なくともインターフェイスが 1 つ表示されます。

以下は、NAT がアクティブなデバイスで show ip nat statistics コマンドを実行した場合の出力例です。

Router#show ip nat statistics

Total active translations: 0 (0 static, 0 dynamic; 0 extended)

Peak translations: 10, occurred 00:24:01 ago

Outside interfaces:

FastEthernet0/0

Inside interfaces:

FastEthernet0/1

Hits: 134280  Misses: 0

CEF Translated packets: 134270, CEF Punted packets: 10

Expired translations: 11

Dynamic mappings:

-- Inside Source

[Id: 1] access-list NET-192.168.20.0_24 pool POOL-NET-192.168.1.0_24 refcount 0

pool POOL-NET-192.168.1.0_24: netmask 255.255.255.0

start 192.168.1.120 end 192.168.1.128

type generic, total addresses 9, allocated 0 (0%), misses 0

Total doors: 0

Appl doors: 0

Normal doors: 0

Queued Packets: 0

Router#

show ip nat statistics コマンドの出力にインターフェイスが含まれていない場合、そのデバイスでは NAT はアクティブになっていません。

また、管理者は CLI で show running-config コマンドを実行し、デバイス構成に NAT コマンドが存在するか評価することで、デバイスで NAT がアクティブになっているかどうかを確認できます。デバイスで NAT がアクティブになっている場合は、show running-config コマンドの出力に ip nat inside と ip nat outside インターフェイスコマンドが含まれています。

NAT ALG 機能が FTP に対して有効になっているかどうかの確認

デフォルトでは、FTP に対して NAT ALG 機能が有効になっており、この機能はデバイスで実行中の構成情報には表示されません。

デバイスで FTP に対して NAT ALG が設定されているかどうかを判別するには、管理者がデバイスにログインして、CLI で show running-config | include ip nat service ftpコマンドをCLIで実行します。コマンドの出力で、 ip nat service ftp コマンドの前に何も表示されていない場合、NAT ALG は FTP に対して無効になっています。以下は、このような場合の例です。

Router#show running-config | include ip nat service ftp

no ip nat service ftp

Router#

show running-config | include ip nat service ftpコマンドを使用すると、NAT ALGがFTPで有効になります。

NAT64 が設定されているかどうかの確認

デバイスが NAT64, を実行するように構成されているか調べるには、管理者は NAT64 がデバイス上でアクティブになっているか（推奨）、または NAT コマンドがデバイス構成に存在するかを確認します。

NAT64 がデバイス上でアクティブかどうかを確認するには、管理者がデバイスにログインして、CLI で show nat64 statistics コマンドを実行します。NAT64 がアクティブの場合は、コマンドの出力で Interface Statistics セクションに少なくともインターフェイスが 1 つ表示されます。

以下は、NAT64 がアクティブなデバイスで show nat64 statistics コマンドを実行した場合の出力例です。

Router#show nat64 statistics

NAT64 Statistics

Total active translations: 2 (1 static, 1 dynamic; 1 extended)

Sessions found: 155

Sessions created: 1

Expired translations: 0

Global Stats:

Packets translated (IPv4 -> IPv6)

Stateless: 0

Stateful: 81

MAP-T: 0

Packets translated (IPv6 -> IPv4)

Stateless: 0

Stateful: 75

MAP-T: 0

Interface Statistics

GigabitEthernet1 (IPv4 not configured, IPv6 configured):

Packets translated (IPv4 -> IPv6)

Stateless: 0

Stateful: 0

MAP-T: 0

Packets translated (IPv6 -> IPv4)

Stateless: 0

Stateful: 75

MAP-T: 0

Packets dropped: 0

GigabitEthernet2 (IPv4 configured, IPv6 not configured):

Packets translated (IPv4 -> IPv6)

Stateless: 0

Stateful: 81

MAP-T: 0

Packets translated (IPv6 -> IPv4)

Stateless: 0

Stateful: 0

MAP-T: 0

Packets dropped: 0

Dynamic Mapping Statistics

v6v4

Limit Statistics

show nat64 statistics コマンドの出力で、インターフェイスが 1 つも表示されない場合、そのデバイスで NAT64 はアクティブではありません。

また管理者は、CLI で show running-config コマンドを実行し、デバイス構成に NAT64 コマンドがあるかどうかを確認することで、デバイスで NAT64 がアクティブかどうかを判断できます。デバイスで NAT64 がアクティブな場合は、show running-config コマンドの出力に nat64 enable インターフェイス コマンドが含まれます。

NAT64 ALG 機能が FTP に対して有効になっているかどうかの確認

デフォルトでは、FTP に対して NAT64 ALG 機能が有効になっており、この機能はデバイスで実行中の構成情報には表示されません。

デバイスで FTP に対して NAT64 ALG が設定されているかどうかを判別するには、管理者がデバイスにログインして、CLI で show running-config | include nat64 service ftpコマンドをCLIで実行します。コマンドの出力で、nat64 service ftp コマンドの前に何も表示されていない場合、NAT64 ALG は FTP に対して無効になっています。以下は、このような場合の例です。

Router#show running-config | include nat64 service ftp

no nat64 service ftp

Router#

show running-config | include nat64 service ftpコマンドを使用すると、NAT64 ALGがFTPで有効になります。

ゾーンベース ポリシー ファイアウォールが設定されているかどうかの確認

デバイスで ZBFW が設定されているかどうかを確認するには、管理者がデバイスにログインして、CLI で show zone security コマンドを実行します。コマンド出力で、ゾーン名の下にメンバー インターフェイスが表示されている場合、デバイスには脆弱性が存在します。

以下は、GigabitEthernet0/0 および GigabitEthernet0/1 の両メンバー インターフェイスに ZBFW ルールが設定されているデバイスで、このコマンドを実行した場合の出力例です。

Router#show zone security

zone self

Description: System defined zone

zone inside

Description: *** Inside Network ***

Member Interfaces:

GigabitEthernet0/0

zone outside

Description: *** Outside Network ***

Member Interfaces:

GigabitEthernet0/1

Router#

ZBFW ALG 機能が FTP を検査しているかどうかの確認

デフォルトでは、ZBFW ALG は FTP に対して無効になっています。

ZBFW ALG 機能が、検査対象クラス用に定義されたプロトコルを使用せずに設定されている場合、ZBFW ALG 機能はデフォルトですべてのプロトコルを検査します。この設定を備えたデバイスは脆弱です。

また、デバイスは、ZBFW ALG 機能が FTP、FTPS、またはその両方を検査するように設定されている場合にも脆弱です。FTP に対する ZBFW ALG 機能の状態を確認するには、管理者がデバイスにログインして、CLI で show policy-map type inspect zone-pair | include Match: protocol ftpコマンドを使用して、FTPインスペクションが明示的に設定されているかどうかを確認します。出力で ftp または ftps の一致が返される場合、そのデバイスは脆弱です。以下は、このような場合の例です。

Router#show policy-map type inspect zone-pair | include Match: protocol ftp

Match: protocol ftp

Match: protocol ftps

脆弱性を含んでいないことが確認された製品

このアドバイザリの脆弱性のある製品セクションに記載されている製品のみが、この脆弱性の影響を受けることが分かっています。

シスコは、この脆弱性が Cisco IOS ソフトウェア、Cisco IOS XR ソフトウェア、および Cisco NX-OS ソフトウェアには影響を与えないことを確認しました。

回避策

これを回避するには、管理者は対象デバイスで次のコマンドを実行して、ソフトウェア アップグレードが実施されるまで FTP ALG 機能を無効にします。

- FTP に対して NAT ALG の使用を無効にするには、管理者がグローバル コンフィギュレーション モードで no ip nat service ftp コマンドを実行します。

- FTP に対して NAT64 ALG の使用を無効にするには、管理者がグローバル コンフィギュレーション モードで no nat64 service ftp コマンドを実行します。

- ZBFW で FTP インスペクションの使用を無効にするには、インスペクション クラス マップから match protocol ftp と match protocol ftps コマンドを削除します。

注：FTP ALG機能は、環境で不要な場合にのみ無効にしてください。FTP ALG を無効にすると、デバイスを介した FTP トランザクションが適切に機能しなくなります。

修正済みソフトウェア

シスコはこのアドバイザリに記載された脆弱性に対処する無償のソフトウェアアップデートをリリースしています。お客様がインストールしたりサポートを受けたりできるのは、ライセンスをご購入いただいたソフトウェア バージョンとフィーチャ セットに対してのみとなります。そのようなソフトウェアアップグレードをインストール、ダウンロード、アクセスまたはその他の方法で使用した場合、お客様は以下のリンクに記載されたシスコのソフトウェアライセンスの条項に従うことに同意したことになります。

https://www.cisco.com/c/en/us/products/end-user-license-agreement.html

また、お客様がソフトウェアをダウンロードできるのは、ソフトウェアの有効なライセンスをシスコから直接、あるいはシスコ認定リセラーやパートナーから取得している場合に限ります。通常、これは以前購入したソフトウェアのメンテナンス アップグレードです。無償のセキュリティ ソフトウェア アップデートによって、お客様に新しいソフトウェア ライセンス、追加ソフトウェア フィーチャ セット、またはメジャー リビジョン アップグレードに対する権限が付与されることはありません。

ソフトウェアのアップグレードを検討する際には、[シスコのセキュリティアドバイザリおよびアラート（Cisco Security Advisories and Alerts）] ページで入手できるシスコ製品のアドバイザリを定期的に参照して、侵害を受ける可能性と完全なアップグレード ソリューションを確認してください。

いずれの場合も、アップグレードするデバイスに十分なメモリがあること、および現在のハードウェアとソフトウェアの構成が新規リリースで引き続き正しくサポートされていることを十分に確認してください。不明な点については、Cisco Technical Assistance Center（TAC）もしくは契約しているメンテナンスプロバイダーにお問い合わせください。

サービス契約をご利用でないお客様

シスコから直接購入したが Cisco Service Contract をご利用いただいていない場合、また、サードパーティベンダーから購入したが修正済みソフトウェアを POS から入手できない場合は、Cisco TAC に連絡してアップグレードを入手してください。

https://www.cisco.com/c/en/us/support/web/tsd-cisco-worldwide-contacts.html

無償アップグレードの対象製品であることを証明していただくために、製品のシリアル番号と、本アドバイザリの URL をご用意ください。

Cisco IOS および IOS XE ソフトウェア

お客様が Cisco IOS ソフトウェアおよび IOS XE ソフトウェアの脆弱性による侵害の可能性を判断するため、シスコは Cisco IOS Software Checker ツールを提供しています。このツールを使用すると、特定のソフトウェア リリースに該当するシスコ セキュリティ アドバイザリ、および各アドバイザリで説明されている脆弱性が修正された最初のリリース（「First Fixed」）を特定できます。また該当する場合、そのリリースに関するすべてのアドバイザリの脆弱性が修正された最初のリリース（「Combined First Fixed」）を特定できます。

このツールを使用して次のタスクを実行できます。

- ドロップダウン リストからリリース（複数可）を選択するか、分析対象となるローカル システムからファイルをアップロードして、検索を開始する

- show version コマンドの出力をツールで解析する

- カスタマイズした検索（過去に公開されたすべてのシスコ セキュリティ アドバイザリを検索対象に入れたり、特定のアドバイザリのみ、または最新のバンドル資料のすべてのアドバイザリを含めるなど）を作成する

リリースが、公開されているシスコセキュリティアドバイザリのいずれかに該当するかどうかを確認するには、Cisco.comのCisco IOS Software Checkerを使用するか、次のフィールドにCisco IOSまたはIOS XEソフトウェアリリース(たとえば、15.1(4)M2や3.13.8S)を入力します。

デフォルトでは、Cisco IOS ソフトウェアのチェックには、結果は、高セキュリティへの影響の評価 (サー) または重大な脆弱性にのみが含まれています。「中間」の SIR 脆弱性の結果を含めるには、Cisco.com の Cisco IOS ソフトウェア チェッカーを使用して、[Impact Rating] ドロップダウン リストの [中間（Medium）] チェックボックスをオンにします。

Cisco IOS XE ソフトウェア リリースと Cisco IOS ソフトウェア リリースのマッピングについては、Cisco IOS XE ソフトウェアのリリースに応じて「Cisco IOS XE 2 Release Notes」、「Cisco IOS XE 3S Release Notes」、または「Cisco IOS XE 3SG Release Notes」を参照してください。

不正利用事例と公式発表

Cisco Product Security Incident Response Team（PSIRT）は、本アドバイザリに記載されている脆弱性の不正利用事例やその公表を確認していません。

出典

この脆弱性は Cisco TAC サポートケースの解決中に発見されました。

URL

https://sec.cloudapps.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20190925-ftp

改訂履歴

バージョン

説明

セクション

ステータス

日付

1.1

ZBFW ALG 機能がすべてのプロトコルを検査する設定について説明。

脆弱性が存在する製品

Final

2019 年 11 月 20 日

1.0

初回公開リリース

-

Final

2019 年 9 月 25 日

利用規約

本アドバイザリは無保証のものとしてご提供しており、いかなる種類の保証も示唆するものではありません。 本アドバイザリの情報およびリンクの使用に関する責任の一切はそれらの使用者にあるものとします。 また、シスコは本ドキュメントの内容を予告なしに変更したり、更新したりする権利を有します。

本アドバイザリの記述内容に関して情報配信の URL を省略し、単独の転載や意訳を施した場合、当社が管理した情報とは見なされません。そうした情報は、事実誤認を引き起こしたり、重要な情報が欠落していたりする可能性があります。 このドキュメントの情報は、シスコ製品のエンドユーザを対象としています。