NetBIOS hacking và cách phòng chống
trang này đã được đọc lần
NetBIOS là viết tắt của chữ Network Basic Input Output System. Đầu tiên nó được IBM và Sytek xây dựng
để truy nhập vào các tài nguyên được chia sẻ trong mạng LAN ( Local Area Network ). Tài nguyên trong
mạng có thể là ổ đĩa, máy in , máy scan ....
Nếu bạn đã từng làm việc trong các mạng LAN và sử dụng hệ điều hành Windows ( windows9.x , me, 2000,
XP .... ) thì bạn đã từng bấm đúp chuột vào biểu tượng Network Neghborhood ( hay My Network Places ) để
truy nhập tới các may tính khác trong mạng => đó chính là bạn đã sử dụng một số lệnh của NetBIOS trong
môi trường Winđows.
Mỗi mỗi service trong máy đều làm việc trên một cổng nào đó, NetBIOS cũng được gán cho một số cổng tùy
theo bạn đang sử dụng HDH nào.
TCP 135 RPC/DCE Endpoint mapper
UDP 137 NetBIOS Name Service
UDP 138 NetBIOS Datagram Service
TCP 139 NetBIOS Sesion Service ( SMB/CIFS over NetBIOS
TCP/UDP 445 Direct Host
( SMB - Server Mesage Block
CIFS - Common Internet File System )
Mặc định thì Windows 9.x ( 95,98,98se ), NT4 và Windows2000 sẽ lắng nghe trên cổng 139, nhưng Windows
9.x không lắng nghe trên cổng TCP/UDP 135 ( => chính vì điều này mà đợt vừa qua khi phát hiện ra lỗi RPC ,
Virus Blaster không gây ảnh hưởng gì cho các máy tính đang chạy Windows 9.x ) Windows 2000 và XP cũng
lắng nghe trên các cổng TCP/UDP 445
=> Dựa vào các hiểu biết này và các lệnh của Windows ( các lệnh này thường nằm trong
C:\Windows\system32 - hoặc WinNT \ system32 ) người ta có thể truy nhập vào các máy tinh khác trong
mạng
Tìm kiếm IP của victim
Nhắc lại một tý về IP : IP là một số xác định được gán cho mỗi máy tính trong một mạng nào đó.
IP được biểu diễn là một số 32 bit, các bit đựơc chia thành 4 phần mỗi phần 8 bit ( 1 byte ). Có 3 cách để
biểu diễn cho một địa chỉ IP
Dạng thập phân ( dạng hay dùng nhất ) Ví dụ : 130.57.30.56
Dạng nhị phân : 10000010.00111001.00011110.00111000
Còn nếu bạn sử dụng MSN hay YH, nếu sử dụng lệnh netstat - n có thể bạn không nhìn thấy IP của victim mà
có thể là địa chỉ của Server của MSN hay YH
Để xác định chính xác bạn có thể sử dụng Send File của YH để gửi một file tới victim. Trước khi Send File, sử
dụng lệnh netstat -n để xác định các kết nối đã có
trong khi đang Send file bạn lại sưe dụng lệnh netstat -n +> sau đó tìm địa chỉ IP nào mà mới được thiết lập
=> đó chình là dịa chỉ IP của Victim ( vì khi Send file nó se thiết lập một kết nối trực tiếp giữa máy bạn và
victim )
Sau khi đã có địa chỉ IP của victim bạn sử dụng lênh nbtstat -a ipAddress ( lệnh này dùng để xác đinh một số
thông tin trên máy victim ... )
Ví dụ : C:> nbtstat - a 203.210.136.23 ( <= Đây là địa chỉ mô phỏng thôi đấy nhé - đừng thử )
Bạn có thể nhận được các dòng như sau
NetBIOS remote Machine Name Table
Name Type Status
may1 <00> Unique Registered
netde<00> Group Registered
may1 <03> Unique Registered
may1 <20> Unique Registered
...............................
MAC address 00-32-04-14-23-E6
Ở đây bạn chú ý đến số <20> => Nếu thấy số này có nghĩa là máy victim đã bật chế độ chia sẻ File và máy
in ( File And Printer Sharing )
Tiếp theo ta sử dụng lệnh net view \\ipaddress ( lệnh này dùng để xem máy vic tim chia sẻ những cái gì để
còn .... )
Ví dụ : C:> net view \\203.210.136.23
Bạn có thể thấy các dòng tương tự như ở dưới đây :
Shared resource at \\203.210.136.23
Share name Type User As Comment
C Disk
D Disk
IPC$ Disk
điển để dò và sử dụng lệnh For của DOS để thực hiện
Vídụ tôi sẽ tạo ra một File có tên là DoPass.txt và có định dạng sau :
password username
password Administrator
"" Administrator
admin Administrator
............................................................
Và bấy giờ ta có thể sử dụng lệnh For
C:\FOR /F "token=1,2* " %i in (DoPass.txt ) Do net use \\IpAddressvictim\ShareName
( cú pháp sử dụng của lệnh FOR xin các bạn xem trong help của Windows )
Trước khi tiếp tục chúng ta cần tìm hiểu thêm một số thông tin về dòng Window2000 ( 2000 Pro, 2000 family
và 2000 Advandce server ) và Windows XP. Mặc định sau khi cài đặt xong các hệ điều hành này thì tất cả các
ổ đĩa của và một số thư mục của chúng sẽ được thiết lập ở chế độ Share ẩn-
Thế Sharre ẩn là gì ? Bình thường nếu bạn đã làm việc trong môi trường mạng thì việc chia sẻ các ổ đĩa hay
thư mục bằng cách bấm phím phải chuột trên ổ đĩa hay thư mục và chọn Sharing => Ổ đĩa hay thư mục đó
sẽ xuất hiện trên mạng. Nhưng nếu bây giờ ta thêm vào sau tên của ổ đĩa hay thư mục chia sẻ ký hiệu $ thì
việc chia sẻ vẫn xảy ra nhưng không hiện lên trên mạng và chỉ có người nào biết đường dẫn chính xác mới có
thể sử dụng đựơc các tài nguyên này
Để xem được các thông tin về việc chia sẻ trên máy tính của mình bạn có thể vào Start \ Program \
Administrator Tools \ Computer management sau đó chọn vào mục Shared Folders để kiểm tra lại máy của
mình ( Nếu trong Program chưa có mục Administrator Tools bạn bấm phím phải chuột trên nút Start chọn
properties sau đó chọn mục Display Administrator Tools )
Ví dụ bạn có thể nhìn thấy các thông tin sau :
Sharename Resource Remark
------------------------------------------------------
ADMIN$ C:\WINNT Remote Admin
C$ C:\ Default Share for Internal Use
D$ D:\ Default Share for Internal Use
E$ E:\ Default Share for Internal Use
print$ C:\WINNT\SYSTEM\SPOOL
Area Connetion, chọn TCP/ IP sau đó bấm vào propperties chọn Advandce, chọn WINS và bấm vào Disable
NetBIOS over TCP / IP) là đã chặn đựơc cách thâm nhập vào máy qua NetBIOS
Thực ra việc thiết lập này chỉ chặn trên cổng 139. Khác với NT4, Windows2000 còn chạy một SMB lắng nghe
trên cổng 445. Cổng này vẫn còn Active cho dù NetBIOS over TCP / IP đã đựoc Disable..
Phần Windows SMB cho Cllient từ sau version NT4 SP 6a sẽ tự động chuyển lên cổng 445 nếu như cố gắng
kết nối trên cổng 139 =>
Ta có thể thiết lập một kết nối gọi là " null sesion" tới máy của victim
net use \\192,168.203.33\IPC$ "" /u:"" <= thiết lập một kết nối với anonymuos user (/u) và pass rỗng ("").
Nếu thành công ta cũng có thể sử dụng Net view để xem các tài nguyên được chia sẻ trên máy victim ....
=> Để chống lại ta có thể can thiệp vào Registry :
HKLM \ system \CurrentControlSet \ Control \ LSA \ RestrictAnonymous
Bấm đúp vào key RestrictAnonymous ở panel bên phải và nhập vào trong khung Value 2
RestrictAnonymous có 3 giá trị
0 Đây là gía trị mặc định của nó khi cài Winddows
1 Không cho phép tìm hiểu các thông tin của SAM
2 Không cho phép truy nhập
Ở đây bạn phải lưu ý rằng nêu bạn để RestrictAnonymous với giá trị là 1 thì vẫn có thể dung một số Tool như
user2sid/sid2user hay UserInfor hoặc UserDump .... để lấy được thông tin về user và truy nhập vào máy bạn
được
Nếu thiết lập được một Null sesion tới máy victim ta có thể sử dụng một số Tool để truy nhập vào máy của
victim :
1 - enum
-U is get userlist
-M is get machine list
-N is get namelist dump (different from -U|-M)
-S is get sharelist
-P is get password policy information
-G is get group and member list
-L is get LSA policy information
-D is dictionary crack, needs -u and -f