ローディングアニメーション
トップ お知らせ/記事 【Cisco Systems】SNMPのDoS脆弱性

News お知らせ/記事

  • 技術情報
  • Cisco Systems
  • IOS
  • IOS-XE
  • IOS-XR
  • SNMP
  • 脆弱性

【Cisco Systems】SNMPのDoS脆弱性

はじめに

2025年2月5日、IOS、IOS-XE、IOS-XRにおける、SNMPのDoSに関する複数の脆弱性が公表されました。

今回の記事ではこの脆弱性の概要と今後の対処について、公開されている情報をもとにお送りさせて頂きます。

脆弱性の概要

この脆弱性はSNMPが有効となっているデバイスにおいて、攻撃者からDoS状態を引き起こされてしまう可能性が存在するものです。
よって、SNMPが有効となっていない環境においては、影響を受けません

CVSSでのベーススコアは7.7、レートはHighとマークされているため、利用環境に応じて適切な措置を講じるべき事案となります。

CVSS

  • ・Security Impact Rating (SIR): High
  • ・CVSS Base Score: 7.7
  • ・CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:N/A:H

Bug ID(s)

  • ・CSCwm79581
  • ・CSCwm79554
  • ・CSCwm79564
  • ・CSCwm79590
  • ・CSCwm79570
  • ・CSCwm79596
  • ・CSCwm79577

CVE ID(s)

  • ・CVE-2025-20169
  • ・CVE-2025-20170
  • ・CVE-2025-20171
  • ・CVE-2025-20173
  • ・CVE-2025-20174
  • ・CVE-2025-20175
  • ・CVE-2025-20176

対処方法

この脆弱性に対する根本的な対処は、これが解消されたソフトウェアへのアップデートのみとなります。

Cisco Systems社としての対応

Cisco Systems社では、この脆弱性を解消したリリースを進めています。
それぞれのOSごとに以下の通りとなっています。

IOS
Software ReleaseFirst Fixed Release備考
15.2E15.2(7)E12リリース予定:2025/3
15.5SY15.5(1)SY15リリース予定:2025/3
15.9M15.9(3)M11リリース予定:2025/2
IOS-XE
Software ReleaseFirst Fixed Release備考
3.11E3.11.12Eリリース予定:2025/3
16.1216.12.13リリース予定:2025/3
17.917.9.7リリース予定:2025/3
17.1217.12.5リリース予定:2025/2
17.1517.15.3リリース予定:2025/3
IOS-XR
Software ReleaseFirst Fixed Release備考
24.2 and earlier24.2.21
24.3n/a※他リリースへの移行が必要
24.424.4.2リリース予定:2025/3
25.225.2.1リリース予定:2025/2
IOS-XR 24のQ3ではこの脆弱性は解消されないため、別のリリースへ移行することが推奨されます。しかし、多く利用されている8000 Seriesなどでは、この記事の執筆時点で24.3.2と24.2.2が推奨としてマークされているため、24.3を使用している場合は24.2.2へダウングレードするか、24.4のMDリリースがGAされ推奨とマークされるまで、暫定的な対処の検討が必要となります。

【暫定的な対処】対象OIDを無効化

脆弱性が解消されたOSが公開され、それぞれの利用環境でアップデートが実施可能となるまでの期間について、Cisco Systems社が強く推奨する緩和策は、「脆弱性の対象となるOIDを無効化する」となっています。
この参考手順を、以下にご紹介させて頂きます。

①SNMP viewを作成して、基本的なセキュリティ設定をする

1. Create an SNMP view with the standard security configurations.
snmp-server view SNMP_DOS iso included
snmp-server view SNMP_DOS snmpUsmMIB excluded
snmp-server view SNMP_DOS snmpVacmMIB excluded
snmp-server view SNMP_DOS snmpCommunityMIB excluded
IOS, IOS-XE, IOS-XR

②脆弱性の対象になっているOIDをSNMP viewから除外する

2. Exclude the vulnerable OIDs from the SNMP view.
snmp-server view SNMP_DOS ipAddressPrefixEntry.5 excluded
snmp-server view SNMP_DOS ipDefaultRouterEntry.4 excluded
snmp-server view SNMP_DOS tcp.19.1.7 excluded
snmp-server view SNMP_DOS tcp.20.1.4 excluded
snmp-server view SNMP_DOS udp.7.1.8 excluded
snmp-server view SNMP_DOS inetCidrRouteEntry.7 excluded
snmp-server view SNMP_DOS ospfv3AreaAggregateEntry.6 excluded
snmp-server view SNMP_DOS lispMappingDatabaseLocatorRlocPriority excluded
snmp-server view SNMP_DOS mplsVpnInterfaceConfEntry.2 excluded
snmp-server view SNMP_DOS mplsVpnVrfRouteTargetEntry.4 excluded
snmp-server view SNMP_DOS mplsVpnVrfBgpNbrAddrEntry.2 excluded
snmp-server view SNMP_DOS nhrpCachePrefixLength excluded
snmp-server view SNMP_DOS nhrpServerCacheAuthoritative excluded
snmp-server view SNMP_DOS nlmLogEntry.2 excluded
snmp-server view SNMP_DOS nlmLogVariableEntry.2 excluded
snmp-server view SNMP_DOS mplsXCLspId excluded
snmp-server view SNMP_DOS mplsLabelStackLabel excluded
snmp-server view SNMP_DOS cpaeMIBObject.5.1.3 excluded
snmp-server view SNMP_DOS cContextMappingBridgeDomainIdentifier excluded
snmp-server view SNMP_DOS cilmCurrentImageLevel excluded
snmp-server view SNMP_DOS cilmImageLicenseImageLevel excluded
snmp-server view SNMP_DOS cewProxyClass excluded
snmp-server view SNMP_DOS cewEventTime excluded
snmp-server view SNMP_DOS cpwVcPeerMappingVcIndex excluded
snmp-server view SNMP_DOS ciiSummAddrEntry excluded
snmp-server view SNMP_DOS mplsLdpLspFecStorageType excluded
snmp-server view SNMP_DOS mplsL3VpnIfConfEntry.2 excluded
snmp-server view SNMP_DOS mplsL3VpnVrfRTEntry.4 excluded
snmp-server view SNMP_DOS mplsL3VpnVrfRteEntry.7 excluded
snmp-server view SNMP_DOS ciscoFlashChipEntry excluded
snmp-server view SNMP_DOS cbgpPeer2CapValue excluded
snmp-server view SNMP_DOS cbgpPeer2AddrFamilyName excluded
snmp-server view SNMP_DOS cbgpPeer2AcceptedPrefixes excluded
snmp-server view SNMP_DOS callHomeDestEmailAddressEntry.2 excluded
snmp-server view SNMP_DOS callHomeSwInventoryEntry.3 excluded
snmp-server view SNMP_DOS cEigrpActive excluded
snmp-server view SNMP_DOS cipUrpfVrfIfDrops excluded
snmp-server view SNMP_DOS cefPathType excluded
snmp-server view SNMP_DOS cefAdjSource excluded
snmp-server view SNMP_DOS cefFESelectionSpecial excluded
snmp-server view SNMP_DOS cvVrfListVrfIndex excluded
snmp-server view SNMP_DOS ctspIpSgtMappingEntry.5 excluded
snmp-server view SNMP_DOS ciiRedistributeAddrEntry.4 excluded
snmp-server view SNMP_DOS ciiIPRAEntry.5 excluded
snmp-server view SNMP_DOS ciiLSPTLVEntry.2 excluded
snmp-server view SNMP_DOS ccmSeverityAlertGroupEntry.1 excluded
snmp-server view SNMP_DOS ccmPeriodicAlertGroupEntry.1 excluded
snmp-server view SNMP_DOS ccmPatternAlertGroupEntry.2 excluded
snmp-server view SNMP_DOS callHomeUserDefCmdEntry.2 excluded
snmp-server view SNMP_DOS ccmEventAlertGroupEntry.1 excluded
snmp-server view SNMP_DOS cipsStaticCryptomapType excluded
snmp-server view SNMP_DOS ciscoFlashFileEntry.2 excluded
IOS, IOS-XE

2. Exclude the vulnerable OIDs from the SNMP view.
snmp-server view SNMP_DOS udp.7.1.8 excluded
snmp-server view SNMP_DOS tcp.19.1.7 excluded
snmp-server view SNMP_DOS tcp.20.1.4 excluded
snmp-server view SNMP_DOS inetCidrRouteEntry.7 excluded
snmp-server view SNMP_DOS ipAddressPrefixEntry.5 excluded
snmp-server view SNMP_DOS ipDefaultRouterEntry.4 excluded
snmp-server view SNMP_DOS 1.3.6.1.2.1.191.1.12.1.6 excluded
snmp-server view SNMP_DOS 1.3.6.1.2.1.92.1.3.1.1.2 excluded
snmp-server view SNMP_DOS 1.3.6.1.2.1.92.1.3.2.1.2 excluded
snmp-server view SNMP_DOS 1.3.6.1.4.1.9.10.106.1.7.1.5 excluded
snmp-server view SNMP_DOS 1.3.6.1.4.1.9.10.106.1.8.1.5 excluded
snmp-server view SNMP_DOS 1.3.6.1.4.1.9.9.171.1.2.2.1.6 excluded
snmp-server view SNMP_DOS 1.3.6.1.4.1.9.9.171.1.2.4.1.7 excluded
snmp-server view SNMP_DOS 1.3.6.1.4.1.9.9.187.1.1.1.1.7 excluded
snmp-server view SNMP_DOS 1.3.6.1.4.1.9.9.187.1.2.6.1.3 excluded
snmp-server view SNMP_DOS 1.3.6.1.4.1.9.9.187.1.2.7.1.3 excluded
snmp-server view SNMP_DOS 1.3.6.1.4.1.9.9.187.1.2.8.1.1 excluded
snmp-server view SNMP_DOS 1.3.6.1.2.1.10.166.4.1.3.10.1.4 excluded
snmp-server view SNMP_DOS 1.3.6.1.4.1.9.10.62.1.2.3.3.1.2 excluded
IOS-XR

③SNMP v1またはv2cの場合、全ての設定済みコミュニティに適用する

3. For SNMP v1 or v2c, apply this configuration to all configured community strings. Use the following command:
snmp-server community mycomm view SNMP_DOS RO
IOS, IOS-XE, IOS-XR

④SNMP v3の場合、全ての設定済みSNMPユーザーに適用する

4. For SNMP v3, apply this to all configured SNMP users using the following command:
snmp-server group v3group v3 auth read SNMP_DOS write SNMP_DOS
IOS, IOS-XE, IOS-XR

【その他】SNMPに関連する基本的なセキュリティ

SNMPは多くの環境で運用管理に使用されている重要な要素ですが、ここから得られる情報は攻撃者にとっても同様に有益なものとなってしまいます。
今回の脆弱性に限らず、SNMPなど運用管理に関する機構については、基本的なセキュリティを構成する必要があります。

【基本1】v1とv2cでSNMP Communityにデフォルトのpulicやprivateなどを使用しない

コミュニティ名はパスワードと同様の役割になります。また、今回の脆弱性においても、攻撃者はROかRWのいずれかを問わず、正しいSNMP Communityを知っている必要があるため、これを容易に特定できない文字列とすることは、SNMPの運用における基本的な対処となります。

【基本2】SNMPでアクセス可能なマネージャをACLなどで制限する

以下のコンフィグレーションのようにアクセス元のSNMPマネージャを制限することで、許可していないアクセスからの要求をdropする動作となるため、これも基本的な対処となります。

SNMPのアクセス元マネージャを10.0.0.1に制限する例
access-list 1 permit host 10.0.0.1
snmp-server community hogehoge-snmp RO 1
SNMP ACL

【基本3】SNMPを信頼できるネットワークとインターフェースに配置する

以下のコンフィグレーションのように、信頼できるネットワークに接続するVRFとインターフェースで稼働させることで、伝送動作とは隔離した運用とすることが可能です。また、環境によってはマネージャとの境界にFWを配置するなど、よりゾーニングした構成も多くお見受けします。

SNMPをVRF名:SNMPに所属するVlan99のSVIで動作させる例
interface Vlan99
 ip vrf forwarding SNMP
 ip address 10.0.99.101 255.255.255.0
!
ip route vrf SNMP 0.0.0.0 0.0.0.0 10.0.99.1
!
snmp-server source-interface informs Vlan99
snmp-server community HOGEHOGE-SNMP RO 1
snmp-server trap-source Vlan99
snmp-server host 10.0.99.201 vrf SNMP version 2c HOGEHOGE-SNMP
SNMP with VRF

【基本4】適切なアクセス権限を設定する

今回の脆弱性に対する暫定的な対処でもありますが、特にアクセス権限をRWにしている環境においては、参照可能なOIDを十分に考慮することが推奨されます。実際に、「ipFowarding / OID 1.3.6.1.2.1.4.1」などのOIDを標的とした攻撃が多発しています。

  • ・そもそも、RWが必須で無ければROに変更する
  • ・RWが運用で必要な場合は、viewを使用して不要なOIDへのアクセスを禁止する

まとめ

いかがだってしょうか。

SNMPは標準的に利用される利便性の高い運用管理のプロトコルですが、適切に取り扱わなければ大きなセキュリティリスクとなってしまいます。今回の記事で取り上げさせて頂いた脆弱性に限らず、実際にこれまでもSNMPを対象とした攻撃による被害は発生しており、この多くは先に述べたような基本的なセキュリティを怠っていることが要因となっています。

今回の脆弱性についても、単純に解消されたリリースへアップデートするのみではなく、今一度、運用管理のセキュリティが適切に施されているかを確認する良い機会ではないでしょうか。

この記事が、ご覧いただいた皆様へ少しでもお役に立てば幸いです。

  • ※この記事は筆者個人の見解によるものであり、各メーカー様や当社としての意見や見解を示すものではありません。
  • ※この記事に含まれる情報については、その内容について当社として何らの保証をするものではありません。
  • ※この記事に含まれる情報を利用したことに起因する、利用者又は第三者が被る直接的及び間接的損害に関して、当社はその責任を一切負いません。

Recruit 採用情報

技能に誇りをもった技術者の皆様を歓迎いたします。
市場価値以上の待遇と、更なる探究の環境を、必ずお約束いたします。

矢印

Contact お問い合わせ

当社の業務などに関するお問い合わせを受け付けています。

※エンドユーザー様から直接のご依頼は、原則として受け付けておりません。全てのお問い合わせにお答えできない場合がございますので、ご了承ください。

矢印