Các giao thức quảng bá NetBIOS qua TCP / IP và LLMNR chỉ được sử dụng trong hầu hết các mạng hiện đại để tương thích với các phiên bản Windows cũ. Cả hai giao thức đều dễ bị giả mạo và tấn công MITM. Trong Metasploit có các mô-đun làm sẵn cho phép bạn dễ dàng khai thác các lỗ hổng trong giao thức NetBIOS và LLMNR đang phát sóng để chặn thông tin đăng nhập của người dùng trong mạng cục bộ (bao gồm cả băm NTLMv2). Để cải thiện bảo mật mạng của mình, bạn cần tắt các giao thức này trên mạng miền. Hãy tìm hiểu cách tắt giao thức LLMNR và NetBIOS trong Windows 10 / Windows Server 2019 theo cách thủ công hoặc thông qua Chính sách nhóm.
Nội dung:
- Giao thức phân giải tên đa phương tiện liên kết-cục bộ (LLMNR)
- NetBIOS Qua Giao thức TCP / IP
- Tắt LLMNR trên Windows bằng GPO
- Tắt NetBIOS qua TCP / IP trên Windows 10 / Windows Server 2019
- Cách tắt NetBIOS qua TCP / IP thông qua Chính sách nhóm?
Giao thức phân giải tên đa địa phương liên kết (LLMNR)
LLMNR (UDP / 5355, Link-Local Multicast Name Resolution) được sử dụng trong tất cả các phiên bản Windows bắt đầu từ Vista và cho phép các máy khách IPv6 và IPv4 phân giải tên của các máy tính lân cận mà không cần sử dụng máy chủ DNS do các yêu cầu quảng bá trong phân đoạn mạng L2 cục bộ. Giao thức này tự động được sử dụng nếu DNS không khả dụng (trong các nhóm làm việc của Windows, giao thức này được sử dụng cho Network Discovery). Vì vậy, nếu có máy chủ DNS trong miền, giao thức này không cần thiết.
NetBIOS Qua Giao thức TCP / IP
NetBIOS qua TCP / IP hoặc NBT-NS (UDP / 137,138; TCP / 139) là một giao thức quảng bá tiền thân của LLMNR và được sử dụng trong mạng cục bộ để xuất bản và tìm kiếm tài nguyên. Theo mặc định, hỗ trợ NetBIOS qua TCP / IP được bật cho tất cả các giao diện mạng trong tất cả các phiên bản Windows.
Trên Windows, bạn có thể hiển thị thống kê NetBIOS và các kết nối TCP / IP hiện tại qua NBT bằng lệnh nbtstat. Để lấy tên máy tính theo địa chỉ IP của nó:
nbtstat -A 192.168.131.190
Như bạn có thể thấy, nbtstat đã tìm thấy một máy tính trên mạng cục bộ sử dụng giao thức NetBIOS và trả về tên của nó.
Bạn có thể hiển thị tất cả các bản ghi về các máy tính lân cận trên cùng một mạng cục bộ trong bộ đệm ẩn NetBIOS:
nbtstat -c
NetBIOS và LLMNR giao thức cho phép các máy tính trong mạng cục bộ tìm thấy nhau nếu máy chủ DNS không khả dụng. Có lẽ chúng cần thiết trong môi trường nhóm làm việc, nhưng trong mạng miền, cả hai giao thức này đều có thể bị vô hiệu hóa.
Mẹo . Trước khi triển khai hàng loạt các chính sách này trong miền, chúng tôi thực sự khuyên bạn nên kiểm tra các máy tính và máy chủ có NetBIOS và LLMNR bị vô hiệu hóa. Và nếu thường không có vấn đề gì với việc tắt LLMNR, thì việc tắt NetBIOS có thể làm tê liệt hoạt động của các thiết bị cũ.Tắt LLMNR trên Windows bằng GPO
Bạn có thể tắt giao thức LLMNR trên máy tính Windows cục bộ thông qua sổ đăng ký bằng cách sử dụng các lệnh PowerShell sau:
New-Item "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT" -Name DNSClient -Force
New-ItemProperty "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\DNSClient" -Name EnableMultiCast -Value 0 -PropertyType DWORD -Force
Trong môi trường miền, chương trình phát LLMNR có thể bị vô hiệu hóa trên máy tính và máy chủ bằng cách sử dụng Chính sách nhóm. Để làm điều đó:
- Mở
gpmc.msc
, tạo GPO mới hoặc chỉnh sửa GPO hiện có được áp dụng cho tất cả các máy trạm và máy chủ; - Đi tới Cấu hình máy tính -> Mẫu quản trị -> Mạng -> Máy khách DNS ;
- Bật Tắt độ phân giải tên đa hướng chính sách bằng cách thay đổi giá trị của nó thành Đã bật ;
- Chờ trong khi cài đặt GPO trên máy khách được cập nhật hoặc cập nhật chúng theo cách thủ công bằng lệnh:
gpupdate /force
Tắt NetBIOS qua TCP / IP trên Windows 10 / Windows Server 2019
Lưu ý. NetBIOS có thể được sử dụng bởi các phiên bản Windows cũ (2000, XP, v.v.) và một số thiết bị không phải Windows, do đó, nó phải được kiểm tra trong từng môi trường cụ thể trước khi vô hiệu hóa.Bạn có thể tắt NetBIOS trên Windows theo cách thủ công như sau:
- Mở thuộc tính kết nối mạng
- Chọn TCP / IPv4 và mở các thuộc tính của nó
- Nhấp vào Nâng cao , sau đó chuyển đến WINS và chọn Tắt NetBIOS qua TCP
- Lưu các thay đổi.
Nếu bạn có nhiều bộ điều hợp mạng (hoặc VLAN) trên máy tính của mình, bạn sẽ cần phải tắt NetBIOS trong các thuộc tính của mỗi bộ điều hợp.
Bạn có thể kiểm tra trạng thái NetBIOS qua TCP / IP cho bộ điều hợp mạng từ dấu nhắc lệnh Windows:
ipconfig /all |find "NetBIOS"
NetBIOS over Tcpip . . . . . : Disabled
Bạn cũng có thể tắt NetBIOS cho bộ điều hợp mạng cụ thể thông qua sổ đăng ký. Mỗi bộ điều hợp mạng có một khóa đăng ký riêng trong HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ NetBT \ Parameters \ Interfaces chứa TCPIP_GUID của nó.
Để tắt NetBIOS cho bộ điều hợp cụ thể, hãy chuyển đến khóa reg của nó và thay đổi giá trị của NetbiosOptions tham số thành 2 (nó là 0 theo mặc định).
Bạn có thể tắt NetBIOS trên máy khách miền nhận địa chỉ IP từ máy chủ DHCP Windows bằng cách sử dụng tùy chọn DHCP đặc biệt.
- Chạy
dhcpmgmt.msc
bảng điều khiển, kết nối với máy chủ DHCP và chọn cài đặt vùng Tùy chọn phạm vi (hoặc máy chủ - Tùy chọn máy chủ); - Đi tới Nâng cao và chọn Tùy chọn Microsoft Windows 2000 trong Lớp nhà cung cấp danh sách thả xuống;
- Bật 001 Tùy chọn Microsoft Disable Netbios và thay đổi giá trị của nó thành 0x2 .
Làm cách nào để tắt NetBIOS qua TCP / IP qua Chính sách nhóm?
Không có tùy chọn GPO riêng biệt nào cho phép tắt NetBIOS qua TCP / IP cho tất cả bộ điều hợp mạng trong Group Policy Editor hoặc phiên bản mới nhất của Mẫu quản trị dành cho Windows 10 / Windows Server 2019. Sử dụng tập lệnh đăng nhập PowerShell sau để tắt hoàn toàn NetBIOS cho tất cả bộ điều hợp mạng:
$regkey = "HKLM:SYSTEM\CurrentControlSet\services\NetBT\Parameters\Interfaces"
Get-ChildItem $regkey |foreach { Set-ItemProperty -Path "$regkey\$($_.pschildname)" -Name NetbiosOptions -Value 2 -Verbose}
Lưu mã này vào vô hiệu hóaNetbios.ps1 , sao chép nó vào thư mục GPO của bạn và chạy trên máy khách qua Cấu hình máy tính -> Chính sách -> Cài đặt Windows -> Tập lệnh -> Khởi động-> Tập lệnh PowerShell.
Nếu chính sách thực thi PowerShell hiện tại của bạn đang chặn tập lệnh này chạy trên máy tính Windows, bạn phải ký tập lệnh PS1 hoặc chạy tập lệnh này ở chế độ bỏ qua.Lưu ý . Để thay đổi này có hiệu lực, bạn phải bật / tắt bộ điều hợp mạng hoặc khởi động lại máy tính.
Sau đó, mở dấu nhắc lệnh và chạy lệnh sau để kiểm tra xem NetBIOS có bị tắt đối với bộ điều hợp mạng của bạn (ngoại trừ giao diện đường hầm):
wmic nicconfig get caption,index,TcpipNetbiosOptions