|
カテゴリ:Windows関連
2017年5月に流行したWannaCryについて調べることがあり、
その際にSMBについて調べたのでメモ。 SMB(Server Message Block)は、 主にWindowsで使用されているOSI参照モデル第7層アプリケーション層部分の 独自通信プロトコルの総称。 LANを通じてファイル共有やプリンタ共有などの実現に使用されるもの。
SMBとCIFSの違い CIFS(Common Internet File System)はSMB1.0プロトコルの「ダイアレクト」(dialect、方言)。 LinuxのSAMBA等、Windows以外のOSやアプリケーションソフトでも利用できるよう仕様を公開したもの。 つまり、CIFSはSMBの一部であり、CIFSのみで実装することはできない。 また、後にオリジナルのSMBプロトコルの後継仕様が同社によって公開されたため、 現在ではCIFSという用語が使われることは減っている。 SMBの構成 SMBはいくつかの機能を持っている。機能ごとに使用している通信ポートも異なる。 Windows 2000以前のファイル/プリンタ共有サービス Windows系OS(Windows 9x/Me/NT/2000)では、ファイル共有やプリンタ共有などのサービスのために、「SMB(Server Message Block)」と呼ばれるプロトコルを使用している。 これはアプリケーション層のサービス プロトコルであり、下位のトランスポート層のプロトコルを呼び出すためにNetBIOSというインターフェイスを使っている。 現在のWindowsでは、TCP/IP上で動作するNetBIOSが広く使われており、 それをNBT(NetBIOS over TCP/IP)プロトコルと呼ぶ。 NBTのほかには、NetBEUI上で動作するものや(当初のNetBIOSはこれしかサポートしていなかった)、IPX/SPX(NetWareサービスで広く使われているプロトコル)上で動作するNetBIOSなどがある。 しかし現在では、インターネットやTCP/IPプロトコルが広く普及した結果、NBTが主流となり、それ以外のプロトコルは必要に応じて補助的に使われるにとどまっている。 NetBIOS over TCP/IPのポート ・名前登録 :UDP/137(名前サービス) ・ブラウジング :UDP/138 ・ファイル / 印刷サービス :TCP/139
※補足 Windowsのネットワーク探索において、リソースを公開しているものについては、 「net view」コマンドで拾える。 Windows 2000以降のファイル/プリンタ共有サービス Windows 2000/XPでは以上のほかに、新たに「ダイレクト・ホスティングSMBサービス」というサービスが導入されている。 これは「NetBIOS less(NetBIOSが不要な)」なSMBプロトコルの実装であり、NetBIOSインターフェースに頼らずに2つのホスト間で直接通信を行なって、ファイルやプリンタの共有を行なうためのサービスである。これはCIFS(Common Internet File System)という、Windows 2000/XPのネイティブなファイル/プリンタ共有サービスのためのプロトコルである。 CIFSは従来のSMBを拡張したプロトコルであり、インターネット(TCP/IPネットワーク)上でSMBサービスと同様の、ファイルやプリンタの共有を行なうためのプロトコルである。 従来のNBTを使ったサービスでは、まず「NetBIOS名前サービス」を使って通信相手を見つけ、 その後「NetBIOSデータグラム・サービス」や「NetBIOSセッション・サービス」を使って相手と通信する、という2つの段階を踏んでいた。 これに対して新しい方法では、相手のノードに対して直接コネクションをオープンし、それを使ってサービスを受けることができる。 例えば「winserver.d-advantage.com」というファイル・サーバの共有フォルダを開く場合、まずこの名前から(DNSサービスなどを使って)IPアドレスを求め、そのIPアドレスのサーバ上で動作している「ダイレクト・ホスティングSMBサービス」に対して直接TCP接続をオープンしようとする。使用するポート番号はTCPの445番であり、Windows 2000/XPのファイル/プリンタ共有サービスは、このポートでサービス要求をリッスン(待ち受け)している。 TCPのポート445番は、サービス名を定義しているservicesファイル(%WINDIR%\System32\drivers\etc\services)によると、「microsoft-ds(Microsoft Directory Service)」という名前のサービスとなっているが、前述したように、実際にはCIFSプロトコル(SMB over TCP/IP)で利用されている。 まとめ WannaCryについては、SMB1.0の脆弱性を攻撃するEK「EternalBlue」によって感染が拡大した。 対策としては、使用していないサービスは停止すること、不要なポートは閉塞すること。 https://www.macnica.net/file/news_what_wannacry.pdf <コメント> NetBIOSについてもまとめよう。 お気に入りの記事を「いいね!」で応援しよう
最終更新日
2019年03月21日 00時34分11秒
コメント(0) | コメントを書く
[Windows関連] カテゴリの最新記事
|