서버 메시지 블록
서버 메시지 블록(Server Message Block, SMB)은 도스나 윈도우에서 파일이나 디렉터리 및 주변 장치들을 공유하는데 사용되는 메시지 형식이다. NetBIOS는 SMB 형식에 기반을 두고 있으며, 많은 네트워크 제품들도 SMB를 사용한다. 이러한 SMB 기반의 네트워크에는 랜매니저, 윈도우 포 워크그룹(Windows for Workgroups), 윈도우 NT, 그리고 랜 서버(Lan Server) 등이 있다. 서로 다른 운영 체제 사이에 파일을 공유할 수 있도록 하기 위해 SMB를 사용하는 제품들도 많이 있다. 그 중 하나가 삼바인데, 유닉스와 윈도우 컴퓨터들간에 디렉터리와 파일을 공유할 수 있게 해 준다.
SMB는 대부분 마이크로소프트 윈도우를 실행하고 있는 컴퓨터에서 이용된다. 마이크로소프트 환경에서 사용자들은 대개 이를 단순히 "마이크로소프트 윈도우 네트워크"로 알고 있다.
서버 메시지 블록(SMB)에 대해 논할 때에는 다음을 구별해야 한다:
- SMB 프로토콜
- 프로토콜 위에서 동작하는 SMB 서비스
- 넷바이오스(NetBIOS)
- SMB를 권한을 수여 받은 프로세스 간 통신 채널로 사용하는 DCE/RPC 서비스 (지명 파이프 위에서)
- 주로 데이터그램 서비스로 직접 넷바이오스 전송 계층 위에서 동작하는 네트워크 환경 프로토콜
기능
SMB는 세션 네트워크 계층의 최상위에서 여러 방법으로 수행할 수 있다:
- 직접 TCP, 포트 445를 경유하여[1]
- 여러 전송에서 실행할 수 있는 넷바이오스 API를 통해[2]
- UDP 포트 137, 138 및 TCP 포트 137, 139 (NetBIOS over TCP/IP)
- NBF, IPX/SPX와 같은 여러 레거시 프로토콜을 통해
역사
SMB / CIFS / SMB1
Barry Feigenbaum은 도스 인터럽트 33 (21h) 로컬 파일 접근을 네트워크 파일 시스템으로 전환하기 위해 IBM에서 SMB를 설계하였다.[3] 마이크로소프트는 가장 흔히 사용되는 버전에 상당한 수정을 하였다. 마이크로소프트는 1990년 경 3Com과 함께 OS/2용으로 개발을 시작한 SMB를 랜 매니저 제품에 병합하였으며 윈도우 포 워크그룹(1992년 경) 및 차기 운영 체제에서 이 프로토콜에 기능 추가를 계속하였다.
SMB 2.0
마이크로소프트는 2006년에 윈도우 비스타에서 새로운 버전의 프로토콜(SMB 2.0, SMB2)를 선보였다.[4]
SMB 2.1
윈도우 7과 윈도우 서버 2008 R2에 도입된 SMB 2.1은 새로운 잠금 매커니즘과 더불어 사소한 성능 개선을 추가하였다.[5]
SMB 3.0
SMB 3.0(과거 명칭: SMB 2.2)[6]은 윈도우 8[6], 윈도우 서버 2012[6]와 함께 도입되었다.
SMB 3.0.2
SMB 3.0.2(당시 3.02로 알려짐)는 윈도우 8.1과 윈도우 서버 2012 R2 이후에 도입되었다.[7][8]
SMB 3.1.1
SMB 3.1.1은 윈도우 10과 윈도우 서버 2016과 함께 도입되었다.[9]
구현
클라이언트-서버 접근
SMB는 클라이언트-서버 접근을 통해 동작하며, 클라이언트는 특정한 요청을 하면 서버는 이에 따라 응답하는 방식이다.
삼바
NQ
NQ는 1998년에 지멘스 데이터 커뮤니케이션스의 전 CEO Sam Widerman이 설립한 이스라엘 기업 Visuality Systems가 개발한 포터블 SMB 클라이언트 및 서버 구현체이다.
MoSMB
MoSMB는 리눅스 및 기타 유닉스 계열 운영 체제를 위한 사유 SMB 구현체로서, Ryussi Technologies가 개발하였다. SMB 2.x, SMB 3.x만 지원한다.[10]
Tuxera SMB
Tuxera SMB는 Tuxera가 개발한 사유 SMB 서버 구현체로, 커널이나 사용자 공간에서 실행할 수 있다.[11] SMB 3.0 및 이전 버전들을 지원한다.
보안
수년에 걸쳐, 이 프로토콜이나 이 프로토콜에 기반을 둔 구성 요소에 대한 마이크로소프트의 구현체들에 수많은 보안 취약점들이 있었다.[12][13] 다른 업체들의 보안 취약점들은 NTLMv1, LanMan, 플레인텍스트 암호와 같은 프로토콜을 선호하면서 NTLMv2와 커베로스와 같은 더 새로운 인증 프로토콜의 지원 부족으로 인해 발생되었다. 실시간 공격을 추적한 바에 따르면[14] SMB는 침투 시도를 위한 주된 공격 벡터들 가운데 하나인데[15], 2014년의 소니 픽처스 엔터테인먼트 해킹 사건이라든지[16] 2017년의 워너크라이 랜섬웨어 공격[17]을 예로 들 수 있다.
같이 보기
각주
- ↑ “Direct hosting of SMB over TCP/IP”. 마이크로소프트. 2007년 10월 11일. 2009년 11월 1일에 확인함.
- ↑ Richard Sharpe (2002년 10월 8일). “Just what is SMB?”. 2009년 12월 2일에 원본 문서에서 보존된 문서. 2011년 7월 18일에 확인함.
- ↑ Tridgell, Andrew. “Myths About Samba”. 2016년 1월 3일에 확인함.
- ↑ Navjot Virk and Prashanth Prahalad (2006년 3월 10일). “What's new in SMB in Windows Vista”. 《Chk Your Dsks》. MSDN. 2006년 5월 5일에 원본 문서에서 보존된 문서. 2006년 5월 1일에 확인함.
- ↑ “Implementing an End-User Data Centralization Solution”. 마이크로소프트. 2009년 10월 21일. 10–11쪽. 2010년 9월 6일에 원본 문서에서 보존된 문서. 2009년 11월 2일에 확인함.
- ↑ 가 나 다 Jeffrey Snover (2012년 4월 19일). “Windows Server Blog: SMB 2.2 is now SMB 3.0”. 마이크로소프트. 2012년 9월 24일에 원본 문서에서 보존된 문서. 2012년 6월 14일에 확인함.
- ↑ Jose Barreto (2014년 7월 7일). “Updated Links on Windows Server 2012 R2 File Server and SMB 3.02”. Microsoft TechNet Server & Management Blogs.
- ↑ Jose Barreto (2013년 12월 12일). “Storage Developer Conference – SDC 2013 slides now publicly available. Here are the links to Microsoft slides…”. Microsoft TechNet Server & Management Blogs.
- ↑ Jose Barreto (2015년 5월 5일). “What’s new in SMB 3.1.1 in the Windows Server 2016 Technical Preview 2”. Microsoft TechNet Server & Management Blogs.
- ↑ Dr. Sunu Engineer. “Building a Highly Scalable and Performant SMB Protocol Server” (PDF).
- ↑ “Microsoft and Tuxera strengthen partnership through Tuxera SMB Server”. 《Microsoft》. Microsoft News Center. 2017년 2월 6일에 확인함.
- ↑ “MS02-070: Flaw in SMB Signing May Permit Group Policy to Be Modified”. 마이크로소프트. 2007년 12월 1일. 2009년 11월 1일에 확인함.
- ↑ “MS09-001: Vulnerabilities in SMB could allow remote code execution”. 마이크로소프트. 2009년 1월 13일. 2009년 11월 1일에 확인함.,
- ↑ “Sicherheitstacho.eu”. Deutsche Telekom. 2013년 3월 7일. 2013년 3월 7일에 확인함.
- ↑ “Alert (TA14-353A) Targeted Destructive Malware”. US-CERT.
- ↑ “Sony Hackers Used Server Message Block (SMB) Worm Tool”.
- ↑ “WannaCry Ransomware Attack Hits Victims With Microsoft SMB Exploit”. 《eWeek》. 2017년 5월 13일에 확인함.
외부 링크
- DFS section in "Windows Developer" documentation
- the NT LM 0.12 dialect of SMB. In Microsoft Word format
모듈:Authority_control 159번째 줄에서 Lua 오류: attempt to index field 'wikibase' (a nil value).
- 스크립트 오류가 있는 문서
- 잘못된 파일 링크가 포함된 문서
- 위키데이터 속성 P18을 사용하는 문서
- 위키데이터 속성 P41을 사용하는 문서
- 위키데이터 속성 P94를 사용하는 문서
- 위키데이터 속성 P117을 사용하는 문서
- 위키데이터 속성 P154를 사용하는 문서
- 위키데이터 속성 P213을 사용하는 문서
- 위키데이터 속성 P227을 사용하는 문서
- 위키데이터 속성 P242를 사용하는 문서
- 위키데이터 속성 P244를 사용하는 문서
- 위키데이터 속성 P245를 사용하는 문서
- 위키데이터 속성 P268을 사용하는 문서
- 위키데이터 속성 P269를 사용하는 문서
- 위키데이터 속성 P271을 사용하는 문서
- 위키데이터 속성 P347을 사용하는 문서
- 위키데이터 속성 P349를 사용하는 문서
- 위키데이터 속성 P350을 사용하는 문서
- 위키데이터 속성 P373을 사용하는 문서
- 위키데이터 속성 P380을 사용하는 문서
- 위키데이터 속성 P396을 사용하는 문서
- 위키데이터 속성 P409를 사용하는 문서
- 위키데이터 속성 P428을 사용하는 문서
- 위키데이터 속성 P434를 사용하는 문서
- 위키데이터 속성 P435를 사용하는 문서
- 위키데이터 속성 P436을 사용하는 문서
- 위키데이터 속성 P454를 사용하는 문서
- 위키데이터 속성 P496을 사용하는 문서
- 위키데이터 속성 P549를 사용하는 문서
- 위키데이터 속성 P650을 사용하는 문서
- 위키데이터 속성 P651을 사용하는 문서
- 위키데이터 속성 P691을 사용하는 문서
- 위키데이터 속성 P716을 사용하는 문서
- 위키데이터 속성 P781을 사용하는 문서
- 위키데이터 속성 P791을 사용하는 문서
- 위키데이터 속성 P864를 사용하는 문서
- 위키데이터 속성 P865를 사용하는 문서
- 위키데이터 속성 P886을 사용하는 문서
- 위키데이터 속성 P902를 사용하는 문서
- 위키데이터 속성 P906을 사용하는 문서
- 위키데이터 속성 P947을 사용하는 문서
- 위키데이터 속성 P950을 사용하는 문서
- 위키데이터 속성 P966을 사용하는 문서
- 위키데이터 속성 P982를 사용하는 문서
- 위키데이터 속성 P1003을 사용하는 문서
- 위키데이터 속성 P1004를 사용하는 문서
- 위키데이터 속성 P1005를 사용하는 문서
- 위키데이터 속성 P1006을 사용하는 문서
- 위키데이터 속성 P1015를 사용하는 문서
- 위키데이터 속성 P1045를 사용하는 문서
- 위키데이터 속성 P1048을 사용하는 문서
- 위키데이터 속성 P1053을 사용하는 문서
- 위키데이터 속성 P1146을 사용하는 문서
- 위키데이터 속성 P1153을 사용하는 문서
- 위키데이터 속성 P1157을 사용하는 문서
- 위키데이터 속성 P1186을 사용하는 문서
- 위키데이터 속성 P1225를 사용하는 문서
- 위키데이터 속성 P1248을 사용하는 문서
- 위키데이터 속성 P1273을 사용하는 문서
- 위키데이터 속성 P1315를 사용하는 문서
- 위키데이터 속성 P1323을 사용하는 문서
- 위키데이터 속성 P1330을 사용하는 문서
- 위키데이터 속성 P1362를 사용하는 문서
- 위키데이터 속성 P1368을 사용하는 문서
- 위키데이터 속성 P1375를 사용하는 문서
- 위키데이터 속성 P1407을 사용하는 문서
- 위키데이터 속성 P1556을 사용하는 문서
- 위키데이터 속성 P1584를 사용하는 문서
- 위키데이터 속성 P1695를 사용하는 문서
- 위키데이터 속성 P1707을 사용하는 문서
- 위키데이터 속성 P1736을 사용하는 문서
- 위키데이터 속성 P1886을 사용하는 문서
- 위키데이터 속성 P1890을 사용하는 문서
- 위키데이터 속성 P1907을 사용하는 문서
- 위키데이터 속성 P1908을 사용하는 문서
- 위키데이터 속성 P1960을 사용하는 문서
- 위키데이터 속성 P1986을 사용하는 문서
- 위키데이터 속성 P2041을 사용하는 문서
- 위키데이터 속성 P2163을 사용하는 문서
- 위키데이터 속성 P2174를 사용하는 문서
- 위키데이터 속성 P2268을 사용하는 문서
- 위키데이터 속성 P2349를 사용하는 문서
- 위키데이터 속성 P2418을 사용하는 문서
- 위키데이터 속성 P2456을 사용하는 문서
- 위키데이터 속성 P2484를 사용하는 문서
- 위키데이터 속성 P2558을 사용하는 문서
- 위키데이터 속성 P2750을 사용하는 문서
- 위키데이터 속성 P2980을 사용하는 문서
- 위키데이터 속성 P3223을 사용하는 문서
- 위키데이터 속성 P3233을 사용하는 문서
- 위키데이터 속성 P3348을 사용하는 문서
- 위키데이터 속성 P3372를 사용하는 문서
- 위키데이터 속성 P3407을 사용하는 문서
- 위키데이터 속성 P3430을 사용하는 문서
- 위키데이터 속성 P3544를 사용하는 문서
- 위키데이터 속성 P3562를 사용하는 문서
- 위키데이터 속성 P3563을 사용하는 문서
- 위키데이터 속성 P3601을 사용하는 문서
- 위키데이터 속성 P3723을 사용하는 문서
- 위키데이터 속성 P3788을 사용하는 문서
- 위키데이터 속성 P3829를 사용하는 문서
- 위키데이터 속성 P3863을 사용하는 문서
- 위키데이터 속성 P3920을 사용하는 문서
- 위키데이터 속성 P3993을 사용하는 문서
- 위키데이터 속성 P4038을 사용하는 문서
- 위키데이터 속성 P4055를 사용하는 문서
- 위키데이터 속성 P4114를 사용하는 문서
- 위키데이터 속성 P4143을 사용하는 문서
- 위키데이터 속성 P4186을 사용하는 문서
- 위키데이터 속성 P4423을 사용하는 문서
- 위키데이터 속성 P4457을 사용하는 문서
- 위키데이터 속성 P4534를 사용하는 문서
- 위키데이터 속성 P4535를 사용하는 문서
- 위키데이터 속성 P4581을 사용하는 문서
- 위키데이터 속성 P4613을 사용하는 문서
- 위키데이터 속성 P4955를 사용하는 문서
- 위키데이터 속성 P5034를 사용하는 문서
- 위키데이터 속성 P5226을 사용하는 문서
- 위키데이터 속성 P5288을 사용하는 문서
- 위키데이터 속성 P5302를 사용하는 문서
- 위키데이터 속성 P5321을 사용하는 문서
- 위키데이터 속성 P5368을 사용하는 문서
- 위키데이터 속성 P5504를 사용하는 문서
- 위키데이터 속성 P5587을 사용하는 문서
- 위키데이터 속성 P5736을 사용하는 문서
- 위키데이터 속성 P5818을 사용하는 문서
- 위키데이터 속성 P6213을 사용하는 문서
- 위키데이터 속성 P6734를 사용하는 문서
- 위키데이터 속성 P6792를 사용하는 문서
- 위키데이터 속성 P6804를 사용하는 문서
- 위키데이터 속성 P6829를 사용하는 문서
- 위키데이터 속성 P7293을 사용하는 문서
- 위키데이터 속성 P7303을 사용하는 문서
- 위키데이터 속성 P7314를 사용하는 문서
- 위키데이터 속성 P7902를 사용하는 문서
- 위키데이터 속성 P8034를 사용하는 문서
- 위키데이터 속성 P8189를 사용하는 문서
- 위키데이터 속성 P8381을 사용하는 문서
- 위키데이터 속성 P8671을 사용하는 문서
- 위키데이터 속성 P8980을 사용하는 문서
- 위키데이터 속성 P9070을 사용하는 문서
- 위키데이터 속성 P9692를 사용하는 문서
- 위키데이터 속성 P9725를 사용하는 문서
- 위키데이터 속성 P9984를 사용하는 문서
- 위키데이터 속성 P10020을 사용하는 문서
- 위키데이터 속성 P10299를 사용하는 문서
- 위키데이터 속성 P10608을 사용하는 문서
- 위키데이터 속성 P10832를 사용하는 문서
- 위키데이터 속성 P11249를 사용하는 문서
- 위키데이터 속성 P11646을 사용하는 문서
- 위키데이터 속성 P11729를 사용하는 문서
- 위키데이터 속성 P12204를 사용하는 문서
- 위키데이터 속성 P12362를 사용하는 문서
- 위키데이터 속성 P12754를 사용하는 문서
- 위키데이터 속성 P13049를 사용하는 문서
- 네트워크 프로토콜
- 응용 계층 프로토콜
- 네트워크 파일 시스템