Tải bản đầy đủ (.doc) (46 trang)

các vấn đề bảo mật window

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (826.68 KB, 46 trang )

ĐỒ ÁN CHUYÊN NGÀNH

ĐẠI HỌC DUY TÂN
KHOA CÔNG NGHỆ THÔNG TIN

ĐỒ ÁN CHUYÊN NGHÀNH ĐẠI HỌC
CHUYÊN NGÀNH :KỸ THUẬT MẠNG
NIÊN KHOÁ 2007-2011

TÊN ĐỀ TÀI:
CÁC VẤN ĐỀ BẢO MẬT WINDOW

SINH VIÊN THỰC HIỆN
Lê Quang Hiển
Lớp:K13TMT
MSSV:132114011

GIẢNG VIÊN HƯỚNG DẪN
Hồ Tiến Sung

SVTH: LÊ QUANG HIỂN

Trang 1


ĐỒ ÁN CHUYÊN NGÀNH

LỜI CAM ĐOAN
Xin cam đoan :
a.


Những nội dung trong báo cáo tốt nghiệp này là do em thực hiện
dưới sự hướng dẫn trực tiếp của thầy Hồ Tiến Sung.

b.

Mọi tham khảo dùng trong báo cáo đồ án chuyên ngành đều được
trích dẫn rõ ràng và trung thực tên tác giả, tên công trình, thời gian, địa
điểm công bố.

c.

Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo,hay gian trá, em
xin chịu hoàn toàn trách nhiệm.

MỤC LỤC

SVTH: LÊ QUANG HIỂN

Trang 2


ĐỒ ÁN CHUYÊN NGÀNH

MỞ ĐẦU

KẾT LUẬN
TÀI LIỆU THAM KHẢO

DANH MỤC HÌNH ẢNH


MỞ ĐẦU
Đặt vấn đề
Windows là hệ điều hành phổ biến nhất trên thế giới, thị phần người sử dụng lớn
nhất hiện nay, chính vì khả năng thân thiện dễ sử dụng của nó khiến người sử
dụng chủ quan về vấn đề bảo mật an toàn thông tin, không hiểu rõ những nguy cơ
mắc phải. Hệ điều hành window luôn tiềm ẩn, những điểm yếu, những lỗi bảo
mật, qua đó những hacker có thể lấy được những thông tin quan trọng. Chúng ta
hãy xem hệ điều hành window có thể bị tấn công như thế nào và đưa ra giải pháp
phòng chống.
Mục tiêu :
Hiểu rõ được các hình thức tấn công vào hệ điều hành window.
Biết được cách bảo vệ máy tính hệ điều hành window chúng ta thường hay sử
dụng .
Phạm vi nghiên cứu
Phạm vi nghiên cứu xoay quanh các điểm yếu về kiến trúc, điểm yếu về giao thức
và lỗ hổng các ứng dụng, dich vụ chạy trên hệ điều hành window mà các kẻ tấn
công lợi dụng vào đó để lấy thông tin, tư liệu của chúng ta.
Phương pháp nghiên cứu
Từ những tài liệu, mô tả các cách tấn công ,những điểm yếu hệ điều hành window,
phân tích và đưa ra các cách phòng chống.
Dùng vnware và một số tools để mô tả một số hình thức tấn công hệ điều hành
window.
Nội dung nghiên cứu:
Nội dung nghiên cứu trong đồ án này gồm có 3 chương :

SVTH: LÊ QUANG HIỂN

Trang 3



ĐỒ ÁN CHUYÊN NGÀNH

-

Chương I: Giới thiệu sơ qua về vấn đề bảo mật của hệ điều hành window

-

hiện nay và những kẻ tấn công nhìn nhận thế nào về hệ điều hành window.
Chương II: Một số hình thức tác động, tấn công phổ biến xảy ra đối với hệ

-

điều hành window .
Chương III: Thực hiện một số hình thức tấn công vào hệ điều hành
window.

CHƯƠNG I: GIỚI THIỆU TỔNG QUAN VỀ BẢO MẬT THÔNG TIN
WINDOW
1.1/Bảo mật thông tin cơ bản
Trong một nền kinh tế toàn cầu hóa như hiện nay thì vấn đề an toàn thông tin được
xem là sự sống còn đối với các doanh nghiệp. Thế nhưng, rất nhiều doanh nghiệp
vẫn chưa nhận thức được tầm quan trọng của vấn đề bảo mật thông tin và những
nguy cơ có thể xảy ra từ việc rò rỉ thông tin trong chính nội bộ của doanh nghiệp
mình.
Theo một số liệu thống kê về vấn đề bảo mật thông tin thì mỗi năm có trên 15.000
hồ sơ của các bệnh viện bị tìm thấy trong thùng rác, 30.000 mật khẩu của các tài
khoản Internet bị công bố trên mạng, 25 người từ phòng phát triển kinh doanh của
công ty này chuyển sang công ty đối thủ, các ngân hàng phải trả hàng triệu USD
do bị tấn công vào hệ thống giao dịch nghiệp vụ và 300.000 số tài khoản tín dụng

cá nhân bị trộm, một số bị công bố trên Web.
Bảo mật thông tin phải được xem xét như là một trách nhiệm quản lý và kinh
doanh, không đơn giản chỉ là yếu tố kỹ thuật cần được giao cho các chuyên gia
công nghệ hay bộ phận IT. Để bảo đảm bảo mật kinh doanh, doanh nghiệp phải
hiểu biết cả các vấn đề của nó và những giải pháp cho vấn đề.
Chính vì thế, việc áp dụng các hệ thống quản lý bảo mật thông tin là việc làm rất
quan trọng của các doanh nghiệp trong thời kỳ nền kinh tế hội nhập toàn cầu hóa
như hiện nay. Hệ thống quản lý bảo mật thông tin là một phần của hệ thống quản
lý toàn diện trong doanh nghiệp, chủ yếu là tiếp cận với rủi ro trong kinh doanh để
thiết lập, thực thi, vận hành, giám sát, xem xét, duy trì và cải thiện bảo mật thông
tin. Hệ thống quản lý bảo mật thông tin bao gồm cơ cấu tổ chức, chính sách, các
hoạt động hoạch định, trách nhiệm, thực hành, quy trình, phương pháp và nguồn
tài nguyên. Bảo mật thông tin không còn là “chuyện nhỏ” với các doanh nghiệp
SVTH: LÊ QUANG HIỂN

Trang 4


ĐỒ ÁN CHUYÊN NGÀNH

khi mà những mối đe dọa việc bảo mật ngày càng nhiều và phức tạp. Theo tiêu
chuẩn ISO/IEC CD 27005 thì có 4 nhóm gây hại đến việc bảo mật thông tin như
các dạng tổn hại vật lý, các sự cố tự nhiên, thất thoát những dịch vụ thiết yếu, ảnh
hưởng do bức xạ. Bên cạnh đó, chúng ta còn thấy hàng ngày những nhân tố có thể
đe dọa đến các đơn vị làm kinh doanh rất lớn như những nhân viên bất mãn, đối
thủ cạnh tranh, nhà đầu tư hay tin tặc.
Không chỉ có sự ngộ nhận “bảo mật thông tin là vấn đề cần quan tâm của quản lý
IT mà rất nhiều doanh nghiệp còn có những ngộ nhận “trầm trọng” khác. Đó là
cách suy nghĩ cho rằng những đe dọa về bảo mật đến từ bên ngoài mới là những
rủi ro lớn nhất, bảo mật thông tin chỉ nhằm bảo đảm bảo vệ hệ thống và cơ sở hạ

tầng công nghệ thông tin, quản lý nhân sự trong bảo mật thông tin không quan
trọng bằng công nghệ, áp dụng những giải pháp công nghệ cao và tiên tiến sẽ làm
tăng tính bảo mật.
1.1.1/Security wheel(vòng tròn bảo mật khép kín)
Security wheel là một thuật ngữ có thể xem như là “vòng tròn bảo mật khép kín”.
4 yếu tố của “ Security wheel “ là Plan, Prevent, Detect, and Respond

Hình 1.1: Vòng tròn bảo mật
Plan(kế hoạch):
An ninh là một khái niệm thách thức, đặc biệt là khi nói đến công nghệ. Khi xem
xét làm thế nào để cung cấp bảo mật, bạn cần bắt đầu lập kế hoạch qua những câu
hỏi như:
- Tài sản gì đang cố gắng để bảo đảm ?
- Yêu cầu bảo mật của tài sản là như thế nào?
- Những rủi ro mắc phải về bảo mật tài sản là gi ?
- Cái nào quan trọng cần ưu tiên ?
Hãy bắt đầu với việc xác định tài sản. Điều này không phải là đơn giản, tài sản có
thể là máy chủ phần cứng, thông tin trong cơ sở dữ liệu, hoặc thậm chí các sở hữu
độc quyền của một tổ chức.
Một khi đã xác định những gì đang cố gắng để bảo đảm, bước tiếp theo là xác định

SVTH: LÊ QUANG HIỂN

Trang 5


ĐỒ ÁN CHUYÊN NGÀNH

các yêu cầu an ninh của mỗi tài sản, nếu có. Như tùy vào độ hữu ích mà cần phân
loại các yêu cầu an ninh như thế nào cho hợp lý. Bảo vệ được tính “bí mật, toàn

vẹn, và sẵn sàng” của tài sản.
Xác định các rủi ro, khi đã thu được một danh sách các mối đe dọa, nên làm một
hệ thống ưu tiên các mối đe dọa nguy hiểm để có thể có được giải pháp hiệu quả.
Prevent(phòng ngừa)
Phòng ngừa luôn rất quan trọng trong việc bảo mật để giảm thiểu rủi ro, thực thi
chính sách an ninh, ngăn chặn những kẻ tấn công
- Giáo dục và đào tạo.
- Truyền thông.
- Bảo an hoạt động.
- An ninh kiến trúc.
Giáo dục và đào tạo là những cách rõ ràng nhất để an ninh trên một tổ chức.
Truyền thông có thể hỗ trợ bằng cách lập lịch trình cập nhật thường xuyên cho các
nhân viên và quản lý.
Hoạt động an ninh bao gồm an ninh chung, chẳng hạn như bản vá bảo mật, quản
lý, phần mềm độc hại, bảo vệ, kiểm soát truy cập, theo dõi phản ứng bảo mật và
tài khoản nhóm bảo mật.
Cuối cùng và có lẽ quan trọng nhất, công việc của một kiến trúc sư an ninh đặc
biệt liên quan đến phát triển ứng dụng, mà phải tuân theo các tiêu chuẩn nghiêm
ngặt và hướng dẫn để tránh những sai lầm tồn tại không thể tránh khỏi xảy ra
trong quá trình phát triển phần mềm. Ngoài ra, vai trò này còn phải thường xuyên
thực hiện việc đánh giá, áp dụng hợp lý các tiêu chuẩn và công nghệ để đảm bảo
rằng các tổ chức đang giữ nhịp độ với hầu hết các tiến bộ.
Detect(phát hiện)
Tìm kiếm và xác định các lỗ hổng bảo mật là một phần quan trọng.
Các quá trình khác rơi vào lĩnh vực phát hiện như:
- Tự động quét lỗi.
- Sự kiện an ninh và quản lý thông tin (SEIM).
- Hệ thống phát hiện xâm nhập (IDS).
- Phát hiện bất thường hệ thống (ADS).
- Kiểm tra an ninh (bao gồm cả sự xâm nhập thử nghiệm).

Respond(xử lý)
Đây là phần khắc phục những lỗ hổng, bảo trì lại hệ thống ổn định, kiểm tra mức
thiệt hại…
1.2/Kết cấu bảo mật window từ quan điểm hacker:
1.2.1/Tổng quan
Ban đầu quan sát để đưa ra về các kiến trúc window là nó có hai tầng. Các lớp đặc
quyền nhất của hệ điều hành gọi là hình thức hạt nhân và quyền truy cập vào tài

SVTH: LÊ QUANG HIỂN

Trang 6


ĐỒ ÁN CHUYÊN NGÀNH

nguyên hệ thống không hạn chế, chúng ta có thể xem hai phương pháp tấn công cơ
bản là tấn công hạt nhân và tấn công chế độ người dùng. Hai phương pháp tiếp cận
cơ bản được minh họa trong hình 1-2, trong đó cho thấy hacker truy cập thông qua
thiết bị vật lý hạt nhân, giao diện truyền thông và cũng tấn công chế độ bảo mật
người sử dụng bằng cách ảnh hưởng đến thông tin của một hệ thống người dùng
hợp lệ (Lưu ý rằng những kẻ tấn công sau đó cũng có thể thỏa hiệp hạt nhân nếu
có được quyền admin).

Hình 1.2: Tấn công bảo mật Windows bằng cách sử dụng cả hai phương pháp
là tiếp cận hạt nhân và chế độ người dùng
Attacking the Kernel(tấn công hạt nhân)
Giao diện chế độ hạt nhân là một ranh giới mà kẻ tấn công có thể vượt qua. Nếu
có thể chèn mã lựa chọn của vào chế độ hạt nhân thì hệ thống này là sẽ bị tổn
thương.
Windows cung cấp các rào cản đáng kể để chạy mã nhị phân trong hình thức hạt

nhân và các đơn vị có đặc quyền thấp khó có thể làm như vậy.
Attacking User Mode(tấn công chế độ người dùng)
Nếu có thể xác thực là một người dùng được ủy quyền của window, sẽ có quyền
truy cập vào tất cả các nguồn tài nguyên và dữ liệu liên quan đến người dùng. Hơn
nữa, nếu có quyền admin, sẽ được tiếp cận với các nguồn tài nguyên và dữ liệu
cho tất cả người dung trên hệ thống.
1.2.2/Vấn đề liên quan đến tài khoản :
Chúng ta luôn nhớ rằng các quy trình phải được liên kết với một tài khoản
người dùng để truy cập một đối tượng được bảo đảm. Phần này sẽ tìm hiểu các

SVTH: LÊ QUANG HIỂN

Trang 7


ĐỒ ÁN CHUYÊN NGÀNH

loại tài khoản khác nhau trong Windows, vì chúng là nền tảng cho hầu hết các
cuộc tấn công chống lại các điều khiển truy cập.
Windows cung cấp ba loại tài khoản cơ bản, được gọi là security principals:
- Users.
- Groups.
- Computers.
Để tìm hiểu về 3 loại tài khoản trên ta cần biết SID là gì?
SID(Security Identification : mã nhận diện bảo mật)
SID là một số định danh mà hệ thống cấp, là một đối tượng duy nhất cho việc cài
đặt hoặc là tên miền trên hệ thống máy tính.
Ví dụ khi window được cài đặt, máy tính địa phương tạo ra một SID ngẫu nhiên.
Tương tự như vậy, khi một miền Windows được tạo ra, nó được gán một SID duy
nhất. Như vậy, đối với bất kỳ máy tính window hoặc tên miền, các giá trị

subauthority sẽ luôn luôn là duy nhất (trừ khi cố ý giả mạo,nhân bản).
Dãy số SID gồm 2 thành phần:
- Domain security ID: Trong cùng domain thì các đối tượng có dãy số này
tương tự nhau.
- Relative Identification (RID) : là con số gắn với SID và RID gắn cho mỗi
SID trong domain là duy nhất (tức là thành phần dùng phân biệt doamin SID
này với domain SID kia ) là 1 số định danh mà hệ thống cấp cho máy tính.

dụ
1
SID:
S-1-5-21-1527495281-13109995113141325392-500
Một SID với 1 kí hiệu S, giá trị đầu tiên 1 là số phiên bản, và thứ hai là giá trị
Identifier Authority là thông tin quan trọng nhất trong SID, thường là định danh
của tổ chức phát hành SID. Sau đó 4 giá trị subauthority (21 và ba chuỗi dài những
con số) và cuối cùng là RID có giá trị 500.
Tuy nhiên, các RID là một giá trị nhất quán trên tất cả các máy tính . Một SID với
RID 500 là luôn luôn đúng với tài khoản Administrator trên một máy địa phương.
RID 501là tài khoản Guest.
User
Khi dùng window sẽ gặp phải những khái niệm tài khoản người dùng và sử dụng
tài khoản để đăng nhập vào hệ thống và để truy cập tài nguyên trên hệ thống
mạng. Một tài khoản tham chiếu là một bối cảnh mà trong đó các hệ điều hành
thực hiện mã. Nói cách khác, tất cả các mã chế độ người dùng thực hiện trong bối
cảnh của một tài khoản người dùng. Thậm chí một số mã số đó chạy tự động trước
khi bất kỳ ai đăng nhập vào (chẳng hạn như dịch vụ) chạy trong ngữ cảnh của một

SVTH: LÊ QUANG HIỂN

Trang 8



ĐỒ ÁN CHUYÊN NGÀNH

tài khoản (thường là các hệ thống đặc biệt và toàn năng, hoặc LocalSystem, tài
khoản).
Tất cả các lệnh gọi của người dùng xác thực thành công bằng cách sử dụng tài
khoản thông tin đang chạy với các đặc quyền của người sử dụng đó. Do đó, các
hành động được thực hiện bởi mã thực thi được giới hạn bởi các đặc quyền cấp
cho các tài khoản đó để thực hiện nó. Mục tiêu của hacker là chạy mã với đặc
quyền cao nhất có thể. Vì vậy, các hacker phải "trở thành" tài khoản với quyền ưu
đãi cao nhất có thể.
Windows có sẵn tài khoản đã được xác định trước các đặc quyền. Các tài khoản
mặc định này bao gồm tài khoản administrator, đây là tài khoản mạnh nhất của tài
khoản người dùng trong Windows. Tài khoản Adminítrator có thể thực hiện các
lệnh hệ thống khá dễ dàng. Mỗi tài khoản đều được giao 1 SID tương ứng với lĩnh
vực từng tài khoản và nó là duy nhất.
Group
Group là một hình thức quản lý rất thuận lợi trong window, chúng chứa các tài
khoản người dùng. Group được sử dụng để phân bổ quyền với số lượng lớn, có thể
có tác động đến an ninh của hệ thống. Bất kỳ tài khoản đặt trong một group đều
thừa hưởng những đặc quyền của group ấy.
Thành viên của nhóm quản trị là những mục tiêu hấp dẫn trên một hệ thống Windows
bởi vì các thành viên của nhóm này thừa hưởng toàn quyền kiểm soát hệ thống địa
phương.
Domain Admins and Enterprise Admins là những mục tiêu rất hấp dẫn trên một miền
Windows vì thành viên của các group này được toàn năng trên mọi máy trong các
domain.Tất cả các nhóm khác có đặc quyền rất hạn chế so với Administrators,
Domain Admins, or Enterprise Admins. Trở thành một local administrator, Domain
Admin hoặc Enterprise Admins ( trực tiếp ảnh hưởng một tài khoản hiện có hoặc

bằng cách thêm một tài khoản đã bị xâm nhập vào của các group) đấy hầu như luôn
luôn là mục tiêu cuối cùng của kẻ tấn công.
Computers (Machine Accounts)
Khi một hệ thống Windows tham gia vào một miền, một computer account được
tạo ra.
Computer accout cơ bản là tài khoản người dùng được sử dụng bởi các máy để
đăng nhập và truy cập tài nguyên. Tên tài khoản gắn thêm một dấu $ với tên của

SVTH: LÊ QUANG HIỂN

Trang 9


ĐỒ ÁN CHUYÊN NGÀNH

máy (machinename $). Để đăng nhập vào một domain, computer account yêu cầu
mật khẩu. Mật khẩu máy tính được quản lý bởi domain controllers.
The SAM and Active Directory
Sam là file trong folder "\system32\config\" chứa thông tin về tài khoản và mật
khẩu của các user trên máy (dưới dạng mã hóa) và không thể sao chép, di chuyển,
xóa hay mở file này khi Windows đang chạy bất kể người sử dụng logon vào máy
với quyền quản trị hệ thống.
Nhưng trong thưc tế có rất nhiều cách để có được file Sam và việc giải mã nó cũng
chỉ là vấn đề thời gian.
Active Directory là một cơ sở dữ liệu của các tài nguyên trên mạng cũng như các
thông tin liên quan đến các đối tượng đó.
AD lưu giữ một danh sách tập trung tên tài khoản người dùng, mật khẩu tương
ứng và các tài khoản máy tính.
Cung cấp một Server đóng vai trò chứng thực (authentication server) hoặc Server
quản lý đăng nhập (logon Server), Server này còn gọi là domain controller,

duy trì một bảng hướng dẫn hoặc một bảng chỉ mục (index) giúp các máy tính
trong mạng có thể tìm nhanh một tài nguyên nào đó trên các máy tính khác trong
vùng.
Cho phép chúng ta tạo ra những tài khoản người dùng với những mức độ quyền
(rights) khác nhau như :
Toàn quyền trên hệ thống mạng, chỉ có quyền backup dữ liệu hay shutdown
Server từ xa ...
Cho phép chúng ta chia nhỏ miền của mình ra thành các miền con (subdomain)
hay các đơn vị tổ chức OU (Organizational Unit). Sau đó chúng ta có thể ủy quyền
cho các quản trị viên bộ phận quản lý từng bộ phận nhỏ.
Domain, Domain Tree, Forest
Domain là đơn vị chức năng nòng cốt của cấu trúc logic Active Directory(dịch vụ
quản lý thư mục). Nó là phương tiện để qui định một tập hợp những người dùng,
máy tính, tài nguyên chia sẻ có những qui tắc bảo mật giống nhau từ đó giúp cho
việc quản lý các truy cập vào các Server dễ dàng hơn.
Domain đáp ứng ba chức năng chính sau :
- Đóng vai trò như một khu vực quản trị (administrator boundary) các đối tượng,
là một tập hợp các định nghĩa quản trị cho các đối tượng chia sẻ như : có chung
một cơ sở dữ liệu thư mục, các chính sách bảo mật, các quan hệ uỷ quyền với các
domain khác.
SVTH: LÊ QUANG HIỂN

Trang 10


ĐỒ ÁN CHUYÊN NGÀNH

- Giúp chúng ta quản lý bảo mật các tài nguyên chia sẻ.
- Cung cấp các server dự phòng làm chức năng điều khiển vùng (domain
controller), đồng thời đảm bảo các thông tin trên các server này đựơc đồng bộ

nhau.
Domain Tree là cấu trúc bao gồm nhiều domain được sắp xếp có cấp bậc theo cấu
trúc hình cây. Domain tạo ra đầu tiên đựơc gọi là domain root và nằm ở gốc của
cây thư mục. Tất cả các domain tạo ra sau sẽ nằm bên dưới domain root và được
gọi là domain con(child domain). Tên của các con phải khác biệt nhau.
Khi một domain root và ít nhất một domain con được tạo ra thì hình thành một cây
domain. Khái niệm này sẽ thường nghe thấy khi làm việc với một dịch vụ thư mục
và có thể thấy cấu trúc sẽ có hình dáng của một cây khi có nhiều nhánh xuất hiện.
Forest (rừng) được xây dựng trên một hoặc nhiều Domain Tree, nói cách khác
Forest là tập hợp các Domain Tree có thiết lập quan hệ và ủy quyền cho nhau.
Ví dụ giả sử một công ty nào đó, chẳng hạn như Microsoft, thu mua một công ty
khác. Thông thường, mỗi công ty đều có một hệ thống Domain Tree riêng để tiện
quản lý, các cây này sẽ được hợp nhất với nhau bằng một khái niệm là rừng.
Vậy những ảnh hưởng của thỏa hiệp Domain là gi ?
Nếu một domain trong forest bị xâm nhập thì có nghĩa một hacker sẽ thực thi trên
bộ điều khiển domain trong một Internet-facing domain, hoặc một nhân viên bất
mãn đột nhiên quyết định tấn công Domain Admin. Ít nhất, mỗi miền khác trong
rừng đều có nguy cơ bởi vì domain admin của bất kỳ domain trong forest có khả
năng mất quyền sở hữu và sửa đổi bất kỳ thông tin nơi chứa cấu hình của Active
Directory và có thể bị tái tạo thay đổi bất kỳ bộ điều khiển domain trong forest.
Ngoài ra, nếu có tài khoản domain bên ngoài được chứng thực trong lĩnh vực bị
xâm phạm, những kẻ tấn công có thể thu lượm những thông tin thông qua bộ nhớ
cache LSA Secrets để mở rộng ảnh hưởng của mình đến domain trong các forest
khác. Cuối cùng, nếu các root domain bị xâm phạm, các thành viên có tiềm năng
của Enterprise Admins or Schema Admins có thể phát huy quyền kiểm soát các
khía cạnh của domain khác trong 1 forest, trừ khi các nhóm này đã có hạn chế truy
cập bằng tay.

SVTH: LÊ QUANG HIỂN


Trang 11


ĐỒ ÁN CHUYÊN NGÀNH

CHƯƠNG II: CÁC HÌNH THỨC TẤN CÔNG WINDOW VÀ CÁCH
PHÒNG THỦ
2.1/Footprinting and Scanning
2.1.1/Footprinting(thu thập)
Là hệ thống hoá các thông tin mục tiêu của tổ chức mà kẻ tấn công có thể xâm
nhập, sơ lược các đặc điểm bảo mật của hệ thống bằng cách sử dụng các công cụ,
các kỹ thuật… và đưa ra số lượng không cụ thể lắm về dung lượng đường truyền
kết nối internet của mục tiêu, giảm đi đáng kể số lượng các domain mục tiêu, các
mạng trong, các dải địa chỉ IP hoặc các hệ thống trực tiếp ra internet. Tuy nhiên có
rất nhiều kiểu thu thập thông tin mục tiêu footprinting nhưng họ thường chú ý đến
các thông tin quan trọng như sau:
- Công nghệ .
- Mạng Internet Domain.
- Các khối mạng.
- Địa chỉ IP đặc biệt của hệ thống kết nối ra internet.
- Các dịch vụ TCP, UDP chạy độc lập trên từng hệ thống.
- Cấu trúc hệ thống.
- Kỹ thuật truy cập, điều khiển và danh sách liên quan đến truy cập và điều
khiển.
- Hệ thống phát hiện xâm nhập.
- Mạng LAN và giao thức mạng được sử dụng
- Tên miền của mạng LAN.
- Hệ thống liệt kê (người dùng và nhóm người dùng, hệ thống quan trọng, hệ
dẫn đường, định tuyến và thông tin về SNMP).
- Truy nhập từ xa Tín hiệu/số điện thoại.

- Kiểu truy cập từ xa.
SVTH: LÊ QUANG HIỂN

Trang 12


ĐỒ ÁN CHUYÊN NGÀNH

- Kỹ thuật nhận dạng.
- Mạng ảo và các giao thức liên quan (Ipsecurity và PPP).
- Mạng WAN kết nối nguyên bản và điểm truy cập.
- Kỹ thuật truy cập.
Kỹ thuật thu thập thông tin mục tiêu rất cần thiết để hệ thống hoá và phương pháp
hoá nhằm mục đích rằng tất cả các thông tin đã kể trên được xác định rõ ràng. Nếu
thiếu phương pháp này, bạn dường như đã bỏ qua mục thông tin quan trọng liên
quan đến các đặc tính kỹ thuật của mục tiêu. Thu thập thông tin mục tiêu thường
là một bước khó khăn khi xác định về thực tế bảo mật của hệ thống. Tuy nhiên nó
vẫn là một phần quan trọng không thể thiếu được.
2.1.1.1/Whois
Nhiều công cụ có thể được sử dụng để tìm dấu chân sự hiện diện trên Internet của
tổ chức, nhưng nhiều nhất, toàn diện và hiệu quả công cụ là whois, tiện ích tiêu
chuẩn cho truy vấn đăng ký Internet. Nó cung cấp nhiều loại thông tin về Internet
của tổ chức bao gồm:
- Đăng ký dữ liệu Internet.
- Thông tin tổ chức.
- Hệ thống tên miền (DNS) server.
- Khối địa chỉ mạng.
- Point of contact (POC) information(Thông tin liên lạc của cá nhân sở hữu
địa chỉ, email, phone).
Phòng tránh

Khi đăng ký tên miền Internet có các tùy chọn để bảo vệ thông tin này đã trở nên
tốt hơn có thể giấu đi thông tin quan trọng như đăng ký tên miền dữ liệu (tên, địa
chỉ, và số điện thoại cho địa chỉ liên hệ hành chính và kỹ thuật sẽ được thay đổi.
Phải phí một khoản phí hàng năm cho tính năng này.
2.1.1.2/Internet Search Engines(công cụ tìm kiếm trên mạng)
Xác định hệ thống window trong các trang web cụ thể trên Internet là khá dễ dàng
bằng cách sử dụng một công cụ tìm kiếm (google) xác định phạm vi hoạt động .
Mục đầu tiên là xác định phạm vi hoạt động, mức độ thu thập thông tin về mục
tiêu. Cần phải biết được các thông tin cơ bản của tổ chức hoặc công ty muốn thâm
nhập. May mắn thay mạng Internet có thể giúp chúng ta một cách hữu hiệu trong
việc thu thập thông tin về mục tiêu, giới hạn phạm vi của nó. Khởi điểm của việc
thu thập thông tin mục tiêu là xem tổ chức muốn xâm nhập có trang web riêng
không. Thông thường các trang web này cung cấp một số thông tin bổ ích cho
chúng ta như họ có bao nhiêu trang web liên quan, các tên miền liên quan. Chúng
ta có thể tham khảo được hệ thống tường lửa của họ trên máy chủ.

SVTH: LÊ QUANG HIỂN

Trang 13


ĐỒ ÁN CHUYÊN NGÀNH

Các mục mà hacker quan tâm gồm có:
- Vùng mục tiêu.
- Kết hợp các thông tin thu thập được.
- Các thành viên liên quan của mục tiêu.
- Điện thoại, địa chỉ liên lạc, địa chỉ email.
- Chính sách bảo mật, kiểu bảo mật.
- Các kết nối đến các webserver khác có liên quan.

Tiếp theo là việc tham khảo các mã nguồn của trang web, rất nhiều thông tin
không xuất hiện trên trang web nhưng lại được cất dấu rất kỹ trong mã nguồn, cụ
thể ở đấy là HTML, trong các thẻ của ngôn ngữ này. Tất nhiên là việc xem mã
nguồn offline sẽ nhanh hơn rất nhiều lần so với online do vậy chúng ta nên ánh xạ
trang web đó và xem chúng offline.
Sau khi nghiên cứu các mã nguồn của trang web sẽ có được thông tin cần thiết đầu
tiên của mục tiêu.
Phòng tránh
Có lẽ thì điều cần làm nhất để phòng tránh chuyện này là phải cẩn thận với từng
thông tin đưa lên web.
2.1.2/Scanning(quét)
Nếu như footprinting là xác định các thông tin mục tiêu thì Scanning là cách để
quét và tìm kiếm các cổng và trich xuất thông tin từ đây. Trong phần trên đã đề
cập đến danh sách các mạng cùng với các dải địa chỉ IP qua Whois và vùng mục
tiêu. Các kỹ thuật đó đã cung cấp cho những thông tin của vùng mục tiêu như địa
chỉ IP, số điện thoại, DNS servers và mail servers. Trong phần này nói đến việc
xác định rằng hệ thống mục tiêu đang lắng nghe và tiếp vận với mạng internet
bằng cách sử dụng các kỹ thuật như ping, post scans và các công cụ khác.
Một điều rất quan trọng phải ghi nhớ là địa chỉ IP mà chúng ta đã liệt kê chưa chắc
nó đã là điạ chỉ trên mạng internet. Phải kiểm tra từng dải địa chỉ IP xem nó có
còn tồn tại hay không. Nếu có, bao nhiêu cổng đang mở và lắng nghe ở cổng
bao nhiêu.
Scanning bao gồm ba thành phần chính:
- Ping sweeps.
- Port scans.
- Banner grabbing.
2.1.2.1/Ping sweeps
Xác định hệ thống đang "sống" hay không rất quan trọng vì có thể hacker ngừng
ngay tấn công khi xác định hệ thống đó đã "chết". Việc xác định hệ thống có


SVTH: LÊ QUANG HIỂN

Trang 14


ĐỒ ÁN CHUYÊN NGÀNH

"sống" hay không có thể sử dụng kỹ thuật Ping Scan hay còn gọi với tên là Ping
Sweep. Bản chất của quá trình Ping Sweep là gì ? Bản chất của quá trình này là
mong đợi một ICMP Reply. Gửi một ICMP Echo Request đến máy chủ mà hacker
đang muốn tấn công và công cụ có sẵn là sử dụng lệnh ping có sẵn trên Windows
hoặc sử dụng những chương trình chuyên dụng sau: Pinger, Friendly Pinger, và
WS Ping Pro , Hping2.

Hình 2.1: Ping google thành công
Đa số các firewall thì luôn luôn chặn Ping do vậy việc phòng chống Ping Sweep
rất dễ dàng. Lý do chặn ICMP ngoài việc chống Ping Sweep vì nếu như có
firewall nào mà chưa chặn thì hacker cũng có thể lợi dụng ICMP để gởi backdoor
trên giao thức này.
Như vậy, mặc dù Ping Scan vẫn hữu ích cho nhanh chóng nhưng vẫn thực sư chưa
hiệu quả, cách tốt hơn để xác định máy chủ còn sống là để xác định xem liệu nó có
đang chạy bất kỳ dịch vụ nào hay không, để làm được việc này ta nên sử dụng
Port scans.
2.1.2.2/Port scans
Là việc lắng nghe các dịch vu hay các cổng của một hệ thống và nhìn thấy khi
chúng trả lời.
Điển hình là việc kết nối dịch vụ WWW đang chạy trên TCP bằng port 80.
Attacker thường quét các cổng từ 1100 trên một hệ thống để xác định xem liệu
có các dịch vụ thông thường như mail (TCP 25) và Web (TCP 80) là luôn chạy
trên máy chủ.


SVTH: LÊ QUANG HIỂN

Trang 15


ĐỒ ÁN CHUYÊN NGÀNH

Hình 2.2: Cấu tạo 1 gói tinTCP
Các Flag trong gói tin TCP nhằm mục đích sử dụng để Scan Port:
- Thông số SYN để yêu cầu kết nối giữa hai máy tính.
- Thông số ACK để trả lời kết nối giữa hai máy có thể bắt đầu được thực hiện.
- Thông số FIN để kết thúc quá trình kết nối giữa hai máy.
- Thông số RST từ Server để nói cho Client biết rằng giao tiếp này bị cấm
(không thể sử dụng).
- Thông số PSH sử dụng kết hợp với thông số URG.
- Thông số URG sử dụng để thiết lập độ ưu tiên cho gói tin này.
TCP Scan
Trên gói TCP/UDP có 16 bit dành cho Port Number điều đó có nghĩa nó có từ
165535 port. Không một hacker nào lại scan toàn bộ các port trên hệ thống,
chúng chỉ scan những port hay sử dụng nhất thường chỉ sử dụng scan từ port 1 tới
port 1024 mà thôi.
Dựa vào các nguyên tắc truyền thông tin của TCP có thể Scan Port nào mở trên hệ
thống bằng nhưng phương thức sau đây:
- SYN Scan: Khi Client bắn gói SYN với một thông số Port nhất định tới
Server nếu server gửi về gói SYN/ACK thì Client biết Port đó trên Server được
mở. Nếu Server gửi về cho Client gói RST/SYN thì biết port đó trên Server
đóng.
- FIN Scan: Khi Client chưa có kết nối tới Server nhưng vẫn tạo ra gói FIN với
số port nhất định gửi tới Server cần Scan. Nếu Server gửi về gói ACK thì

Client biết Server mở port đó, nếu Server gửi về gói RST thì Client biết Server
đóng port đó.

SVTH: LÊ QUANG HIỂN

Trang 16


ĐỒ ÁN CHUYÊN NGÀNH

- NULL Scan Sure: Client sẽ gửi tới Server những gói TCP với số port cần
Scan mà không chứa thông số Flag nào, nếu Server gửi lại gói RST thì tôi biết
port đó trên Server bị đóng.
- XMAS Scan Sorry: Client sẽ gửi những gói TCP với số Port nhất định cần
Scan chứa nhiều thông số Flag như: FIN, URG, PSH. Nếu Server trả về gói
RST tôi biết port đó trên Server bị đóng.
- TCP Connect: Phương thức này rất thực tế nó gửi đến Server những gói tin
yêu cầu kết nối thực tế tới các port cụ thể trên server. Nếu server trả về gói
SYN/ACK thì Client biết port đó mở, nếu Server gửi về gói RST/ACK Client
biết port đó trên Server bị đóng.
- ACK Scan: dạng Scan này nhằm mục đích tìm những Access Controll List
trên Server. Client cố gắng kết nối tới Server bằng gói ICMP nếu nhận được
gói tin là Host Unreachable thì client sẽ hiểu port đó trên server đã bị lọc.
Có vài dạng Scan cho các dịch vụ điển hình dễ bị tấn công như:
- RPC Scan: Cố gắng kiểm tra xem hệ thống có mở port cho dịch vụ RPC
không.
- Windows Scan tương tự như ACK Scan, nhưng nó có thể chỉ thực hiện trên
một số port nhất định.
- FTP Scan: Có thể sử dụng để xem dịch vụ FTP có được sử dụng trên Server
hay không.

- IDLE cho phép kiểm tra tình trạng của máy chủ.
UDP Scan
Nếu như gói tin truyền bằng TCP để đảm bảo sự toàn vẹn của gói tin sẽ luôn được
truyền tới đích. Gói tin truyền bằng UDP sẽ đáp ứng nhu cầu truyền tải dữ liệu
nhanh với các gói tin nhỏ. Với quá trình thực hiện truyền tin bằng TCP kẻ tấn
công dễ dàng Scan được hệ thống đang mở những port nào dựa trên các thông số
Flag trên gói TCP.

SVTH: LÊ QUANG HIỂN

Trang 17


ĐỒ ÁN CHUYÊN NGÀNH

Hình 2.3: Cấu tao gói UDP
Như ta thấy gói UDP không chứa các thông số Flag, cho nên không thể sử dụng
các phương thức Scan port của TCP sử dụng cho UDP được. Thật không may hầu
hết hệ thống đều cho phép gói ICMP. Nếu một port bị đóng, khi Server nhận được
gói ICMP từ client nó sẽ cố gắng gửi một gói ICMP với nội dung là "unreachable"
về Client. Khi thực hiện UDP Scan hãy chuẩn bị tinh thần nhận được các kết quả
không có độ tin cậy cao.
Scan Port với Nmap.
Nmap là một tool scan port rất mạnh và đã nổi danh từ lâu được giới hacker tin
dùng. Nó hỗ trợ toàn bộ các phương thức scan port, ngoài ra nó còn hỗ trợ các
phương thức scan hostname, service chạy trên hệ thống đó.
Nmap hiện giờ có cả giao diện đồ hoạ và giao diện command line cho người dùng.
Các dạng Scan nmap hỗ trợ.
-Nmap –sT: trong đó chữ s – là Scan, còn chữ T là dạng TCP scan.
-Nmap –sU: đó là sử dụng UDP Scan.

-Nmap –sP: sử dụng Ping để scan.
-Nmap –sF: sử dụng FIN Scan.
-Nmap –sX: sử dụng phương thức XMAS Scan.
-Nmap –sN: sử dụng phương thức NULL Scan.
-Nmap –sV: sử dụng để Scan tên các ứng dụng và version của nó.
-Nmap –SR /I RPC sử dụng để scan RPC.
Các option cao cấp kết hợp với các dạng Scan trong Nmap.
- O: sử dụng để biết hệ điều hành chạy trên máy chủ ví như ta dùng Nmap sử
dụng phương thức scan là XMAS Scan và đoán biết hệ điều hành của
www.vnexperts.net ta dùng câu lệnh:
nmap –sX –o www.vnexperts.net

- P : giải port sử dụng để scan.
- F : Chỉ những port trong danh sách scan của Nmap.
- V: Sử dụng Scan hai lần nhằm tăng độ tin cậy và hiệu quả của phương thức
scan nào ta sử dụng.
- P0: không sử dụng ping để Scan nhằm mục đích giảm thiểu các quá trình quét
ngăn chặn scan trên các trang web hay máy chủ.
SVTH: LÊ QUANG HIỂN

Trang 18


ĐỒ ÁN CHUYÊN NGÀNH

Ví như muốn Scan trang web www.vnexperts.net bằng phương thức UDP Scan
số port nên sử dụng là từ 11024 và sử dụng hai lần để nâng cao hiệu quả, khi
scan sẽ không ping tới trang này:
Nmap –sU –P ‘1-1024’ –V –P0 www.vnexperts.net


Ngoài ra nmap còn hỗ trợ tính năng scan ẩn nhằm tránh những quá trình quét
trên server như sử dụng:
- Ddecoy_host1, decoy2… để sử ẩn quá trình Scan.
Ngoài ra nmap còn cho chúng ta những options để output kết quả ra nhiều định
dạng file khác nhau.

Hình 2.4: Dịch vụ Windows TCP / UDP phổ biến
Phòng tránh
Xây dựng hệ thống IDS ,IPS, firewall cho hệ thống nhằm phát hiện và ngăn chặn
kịp thời khi nhận thấy server hoặc network của mình bị scanning.
Kiểm tra và đóng các port , trừ các port cần thiết sử dụng cho việc liên lạc thông
tin.
2.1.2.3/Banner grabbing

SVTH: LÊ QUANG HIỂN

Trang 19


ĐỒ ÁN CHUYÊN NGÀNH

Là cách xác định thông tin banner có thể được đọc khi kết nối với các dịch vụ
trong một cổng quét.
Thông tin Banner có thể tiết lộ các loại phần mềm sử dụng (ví dụ web server là
IIS) và có thể là xác định được hệ điều hành.
Lấy Banner cũng có thể được thực hiện đối với các port cá nhân sử dụng một công
cụ đơn giản như telnet hoặc netcat.
Ví dụ:
$ telnet www2.mydomain.com 80
Trying

www2.mydomain.com...
Connected to www2.mydomain.com.
Escape character
is '^]'.
HEAD /somefile.txt HTTP/1.0
HTTP/1.1 404 Object Not Found
Server: Microsoft-IIS/5.0
Date: Thu, 25 Apr 2004 14:35:23 GMT
Content-Length: 460
Content-Type: text/html
Connection closed by foreign host

Ví dụ trên đây cho ta thấy máy chủ dùng IIS 5.0 như vậy hệ điều hành có thể là
window 2000.
Phòng tránh
Sửa đổi banner để hacker nhận diện sai về hệ thống.
Có thể dùng phần mềm chống banner grabbing như Server Mask , IIS Lockdown.
2.2/Enumeration (điểm danh)
Giả sử việc thực hiện các bước Footprinting và Scanning đều không thành công
hoặc những thông tin thu được không thể đủ để phát động một cuộc tấn công tức
thời nào, hacker sẽ chuyển sang phương pháp định danh các tài khoản người dùng
hợp lệ hoặc các tài nguyên dùng chung không được bảo vệ kỹ.

SVTH: LÊ QUANG HIỂN

Trang 20


ĐỒ ÁN CHUYÊN NGÀNH


Enumeration là một cách để trích các tài khoản hợp lệ hoặc các tài nguyên từ hệ
thống. Sự khác biệt chính giữa các kỹ thuật thu thập thông tin Foot Printing,
scanning và kỹ thuật enumeration nằm ở cấp xâm nhập của hacker. Enumeration
liên quan đến các tuyến nối tích cực với các hệ thống và các truy vấn có định
hướng. Phần lớn thông tin thu thập được qua kỹ thuật enumeration thoạt nhìn có
vẻ như vô hại. Tuy nhiên, những thông tin rò rĩ từ lỗ hổng theo sau nó có thể gây
tai hại. Nói chung, sau khi enumeration một tên người dùng hoặc một phần dùng
chung hợp lệ, vấn đề còn lại là thời gian trước khi hacker đoán được mật hiệu
tương ứng hoặc tìm ra các điểm yếu kết hợp với các giao thức chia sẽ tài nguyên.
Enumeration của chương này sẽ chú trọng vào các vấn đề sau:
- NetBIOS Name Service enumeration.
- Server Message Block (SMB) enumeration.
- Active Directory Enumeration.
NetBIOS là một từ viết tắt cho mạng Basic Input / Output System. Nó cung cấp
các dịch vụ liên quan đến lớp phiên của mô hình OSI cho phép các ứng dụng trên
các máy tính riêng để giao tiếp qua một mạng cục bộ. Thật sự như một
API(Application programming interface: giao diện lập trình ứng dụng), NetBIOS
không phải là một giao thức mạng. Trong các mạng hiện đại, NetBIOS bình
thường chạy trên giao thức TCP / IP thông qua NetBIOS qua giao thức TCP / IP
(NBT). Điều này dẫn đến từng máy tính trong mạng có cả một tên NetBIOS và
một địa chỉ IP tương ứng với một (có thể khác nhau) tên máy chủ.
NetBIOS name là cơ chế đặt tên cho các tài nguyện trong 1 hệ thống theo “không
gian phẳng” (không có khái niệm phân cấp). Mỗi tài nguyên được mô tả bằng 1
chuỗi dài 16 ký tự : 15 ký tự đầu mô tả tên tài nguyên, ký tự thứ 16 mô tả loại tài
nguyên.
NetBIOS name có 2 cơ chế phân giải tên :
- Phân giải bằng broadcast.
- Phân giải qua 1 Name Server: trong hệ thống phải có 1 máy làm Name Server.
Các máy còn lại gọi là client. Khi client khởi động lên, nó sẽ đăng ký những tài
nguyên nó có (các NetBIOS Name) với Name Server. Khi cần truy vấn thay vì

dùng Broadcast, các client sẽ truy vấn Name Server.
Name Services
SVTH: LÊ QUANG HIỂN

Trang 21


ĐỒ ÁN CHUYÊN NGÀNH

Để bắt đầu phiên hoặc phân phối datagrams, một ứng dụng phải đăng ký NetBIOS
name của nó bằng cách sử dụng các name services. NetBIOS name là 16 byte
chiều dài và khác nhau dựa trên việc thực hiện cụ thể. Thường xuyên, các byte 16
được sử dụng để chỉ một loại tên duy nhất, tương tự như việc sử dụng các cổng
trong giao thức TCP / IP.

Hình 2.5: Các loại window service thường hay bị enumeration
Enumerating Domains with Net View
Net view là một dòng lệnh cực kỳ đơn giản, tiện ích sẽ liệt kê các tên miền có sẵn
trên mạng và sau đó đưa ra thông tin tất cả các máy trong miền. Đây là cách để liệt
kê các tên miền trên mạng bằng cách sử dụng net view.
Vi dụ:
C:\>net view /domain
Domain
---------------------------------------------------------------------CORLEONE
BARZINI_DOMAIN
TATAGGLIA_DOMAIN
BRAZZI
The command completed successfully

Hay liệt kê các máy trong cùng domain:

C:\>net view /domain:corleone
SVTH: LÊ QUANG HIỂN

Trang 22


ĐỒ ÁN CHUYÊN NGÀNH
Server Name Remark
---------------------------------------------------------------------\\VITO Make him an offer he can't refuse
\\MICHAEL Nothing personal
\\SONNY Badda bing badda boom
\\FREDO I'm smart
\\CONNIE Don't forget the cannoli

Dumping the NetBIOS Name Table with Nbtstat and Nbtscan
Với câu lệnh ntbstat ta có thể gọi bảng NetBIOS Name từ 1 hê thống từ xa, chúng
rất nhiều thông tin, như thể hiện ở ví dụ sau:
C:\>nbtstat -A 192.168.202.33
Local Area Connection:
Node IpAddress: [192.168.234.244] Scope Id: []
NetBIOS Remote Machine Name Table
Name Type Status
--------------------------------------------CAESARS <00> UNIQUE Registered
VEGAS2 <00> GROUP Registered
VEGAS2 <1C> GROUP Registered
CAESARS <20> UNIQUE Registered
VEGAS2 <1B> UNIQUE Registered
VEGAS2 <1E> GROUP Registered
VEGAS2 <1D> UNIQUE Registered
..__MSBROWSE__.<01> GROUP Registered

MAC Address = 00-01-03-27-93-8F

Các tiện ích nbtstat có hai nhược điểm: nó được giới hạn hoạt động trên một máy
chủ duy nhất tại một thời gian, và nó có đầu ra khá khó hiểu. Cả hai của vấn đề
được giải quyết bởi công cụ miễn phí nbtscan từ Alla Bezroutchko. Nbtscan sẽ
"nbtstat" một mạng lưới toàn bộ với tốc độ cao và định dạng đầu ra rõ ràng :
C:\>nbtscan 192.168.234.0/24
Doing NBT name scan for adresses from 192.168.234.0/24
IP address NetBIOS Name Server User MAC address
SVTH: LÊ QUANG HIỂN

Trang 23


ĐỒ ÁN CHUYÊN NGÀNH
--------------------------------------------------------------------192.168.234.31 PRNTSRV <server> PRINT 00-50-da-30-1e-0f
192.168.234.34 LAPTOP <server> <unknown> 00-b0-d0-56-bfd4
192.168.234.43 LUXOR <server> <unknown> 00-01-03-24-05-7e
192.168.234.44 LUXOR <server> <unknown> 00-02-b3-16-db-2e
192.168.234.46 CAESARS <server> <unknown> 00-d0-b7-1f-e8b0

Phòng tránh:
Tất cả các kỹ thuật trước đó hoạt động trên các NetBIOS name services cách tốt
nhất để ngăn chặn các hoạt động này là chặn truy cập vào các cổng này bằng cách
sử dụng một router, firewall.
2.2.2/SMB enumeration
SMB (Server Message Block) là giao thức mạng mức cao, cung cấp cấu trúc và
ngôn ngữ yêu cầu chia sẻ file giữa client và server. Giao thức này cung cấp các
lệnh để mở, đọc, ghi và đóng file qua môi trường mạng và cũng có thể cung cấp
truy cập vào các dịch vụ Directory.

SMB Enumeration: Null Sessions
Null Session, được gọi là IPC$ trên máy chủ nền tảng Windows chạy port
139/445, là một dạng kết nối nặc danh tới một mạng chia sẻ cho phép người dùng
trong mạng truy cập tự do.
Tấn công Null Session đã xuất hiện kể từ khi Windows 2000 được sử dụng rộng
rãi, tuy nhiên, hình thức tấn công này không được các quản trị viên hệ thống chú ý
khi áp dụng các biện pháp bảo mật mạng. Điều này có thể dẫn đến kết cục khôn
lường vì tin tặc có thể sử dụng hình thức tấn công này để lấy mọi thông tin hữu
dụng cần thiết để giành quyền truy cập từ xa vào hệ thống. Mặc dù không còn mới
mẻ, nhưng tấn công Null Session vẫn phổ biến và nguy hiểm như những năm
trước đây. Xét về một khía cạnh nào đó, mặc dù khả năng bảo mật của các hệ
thống hiện đại không phải quá yếu nhưng khi thực hiện các cuộc thử nghiệm xâm
nhập trên máy tính window thì kết quả cho thấy Null Session vẫn là một trong
những hình thức cần lưu ý.

SVTH: LÊ QUANG HIỂN

Trang 24


ĐỒ ÁN CHUYÊN NGÀNH

Phương thức hoạt động của Null Session
Một phiên truy cập từ xa được tạo lập khi người dùng đăng nhập từ xa vào một
máy tính sử dụng một tên người dùng và mật khẩu có quyền truy cập vào tài
nguyên hệ thống.Tiến trình đăng nhập này được thực hiện qua giao thức SMB
(Server Message Block) và dịch vụ Windows Server. Những kết nối này hoàn toàn
hợp pháp khi những thông tin đăng nhập chính xác được sử dụng.
Một Null Session xảy ra khi người dùng thực hiện kết nối tới một hệ thống
window mà không sử dụng tên người dùng hay mật khẩu. Hình thức kết nối này

không thể thực hiện trên bất kỳ hình thức chia sẻ window thông thường nào, tuy
nhiên lại có thể thực hiện trên chia sẻ quản trị IPC (Interprocess Communication).
Chia sẻ IPC được các tiến trình của Windows sử dụng (với tên người dùng là
SYSTEM) để giao tiếp với các tiến trình khác qua mạng này. Chia sẻ IPC chỉ
được giao thức SMB sử dụng.
Chia sẻ không yêu cầu thông tin đăng nhập IPC thường được sử dụng cho những
chương trình giao tiếp với một chương trình khác, tuy nhiên không có gì đảm bảo
rằng người dùng không thể kết nối tới một máy tính bằng kết nối IPC này. Kết nối
IPC không chỉ cho phép truy cập không giới hạn vào máy tính, mà còn trao quyền
truy cập vào tất cả các máy tính trên mạng và đây là những gì mà tin tặc cần để
xâm nhập hệ thống.
Kết nối Null Session có thể được thiết lập trực tiếp từ một lệnh Windows mà
không cần sử dụng công cụ bổ sung, đó chính là lệnh NET. Lệnh NET có thể thực
hiện nhiều chức năng quản trị, khi sử dụng lệnh này chúng ta có thể tạo một kết
nối tới một chia sẻ tiêu chuẩn trên máy chủ đích.
Vi du: thực hiện tấn công null session
C:\>net use \\192.168.202.33\IPC$ "" /u:""
The command completed successfully

IPC$ từ viết tắc của Internet Process Connection là một tài nguyên Share mặc định
cho quyền admin.Có thể thông qua ID và passwork để có được quyền hạng tương
ứng. Nếu thành công, kẻ tấn công bây giờ có thể lấy được thông tin nhiều nhất có
thể từ mục tiêu: thông tin mạng, shares, người sử dụng, các nhóm, các khóa
Registry…
Vi dụ:
SVTH: LÊ QUANG HIỂN

Trang 25



×