Server Message Block: различия между версиями
[отпатрулированная версия] | [непроверенная версия] |
Спасено источников — 7, отмечено мёртвыми — 0. Сообщить об ошибке. См. FAQ.) #IABot (v2.0.8.7 |
РобоСтася (обсуждение | вклад) |
||
(не показаны 2 промежуточные версии 2 участников) | |||
Строка 3: | Строка 3: | ||
== История == |
== История == |
||
Первая версия протокола была разработана сотрудником [[IBM]] Бэрри Файгенбаумом ({{lang-en|Barry Feigenbaum}}) в [[1983 год]]у<ref>{{cite web|url=http://tools.ietf.org/html/draft-crhertel-smb-url-04|title=SMB Filesharing URL Scheme|lang=en|author=Christopher R. Hertel|date= |
Первая версия протокола была разработана сотрудником [[IBM]] Бэрри Файгенбаумом ({{lang-en|Barry Feigenbaum}}) в [[1983 год]]у<ref>{{cite web|url=http://tools.ietf.org/html/draft-crhertel-smb-url-04|title=SMB Filesharing URL Scheme|lang=en|author=Christopher R. Hertel|date=2003|accessdate=2009-10-21|archiveurl=https://www.webcitation.org/688rfL7XY?url=http://tools.ietf.org/html/draft-crhertel-smb-url-04|archivedate=2012-06-03|=}}</ref><ref name="myths">{{cite web|url=http://samba.org/samba/docs/myths_about_samba.html|title=Myths About Samba|author=Andrew Tridgell|lang=en|accessdate=2011-06-02|archiveurl=https://www.webcitation.org/688rft3cU?url=http://www.samba.org/samba/docs/myths_about_samba.html|archivedate=2012-06-03|=}}</ref>. Изначально SMB был реализован через [[NetBIOS]] (поверх [[NBF]], [[IPX/SPX]] или [[NetBIOS over TCP/IP]]) и использовался в сетях [[MS-NET]] и [[LAN Manager]] для [[DOS]], а также в [[Windows 3.x|Windows for Workgroups]]. Microsoft регулярно дополняла протокол новыми возможностями; так, вторая версия Microsoft Networks SMB File Sharing Protocol Extensions появилась в [[1988 год]]у, 3-я версия — в [[1989 год]]у, версия 3.4 — в 1992<ref>{{cite web|url=http://www.samba.org/cifs/docs/smb-history.html|title=History of SMB|lang=en|author=Dan Shearer|date=1996|accessdate=2009-10-21|archiveurl=https://www.webcitation.org/688rgKw16?url=http://www.samba.org/cifs/docs/smb-history.html|archivedate=2012-06-03|=}}</ref>. |
||
В [[1992 год]]у появилась [[Samba]] — [[свободное программное обеспечение|свободная реализация]] протокола SMB для [[UNIX]]-подобных операционных систем (изначально для [[SunOS]]). Поскольку Microsoft не опубликовала документацию значительной части своих дополнений к SMB, разработчикам Samba пришлось провести [[обратная разработка|обратную разработку]] протокола. |
В [[1992 год]]у появилась [[Samba]] — [[свободное программное обеспечение|свободная реализация]] протокола SMB для [[UNIX]]-подобных операционных систем (изначально для [[SunOS]]). Поскольку Microsoft не опубликовала документацию значительной части своих дополнений к SMB, разработчикам Samba пришлось провести [[обратная разработка|обратную разработку]] протокола. |
||
Строка 11: | Строка 11: | ||
В [[Windows 2000]] впервые появился SMB непосредственно поверх [[TCP]] (без NetBIOS); для этого используется [[порт (TCP/IP)|порт]] 445 (SMB через [[NetBIOS over TCP/IP|NBT]] использовал порт 139). |
В [[Windows 2000]] впервые появился SMB непосредственно поверх [[TCP]] (без NetBIOS); для этого используется [[порт (TCP/IP)|порт]] 445 (SMB через [[NetBIOS over TCP/IP|NBT]] использовал порт 139). |
||
В [[Windows Vista]] появилась новая версия протокола — '''SMB 2.0'''. Протокол был значительно упрощён (в SMB было более 100 команд, а в SMB 2 — всего 19); при этом была повышена производительность (благодаря механизму кэширования возможно совмещать несколько команд SMB 2 в одном сетевом запросе и увеличенным буферам чтения и записи), особенно в сетях с высокой латентностью, улучшена масштабируемость и добавлена возможность автоматического продолжения сеанса в случае временного отсоединения от сервера<ref>{{cite web|url=http://blogs.technet.com/josebda/archive/2008/12/05/smb2-a-complete-redesign-of-the-main-remote-file-protocol-for-windows.aspx|title=SMB2, a complete redesign of the main remote file protocol for Windows|author=Joseph Barreto|lang=en|date= |
В [[Windows Vista]] появилась новая версия протокола — '''SMB 2.0'''. Протокол был значительно упрощён (в SMB было более 100 команд, а в SMB 2 — всего 19); при этом была повышена производительность (благодаря механизму кэширования возможно совмещать несколько команд SMB 2 в одном сетевом запросе и увеличенным буферам чтения и записи), особенно в сетях с высокой латентностью, улучшена масштабируемость и добавлена возможность автоматического продолжения сеанса в случае временного отсоединения от сервера<ref>{{cite web|url=http://blogs.technet.com/josebda/archive/2008/12/05/smb2-a-complete-redesign-of-the-main-remote-file-protocol-for-windows.aspx|title=SMB2, a complete redesign of the main remote file protocol for Windows|author=Joseph Barreto|lang=en|date=2008|accessdate=2009-10-22|archiveurl=https://www.webcitation.org/688rgkgbL?url=http://blogs.technet.com/b/josebda/archive/2008/12/05/smb2-a-complete-redesign-of-the-main-remote-file-protocol-for-windows.aspx|archivedate=2012-06-03|=}}</ref>. SMB 2 использует тот же порт (445) как и SMB, но другой заголовок [[IP-пакет|пакетов]] (<code>0xFF 'S' 'M' 'B'</code> в SMB, <code>0xFE 'S' 'M' 'B'</code> в SMB 2)<ref>{{cite web|url=http://wiki.wireshark.org/SMB2|title=SMB2|publisher=Wireshark|accessdate=2009-10-22|archiveurl=https://www.webcitation.org/688rhjxXZ?url=http://wiki.wireshark.org/SMB2|archivedate=2012-06-03|=}}</ref>. |
||
В [[Windows 8]] появилась новая версия протокола — '''SMB 3.0'''. Новые возможности [http://support.microsoft.com/en-us/kb/2709568 изложены на сайте разработчиков]. |
В [[Windows 8]] появилась новая версия протокола — '''SMB 3.0'''. Новые возможности [http://support.microsoft.com/en-us/kb/2709568 изложены на сайте разработчиков]. |
||
В 2008 году под давлением [[Еврокомиссия|Еврокомиссии]] Microsoft опубликовала описание своих частных протоколов, в том числе и SMB, на сайте [[MSDN]]<ref>{{cite web|url = https://msdn.microsoft.com/en-us/library/ee442092.aspx|title = [MS-CIFS]: Common Internet File System (CIFS) Protocol|lang = en|accessdate = 2015-08-11|archive-date = 2015-11-05|archive-url = https://web.archive.org/web/20151105225011/https://msdn.microsoft.com/en-us/library/ee442092.aspx| |
В 2008 году под давлением [[Еврокомиссия|Еврокомиссии]] Microsoft опубликовала описание своих частных протоколов, в том числе и SMB, на сайте [[MSDN]]<ref>{{cite web|url = https://msdn.microsoft.com/en-us/library/ee442092.aspx|title = [MS-CIFS]: Common Internet File System (CIFS) Protocol|lang = en|accessdate = 2015-08-11|archive-date = 2015-11-05|archive-url = https://web.archive.org/web/20151105225011/https://msdn.microsoft.com/en-us/library/ee442092.aspx| = }}</ref>. |
||
== Принцип работы == |
== Принцип работы == |
||
SMB — это протокол, основанный на технологии [[клиент-сервер]], который предоставляет клиентским приложениям простой способ для чтения и записи файлов, а также запроса служб у серверных программ в различных типах сетевого окружения. <!-- Единственное отличие от модели клиент-сервер состоит в том, что, когда клиент посылает в качестве запроса возможные блокировки, то сервер вынужден отпустить уже предоставленную блокировку, так как другой клиент запросил открытие файла в режиме, несовместимом с предоставленной блокировкой. В этом случае сервер посылает клиенту уведомительное сообщение о том, что блокировка была снята. --> Серверы предоставляют файловые системы и другие ресурсы (принтеры, почтовые сегменты, именованные каналы и т. д.) для общего доступа в сети. Клиентские компьютеры могут иметь у себя свои носители информации, но также имеют доступ к ресурсам, предоставленным сервером для общего пользования. |
SMB — это протокол, основанный на технологии [[клиент-сервер]], который предоставляет клиентским приложениям простой способ для чтения и записи файлов, а также запроса служб у серверных программ в различных типах сетевого окружения. <!-- Единственное отличие от модели клиент-сервер состоит в том, что, когда клиент посылает в качестве запроса возможные блокировки, то сервер вынужден отпустить уже предоставленную блокировку, так как другой клиент запросил открытие файла в режиме, несовместимом с предоставленной блокировкой. В этом случае сервер посылает клиенту уведомительное сообщение о том, что блокировка была снята. --> Серверы предоставляют файловые системы и другие ресурсы (принтеры, почтовые сегменты, именованные каналы и т. д.) для общего доступа в сети. Клиентские компьютеры могут иметь у себя свои носители информации, но также имеют доступ к ресурсам, предоставленным сервером для общего пользования. |
||
Клиенты соединяются с сервером, используя протоколы [[TCP/IP]] (а, точнее, [[NetBIOS]] через [[TCP/IP]]), [[NetBEUI]] или [[IPX/SPX]]. После того, как соединение установлено, клиенты могут посылать команды серверу (эти команды называются SMB-команды или SMBs), который даёт им доступ к ресурсам, позволяет открывать, читать файлы, писать в файлы и вообще выполнять весь перечень действий, которые можно выполнять с файловой системой. Однако в случае использования SMB эти действия совершаются через сеть. |
Клиенты соединяются с сервером, используя протоколы [[TCP/IP]] (а, точнее, [[NetBIOS]] через [[TCP/IP]]), [[NetBEUI]] или [[IPX/SPX]]. После того, как соединение установлено, клиенты могут посылать команды серверу (эти команды называются SMB-команды или SMBs), который даёт им доступ к ресурсам, позволяет открывать, читать файлы, писать в файлы и вообще выполнять весь перечень действий, которые можно выполнять с файловой системой. Однако в случае использования SMB эти действия совершаются через сеть. |
||
Как было сказано выше, SMB работает, используя различные [[Протокол передачи данных|протоколы]]. В [[Сетевая модель OSI|сетевой модели OSI]] протокол SMB используется как протокол Application/Presentation уровня и зависит от низкоуровневых транспортных протоколов. SMB может использоваться через [[TCP/IP]], [[NetBEUI]] и [[IPX/SPX]]. Если [[TCP/IP]] или [[NetBEUI]] будут заняты, то будет использоваться NetBIOS API. SMB также может посылаться через протокол [[DECnet]]. Digital (ныне [[Compaq]]) сделала это специально для своего продукта PATHWORKS. NetBIOS в случае использования через TCP/IP имеет различные названия. [[Microsoft]] называет его в некоторых случаях [[NBT]], а в некоторых [[NetBT]]. Также встречается название [[RFCNB]]. |
Как было сказано выше, SMB работает, используя различные [[Протокол передачи данных|протоколы]]. В [[Сетевая модель OSI|сетевой модели OSI]] протокол SMB используется как протокол Application/Presentation уровня и зависит от низкоуровневых транспортных протоколов. SMB может использоваться через [[TCP/IP]], [[NetBEUI]] и [[IPX/SPX]]. Если [[TCP/IP]] или [[NetBEUI]] будут заняты, то будет использоваться NetBIOS API. SMB также может посылаться через протокол [[DECnet]]. Digital (ныне [[Compaq]]) сделала это специально для своего продукта PATHWORKS. NetBIOS в случае использования через TCP/IP имеет различные названия. [[Microsoft]] называет его в некоторых случаях [[NBT]], а в некоторых [[NetBT]]. Также встречается название [[RFCNB]]. |
||
Строка 41: | Строка 41: | ||
|colspan=1 |24 |
|colspan=1 |24 |
||
|colspan=1 |32 bits |
|colspan=1 |32 bits |
||
|- align=center |
|||
!colspan=4|IDF |
|||
|- align=center |
|- align=center |
||
!colspan=1|Command |
!colspan=1|Command |
||
Строка 73: | Строка 75: | ||
'''Основные элементы структуры заголовка SMB: ''' <br /> |
'''Основные элементы структуры заголовка SMB: ''' <br /> |
||
• '''IDF (Identifier)''' — Идентификатор протокола: 0xff, 0x53('S'), 0x4d('M'), 0x42('B'). <br /> |
|||
• '''Command''' — команда протокола. <br /> |
• '''Command''' — команда протокола. <br /> |
||
• '''RCLS''' — код класса ошибки. <br /> |
• '''RCLS''' — код класса ошибки. <br /> |
||
Строка 81: | Строка 84: | ||
• '''Multiplex ID (MID)''' — идентификатор группы пользователя; используется сервером для проверки прав доступа группы пользователя.<br /> |
• '''Multiplex ID (MID)''' — идентификатор группы пользователя; используется сервером для проверки прав ��оступа группы пользователя.<br /> |
||
• '''WCT''' — количество параметров, следующих за заголовком.<br /> |
• '''WCT''' — количество параметров, следующих за заголовком.<br /> |
||
• '''BCC''' — количество байт данных, следующих за параметрами. |
• '''BCC''' — количество байт данных, следующих за параметрами. |
||
== Аутентификация Microsoft SMB Protocol == |
== Аутентификация Microsoft SMB Protocol == |
||
Строка 93: | Строка 96: | ||
== Безопасность == |
== Безопасность == |
||
На протяжении всего срока эксплуатации эталонной реализации протокола от Microsoft специалистами по информационной безопасности выявлялись уязвимости, позволяющие успешно провести сетевую атаку на удалённый узел.<ref>{{cite web|url=https://technet.microsoft.com/en-us/library/security/ms02-070.aspx|title=MS02-070: Flaw in SMB Signing May Permit Group Policy to Be Modified|publisher=[[Microsoft]]|accessdate= |
На протяжении всего срока эксплуатации эталонной реализации протокола от Microsoft специалистами по информационной безопасности выявлялись уязвимости, позволяющие успешно провести сетевую атаку на удалённый узел.<ref>{{cite web|url=https://technet.microsoft.com/en-us/library/security/ms02-070.aspx|title=MS02-070: Flaw in SMB Signing May Permit Group Policy to Be Modified|publisher=[[Microsoft]]|accessdate=2009|date=2007|archive-date=2017-07-25|archive-url=https://web.archive.org/web/20170725131418/https://technet.microsoft.com/en-us/library/security/ms02-070.aspx|=}}</ref><ref>{{cite web|url=http://support.microsoft.com/kb/958687|title=MS09-001: Vulnerabilities in SMB could allow remote code execution|publisher=[[Microsoft]]|accessdate=2009|date=13|archive-date=2009-10-05|archive-url=https://web.archive.org/web/20091005062727/http://support.microsoft.com/kb/958687|=}}</ref><ref>{{cite web|url=https://technet.microsoft.com/en-us/library/security/ms17-010.aspx|title=Microsoft Security Bulletin MS17-010 – Critical|website=technet.microsoft.com|accessdate=2017|archive-date=2017-05-21|archive-url=https://web.archive.org/web/20170521032215/https://technet.microsoft.com/en-us/library/security/ms17-010.aspx|=}}</ref> Организация атаки на незащищённые серверы SMB является одной из наиболее привлекательных среди злоумышленников<ref>{{cite web|url=https://www.us-cert.gov/ncas/alerts/TA14-353A|title=Alert (TA14-353A) Targeted Destructive Malware|publisher=[[US-CERT]]|access-date=2017-05-16|archive-date=2014-12-20|archive-url=https://web.archive.org/web/20141220134115/https://www.us-cert.gov/ncas/alerts/TA14-353A|=}}</ref>. Так, например, с помощью использования уязвимостей протокола SMB были осуществлены [[взлом серверов Sony Pictures Entertainment]]<ref>{{cite web|url=http://www.securityweek.com/hackers-used-sophisticated-smb-worm-tool-attack-sony|title=Sony Hackers Used Server Message Block (SMB) Worm Tool|access-date=2017-05-16|archive-date=2014-12-20|archive-url=https://web.archive.org/web/20141220134150/http://www.securityweek.com/hackers-used-sophisticated-smb-worm-tool-attack-sony|=}}</ref> и распространение вредоносного ПО [[DoublePulsar]], [[WannaCry]]<ref>{{cite news|url=http://www.eweek.com/security/wannacry-ransomware-attack-hits-victims-with-microsoft-smb-exploit|title=WannaCry Ransomware Attack Hits Victims With Microsoft SMB Exploit|work=[[eWeek]]|accessdate=2017}}</ref> (уязвимость [[EternalBlue]]) и [[Petya]]<ref>{{Cite news|title=Petya ransomware virus is back amid cyber attack: Swiss agency|url=http://www.reuters.com/article/us-cyber-attack-swiss-idUSKBN19I1ZX|work=Reuters|date=Tue Jun 27 14:50:10 UTC 2017|accessdate=2017-06-27|archivedate=2017-06-27|archiveurl=https://web.archive.org/web/20170627161459/http://www.reuters.com/article/us-cyber-attack-swiss-idUSKBN19I1ZX}}</ref>. |
||
== См. также == |
== См. также == |
Текущая версия от 12:18, 16 июля 2024
SMB (сокр. от англ. Server Message Block) — сетевой протокол прикладного уровня для удалённого доступа к файлам, принтерам и другим сетевым ресурсам, а также для межпроцессного взаимодействия. Первая версия протокола, также известная как Common Internet File System (CIFS) (Единая файловая система Интернета), была разработана компаниями IBM, Microsoft, Intel и 3Com в 1980-х годах; вторая (SMB 2.0) была создана Microsoft и появилась в Windows Vista. В настоящее время SMB связан главным образом с операционными системами Microsoft Windows, где используется для реализации «Сети Microsoft Windows» (англ. Microsoft Windows Network) и «Совместного использования файлов и принтеров» (англ. File and Printer Sharing).
История
[править | править код]Первая версия протокола была разработана сотрудником IBM Бэрри Файгенбаумом (англ. Barry Feigenbaum) в 1983 году[1][2]. Изначально SMB был реализован через NetBIOS (поверх NBF, IPX/SPX или NetBIOS over TCP/IP) и использовался в сетях MS-NET и LAN Manager для DOS, а также в Windows for Workgroups. Microsoft регулярно дополняла протокол новыми возможностями; так, вторая версия Microsoft Networks SMB File Sharing Protocol Extensions появилась в 1988 году, 3-я версия — в 1989 году, версия 3.4 — в 1992[3].
В 1992 году появилась Samba — свободная реализация протокола SMB для UNIX-подобных операционных систем (изначально для SunOS). Поскольку Microsoft не опубликовала документацию значительной части своих дополнений к SMB, разработчикам Samba пришлось провести обратную разработку протокола.
В 1996 году Microsoft стала использовать новое название для дополненной версии протокола, которая использовалась в Windows NT 4.0 — CIFS (англ. Common Internet File System); новое имя прижилось, SMB и CIFS фактически стали синонимами[2]. Microsoft некоторое время пыталась превратить CIFS в международный стандарт через IETF, но после 2000 года прекратила работу по стандартизации.
В Windows 2000 впервые появился SMB непосредственно поверх TCP (без NetBIOS); для этого используется порт 445 (SMB через NBT использовал порт 139).
В Windows Vista появилась новая версия протокола — SMB 2.0. Протокол был значительно упрощён (в SMB было более 100 команд, а в SMB 2 — всего 19); при этом была повышена производительность (благодаря механизму кэширования возможно совмещать несколько команд SMB 2 в одном сетевом запросе и увеличенным буферам чтения и записи), особенно в сетях с высокой латентностью, улучшена масштабируемость и добавлена возможность автоматического продолжения сеанса в случае временного отсоединения от сервера[4]. SMB 2 использует тот же порт (445) как и SMB, но другой заголовок пакетов (0xFF 'S' 'M' 'B'
в SMB, 0xFE 'S' 'M' 'B'
в SMB 2)[5].
В Windows 8 появилась новая версия протокола — SMB 3.0. Новые возможности изложены на сайте разработчиков.
В 2008 году под давлением Еврокомиссии Microsoft опубликовала описание своих частных протоколов, в том числе и SMB, на сайте MSDN[6].
Принцип работы
[править | править код]SMB — это протокол, основанный на технологии клиент-сервер, который предоставляет клиентским приложениям простой способ для чтения и записи файлов, а также запроса служб у серверных программ в различных типах сетевого окружения. Серверы предоставляют файловые системы и другие ресурсы (принтеры, почтовые сегменты, именованные каналы и т. д.) для общего доступа в сети. Клиентские компьютеры могут иметь у себя свои носители информации, но также имеют доступ к ресурсам, предоставленным сервером для общего пользования.
Клиенты соединяются с сервером, используя протоколы TCP/IP (а, точнее, NetBIOS через TCP/IP), NetBEUI или IPX/SPX. После того, как соединение установлено, клиенты могут посылать команды серверу (эти команды называются SMB-команды или SMBs), который даёт им доступ к ресурсам, позволяет открывать, читать файлы, писать в файлы и вообще выполнять весь перечень действий, которые можно выполнять с файловой системой. Однако в случае использования SMB эти действия совершаются через сеть.
Как было сказано выше, SMB работает, используя различные протоколы. В сетевой модели OSI протокол SMB используется как протокол Application/Presentation уровня и зависит от низкоуровневых транспортных протоколов. SMB может использоваться через TCP/IP, NetBEUI и IPX/SPX. Если TCP/IP или NetBEUI будут заняты, то будет использоваться NetBIOS API. SMB также может посылаться через протокол DECnet. Digital (ныне Compaq) сделала это специально для своего продукта PATHWORKS. NetBIOS в случае использования через TCP/IP имеет различные названия. Microsoft называет его в некоторых случаях NBT, а в некоторых NetBT. Также встречается название RFCNB.
С начала существования SMB было разработано множество различных вариантов протокола для обработки всё возрастающей сложности компьютерной среды, в которой он использовался. Договорились, что реальный вариант протокола, который будет использоваться клиентом и сервером, будет определяться командой negprot (negotiate protocol). Этот SMB обязан посылаться первым до установления соединения. Первым вариантом протокола был Core Protocol, известный как SMB-реализация PC NETWORK PROGRAM 1.0. Он должным образом поддерживает весь набор основных операций, который включает в себя:
- присоединение к файловым и принтерным ресурсам и отсоединение от них;
- открытие и закрытие файлов;
- открытие и закрытие принтерных файлов;
- чтение и запись файлов;
- создание и удаление файлов и каталогов;
- поиск каталогов;
- получение и установление атрибутов файла;
- блокировка и разблокировка файлов.
Формат заголовка SMB
[править | править код]8 | 16 | 24 | 32 bits |
IDF | |||
---|---|---|---|
Command | RCLS | Reserved | ERR |
ERR (cont) | REB/FLG | Reserved | |
Reserved | |||
Reserved | |||
Reserved | |||
Tree ID | Process ID | ||
User ID | Multiplex ID | ||
WCT | VWV | ||
BCC | BUF | ||
SMB header structure |
Основные элементы структуры заголовка SMB:
• IDF (Identifier) — Идентификатор протокола: 0xff, 0x53('S'), 0x4d('M'), 0x42('B').
• Command — команда протокола.
• RCLS — код класса ошибки.
• ERR — код ошибки.
• Tree ID (TID) — идентификатор соединения с сетевым ресурсом.
• Process ID (PID) — идентификатор клиентского процесса фактического соединения.
• User ID (UID) — идентификатор пользователя; используется сервером для проверки прав доступа пользователя.
• Multiplex ID (MID) — идентификатор группы пользователя; используется сервером для проверки прав доступа группы пользователя.
• WCT — количество параметров, следующих за заголовком.
• BCC — количество байт данных, следующих за параметрами.
Аутентификация Microsoft SMB Protocol
[править | править код]Модель механизма защиты, которая используется в Microsoft SMB Protocol, в основном идентична модели любого другого варианта SMB-протокола. Она состоит из двух уровней защиты: user-level (пользовательский уровень) и share-level (уровень совместно используемого ресурса). Под share (опубликованный ресурс) понимается файл, каталог, принтер, любая услуга, которая может быть доступна клиентам по сети.
Аутентификация на уровне user-level означает, что клиент, который пытается получить доступ к ресурсу на сервере, должен иметь username (имя пользователя) и password (пароль). Если данная аутентификация прошла успешно, клиент имеет доступ ко всем доступным ресурсам сервера, кроме тех, что с share-level-защитой. Этот уровень защиты даёт возможность системным администраторам конкретно указывать, какие пользователи и группы пользователей имеют доступ к определённым данным. Он используется в Windows NT, Windows 2000, Windows XP.
Аутентификация на уровне share-level означает, что доступ к ресурсу контролируется паролем, установленным конкретно на этот ресурс. В отличие от user-level, этот уровень защиты не требует имя пользователя для аутентификации и не устанавливается никакая уникальность текущего пользователя. Этот уровень используется в Windows NT, Windows 2000 и Windows XP для обеспечения дополнительного уровня контроля защиты сверх user-level. Операционные системы Windows 95, Windows 98 и Windows ME реализуют защиту только этого уровня.
В обоих этих уровнях защиты используется шифрование. Пароль зашифровывается, прежде чем отправляется на сервер. Типы шифрования NTLM, NTLMv2 и старые версии LAN Manager (LM) поддерживаются протоколом. Оба метода шифрования используют аутентификацию типа отклик-отзыв, в которой сервер посылает клиенту случайную сгенерированную строку, а клиент возвращает в качестве отзыва обработанную строку, которая доказывает, что клиент имеет достаточный мандат для доступа к данным.
Безопасность
[править | править код]На протяжении всего срока эксплуатации эталонной реализации протокола от Microsoft специалистами по информационной безопасности выявлялись уязвимости, позволяющие успешно провести сетевую атаку на удалённый узел.[7][8][9] Организация атаки на незащищённые серверы SMB является одной из наиболее привлекательных среди злоумышленников[10]. Так, например, с помощью использования уязвимостей протокола SMB были осуществлены взлом серверов Sony Pictures Entertainment[11] и распространение вредоносного ПО DoublePulsar, WannaCry[12] (уязвимость EternalBlue) и Petya[13].
См. также
[править | править код]Примечания
[править | править код]- ↑ Christopher R. Hertel. SMB Filesharing URL Scheme (англ.) (8 января 2003). Дата обращения: 21 октября 2009. Архивировано из оригинала 3 июня 2012 года.
- ↑ 1 2 Andrew Tridgell. Myths About Samba (англ.). Дата обращения: 2 июня 2011. Архивировано из оригинала 3 июня 2012 года.
- ↑ Dan Shearer. History of SMB (англ.) (16 ноября 1996). Дата обращения: 21 октября 2009. Архивировано из оригинала 3 июня 2012 года.
- ↑ Joseph Barreto. SMB2, a complete redesign of the main remote file protocol for Windows (англ.) (9 декабря 2008). Дата обращения: 22 октября 2009. Архивировано из оригинала 3 июня 2012 года.
- ↑ SMB2 . Wireshark. Дата обращения: 22 октября 2009. Архивировано из оригинала 3 июня 2012 года.
- ↑ [MS-CIFS]: Common Internet File System (CIFS) Protocol (англ.). Дата обращения: 11 августа 2015. Архивировано 5 ноября 2015 года.
- ↑ MS02-070: Flaw in SMB Signing May Permit Group Policy to Be Modified . Microsoft (1 декабря 2007). Дата обращения: 1 ноября 2009. Архивировано 25 июля 2017 года.
- ↑ MS09-001: Vulnerabilities in SMB could allow remote code execution . Microsoft (13 января 2009). Дата обращения: 1 ноября 2009. Архивировано 5 октября 2009 года.
- ↑ Microsoft Security Bulletin MS17-010 – Critical . technet.microsoft.com. Дата обращения: 13 мая 2017. Архивировано 21 мая 2017 года.
- ↑ Alert (TA14-353A) Targeted Destructive Malware . US-CERT. Дата обращения: 16 мая 2017. Архивировано 20 декабря 2014 года.
- ↑ Sony Hackers Used Server Message Block (SMB) Worm Tool . Дата обращения: 16 мая 2017. Архивировано 20 декабря 2014 года.
- ↑ "WannaCry Ransomware Attack Hits Victims With Microsoft SMB Exploit". eWeek. Дата обращения: 13 мая 2017.
- ↑ "Petya ransomware virus is back amid cyber attack: Swiss agency". Reuters. Tue Jun 27 14:50:10 UTC 2017. Архивировано 27 июня 2017. Дата обращения: 27 июня 2017.
{{cite news}}
: Проверьте значение даты:|date=
(справка)
Ссылки
[править | править код]- A Common Internet File System (CIFS/1.0) Protocol — Preliminary Draft (англ.)
- [MS-SMB]: Server Message Block (SMB) Protocol (англ.)
- [MS-SMB2]: Server Message Block (SMB) Protocol Versions 2 and 3 (англ.)
- Just what is SMB? (англ.)
- IBM Protocols: SMB (англ.)
- IBM SMB: Server Message Block protocol (англ.)