見出し画像

ポートスキャン対策不足によってセキュリティリスク『トランスポート層の話⑩』

外から見える開放ポートは、攻撃者にとって「入口」です。対策が甘いと、nmap等で生存ホスト・空きポート・サービスのバージョンまで読まれ、既知脆弱性やブルートフォースの準備作業を手伝うことになります。実害は「侵入」だけではありません。スキャンの多発で回線・機器の負荷が跳ね、監視の誤検知なども増えます。


よくある穴

  • デフォルト許可(「とりあえずany→any」)の境界ACL

  • DMZ/社内で同じポート設計(横展開が楽)

  • 古い管理用ポート(Telnet/FTP/SMBv1)を放置

  • クラウドの多段フィルタ(SG/NACL/OS内FW)で一段だけ閉め忘れ

  • ログは取れているが閾値・通知が未設定


スキャンの代表例(ざっくり)

  • TCP SYNスキャン:最も一般的。SYN/ACKやRSTの戻りで開閉判定。

  • UDPスキャン:無応答=開いている可能性。DNS/NTP/SNMPが狙われやすい。

  • バージョン探査:バナー取得でソフト名・版数まで露出。

  • 分散・低速:しきい値回避のため少量・長時間で散らす手口。


図:露出面が広いと“踏み台チェーン”が組まれる

[Internet] --(scan)--> [FW] --> [DMZ:Web] --> [DB/Internal]
         |                ^             ^
         |                |             └─ 内部もスキャン対象に(横移動)
   Scanner群            境界での露出が多いほど足がかりが増える

まずやる初動(今ある資産で)

  1. 現状の露出を把握

    • 外側から:nmap -sS -sV <自組織の外向けIP>(許諾範囲で)

    • 内側から:セグメントごとに同様に棚卸し(許可された検証環境で実施)。

  2. ログを“数値化”

    • FW/IDSの拒否ヒット数/分、拒否先頭3ポートをダッシュボード化(NetFlow/IPFIXでも可)。

  3. 不要ポートの即封鎖

    • 管理系は**踏み台経由(VPN/ゼロトラスト)**に集約。インターネット直晒しは撤去。


最小構成の防御(具体例)

境界FW/ルータ(Cisco IOS例)

ip access-list extended OUTSIDE-IN
 permit tcp any host <PublicIP> eq 443
 permit udp any host <PublicIP> eq 53
 deny   ip any any log                   ! 露出をログに残す
!
interface G0/0
 ip access-group OUTSIDE-IN in
 ip verify unicast source reachable-via rx   ! uRPFで送信元偽装を抑止

Linuxホスト(最小限)

# 既定拒否+必要だけ許可
ufw default deny incoming
ufw allow 443/tcp
ufw limit 22/tcp        # SSHはレート制限
# 失敗多発の送信元を自動遮断
apt -y install fail2ban

レート/探査対策の考え方

  • SYNレート制御/SYN cookie を有効化(半開攻撃と誤検知を低減)

  • WAF/Reverse Proxy でバナー隠し・誤り応答の均一化(指紋を減らす)

  • 管理面は到達元を固定(VPN/踏み台+IP許可リスト)


運用で効くポイント

  • “許可リスト方式”が基本(deny all → 必要だけ明示許可)

  • 監視はポート別の拒否回数トップ送信元を毎日チェック

  • 変化検知:前日比で開放ポートが増えたら即アラート

  • 脆弱なUDP(NTP/SSD P/DNS/OpenSNMP)は閉鎖 or 認証化、反射増幅の踏み台にならない設定に


ありがちな落とし穴

  • ICMP全遮断でPMTUDが壊れ、可用性を自分で下げる

  • WAF/IDSだけに依存しポート最小化をサボる

  • クラウドのSG/NACL/OS内FWの整合ミス(どれか一段が開いている)


まとめ

ポートスキャン対策は露出を最小にし、観測して即反応が基本です。
最小ポート公開×到達元の固定×レート/ログ運用を“標準”にしておけば、前段の足がかりを大きく削れます。棚卸し→封鎖→監視の三点を継続しましょう。

いいなと思ったら応援しよう!