CHƯƠNG 8: SYSTEM HACKING
Trong các chương trước, chúng ta đã khảo sát qua quá trình thu thập thông tin của mục
tiêu cần tấn công. Những kỹ thuật như Footprinting, Social engineering, Enumeration,
Google Hacking…đã được áp dụng cho mục đích truy tìm thông tin.
Đến chương này, bạn bắt đầu đi vào quá trình tấn công hệ thống thật sự. Mục tiêu của
bạn bây giờ đã lộ rõ trước mắt, bạn phải tiến hành những kỹ thuật khác nhau để làm sao
vào được trong hệ thống đó, thực hiện những việc mà mình mong muốn, như xóa dữ liệu,
chạy chương trình trojan, keylogger…
Quá trình tấn công hệ thống
Trước khi tiếp tục nói về System Hacking chúng ta dành chút
thời gian cho việc tìm hiểu một quá trình tấn công hệ thống.
Mục tiêu phía trước của chúng ta là một hệ thống máy tính. Các
bước để tấn công, đánh sập nó, có thể được liệt kê như hình vẽ
bên cạnh. Nó gồm 6 công đoạn như sau:
1. Enumerate (liệt kê): Trích ra tất cả những thông tin có
thể về user trong hệ thống. Sử dụng phương pháp thăm
dò SNMP để có được những thông tin hữu ích, chính xác
hơn. Bạn đã tìm hiểu về phương pháp SNMP trong phần
trước.
2. Crack: Công đoạn này có lẽ hấp dẫn nhiều hacker nhất.
Bước này yêu cầu chúng ta bẽ khóa mật khẩu đăng nhập
của user. Hoặc bằng một cách nào khác, mục tiêu phải
đạt tới là quyền truy cập vào hệ thống.
3. Escalste (leo thang): Nói cho dễ hiểu là chuyển đổi giới
hạn truy cập từ user binh thường lên admin hoặc user có
quyền cao hơn đủ cho chúng ta tấn công.
4. Execute (thực thi): Thực thi ứng dụng trên hệ thống máy
đích. Chuẩn bị trước malware, keylogger, rootkit…để
chạy nó trên máy tính tấn công.
5. Hide (ẩn file): Những file thực thi, file soucecode chạy chương trình…cần phải
được làm ẩn đi, tránh bị mục tiêu phát hiện tiêu diệt.
Hình 8. 2: Các kiểu tấn công mật khẩu
• Passive Online: Nghe trôm sự thay đổi mật khẩu trên mạng. Cuộc tấn công thụ
động trực tuyến bao gồm: sniffing, man-in-the-middle, và replay attacks (tấn công
dựa vào phản hồi)
• Active Online: Đoán trước mật khẩu nguời quản trị. Các cuộc tấn công trực tuyến
bao gồm việc đoán password tự động.
• Offline: Các kiểu tấn công như Dictionary, hybrid, và brute-force.
• Non-Electronic: Các cuộc tấn công dựa vào yếu tố con người như Social
engineering, Phising…
Passive Online Attacks
Một cuộc tấn công thụ động trực tuyến là đánh hơi (sniffing) để tìm các dấu vết, các mật
khẩu trên một mạng. Mật khẩu là bị bắt (capture) trong quá trình xác thực và sau đó có
thể được so sánh với một từ điển (dictionary) hoặc là danh sách từ (word list). Tài khoản
người dùng có mật khẩu thường được băm (hashed) hoặc mã hóa (encrypted) trước khi
gửi lên mạng để ngăn chặn truy cập trái phép và sử dụng. Nếu mật khẩu được bảo vệ
bằng cách trên,một số công cụ đặc biệt giúp hacker có thể phá vỡ các thuật toán mã hóa
mật khẩu.
Active Online Attacks
Cách dễ nhất để đạt được cấp độ truy cập của một quản trị viên hệ thống là phải đoán từ
đơn giản thông qua giả định là các quản trị viên sử dụng một mật khẩu đơn giản. Mật
khẩu đoán là để tấn công. Active Online Attack dựa trên các yếu tố con người tham gia
vào việc tạo ra mật khẩu và cách tấn công này chỉ hữu dụng với những mật khẩu yếu.
Trong chương 6, khi chúng ta thảo luận về các giai đoạn Enumeration, bạn đã học được
những lỗ hổng của NetBIOS Enumeration và Null Session. Giả sử rằng NetBIOS TCP
mở port 139, phương pháp hiệu quả nhất để đột nhập vào Win NT hoặc hệ thống
Windows 2000 là đoán mật khẩu. Cái này được thực hiện bằng cách cố gắng kết nối đến
hệ thống giống như một quản trị viên thực hiện. Tài khoản và mật khẩu được kết hợp để
đăng nhập vào hệ thống.
Một hacker, đầu tiên có thể thử để kết nối với tài nguyên chia sẽ mặc định là Admin$, C$
hoặc C:\Windows. Để kết nối tới các ổ đĩa máy tính, ổ đĩa chia sẻ, gõ lệnh sau đây trong
như các thẻ thông minh (smart card) và mật khẩu) khi xác thực người dùng. Bằng cách
yêu cầu một cái gì đó người dùng có thể có (smart card) và một cái gì đó mà người dùng
biết (mật khẩu) , bảo mật tăng, và không dễ dàng tấn công .
Offline Attacks
Cuộc tấn công Offline được thực hiện tại một vị trí khác hơn là hành động tại máy tính có
chứa mật khẩu hoặc nơi mật khẩu được sử dụng. Cuộc tấn công Offline yêu cầu phần
cứng để truy cập vật lý vào máy tính và sao chép các tập tin mật khẩu từ hệ thống lên
phương tiện di động. Hacker sau đó có file đó và tiếp tục khai thác lỗ hổng bảo mật.
Bảng sau minh họa vài loại hình tấn công offline:
Bng 8.1: Các kiểu tấn công Offline
Type of Attack Characteristics Example Password
Dictionary attack
Nỗ lực để sử dụng mật khẩu từ từ
điển
Administrator
Hybrid attack Thay thế một vài ký tự của mật khẩu Adm1n1strator
Brute-force-attack Thay đổi toàn bộ ký tự của mật khẩu Ms!tr245@F5a
Dictionary Attack là cách tấn công đơn giản và nhanh nhất trong các loại hình tấn công.
Nó được sử dụng để xác định một mật khẩu từ thực tế, và mật khẩu có thể được tìm thấy
trong từ điển. Thông thường nhất, cuộc tấn công sử dụng một tập tin từ điển các từ có
thể, sau đó sử dụng một thuật toán được sử dụng bởi quá trình xác thực. Các hàm băm
(hash) của các từ trong từ điển được so sánh với hàm băm của mật khẩu người dùng đăng
nhập vào, hoặc với các mật khẩu được lưu trữ trong một tập tin trên máy chủ. Dictionary
Attack chỉ làm việc nếu mật khẩu là một thực thể có trong từ điển. Nhưng kiểu tấn công
này có một số hạn chế là nó không thể được sử dụng với các mật khẩu mạnh có chứa số
hoặc ký hiệu khác .
Hybrid Attack là cấp độ tiếp theo của hacker, một nỗ lực nếu mật khẩu không thể được
tìm thấy bằng cách sử dụng Dictionary Attack. Các cuộc tấn công Hybrid bắt đầu với một
tập tin từ điển và thay thế các con số và các ký hiệu cho các ký tự trong mật khẩu. Ví dụ,
nhiều người sử dụng thêm số 1 vào cuối mật khẩu của họ để đáp ứng yêu cầu mật khẩu
Đây là hình thức kém an toàn của xác thực challenge-response vì nó là dễ bị kẽ tấn
công nghe trộm, và máy chủ chứng thực người dùng phải lưu trữ các thông tin
trong LMHash .
2. NTLM version 1: Một hình thức an toàn hơn so với kiểu LM. Nó được sử dụng
để kết nối với máy chủ chạy Windows NT với Service Pack 3 hoặc sớm hơn.
NTLMv1 sử dụng giao thức mã hóa 56-bit. Máy chủ xác thực người dùng với bất
kỳ phiên bản của NTLM nào, việc xác thực phải lưu trữ các thông tin trong một
Hash NT.
3. NTLM version 2: Hình thức an toàn nhất có sẵn trong chứng thực challenge-
response. Phiên bản này bao gồm một kênh an toàn để bảo vệ quá trình xác thực.
Nó được sử dụng để kết nối với máy chủ chạy Windows 2000, Windows XP, và
Windows NT với Service Pack 4 hoặc cao hơn. NTLMv2 sử dụng mã hóa 128-bit
để đảm bảo các giao thức an toàn.
LM Authentication
LM Authentication cung cấp khả năng tương thích với hệ điều hành trước đó, bao gồm
Windows 95, Windows 98 và Windows NT 4.0 Service Pack 3 hoặc sớm hơn. Ngoài ra
còn có các ứng dụng trước đó mà có thể dựa vào cơ chế xác thực này. Tuy nhiên, giao
thức LM là yếu nhất, và dễ dàng nhất để tấn công. Không sử dụng chứng thực LM trong
một môi trường Windows Server 2003. Nâng cấp các máy tính dựa trên giao thức LM để
loại bỏ lỗ hổng bảo mật này.
Storing LM passwords
Lý do chính không sử dụng giao thức LM là khi mật khẩu được tạo ra bởi người sử dụng
và được lưu trữ để sử dụng, mật khẩu được chuyển đổi để LMHash một lần. LMHash
chứa tên người dùng và hash của mật khẩu tương ứng. Hash là một hình thức mã hóa một
chiều. Khi một khách hàng cố gắng để xác thực với chứng thực LM các hash của mật
khẩu được truyền trên mạng. Máy chủ chỉ có thể để xác thực người sử dụng nếu máy chủ
có lưu trữ LMHash .
LMHash có một vài điểm yếu mà làm cho nó dễ bị tấn công hơn Hash NT. Các LMHash
được lưu trữ là các chữ hoa, được giới hạn trong 14 ký tự. Nếu có hiểu biết, kẻ tấn công
có được quyền truy cập vào LMHashes lấy được một số lượng lớn người sử dụng, có khả
hiện thông qua việc thương lượng nhà cung cấp dịch vụ hổ trợ bảo mật của
Microsoft (Security Support Provider). Client gửi tên người dùng và tên miền tới
domain controller.
2. Domain controller chọn ngẫu nhiên 16 byte để tạo ra một chuỗi ký tự được gọi là
nonce
3. Client mã hóa nonce này với một hash của mật khẩu và gửi nó trở lại domain
controller.
4. Domain controller trả lời hash của mật khẩu từ cơ sở dữ liệu tài khoản bảo mật.
5. Domain controller sử dụng các giá trị băm lấy từ cơ sở dữ liệu tài khoản bảo mật
để mã hóa nonce. Giá trị này được so sánh với giá trị nhận được từ client Nếu các
giá trị phù hợp, client được chứng thực.
Giao thức chứng thực Kerberos
Là một giao thức xác thực mặc định cho Windows Server 2003, Windows 2000 và
Windows XP Professional. Kerberos được thiết kế để được an toàn hơn và khả năng mở
rộng hơn so với NTLM trên mạng lớn. Kerberos cung cấp thêm các lợi ích sau đây:
• Hiệu quả (Efficiency): Khi một máy chủ cần xác thực một client, máy chủ
Kerberos có thể xác nhận các thông tin của client mà không cần phải liên hệ với
domain controller.
• Tự chứng thực (Mutual authentication) Ngoài việc chứng thực cliet
đến server, Kerberos cho phép máy chủ xác thực lẫn nhau.
• Ủy quyền chứng thực (Delegated authentication): Cho phép các
dịch vụ để đóng vai client khi truy cập vào tài nguyên.
• Đơn giản hóa quản lý (TrustKerberos): có thể sử dụng trust giữa các
domain trong cùng một forest và các domain kết nối với một forest.
• Khả năng cộng tác ( Interoperability): Kerberos được dựa trên tiêu
chuẩn Internet Engineering Task Force (IETF) và do đó tương thích với IETF
khác tuân theo lõi Kerberos.
Quy trình xác thực Kerberos
Giao thức Kerberos lấy ý tưởng từ các con chó ba đầu trong thần thoại Hy Lạp. Ba thành
phần của Kerberos là:
4. AS kiểm tra nhân dạng của người yêu cầu có nằm trong cơ sở dữ liệu của mình
không. Nếu có thì AS gửi 2 gói tin sau tới người sử dụng:
o Gói tin A: “Khóa phiên TGS/client” được mật mã hóa với khóa bí mật của
người sử dụng.
o Gói tin B: “Chấp Thuận Vé” (bao gồm chỉ danh người sử dụng (ID), địa chỉ
mạng của người sử dụng, thời hạn của vé và “Khóa phiên TGS/client”) được
mật mã hóa với khóa bí mật của TGS.
5. Khi nhận được 2 gói tin trên, phần mềm máy khách giải mã gói tin A để có khóa
phiên với TGS. (Người sử dụng không thể giải mã được gói tin B vì nó được mã
hóa với khóa bí mật của TGS). Tại thời điểm này, người dùng có thể xác thực
mình với TGS.
6. Khi yêu cầu dịch vụ, người sử dụng gửi 2 gói tin sau tới TGS:
o Gói tin C: Bao gồm “Vé chấp thuận” từ gói tin B và chỉ danh (ID) của yêu
cầu dịch vụ.
o Gói tin D: Phần nhận thực (bao gồm chỉ danh người sử dụng và thời điểm
yêu cầu), mật mã hóa với “Khóa phiên TGS/máy khách”.
7. Khi nhận được 2 gói tin C và D, TGS giải mã D rồi gửi 2 gói tin sau tới người sử
dụng:
o Gói tin E: “Vé” (bao gồm chỉ danh người sử dụng, địa chỉ mạng người sử
dụng, thời hạn sử dụng và “Khóa phiên máy chủ/máy khách”) mật mã hóa
với khóa bí mật của máy chủ cung cấp dịch vụ.
o Gói tin F: “Khóa phiên máy chủ/máy khách” mật mã hóa với “Khóa phiên
TGS/máy khách”.
8. Khi nhận được 2 gói tin E và F, người sử dụng đã có đủ thông tin để xác thực với
máy chủ cung cấp dịch vụ SS. Máy khách gửi tới SS 2 gói tin:
o Gói tin E thu được từ bước trước (trong đó có “Khóa phiên máy chủ/máy
khách” mật mã hóa với khóa bí mật của SS).
o Gói tin G: phần nhận thực mới, bao gồm chỉ danh người sử dụng, thời điểm
yêu cầu và được mật mã hóa với “Khóa phiên máy chủ/máy khách”.
9. SS giải mã “Vé” bằng khóa bí mật của mình và gửi gói tin sau tới người sử dụng
thuật toán và sau đó so sánh với password được lưu trong file. Một hacker có thể cố
gắng truy cập vào server để lấy file, bằng các thuật toán thay vì cố gắng đoán hoặc
nếu không xác định được password. Nếu hacker thành công, họ có thể giải mã
password lưu trữ trên server.
Mật khẩu được lưu trong file SAM trên Windows và trong file
Shadow trên Linux
Hacking Tools
Giới thiệu một số phần mềm dò tìm password.
Hacker có thể tự động đoán mật khẩu trong các phiên bản của NetBIOS. Hacker quét qua
nhiều địa chỉ IP trên các hệ thống chia sẽ và thường tấn công bằng các công cụ thủ công.
NTInfoScan là một máy quét an ninh. Quét tất cả các lỗ hỗng tạo ra một báo cáo dựa vào
các vấn đề an ninh được tìm thấy trên máy đích và một số thông tin khác.
LophtCrack là phần mềm khôi phục mật khẩu và các gói phần mềm được phân phối bởi
công ty @stake software, nhưng bây giờ đã thuộc sở hữu của Symantec. Đây là phần
mềm chặn các gói tin trên mạng và nắm bắt các phiên đăng nhập cá nhân. LophtCrack
chứa từ điển hành động và khả năng tấn công lại.
John the ripper là một công cụ dòng lệnh được thiết kế để crack mật khẩu cả Unix và
NT. Các mật khẩu phân biệt trường hợp dạng chữ và có thể không thành công cho mật
khẩu hỗn hợp.
Kerbcrack bao gồm hai chương trình: kerbsniff và kerbcrack sniffer. Việc lắng nghe
kết nối với internet và bắt giữ phiên đăng nhập trong Windows 2000/XP, sử dụng thuật
toán Kerberos. Soft này có thể được sử dụng để tìm các mật khẩu từ các tập tin bắt bằng
cách tấn công vào hệ thống.
Bẻ Khóa Password Windows 2000
Tài khoản được lưu trong file gồm usernames và password đã mã hóa. Nó nằm ở vị trí theo
đường dẫn: Windows\system32\config. Đây là file đã khóa, khi hệ thống đang chạy. Hacker
không thể sao chép file khi hệ thống đang khởi động. Một lựa chọn cho việc sao chép tập tin này
là khởi động từ dos hoặc trong linux thì khởi động từ CD, hoặc sao chép từ thư mục repair.
Nếu một quản trị viên hệ thống sử dụng các tính năng RDISK của Windows để sao lưu hệ
thống, sau đó một bản sao của tập tin nén được gọi là SAM._ được tạo ra trong
khẩu của họ như là người sử dụng gắn với tài nguyên máy chủ .
Tấn Công SMB Relay MITM & Biện Pháp Đối Phó
Tấn Công SMB Relay MITM là khi kẻ tấn công cài đặt lừa máy chủ với địa chỉ nào đó
(Relay Address). Khi client là nạn nhân (victim client) kết nối tới máy chủ lừa đảo, các
MITM server chặn phiên lại, mã hóa password, và chuyển kết nối tới máy chủ nạn nhân.
Hình 8. 8: SMB relay MITM attack
Biện pháp đối phó bao gồm các cấu hình trong windows 2000 dùng SMB. Để mã hóa khối
thông tin liên lạc. Thiết lập này được tìm thấy trong đường dẫn Security Policies/Security
Options.
Hacking Tools
SMBGrind là phần mềm làm tăng tốc độ làm việc bằng cách loại bỏ bớt các trùng lắp và
cung cấp các tiện ích cho người sử dụng mà người dùng không cần chỉnh sửa bằng cách
thủ công
SMBDie là công cụ xử lý sự cố máy tính chạy window 2000/xp/NT bằng cách gửi các
yêu cầu thiết kế đặc biệt SMB.
NBTdeputy là một chương trình có thể đăng ký một tên máy tính NetBIOS trên mạng và
ứng phó với NetBIOS thông qua yêu cầu TCP IP. Tên truy vấn của nó được đơn giản
hoá. Giúp việc sử dụng các SMBRelay có thể được gọi bằng tên máy tính thay vì địa chỉ
ip.
Tấn Công NetBIOS Dos
Tấn công NetBIOS Denial of Service (DoS) bằng cách gửi bản tin NetBIOS Name Release đến
dịch vụ NetBIOS Name Service trên hệ thống mục tiêu chạy hệ điều hành Windows và ngay lập
tức hệ thống quá tải, không đáp ứng được các yêu cầu người dùng nữa.
Là cách tấn công bằng cách gửi các thông điệp từ chối mày chủ. Các công cụ của máy có thể đặt
tên lại cho cuoc tấn công . Do đó cuộc tấn công chủ yểu từ phía mày khách hàng .Tạo ra một
mạng lưới tấn công dos rộng lớn .
Hacking Tools
NBName là công cụ có thể disable toàn bộ mạng LAN và ngăn chặn các máy trong hệ thống của
chúng. Các nút trên một mạng Net-BIOS bị nhiễm, mà chúng lại cùng trên môi trường mạng nên
chúng nghĩ rằng tên của chúng đã sẵn sàng sử dụng bởi một máy tính khác.
dõi quá trình đăng nhập. Công cụ tìm kiếm VisuaLast hỗ trợ người người quản trị mạng
giải mã và phân tích trong file được mã hóa an toàn. Visualast cung cấp một cái nhìn toàn
bộ giúp người quản trị có cái nhìn toàn bộ và đánh giá chính xác, hiệu quả. Chương trình
cho phép người quản trị xem và báo cáo cá nhân về quá trình đăng nhập và đăng xuất. Nó
ghi lại sự kiện chính xác trên từng trang, và là tài liệu vô giá cho các nhà phân tích an
ninh.
Sự kiên này được lưu theo đường dẫn c:\windows\system32\config\sec.evt. Đây là đường
dẫn chứa dấu vết của kẻ tấn công.
Phần 2: Escalating Privileges
Escalating Privileges (Kỹ Thuật Leo Thang Đặc Quyền)
Leo thang đặc quyền là bước thứ ba trong chu trình Hacking System, leo thang đặc
quyền về cơ bản có nghĩa là thêm nhiều quyền hơn hoặc cho phép một tài khoản người
dùng thêm quyền, leo thang đặc quyền làm cho một tài khoản người dùng có quyền như
là tài khoản quản trị.
Nói chung, các tài khoản quản trị viên có yêu cầu mật khẩu nghiêm ngặt hơn, và mật
khẩu của họ được bảo vệ chặt chẽ hơn. Nếu không thể tìm thấy một tên người dùng và
mật khẩu của một tài khoản với quyền quản trị viên, một hacker có thể chọn sử dụng một
tài khoản với quyền thấp hơn. Tại trường hợp này, các hacker sau đó phải leo thang đặc
quyền để có nhiều quyền như quyền của quản trị.
Cái này được thực hiện bằng cách nắm lấy quyền truy cập bằng cách sử dụng một tài
khoản người dùng không phải là quản trị viên. Thường bằng cách thu thập các tên người
dùng và mật khẩu thông qua một bước trung gian để gia tăng các đặc quyền trên tài
khoản với mức độ quản trị viên.
Một khi hacker đã có một tài khoản người dùng hợp lệ và mật khẩu, các bước tiếp theo là
để thực thi các ứng dụng nói chung hacker cần phải có một tài khoản có quyền truy cập
cấp quản trị viên để cài đặt chương trình. Đó là lý do tại sao leo thang đặc quyền là rất
quan trọng. Trong các phần kế tiếp , chúng tôi sẽ xem những gì hacker có thể làm với hệ
thống của bạn một khi họ có quyền quản trị.
Hacking Tools
Getadmin.exe là một chương trình nhỏ nó có thể thêm một người dùng vào nhóm Local
Chuyên đề về Buffer Overflows sẽ được thảo luận chi tiết
trong chương 19: Buffer Overflows
Rootkits
RootKits: phần mềm dán điệp
Rootkit là một loại chương trình thường được sử dụng để che dấu các tiện ích trên hệ
thống bị xâm nhập. Rootkit bao gồm cái gọi là back doors, nó giúp cho kẻ tấn công đó
truy cập vào hệ thống sẽ dễ dàng hơn trong lần sau. Ví dụ, các rootkit có thể ẩn một ứng
dụng, ứng dụng này có thể sinh ra một lệnh kết nối vào một cổng mạng cụ thể trên hệ
thống. Back door cho phép các quá trình bắt đầu bởi một người không có đặc quyên,
dùng để thực hiện chức năng thường dành cho các quản trị viên. Rootkit thường xuyên
được sử dụng để cho phép lập trình viên ra rootkit có thể xem và truy cập vào tên người
dùng và thông tin đăng nhập trên các trang site có yêu cầu họ.
Khái niệm Site ở đây không phải là website, mà là một miền
(domain) trong hệ thống các máy tính.
Một số loại rootkit thường gặp:
Kernel-level rootkits: Rootkit ở cấp độ Kernel thường thêm hoặc thay thế một vài thành
phần của nhân hệ thống, thay bằng mã được sửa đổi để giúp che giấu một chương trình
trên hệ thống máy tính. Điều này thường được thực hiện bằng cách thêm mã mới cho
nhân hệ thống thông qua một thiết bị ổ đĩa có khả năng nạp mô-đun, chẳng hạn như các
kernel mô-đun có thể nạp được trong linux hoặc các thiết bị điều khiển trong Microsoft
Windows. Rootkit đặc biệt nguy hiểm bởi vì nó có thể khó phát hiện mà không có phần
mềm phù hợp.
Library-level rootkits: Rootkit ở cấp độ thư viện thường chắp vá, sữa chữa, hoặc thay
thế hệ thống. Một số phiên bản có thể giấu thông tin tùy theo mục đích của hacker.
Application-level rootkits: Rootkit ở cấp ứng dụng thì có thể thay thế những chương
trình ứng dụng giống trojan độc hại, hoặc họ có thể thay đổi hành vi của các ứng dụng
hiện có bằng cách sử dụng các móc (hook), các bản vá lỗi (patch), mã độc hại (injected
code), hoặc các phương tiện khác.
Trong các phần sau sẽ thảo luận quá trình lây nhiễm của rootkit cho một hệ thống .
Triển khai Rootkits trên Windows 2000 & XP
các ứng dụng từ một nguồn đáng tin cậy. Các quản trị viên cũng nên giữ sẵn một nguồn
đáng tin cậy để cài đặt và phục hồi tự động.
Biện pháp đối phó khác là sử dụng thuật toán mã hóa MD5, checksum MD5 của một tập
tin là một giá trị 128-bit, nó giống như là dấu vân tay tập tin. Thuật toán này được thiết
kế để phát hiện sự thay đổi, ngay cả một chút trong tập tin dữ liệu, để kiểm tra các
nguyên nhân khác nhau. Thuật toán này có tính năng rất hữu ích để so sánh các tập tin và
đảm bảo tính toàn vẹn của nó. Một tính năng hay là kiểm tra chiều dài cố định, bất kể
kích thước của tập tin nguồn là như thế nào.
Việc tổng kiểm tra MD5 đảm bảo một file đã không thay đổi này có thể hữu ích trong
việc kiểm tra tính toàn vẹn file nếu rootkit đã được tìm thấy trên hệ thống. Các công cụ
như Tripwire được thực hiện để kiểm tra MD5, để xác định các tập tin có bị ảnh hưởng
bởi rootkit hay không.
Countermeasure Tools
Tripwire là một chương trình kiểm tra tính toàn vẹn hệ thống tập tin hệ điều hành Unix,
Linux, thêm vào kiểm tra mật mã một hoặc nhiều nội dung trong mỗi thư mục và tập tin.
Tripwire có cơ sở dữ liệu chứa thông tin cũng cho phép bạn xác minh, cho phép truy cập
và cài đặt chế độ tập tin, tên người dùng chủ sở hữu tập tin, ngày tháng và thời gian tập
tin đã được truy cập lần cuối, và sửa đổi cuối.
Keyloggers and Other Spyware
Nếu tất cả những nỗ lực để thu thập mật khẩu không thành công, thì keylogger là công cụ
lựa chọn cho các hacker. Được thực hiện như là phần mềm được cài đặt trên máy tính
hoặc là phần cứng gắn vào máy tính. Keylogger là các phần mềm ẩn, ngồi giữa phần
cứng (bàn phím) và hệ điều hành, để họ có thể ghi lại mọi phím tắt. Keylogger phần mềm
có thể phá hoại hệ thống như Trojans hoặc viruses.
Keylogger là phần mềm gián điệp có dung lượng nhỏ, giúp kết nối các bàn phím máy
tính và lưu tất cả các thao tác phím vào một file. Hacker có thể cài thêm tính năng là tự
động gửi nội dung file đó đến máy chủ của hacker.
Đối vối kiểu keylogger cứng, có một thiết bị, giống usb, được gắn vào máy tính. Quá
trình thao tác phím được ghi lại trong usb đó. Để làm được điều này thì một hacker phải
có quyền truy cập vật lý vào hệ thống.
Cách thứ hai để ẩn một tập tin trong Windows là với luồng dữ liệu xen kẽ NTFS
(alternate data streaming - ADS).