MENU

SMBプロトコルのセキュリティ対策|SMBv1廃止・署名・EternalBlueで学ぶWindowsネットワーク防御

社内の「\\サーバー\共有フォルダ」という見慣れた仕組みが、攻撃者にとって絶好の侵入口になっているとしたら?

SMB(Server Message Block)は、Windowsネットワークでファイル共有やプリンター共有を支えるプロトコルです。日常業務には欠かせない存在ですが、古いバージョン(SMBv1)が今も多くの環境で有効なまま放置されており、ランサムウェアやラテラルムーブメント(内部横移動)の起点となり続けています。

2017年、SMBv1の脆弱性を悪用したWannaCryランサムウェアが150か国・23万台以上のコンピューターを感染させました。修正パッチはとっくに公開されているにもかかわらず、SMBv1が有効な環境は今も世界中に残っています。「動いているから触らない」という判断が、組織全体のリスクを静かに高めています。

この記事では、SMBをめぐる主な攻撃手口を整理し、SMBv1の無効化・SMB署名の強制・ファイアウォール制御という3つの防御手順を、情シス1人体制の中小企業でも実践できるレベルで解説します。

SMBプロトコルのセキュリティ対策|SMBv1廃止・署名・EternalBlueで学ぶWindowsネットワーク防御 - 解説

目次

SMBプロトコルとは?バージョンと役割

SMBは、Windowsネットワークでファイル・フォルダ・プリンターを共有するために使われるプロトコルです。現在は3つのバージョンが存在し、それぞれセキュリティ特性が大きく異なります。

バージョン 導入OS 特徴 セキュリティ評価
SMBv1 Windows 3.1時代(1992年~) 最古の実装。NetBIOSに依存 複数の重大脆弱性あり(廃止必須)
SMBv2 Windows Vista/Server 2008~ パフォーマンス向上、プロトコル簡素化 概ね安全(署名設定を推奨)
SMBv3 Windows 8/Server 2012~ 通信の暗号化・マルチチャネル対応 現時点で最も安全なバージョン

問題はSMBv1です。後方互換性のために多くのシステムでデフォルト有効のままになっており、攻撃者はこれを入口として悪用します。Windows 10(1709以降)や Windows Server 2019以降ではデフォルト無効になりましたが、古いOSや設定変更でunable化された環境は今も多く残っています。

攻撃の仕組み(EternalBlueとSMBリレー攻撃)

SMBをめぐる代表的な攻撃手口は2つあります。防御のためにまず「敵の手口」を知っておきましょう。

1. EternalBlue(SMBv1のバッファオーバーフロー)

EternalBlueは、SMBv1のバッファオーバーフロー脆弱性(CVE-2017-0144)を突いて、認証なしにリモートコード実行(RCE)を可能にする攻撃コードです。米NSAが保有していたゼロデイ攻撃コードがShadow Brokersによって流出し、WannaCryとNotPetyaという2大ランサムウェアの基盤技術として使われました。

攻撃の流れを概念レベルで説明すると:

・攻撃者がポート445(SMBv1)に不正なパケットを送信する
・カーネルレベルでバッファオーバーフローが発生し、任意コードが実行される
・マルウェアがインストールされ、SMBv1が有効な同一ネットワーク内の端末に次々と自己感染する

修正パッチ(MS17-010)は2017年3月に公開済みですが、パッチ未適用かつSMBv1有効な環境への攻撃は今も発生しています。

2. SMBリレー攻撃(NTLM中継)

SMBリレー攻撃は、SMB署名が無効な環境を狙います。Active Directory環境で特に危険です。

・ネットワーク上に侵入した攻撃者が、被害者PCのSMB認証リクエストを傍受する
・傍受したNTLMハッシュを別のサーバーに中継(リレー)し、認証を通過させる
・被害者の権限で別サーバーへのアクセスや操作が可能になる

ドメイン管理者権限を持つ端末でこの攻撃が成立すると、Active Directory全体の掌握に直結します。SMB署名を強制することでこの攻撃は無効化できます。

具体的な防御手順

1. SMBv1を無効化する

PowerShellで現在の状態を確認し、無効化します。無効化前に、古いNASや複合機がSMBv1に依存していないか確認するのが先決です。

# 現在のSMBv1の状態を確認 Get-WindowsOptionalFeature -Online -FeatureName SMB1Protocol # SMBv1を無効化(Windows 10/Server 2016以降) Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol # 旧形式のコマンド(Server 2012 R2以前にも対応) Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force Set-SmbClientConfiguration -EnableSMB1Protocol $false -Force # 設定を確認 Get-SmbServerConfiguration | Select EnableSMB1Protocol

無効化後にサービス再起動または再起動が必要な場合があります。無効化後に既存の共有アクセスが止まった場合は、接続元・接続先デバイスのSMBバージョン対応状況を確認してください。

2. SMB署名を有効化・強制する

SMB署名は、SMBリレー攻撃(NTLM中継)を防ぐ最も直接的な対策です。グループポリシーかPowerShellで設定します。

# 現在の署名設定を確認 Get-SmbServerConfiguration | Select RequireSecuritySignature, EnableSecuritySignature Get-SmbClientConfiguration | Select RequireSecuritySignature # SMBサーバー側の署名を必須に設定 Set-SmbServerConfiguration -RequireSecuritySignature $true -EnableSecuritySignature $true -Force # SMBクライアントの署名も強制 Set-SmbClientConfiguration -RequireSecuritySignature $true -Force

グループポリシーで設定する場合(Active Directory環境推奨):

・コンピューターの構成 → Windowsの設定 → セキュリティの設定 → ローカルポリシー → セキュリティオプション
・「Microsoft ネットワーク サーバー: 通信にデジタル署名を行う(常に)」→「有効」
・「Microsoft ネットワーク クライアント: 通信にデジタル署名を行う(常に)」→「有効」

署名を強制すると、署名未対応の古いデバイスからの接続が失敗する場合があります。影響範囲を事前に確認したうえで段階的に適用しましょう。

3. ポート445をファイアウォールで制御する

SMBはTCPポート445を使用します。インターネット側(WAN側)からの直接アクセスは絶対に遮断し、内部でも必要な通信のみに制限します。

# インターネットからのポート445着信をブロック(Windows Defenderファイアウォール) New-NetFirewallRule -DisplayName "Block SMB from Internet" ` -Direction Inbound ` -Protocol TCP ` -LocalPort 445 ` -RemoteAddress Internet ` -Action Block # ブロードキャストドメイン外のSMBトラフィックも制限 New-NetFirewallRule -DisplayName "Block SMB Outbound to Internet" ` -Direction Outbound ` -Protocol TCP ` -RemotePort 445 ` -RemoteAddress Internet ` -Action Block # 現在のSMB関連ルールを一覧確認 Get-NetFirewallRule | Where-Object {$_.DisplayName -like "*SMB*" -or $_.LocalPort -eq "445"} | Format-Table DisplayName, Direction, Action, Enabled

インターネット側でのポート445遮断は、ルーターやUTMの設定でも二重に行うことを推奨します。「Windows側でブロックしているから大丈夫」という単一障害点の考え方は危険です。

4. SMBの監査ログを有効化して異常を検知する

# SMBサーバーの監査ログを有効化 Set-SmbServerConfiguration -AuditSmb1Access $true # SMBアクセス監査ログを確認 Get-WinEvent -LogName "Microsoft-Windows-SMBServer/Audit" -MaxEvents 50 | Format-List TimeCreated, Message # 不審なSMB認証失敗を確認(イベントID 4625) Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4625} -MaxEvents 100 | Where-Object {$_.Message -like "*SMB*" -or $_.Message -like "*445*"} | Format-List TimeCreated, Message

監視すべきイベントID:

・イベントID 5140: ファイル共有へのアクセス(誰がどの共有に接続したか)
・イベントID 5145: ファイルへのアクセス詳細(必要に応じて有効化)
・イベントID 4625: ログオン失敗(ブルートフォースやパスワードスプレーの検知)
・イベントID 4776: NTLM認証の試行(SMBリレー攻撃の検知に有効)

Active Directoryセキュリティとの組み合わせについては、中小企業のActive Directoryセキュリティ対策で詳しく解説しています。

中小企業でも今日からできること

SMBセキュリティの強化は段階的に進められます。以下の優先順で対応しましょう。

優先度 対策 難易度 主な効果
最優先 SMBv1の無効化 低(コマンド数本) EternalBlue等の既知脆弱性を根本排除
最優先 ポート445のインターネット側遮断確認 低 外部からの直接攻撃を物理的に遮断
優先 SMB署名の強制有効化 中(AD環境はGPO設定) NTLMリレー攻撃を無効化
推奨 SMB監査ログの有効化 中 不審なアクセスの早期検知
任意 SMBv3暗号化の有効化 中(Server 2012以降) SMBトラフィックの盗聴防止

まず確認すべきなのは「ポート445がインターネットに開いていないか」です。Shodan等の検索エンジンで検索すると、ポート445をインターネットに公開している企業は今も少なくありません。ルーターやUTMの設定でWAN側への445通信を遮断できているか、今日中に確認してください。

Linuxサーバーでファイル共有(Samba)を運用している場合も、同様の設定確認が必要です。Linuxのネットワーク設定やファイアウォール(firewalld・nftables)の詳細については、姉妹サイトLinuxMaster.JPで解説しています。

よくある誤解と注意点

【誤解1】「社内ネットワークだから安全」

SMBを狙う攻撃の多くは、外部から直接ではなく、社内に侵入した攻撃者が横移動手段としてSMBを悪用するケースです。一台の端末がフィッシングメールやマルバタイジングで感染すれば、SMBv1が有効で署名が無効な環境では社内全体に瞬く間に感染が広がります。「境界防御だけ」では不十分です。

【誤解2】「パッチを当てているから大丈夫」

MS17-010を適用してもSMBv1を有効にしたままでは、未発見の将来の脆弱性に晒され続けます。不要なプロトコルそのものを無効化することが、より根本的かつ持続的な対策です。

【注意】古いNAS・複合機への影響

SMBv1の無効化で最も多いトラブルは、古いNASや複合機(スキャンtoフォルダ機能など)がSMBv1のみ対応しているケースです。無効化前にベンダーサイトでファームウェアの更新状況を確認し、SMBv2/v3対応版があれば先にアップデートしてから無効化を行ってください。

SMBv2/v3への対応が確認できない古い機器は、そのネットワーク接続を分離された専用セグメントに移すことも選択肢です。

SMBプロトコルのセキュリティ対策|SMBv1廃止・署名・EternalBlueで学ぶWindowsネットワーク防御 - まとめ

本記事のまとめ

脅威 対策 難易度
EternalBlue(SMBv1 RCE) SMBv1の無効化 + MS17-010パッチ適用 低
SMBリレー攻撃(NTLM中継) SMB署名の強制有効化 中
外部からの直接攻撃 ポート445のWAN側遮断 低
内部ネットワークでの横移動 ネットワークセグメント分離 + 監査ログ 中
SMBトラフィックの盗聴 SMBv3暗号化の有効化 中

SMBプロトコルは業務インフラの根幹ですが、バージョン管理と署名設定を怠ると攻撃者の横移動ルートになります。SMBv1の無効化とポート445の適切な制御は、コストゼロで今日から始められる最も費用対効果の高い対策の一つです。

「何から手をつければいいかわからない」という方は、まず現在のSMBv1の有効・無効状態をPowerShellで確認することから始めてみてください。

PR

実践 パケット解析 第3版(Chris Sanders/オライリー・ジャパン)

Wiresharkを使ったネットワークトラフィック解析を基礎から実践まで解説。SMBトラフィックの異常や不審な横移動通信を自力で読み解く力が身につく、ネットワーク担当者の必携書です。

関連記事をもっと読む

同じテーマの記事をまとめています。あわせて読みたい記事はこちらからご覧いただけます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次