Cửa sổ trên hiện danh sách các tiến trình ñang chạy hiện tại, bao gồm tên các tài khoản riêng của từng tiến trình, trong ñó phần thông tin ñuợc hiển thị ở phần dưới phụ thuộc vào cách ch
Trang 11.4 Grouped Access Tools
1.5 APT(Advanced Process Termination)
2 Sử dụng công cụ ñể phát hiện ROOTKIT
*** Một số khái niệm tìm hiểu về Rootkit ****
Trang 2Process Explorer hiển thị 2 cửa sổ con Cửa sổ trên hiện danh sách các tiến trình ñang chạy hiện tại, bao gồm tên các tài khoản riêng của từng tiến trình, trong ñó phần thông tin ñuợc hiển thị ở phần dưới phụ thuộc vào cách chọn trong Process Explorer: Nếu chọn hiển thị chế ñộ handle bạn sẽ nhìn thấy các handle ñược hiển thị khi chọn tiến trình nào ñó ở cửa sổ bên trên; còn nếu chọn chế ñộ hiển thị theo các file DLL bạn sẽ thấy các file DLL và các file ñược gán vào bộ nhớ khi tiến trình khởi chạy Process Explorer cũng có chức năng tìm kiếm rất mạnh mà nhanh hơn khi các handle ñang ñược mở hoặc tìm các file DLL ñược nạp vào
Khả năng ñộc ñáo của Process Explorer là tạo cho nó có thể ñược dùng cho việc kiểm tra các vấn ñề
về phiên bản các file DLL hoặc các lỗi handle, và cung cấp một cách khá toàn diện theo hướng các ứng dụng của Windows hay các ứng dụng trong công việc
- Thông tin về các loại màu sắc trong cửa sổ chính
Trong PX ta chọn Options Configure Highlighting
Với từng màu tương ứng sẽ là một loại chương trình như :
New Objects : Tiến trình mới vừa ñược gọi
Deleted Objects : Tiến trình ñã bị tắt
Trang 3Deface VR
Cấu hình ProcessXp ñể hiện các cột về nội dung thông tin các tiến trình ñược hiển thị
- Click vào View->Lower Pane View->Handles(Ctrl + H) ñể hiển thị các handle
- Click vào View->Lower Pane View->DLLs(Crtl + D) ñể hiển thị các DLLs
Một cửa sổ sẽ hiển thị bên dưới Nội dung của sổ ñó sẽ cho phép ta thấy ñược các handle và các DLLs ñược ñi kèm cùng tiến trình khi ta chọn
Muốn nhìn rõ các thông tin về các tiến trình chọn ViewSelect columns Tích vào nội dung thông tin muốn hiển thị bao gồm các tab (Process Image, Handle, DLL, Process Performance, Process
Memory, NET, Status Bar)
• Tab Process Image có các thông tin sau
- “User Name” (tên người dùng)
- “Description” (mô tả)
- “Company Name” (Tên công ty)
- “Version” (Phiên bản)
- “Image Path” (ðường dẫn)
- “PID (Process Identifier)”
- “Verified Signer(Xác minh chữ ký)” cái này hay dùng
- “Windows Title” (Phần tiêu ñề )
- “Windows Status”(Phần trạng thái)
- “Session” (Phiên kết nối)
- “Command Line” (Dòng lệnh thực thi)
- “Comment” (Lời nhận xét)
- “DEP(Data Execution Prevention) Status” (Trạng thái của một ñặc tính bảo mật ñược sử dụng trong windows)
• Tab DLL (Hiện thị chi tiết thông tin về các file thư viện DLL)
• Tab Handle (Hiện thị chi tiết thông tin về Handle nào ñó)
• Tab Process Performance (hiển thị thông tin về tính thực thi của tiến trình)
• Tab Process Memory (Hiển thị thông tin về bộ nhớ)
Trang 4Deface VR
• Tab NET (khi nào cài chương trình có sử dụng ñến thư viện Net Framework mới hiển thị ñược
thông tin trong tab )
• Tab Status Bar (hiện thông tin thanh trạng thái ở dưới cùng)
Muốn tìm kiếm các handle hay các DLL thì ta chọn Find Find Handle or DLL…(Crtl+F) ñánh
tên handle hay DLL muốn tìm
Trang 5Các chương trình tự khởi chạy bao gồm folder startup, các khóa Run, Runonce và các khóa trong Registry Bạn có thể cấu hình autoruns ñể hiện các vùng khác bao gồm các DLL khác như ở toolbars là
Trang 6Deface VR
các BHO(Browser Helper Objects), các thông báo winlogon, các dịch vụ tự ñộng chạy, và nhiều cái
nữa… Autoruns cũng bao gồm một phần hiển thị như tiện ích MSConfig trong windows XP/Server
2003
Vào menu Options chọn “Hide Microsoft and Windows entries” sẽ ẩn toàn bộ những ứng dụng tự
chạy của windows và của microsoft, lúc ñó chỉ hiển thị những phần ứng dụng của một hãng thứ 3 ñược chạy khi khởi ñộng vào hệ thống lúc này ta có thể lọc ñược những ứng dụng nào là không ñáng tin cậy(thường không có chữ ký và phần mô tả, và nhà cung cấp)
Tất nhiên bạn có thể sẽ ngạc nhiên làm thế nào ñể biết ñược có bao nhiêu ứng dụng tự khởi chạy và phát hiện nó ra sao! Khi tiếp xúc nhiều bạn sẽ thấy quen mắt và bạn sẽ lọc ñược cái nào là không ñáng tin cậy
Autoruns làm việc trên tất cả các phiên bản của vWindows bao gồm cả Windows XP 64-bit Edition
(x64) và Windows Server 2003 64-bit Edition (x64)
Sử dụng:
Thường thì chạy Autoruns và nó hiện cho bạn hiện tại các cấu hình những ứng dụng tự ñộng chạy
cũng như toàn bộ danh sách các vùng trong registry và trong file hệ thống mà sẵn ñược cấu hình tự ñộng chạy Các vùng ứng dụng tự ñộng chạy ñược hiển thị bởi Autoruns bao gồm các entry logon, phần add-ons Explorer, add-ons Internet Explorer bao gồm phần BHO(Browser Helper Objects), các Appinit DLLs, image hijacks, các ảnh thực thi khi khởi ñộng(boot execute images), các DLLs thông báo ở winlogon, Windows Services và Winsock Layered Service Providers Chuyển qua tab khác ñể hiển thị các phần khác như về printer…
ðể disable một entry ta bỏ check vào hộp check ñó ðể delete một entry cấu hình tự chạy ta chọn
Trang 7Deface VR
- Disable và xóa các Entry (ñầu vào)
Nếu bạn muốn một entry kích hoạt vào thời ñiểm tiếp theo khi bạn ñăng nhập vào hệ thống bạn có thể chọn một trong 2 tùy chọn là disble hoặc delete nó ðể disable một entry bạn chỉ cần bỏ
check(uncheck) nó Autoruns sẽ lưu lại thông tin startup vào trong một vùng backup vì thế ta có thể ñược kích hoạt lại nếu cần thiết Một số mục chọn ñược lưu trữ trong thư mục startup autorus tạo ra một thư mục ñược gọi là autoruns ñã bị disable Nếu có các mục chọn bị disable trong các thư mục khác khi bạn chạy Explorer sẽ tạo một cửa sổ ñể thư mục trên desktop (nhưng không thực thi các hình ảnh bên
trong ñó) Check một mục bị disable sẽ enable lại mục chọn ñó
Bạn nên xóa các mục chọn mà bạn không muốn nó thực thi bao giờ Vì thế bằng cách chọn Delete
trong menu Entry Chỉ lựa chọn mục chọn hiện tại ñể delete
Nếu bạn ñang chạy autoruns không với quyền quản trị trên windows Vista và cố gắng thay ñổi trạng thái của một entry toàn cục, bạn sẽ bị từ chối truy cập (deny access) Autorus sẽ hiển thị một hộp thoại với một nút mà cho phép bạn chạy lại Autoruns với ñúng quyền quản trị Bạn cũng có thể sử dụng lựa chọn –e ở tùy chọn command-line ñể khởi chạy autoruns với ñúng quyền quản trị
- Nội dung các vùng và các entry ñược hiển thị
Thường khi chạy Autoruns và nó hiện cho bạn cấu hình hiện tại các ứng dụng tự ñộng chạy trong
vùng mà các ứng dụng chạy trực tiếp Thực hiện một scan mới sẽ lại các hiển thị
• Logon: Khi scan vùng này thì những kết quả hiện thị các entry ñuợc scan là thư mục startup cho người
dùng hiện tại và tất cả các người dùng, các khóa Run trong regedit, và các vùng khởi chạy ứng dụng chuẩn
• Explorer: Entry trong tùy chọn này ñể xem các shell mở rộng, BHO(Browser Helper Objects), phần
hiện thị ở thanh toolbar của explorer, và các shell thực thi các hook
• Internet Explorer(IE): Entry này hiện các ñối tượng ñính thêm BHO, các phần mở rộng ở thanh
toolbar của IE
• Service: Hiển thị tất cả các dịch vụ ñược cấu hình tự ñộng chạy khi hệ thống bắt ñầu khởi chạy
Trang 8Deface VR
• Drivers: Entry này sẽ hiển thị tất cả các driver ở chế ñộ kernel ñược ñăng ký vào hệ thống loại trừ các
drivers ñã bị disable
• Scheduled Tasks: Các entry ở task schedule ñược cấu hình ñể ñặt lịch khi khởi ñộng vào hệ thống
• AppInit DLLS: Entry hiện thị ở task này hiện các DLL ñược ñăng ký như một ứng dụng ñể khởi chạy
các file DLL
• Boot Execute: Các hình ảnh ban ñầu (khác với các ứng windows) mà chạy sớm hơn lúc các tiến trình
khởi ñộng vào hệ thống
• Image Hijacks: Entry này ở khóa “image file execution options” của regedit và ứng dụng tự chạy ở
cửa sổ dòng lệnh và khóa này ñược sử dụng ñể thay thế một file khởi chạy bằng một file khác (thường là virus sẽ thay ñổi)
• Known DLLs: Những báo cáo này là vị trí của các DLLs mà Windows load và trong các ứng dụng
mà tham chiếu của chúng
• Winlogon Notifications: Hiện các DLLs mà ñăng ký cho thông báo Winlogon của các sự kiện khi
khởi chạy
• Winsock Providers: Hiện những giao thức winsock ñã ñược ñăng ký, bao gồm nhà cung cấp dịch vụ
winsock Malware thường cài ñặt chính nó như một nhà cung cấp dịch vụ winsock bởi vì có một vài công cụ mà có thể remove chúng Autoruns có thể gỡ bỏ chúng nhưng không thể disable chúng
• LSA Providers: Hiện những ñăng ký ủy quyền LSA(Local Security Authority), thông báo và bảo mật
các gói tin
• Printer Monitor Drivers: Hiển thị các file DLLs mà load vào trong các dịch vụ in ấn Malware
thường sử dụng hỗ trợ này ñể tự khởi chạy chính nó
• Sidebar: Hiển thị Phần ñược cải tiến thêm ở sidebar trong Windows Vista
Trừ khi ta check vào lựa chọn “Include Empty Locations” trong menu Options Autoruns không hiện
các vùng không với entry nào cả(làm mờ các entry)
Tùy chọn Verify Signatures xuất hiện trong menu Options trên hệ thống mà hỗ trợ việc xác minh
hình ảnh các chữ ký và có thể ñưa ra kết quả trong autoruns truy vấn ñể ñược chứng nhận thu hồi danh sách(CRL-Certificate Revocation List) các web site ñể xác ñịnh xem chữ ký nào là hợp lệ Autoruns hiện
thị ra ñoạn thông báo “Not verified ” rồi ñến tên công ty của file mà không có chữ ký hoặc chữ ký ñó
không ñược ký bằng các quyền chứng thực gốc trên danh sách của sự ủy quyền gốc ñáng tin cậy bởi hệ thống
Sử dụng “Hide Microsoft Entries” hoặc “Hide Windows Entries” trong menu Options giúp bạn
nhận dạng phần mềm mà ñã ñược thêm vào hệ thống từ lúc cài ñặt Autoruns sẽ chỉ hiện những file nào
mà không phải của hãng microsoft và của hệ thống windows Và nếu ta tích chọn cả phần “Verified Code Signatures” autoruns sẽ xác minh cho ta chữ ký số của file ñó xem có ñáng tin cậy không.nếu
không ở phần nhà sản xuất (Publisher) sẽ có tiền tố “(Not verified)”
• Phiên bản mới 9.50 có tùy chọn “Hide Microsoft and Windows entries” phần “Hide Microsoft” sẽ
bỏ qua những file ñã ñược ký bởi Microsoft nếu ta lựa chọn cả phần “Verify Signatures” và bỏ qua cả những file nào mà có tài nguyên của Microsoft trong trường tên công ty nếu ta không lựa chọn “Verify
Trang 9Deface VR
Quan sát biểu hiện virus:
Khi sử dụng chương trình này bạn ñể ý thông tin phần mô tả(Description), xuất sứ(Publisher) Virus
có thể giả danh các file hệ thống của windows các bạn ñể ý phần ñường dẫn(Image Path)
Thường không có 2 phần mô tả(Description) và nhà cung cấp(Publisher)
Nếu virus giả danh hệ thống thì ñể ý phần ñường dẫn(Image Path)
Các cột lưu ý virus hay nằm ở ñó: Logon, services, Drivers, Image Hijacks, Appinit, winlogon Tất nhiên
ta kiểm tra cả cột explorer và Internet explorer ñể xem có file dll nào inject vào không
1.3 Hijackfree
Download: http://download3.emsisoft.com/a2HiJackFree.exe
Giới thiệu:
Quản lý các file tự ñộng chạy trên hệ thống của bạn
Kiểm soát các phần như Explorer và các phần ñính kèm vào Trình duyệt IE(BHOs, Toolbars,…)
Quản lý các tiến trình ñang chạy và các module ñược tích hợp vào
Kiểm soát các dịch vụ thậm chí cả những cửa sổ không ñược hiện thị
Xem các cổng mở và những tiến trình nào ñang lắng nghe
Xem tất cả các tên miền ñược gán vào file hosts
Quản lý các LSP(Layered Service Providers) ñược cài ñặt ra
Phân tích cấu hình hệ thống với chức năng phân tích online
Sử dụng:
Xem những tiến trình ñang chạy:
Như chức năng Task Manager của window, HiJackFree sẽ hiện tất cả theo danh sách các tiến trình
ñang chạy Nhưng thêm vào ñó nó sẽ hiện thêm cho ta nhiều thông tin chi tiết hơn Như ñặc tính, những modules ñược khởi chạy, thông tin online và chi tiết tiến trình ñược chỉ ra thêm cả các chương trình chạy như một dịch vụ, ñược bắt ñầu bởi một ñầu vào tự ñộng hoặc các cổng TCP, UDP mở
Xem các cổng mở:
Trang 10Deface VR
HiJackFree sẽ hiện tất cả các cổng mở bên trong Một cổng mở nghĩa là có một tiến trình ñang chạy
và ñược lắng nghe với số cổng ñược nhập vào từ bên ngoài
Việc quản lý các cổng cũng ñược hiện trong các tiến trình bạn cũng có thể xem luôn Bạn có thể kill một tiến trình và ñặt nó vào vùng cách lý(quarantine) dùng ñể phục hồi sau nếu cần thiết
Xem các phần tự khởi chạy(autoruns)
Hiển thị và chỉnh sửa tất cả các ñầu vào tự khởi chạy Chỉ ra hơn 30 phần tự chạy khác nhau ñược hiển thị và có thể ñược chỉnh sửa theo cách tốt nhất Bên cạnh ñó còn có các phần tự khởi chạy ở trong Registry của người dùng hiện thời(ở khóa HKCU) và của tất cả người dùng(ở khóa HKLM), HiJackFree cũng hiện phần tự khởi chạy trong các file như win.ini, system.ini, autoexec.bat và config.sys Thêm vào
ñó nó hiện tất cả các chương trình tự chạy trong thư mục start menu
Trang 11Các phần khác
Phần ñính thêm (addons) của a-squared HiJackFree cho phép bạn xem và thay ñổi các phần mở rộng
của windows Explorer và IE Hay các addons chính là Browser Helper Objects mở rộng các chức năng của trình duyệt hay thêm vào các thanh công cụ
Trang 12Deface VR
LSP Protocols
LSP sẽ hiện tất cả những lớp dịch vụ ñược cài ñặt liên quan tới các drivers của mạng Một số
spyware sử dụng phương thức này trên các website ñược hiện trên trình duyệt của bạn
Hosts File
Hosts file ñược sử dụng lưu trữ thông tin nhằm tìm một nốt(node) trên mạng
máy tính Thông tin ñược chứa ñựng trong file này nhằm phân tích và chuyển từ
hostnames sang (tới) ñịa chỉ IP File hosts dùng có phần giống như DNS (Domain Name System), nhưng khác DNS ở chỗ có khả năng chỉnh sửa cục bộ Malware (sẽ) thường ñược viết lên file hosts ñể ngăn cản chúng ta xử lý một vài ñịa chỉ hoặc hướng ñia chỉ tới các site ñộc hại Có thể người viết malware có thể muốn các phần mềm diệt virus dừng việc cập nhật, họ sẽ tạo 1 entry trong file hosts nhằm ngăn chặn phần mềm diệt virus chỉ tới vị trí ñúng ñắn ñể cập nhật Trường hợp khác, tác giả malware có thể dùng file hosts nhằm thêm entry ñể chiếm ñịa chỉ ngân hàng với các mục ñích lừa ñảo Hiểu biết về file hosts
là quan trọng nhằm sử dụng máy tính ñược tốt hơn, tuy nhiên, kẻ xấu lại lợi dụng việc hiểu biết này vào mục ñích nguy hiểm
Trang 131.4 Grouped Access Tools
Grouped Access Tools có thể xem các tiến trình ñang chạy hoặc những chương trình mới chạy Người dùng có thể thực thi nhiều task vụ trong tiến trình như: tạm dừng tiến trình, làm sạch trong bộ nhớ của nó, tắt tiến trình, phá vỡ tiến trình, ép buộc tắt tiến trình, biên tập bộ nhớ của tiến trình ñó, tìm kiếm giá trị và làm dump
GAT có những ứng dụng khác như ñang chạy ở chế ñộ system, chạy explorer ở chế ñộ system, các tiến trình ñang ñược ghi log, và chuyển ñổi ñịnh dạng
Grouped Access Tools có thể sẽ dễ quản lý các tiến trình ñang chạy trên máy tính của bạn và tối ưu cho
bộ nhớ trong hệ thống của bạn
Các cửa sổ chính:
Trang 14Deface VR
H1 “ðây là cửa sổ chính của GAT cho phép bạn hiện thị và quản lý các tiến trình ñang chạy”
Trang 15Deface VR
H3 Ở thanh menu Tools sẽ hiện thị cho ta thấy một bộ các tiện ích
H4 “Trong tab tùy chọn của menu tools của GAT bạn có thể chọn kích hoạt hay disable Load up Tokens của XP view ”
1.5 APT (Advanced Process Termination)
Download: http://diamondcs.com.au/downloads/freeutilities/apt.zip
Giới thiệu:
APT là một tiện ích nhỏ nhưng rất mạnh nó cung cấp ñến 18 chức năng ñể “ñập chết” một tiến trình :D
- 2 chế ñộ tắt sâu vào hệ thống ở dạng nhân (kernel-mode)
Trang 16Deface VR
- 12 chế ñộ tắt ở dạng người dùng(user-mode)
- 2 tùy chọn dừng tiến trình
- 2 tùy chọn phá hủy tiến trình
Khi muốn tắt, dừng tiến trình nào bạn chỉ cần chọn tiến trình ñó rồi tha hồ mà (kill, Crash, suspend)
2 Sử dụng công cụ ñể phát hiện Rootkit(mấy tool thông dụng)
Trong trang này có các công cụ về diệt Rootkit
http://antirootkit.com/software/index.htm
*** Một số khái niệm tìm hiểu về Rootkit ***
Và mình xin copy một phần về rootkit của bạn kAmIkAzE và bạn ichinisan ở diễn ñàn
http://www.hedspi.net/diendan/ ñể người dùng có cái nhìn cơ bản về rootkit
# kAmIkAzE
Tìm hiểu về ROOTKIT
Gần ñây Rootkit ñã ñược xếp vào top 10 nguy cơ về bảo mật nguy hiểm nhất Thế nhưng còn rất
Trang 17Deface VR
ñang chạy, từ ñó giúp cho kẻ xâm nhập duy trì quyền truy cập vào hệ thống mà người dùng không biết Rootkit có ở nhiều loại hệ ñiều hành như Linux, Solaris và các phiên bản Microsoft Windows Một máy tính bị cài rootkit ñược gọi là bị "chiếm quyền root" ("rooted" trong tiếng Anh)
Thuật ngữ "rootkit" (còn ñược viết là "root kit") lúc ñầu ñược dùng ñể chỉ một bộ công cụ Unix ñược biên dịch lại như "ps", "netstat", "w" and "passwd" có thể che dấu kĩ lưỡng vết tích của kẻ xâm nhập mà bình thường sẽ bị hiển thị bởi các lệnh trên, vì vậy nó cho phép kẻ xâm nhập duy trì quyền "root" ("siêu người dùng") trên hệ thống mà ngay cả người quản trị hệ thống cũng không thể thấy họ
Ngày nay thuật ngữ này không chỉ giới hạn ở các hệ ñiều hành dựa trên Unix mà còn ñược dùng ñể chỉ các công cụ thực hiện tác vụ tương tự trên hệ ñiều hành không Unix như Microsoft Windows (ngay cả khi hệ ñiều hành ñó không có tài khoản "root")
Từ "rootkit" trở nên phổ biến khi có cuộc tranh luận về chống sao chép CD Sony 2005, trong ñó các ñĩa
CD nhạc của Sony BMG cài một toolkit vào các PC chạy Microsoft Windows
- Sự nguy hiểm của Rootkit
ðặc ñiểm của rootkit là có khả năng ẩn các tiến trình, file và cả dữ liệu trong registry (với Windows), nếu dùng những công cụ của hệ ñiều hành như: "Registry Editor", "Task Manager", "Find Files" thì không thể phát hiện, có khả năng ghi lại các thông số về kết nối mạng và các kết nối mạng ñược tạo ra bởi các chương trình sử dụng Rootkit sẽ hoàn toàn vô hình trước câu lệnh Netstat Thực sự bản thân Rootkit không có gì nguy hại tuy nhiên, khi Rootkit ñược sử dụng ñể giấu các ñoạn mã hiểm ñộc thì rất nguy hiểm Một số các worm, virus, trojan và spyware có khả năng duy trì hoạt ñộng và không bị phát hiện khi sử dụng Rootkit Các malware sẽ không bị phát hiện thậm chí khi hệ thống ñược bảo vệ bởi các chương trình chống virus tốt nhất Do ñó, Rootkit thực sự là mối ñe dọa rất nghiêm trọng
Khi hay tin CD nhạc của Sony cài ñặt rookit ñể giấu file chống sao chép xuất hiện, giới tin tặc nhanh chóng khai thác ứng dụng của Sony Phần mềm của Sony giấu bất kỳ file hay tiến trình bắt ñầu với
"$sys$", những kẻ viết phần mềm ñộc hại ñã ñổi tên file ñể lợi dụng ñặc ñiểm này
Nhà sản xuất phần mềm chống virus ở Tây Ban Nha là Panda Software cho biết họ ñang tìm biến thể của sâu Bagle cực kỳ ñộc hại có trang bị khả năng của rootkit Trầm trọng hơn, những kẻ tạo phần mềm rootkit còn bán hoặc phát tán miễn phí các công cụ, giúp những kẻ viết phần mềm ñộc hại dễ dàng bổ sung chức năng rootkit cho các virus cũ như Bagle hay tạo loại mới
Thậm chí khi sử dụng những rootkit có sẵn, tin tặc cũng có thể tạo những biến thể mới Ví dụ, công ty phần mềm bảo mật eEye phát hiện rootkit cho phép ẩn các file trong boot sector của ñĩa cứng Rootkit có thể giấu mã chương trình phá hoại trong BIOS của PC bằng cách dùng các chức năng cấu hình trong Advanced Configuration và tính năng Power Interface
Một dự án do Microsoft và các nhà nghiên cứu của ñại học Michigan thực hiện thật sự mở ñường cho nghiên cứu rootkit, tạo ra một phương thức mới gần như "ñặt" HðH chạy trên phần mềm có tên SubVirt (tên của dự án nghiên cứu) HðH vẫn làm việc bình thường, nhưng "máy ảo" ñiều khiển mọi thứ HðH nhìn thấy và có thể dễ dàng giấu chính nó Kỹ thuật này không dễ thực hiện và người dùng dễ nhận ra vì làm chậm hệ thống và làm thay ñổi những file nhất ñịnh Joanna Rutkowska - một chuyên gia nghiên cứu công nghệ "ẩn mình" phần mềm ñộc hại tại hãng bảo mật COSEINC có trụ sở tại Singapore tiếp tục phát triển thêm kĩ thuật này Công nghệ mới Blue Pill sử dụng công nghệ ảo hoá SVM/Pacifica của AMD có thể giúp tạo ra một phần mềm cực nhỏ nhưng có khả năng kiểm soát toàn bộ hệ ñiều hành và không thể bị phát hiện "Ý tưởng của Blue Pill là rất ñơn giản: Hệ ñiều hành của bạn nuốt một Blue Pill
Trang 18Deface VR
và nĩ sẽ hoạt động trong một Matrix (ma trận) được điều khiển bằng một Blue Pill Hypervisor cực nhỏ ðiều này xảy ra trực tiếp khi hệ điều hành đang vận hành, khơng gây ảnh hưởng đến các thiết bị khác." Blue Pill khơng hề dựa trên bất kỳ lỗi nào tồn tại trong hệ điều hành mà nĩ dựa vào một giải pháp động
"generic method" để chèn một số mã nhị phân vào trong nhân Vista Beta 2 (x64 edition) mà khơng sinh
ra bất kỳ một lỗi nào Tuy nhiên, chuyên gia này cũng khẳng định Blue Pill cĩ thể bị phát hiện nếu cơng nghệ Pacifica của AMD mắc lỗi
Một điều chắc chắn là rootkit vẫn là kĩ thuật cịn đang phát triển Bản báo cáo mới nhất của McAfee cho biết tính phức tạp của các rootkit đang phát triển ở một tốc độ dị thường Chỉ trong 5 năm số lượng bộ phận cấu thành rootkit đã tăng từ 27 lên tới 2.400 Và trong thời gian sắp tới sẽ cịn tăng lên đáng kể Khĩ ai cĩ thể dự đốn được sự nguy hiểm tiềm tàng của rootkit trong tương lai
- Phân loại và phương thức hoạt động của Rootkit
Cĩ nhiều tiêu chí phân loại Rootkit Trong bài này chúng ta sẽ phân loại Rootkit theo 2 tiêu chí
+ Phân loại theo thời gian tồn tại: chia làm hai loại
Rootkit bám dai (Persistent Rootkits)
Persistent root kit là một loại rootkit kết hợp với các malware khác hoạt động mỗi khi hệ thống khởi động Bởi vì các malware chứa mã phá hoại sẽ được thực thi tự động mỗi khi hệ thống khởi động hoặc khi người sử dụng đăng nhập vào hệ thống Chúng cần phải lưu trữ các đoạn mã thực thi chương trình trong Registry, các tập tin hệ thống và các phương pháp cho phép âm thầm chạy các đoạn mã mà người
sử dụng khơng hay biết
Rootkit trên bộ nhớ (Memory-Based Rootkits)
Loại rootkit này chính là các malware khơng cĩ những đoạn mã "dai dẳng" - chỉ lưu trong bộ nhớ, chính
vì thế loại rootkit này khơng tồn tại sau khi khởi động lại máy
+ Phân loại dựa trên mức độ xâm nhập hệ thống: chia làm hai loại
Rootkit chế độ người dùng (User-mode Rootkits)
Những rootkit này sẽ sửa (chỉnh) những process đang chạy trong bộ nhớ và qua đĩ nhận được những thơng tin cần thiết
Rootkit ở chế độ người dùng sử dụng nhiều phương pháp khác nhau để lẩn trốn khơng bị phát hiện Ví dụ: rootkit ở chế độ người dùng sẽ chặn tất cả các hàm gọi hệ thống API (Application Programming Interface - Giao tiếp lập trình ứng dụng - cung cấp giao tiếp (interface) giữa chế độ người dùng và dịch
vụ hệ thống) như: FindFirstFile/FindNextFile hay như để Task Manager của Windows cĩ thể hiện ra danh sách các tiến trình đang chạy, nĩ sẽ gọi một hàm Windows API (EnumProcesses) và nhận về danh sách các ID tiến trình được lấy từ một cấu trúc dữ liệu của kernel Những hàm này cịn được gọi bởi các chương trình quản lý tập tin của Windows như Explorer để liệt kê tồn bộ các thư mục tập tin hệ thống
Trang 19Deface VR
kiếm file ñể quét), khi ñó những file ñược các rootkit che giấu sẽ trở nên vô hình với những trình diệt virus này Máy tính có thể bị vẫn lây nhiễm nhưng trình diệt virus lại không thể phát hiện ra
Rootkit chế ñộ nhân (Kernel-mode Rootkits)
Rootkit chế ñộ nhân nguy hiểm hơn các loại trên, chúng không chỉ chặn các hàm API hệ thống mà còn
có thể thao tác trực tiếp các cấu trúc dữ liệu trong chế ñộ nhân Các rootkit chế ñộ kernel thì cần phải có thêm một số ñoạn mã ñể có thể ñược nạp vào kernel (thường là một trình ñiều khiển thiết bị hoặc một file sys) ðể ñạt ñược mục ñích này, chúng có thể theo trình tự hợp lệ mà các trình ñiều khiển thiết bị mức thấp vẫn dùng (thông qua trình quản lý ñiều khiển dịch vụ services.exe) Ngoài ra cũng còn một số phương pháp bất thành văn khác ñể chèn mã vào kernel Một khi ñã vào ñược trong HðH, ñoạn mã có thể chỉnh sửa các kết quả trả về từ lời gọi hàm bên trong lõi hoặc chỉnh sửa chính các cấu trúc lõi HðH Một kĩ thuật chung cho việc ẩn nấp các tiến trình malware là loại bỏ các tiến trình này ra khỏi danh sách các tiến trình ở chế ñộ nhân Bởi vì các hàm API quản lý các tiến trình ñều phải phụ thuộc vào nội dung trong các cấu trúc dữ liệu này, nên khi rootkit thay ñổi nội dung cấu trúc dữ liệu hệ thống thì các công cụ như Task Manager hoặc Process Explorer cũng không thể phát hiện ñược
Một ví dụ: Rootkits copy một bản sao của chúng với tên malware.exe và spy.dll cũng như một phần của chúng vào một thư mục Sau ñó chúng sẽ sửa (chỉnh) lại kernel ñể những thành phần chúng vừa copy không bị phát hiện nữa (cả với windows-explorer lẫn một chương trình filemanager bất kỳ Chúng hoàn toàn “tàng hình” và dưới cái lốt ñó chúng có thể làm bất cứ một ñiều gì ñó có hại ñến hệ thống của bạn
- Làm thế nào ñể Rootkit ñột nhập vào hệ thống?
Như ñã nói là Rookits có nhiệm vụ chính là che dấu những chương trình phá hoại Chúng không có những ñoạn code ñặc biệt ñể có thể tự nhân bản và phát tán Thực sự thì Rootkit phát tán cùng với những chương trình phá hoại có kèm theo nó (thông qua những lỗ hổng hệ thống của windows và những
chương trình sử dụng) Kỹ thuật ñược sử dụng nhiều nhất trước kia là qua ñường thư ñiện tử Tuy nhiên hiện nay thì rất nhiều kĩ thuật tinh vi ñược hacker sử dụng ñể phán tán
Một phần lớn những rootkits ñược bán trên mạng dưới dạng mã nguồn Phần lớn những chương trình spyware ñều sử dụng phương thức hoạt ñộng của Rootkit Qua ñó, những spyware này sẽ hoạt ñộng trên máy của người sử dụng mà không bị phát hiện và cuối cùng là chúng có thể kiếm ñược tiền nhờ những thông tin thu thập ñược trên máy người sử dụng
Bằng kỹ thuật của Rootkit, có rất nhiều trojan ñã ñược phát tán Những trojan này biến máy bạn thành một bộ máy có thể ñiều khiển từ xa và người ñiều khiển chúng có thể dùng máy bạn ñể phát tán Spam hoặc lạm dụng máy bạn ñể làm những chuyện khác
# ichinisan:
Tớ trình bày một phần kĩ thuật nhỏ của rootkit nhé, ở ñây là DLL injection
- DLL còn gọi là object module, có thể sử dụng cho từng ứng dụng riêng biệt hoặc cho cả hệ ñiều hành Trong file DLL sẽ chứa các hàm API mà ứng dụng sẽ gọi tới File DLL không phải là một phần của chương trình mà nó chỉ ñược link lại vào thời ñiểm runtime và load vào RAM lúc nào cần thiết thôi
- IAT (Import Address Table): ñây là một bảng chứa ñịa chỉ các hàm API mà chương trình sẽ gọi tới Ban ñầu thì trong bảng này các hàm API chưa có ñịa chỉ cụ thể Chỉ khi chạy chương trình thì hệ ñiều hành mới load các hàm API vào bộ nhớ rồi ñiền các ñịa chỉ bộ nhớ của các hàm API vào bảng này
- EAT (Export Address Table): ñây là một bảng ñịa chỉ bộ nhớ do file DLL xuất ra Bảng này chứa ñịa chỉ thực của các hàm API nó cung cấp ñã ñược load vào bộ nhớ Windows sẽ sử dụng file này ñể ñiền dữ liệu vào IAT
- 5 bước ñể thực hiện một chương trình:
Trang 20Deface VR
+ Windows load chương trình vào trong bộ nhớ
+ Windows check xem IAT của chương trình có gọi hàm API nào không
+ Nếu có, Windows sẽ load những DLL ñã khai báo trong chương trình ñó vào bộ nhớ
+ Windows tính toán ñịa chỉ thực của các hàm API trong bộ nhớ nhờ EAT của từng DLL ñã ñược load + Windows sẽ ghi ñè lên IAT của chương trình với ñịa chỉ API thực
- Kịch bản ví dụ cho rootkit (ở ñây rootkit muốn trốn tránh khỏi API FindNextFIle chẳng hạn):
+ rootkit scan bộ nhớ ñể tìm DLL nào có export ra một API FindNextFile
+ Nó sẽ scan ra tất cả các Kernel32.dll
+ rootkit sẽ ghi ñè ñịa chỉ trong bộ nhớ của hàm API trên trong bảng EAT của Kernel32.dll ñể trỏ ñến hàm API mạo danh ñặt trong injected DLL của rootkit (hiển nhiên là hàm API này ñã ñược load vào bộ nhớ rồi)
- Như thế thì cứ khi nào chương trình chạy API FindNextFile là sẽ chạy phải API mạo danh của rootkit
Dưới ñây mình xin giới thiệu các chương trình phát hiện rootkit sử dụng các kĩ thuật ñặc biệt ñể tóm những kẻ xâm nhập nguy hiểm này
Hầu hết các chương trình dùng phát hiện rootkit ñòi hỏi người dùng có biết chút ít về kĩ thuật Tuy nhiên, cũng có chương trình dễ sử dụng và dùng rất hiệu quả
The Avenger có ảnh hưởng tới việc remove các file và các drivers khác mà khó remove vì ñược bảo vệ hoặc ñang ñược sử dụng bởi các chương trình ñộc hại ñã ñược hook sâu vào hệ thống
The Avenger sẽ thực thi các ñoạn script trước khi khởi ñộng vào hệ thống
Sử dụng chương trình:
Bạn có thể nghĩ rằng The Avenger như một công cụ thực thi các ñoạn script
- The Avenger cho bạn các lệnh ñể thực thi các script bao gồm các file ñể xóa, các khóa regedit ñể xóa, các drivers ñể disble và hơn thế nữa
- The Avenger khởi ñộng lại máy tính của bạn(nó phổ biến cho việc khởi ñộng lại lần thứ 2, nếu như cần thiết) và thực thi các lệnh trong quá trình khởi ñộng lại
- Sau ñó, windows sẽ restart lại, và mở một bản log ñược tạo ra bởi The Avenger vì thế bạn có thể
Trang 21- đánh trực tiếp vào text box trong màn hình chắnh
- Load một ựoạn script từ một file (một file text hay một file ựịnh dạng ANSI ựã ựược encode) sử dụng nút
- Load một script từ một ựịa chỉ mạng Internet sử dụng nút
- Hoặc paste một script trực tiếp từ clipboard sử dụng nút
3 tùy chọn cuối cũng có thể ựược chọn từ menu ỘLoad ScriptỢ
Các câu lệnh sử dụng:
+ Comment: Hiện thị thông báo
Vd ựoạn script như sau
Comment:
Script này sẽ remove tất cả các biến thể lây nhiễm
+ Files to delete: Lệnh này sử dụng khi ta liệt kê các file muốn xóa ra
Vd:
Files to delete:
C:\WINDOWS\System32\kavo.dll
%windir%\bad.exe
c:\documents and settings\file.exe
khi khởi ựộng lại các file kavo.dll, bad.exe, file.exe sẽ bị xóa
+ Files to replace with dummy: Lệnh này sử dụng ựể thay thế file virus bằng các file giả(những file giả
sẽ không thể thực thi ựược)
Vidu:
Trang 22Deface VR Files to replace with dummy:
C:\WINDOWS\System32\kavo.dll
%windir%\bad.exe
c:\documents and settings\file.exe
vidu trên sẽ thay thế các file kavo.dll, bad.exe, file.exe
+ Files to move: Lệnh này sử dụng ñể di chuyển một file từ nơi này ñến nơi khác
Vidu:
Files to move:
C:\WINDOWS\System32\kavo.dll | C:\renamed.dll
%windir%\bad.exe | %systemdrive%\bad.exe.bak
c:\documents and settings\file.exe | c:\backup\bad.extension
vidu trên sẽ thực thi việc di dời file kavo.dll tới ổ C:\ ñược thay với tên renamed.dll và file bad.exe ñược di dời và ñổi tên thành bad.exe.bak, còn file.exe thì ñược mang tới thư mục c:\backup với tên là bad.extension
+ Folders to delete: Lệnh này dùng ñể xóa một thư mục
Vidu:
Folders to delete:
C:\WINDOWS\System32\virus
c:\documents and settings\evil user\evil folder
vidu trên sẽ thực thi việc xóa thư mục virus và thư mục evil folder
+ Registry keys to delete: Câu lệnh này dùng ñể xóa một khóa ở regedit
Vidu trên sẽ thực thi việc xóa các key ñã nêu ra
+ Registry keys to replace with dummy: Lệnh này ñể thay thế các key regedit bằng các key giả
Tương tự như thay thế file nó cũng thay vào regedit bằng các khóa giả
+ Registry values to delete: Lệnh ñể xóa các giá trị và thay vào ñó bằng các giá trị khác
Vidu:
Registry values to delete:
Trang 23Deface VR
HKEY_LOCAL_MACHINE\Software\SomeKey | BadValue
HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon | System
HKLM\System\CurrentControlSet\Control\Session Manager | BadValue
+ Programs to launch on reboot: Lệnh này dùng ñể thực thi các chương trình khi khởi ñộng lại máy
tính
Vidu:
Programs to launch on reboot:
C:\Documents and Settings\My User\Desktop\HijackThis.exe
%systemdrive%\my_fix.bat
c:\MyRegFile.reg
regedit.exe /s c:\MyRegFile.reg
vidu trên sẽ thực thi chương trình hijackthis.exe, my_fix.bat, myregfile.reg và lệnh regedit.exe /s
c:\myregfile.reg khi bắt ñầu ñăng nhập vào máy tính
+ Drivers to delete: Lệnh này ñể xóa các drivers ñộc hại
Vidu:
Drivers to delete:
BadDriver
Ntdlll
Vidu trên dùng ñể xóa các driver baddriver, ntdlll
+ Drivers to disable: Lệnh này ñể vô hiệu hóa các drivers
Việc backup registry ñược chứa, lưu trữ trong file zip và ñược ñặt tên là “avenger.txt” Bạn có thể xem log từ các file thực thi gần ñây của The Avenger bởi tùy chọn Open Log File từ menu File Gần ñây hầu hết các file log ñược lưu lại tại C:\avenger.txt(Nếu ổ C là ổ hệ thống), và không ñược xóa cho ñến khi The Avenger thực thi các câu lệnh
Vidu:
Trang 24Deface VR
Công cụ này khá mạnh khi muốn xóa một file khi khởi ñộng vào hệ thống
2.2 GMER
Download: http://gmer.net/gmer.zip
GMER là một ứng dụng dùng ñể phát hiện và remove rookits
Chức năng Scan Rootkit/malware:
Những file bị hook bên trong
Xem việc hook các driver trên bảng SSDT
Xem hook các driver trên bảng IDT
Xem hook các driver dựa vào việc gọi IRP
Ngoài ra còn có các chức năng khác như
+ Xem thông tin, tắt các tiến trình ñang chạy (Tab Process)
Trang 25Deface VR
Cũng trong cửa sổ này nếu ta muốn xóa/copy một file nào ñó ta có thể chọn Files rồi tìm ñường dẫn ñến file muốn xóa/copy
+ Xem thông tin các services ñang chạy (Tab Services)
Ta có thể thiết lập lại các chức năng như (Boot/system/auto/Disabled) hoặc có thể Delete
Trang 26Deface VR
+ Xem thông tin các Modules (Tab Modules)
+ Xem thông tin/thực thi trong Registry (Tab Registry)
Trang 27Deface VR
+ Scan xem có những thông tin gì tự ñộng chạy khi ñăng nhập vào máy( tab Autostart)
+ Và chức năng dòng lệnh CMD(Tab CMD): Sử dụng như CMD ở windows
Trang 28Deface VR
2.3 ICESword
Download: http://mail.ustc.edu.cn/~jfpan/download/IceSword122en.zip
Các chức năng chính của IS
- Funtions: Bao gồm việc theo dõi và hiển thị Process, Port, Kernel Module, Startup, Win32 Services,
SPI, BHO, SSDT, Message Hooks, Log Process/Thread Creation, Log Process Termination,
Advanced Scan
+ Process: Hiển thị các tiến trình ñang chạy Ta có thể thực thi việc xem thread/module của một tiến
trình nào ñó, ñọc/ghi bộ nhớ của tiến trình, tắt tiến trình, tìm kiếm module của tiến trình
Trang 29Deface VR
+ Port: Hiển thị thông tin các cổng ñang ñược kết nối và ñược chạy bởi tiến trình nào
+ Kernel Module: Hiện thị thông tin về các driver, các module ở các file nhân của hệ ñiều hành
Trang 30Deface VR
+ Startup: Hiển thị các file chạy cùng khi khởi ñộng ở khóa Run trong regedit và ở thư mục Startup
+ Win32 Services: Hiển thị các dịch vụ ở windows Ta có thể thực thi dịch vụ ñó như cửa sổ
services(services.msc) trong windows
Trang 31Deface VR
+ SPI(Service Provider Interface): Hiển thị các thư viện dll trong winsock v.2 hay là trong khóa
”HKLM\SYSTEM\CurrentControlSet\Services\WinSock2\Parameters\Protocol_Catalog9” của registry
+ BHO(Browser Help Objects): Hiện các ñối tượng ñính thêm vào explorer, IE Ta có thể chọn một ñối
tượng và xóa nó
Trang 32Deface VR
+ SSDT: Hiện thông tin bảng SSDT (System Service Descriptor Table)
+ Message hooks: Hiển thị thông báo các hook
Trang 33Deface VR
+ Log Process/Thread Creation: Xem bản ghi log các tiến trình ñã chạy, các thread ñược tạo thành
+ Log Process Termination: Xem các tiến trình ñã bị tắt
Trang 34Deface VR
+ Advanced Scan: Scan ở mức ñộ cao hơn, kiểm tra xem có file nào bị hook Có các tùy chọn (general
scan, mudule scan, restore) cho ta
- Registry: Hiển thị các khóa ở registry, kể cả những khóa mà trình regedit ở windows không hiển thị
ñược và ta có thể thực thi việc thay ñổi, xóa ngay tại ñây
Trang 35Deface VR
- File: Hiển thị các ñịnh dạng file ở trong các ổ ñĩa Ta có thể thực thi việc copy và xóa/bắt xóa file
ñược chọn
ðây là bản dịch của kienmanowar về bài “How To Remove Rootkits with IceSword”
Sử dụng IceSword ñể Remove Rootkits (tác giả Mahesh Satyanarayana (swatkat) )
Giới thiệu:
Trong bài viết này tác giả sử dụng một công cụ rất nổi tiếng ñó là HxDef (hay còn gọi là Hacker
Defender) ñể che dấu tất cả các files, folders, các registries entry và thậm chí cả các processes có liên quan tới chương trình Sandboxie Sau khi thực hiện công việc này, tác giả ñã sử dụng công cụ IceSword
ñể phân tích Phần tiếp theo của bài viết này sẽ là các bước hướng dẫn cụ thể quá trình loại bỏ rootkits ra
khỏi hệ thống
Trang 36Deface VR
Chú ý : Ở ñây chương trình SandBoxie không phải là Malware Thực chất, nó là một công cụ khá hữu
ích ñể kiểm tra, chạy thử malware trong ñó có cả rootkits xem malware ñó tạo ra những gì
Các bước thực hiện :
Bước 1 : Chạy IceSword Bên tab Functions chọn “Processes” ñể kiểm tra các processes ñang chạy trên
máy, tìm kiếm xem có những processes nào bị nghi ngờ , ñánh dấu màu ñỏ bởi IceSword Những
processes bị ñánh dấu màu ñỏ ñược liệt kê ra này là những hidden processes
Hình minh họa dưới ñây cho ta thấy có 2 processes ẩn ñó là hxdef100.exe và control.exe :
Bước 2 : Tại tab Functions chọn tiếp “Win32 Services” và tìm kiếm danh sách những mục bị ñánh dấu
màu ñỏ trong danh sách các services trên máy
Xem hình minh họa bên dưới ta thấy có một Hidden Serivce là HxDef
Trang 37Deface VR
Bước 3 : Tiếp theo, chọn “SSDT” và kiểm tra các entry bị ñánh dấu màu ñỏ Nếu thấy có bất kì dấu hiệu
nào, chú ý ñến tên file và tên các folder Các rootkits hoạt ñộng ở Kernel level chỉnh sửa các SDT entries
ñể hook các hàm APIs natively
Hình minh họa dưới ñây chỉ cho ta thấy kernel level API hooking bới SandBoxie driver:
Bước 4 : Bây giờ chúng ta sẽ tiến hành loại bỏ rootkit ra khỏi hệ thống Chọn “Processes” , sau ñó chuột
phải lên các processes bị ñánh dấu màu ñỏ và chọn “Terminate Process” Khi bạn thực hiện công việc này IceSword sẽ tiêu diệt các rooted processes
Xem hình minh họa dưới ñây :
Trang 38Deface VR
Bước 5 : Nhấn chọn “Win32 Services” Do các rooted processes ñã hoàn toàn bị terminated, các rootkit
service cũng sẽ hoàn toàn tự ñộng bị stop Do ñó tại thời ñiểm này service sẽ không còn hidden nữa cho nên nó cũng không còn bị ñánh dấu màu ñỏ như hình bên trên Do ta ñã lưu lại tên của service tại bước
2, do ñó việc tìm kiếm lại nó hoàn toàn dễ dàng Bây giờ chọn nó , chuột phải và chọn “Disabled” ñể hoàn toàn disable service này
.Xem hình minh họa dưới ñây :
Xem hình minh họa :
Bước 6 : Tiếp theo chúng ta phải xóa các root files Nhấn chọn “File”, nó sẽ hiển thị giao diện giống như
khi ta làm việc với Windows Explorer Tìm ñến folder nơi có chứa rootkit và xóa chúng
Trang 39Deface VR
Bước 7 : *Not recommended for novice users*
Các file mà ñược che dấu bởi rootkit thông thường sẽ tạo và lưu vết trong Registry ñể tự nó ñược load lên mỗi khi Windows loads ðể kiểm tra có những startup entries cho bất kì các rooted files nào (thậm chí ñã ñược deleted trong các bước trước), nhấn chọn “Startup” Nếu như tìm thấy có các startup entries liên quan thì sử dụng công cụ có sẵn của IceSword ñể remove nó Chọn “Registry” ñể vào
registry editor tương tự như chúng ta gõ Regedit.exe Tiếp theo tìm ñến các key/value , chọn và xóa chúng
Hình minh họa dưới ñây sẽ cho ta thấy các bước thực hiện :
Trang 40Deface VR