SlideShare uma empresa Scribd logo
1 de 40
Baixar para ler offline
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
Chuyên ngành: ATTT - khoa CNTT
---------------------------------------
Rà soát, gỡ bỏ mã độc bằng SysInternal Suite
Môn học: An toàn phần mềm
Giảng viên: Nguyễn Ngọc Điệp
Nhóm sinh viên: Phạm Trung Đức
Nguyễn Tuấn
Hà nội, ngày 24 tháng 11 năm 2017
Mục lục
Bảng phân công nhiệm vụ.................................................................................................0
Lời dẫn................................................................................................................................1
Chương 1: Lý thuyết nền tảng rà soát gỡ bỏ Malware trên Sysinternal Suite Tools .2
1.1. Lý thuyết về điều tra số Windows ......................................................................2
1.1.1 Windows Registry .........................................................................................2
1.1.2 Windows Process...........................................................................................3
1.1.3 Windows Event Log ......................................................................................3
1.1.4 Windows Prefetch .........................................................................................4
1.1.5 Các thư mục phổ biến...................................................................................4
1.1.6 Basic Network Forensic ................................................................................6
1.2. Tổng quan bộ phần mềm SysInternal Suite Tools............................................6
1.3. Các bước gỡ bỏ Malware bằng SysInternal Tools............................................7
1.3.1 Ngắt kết nối mạng của hệ thống...................................................................8
1.3.2 Xác định tiến trình độc .................................................................................8
1.3.3 Chấm dứt tiến trình độc của Malware......................................................17
1.3.4 Xác định và xóa bỏ Malware Autostarts RegKey ....................................18
1.3.5 Xóa bỏ file Malware....................................................................................21
1.3.6 Khởi động và lặp lại qui trình....................................................................21
Chương 2: Lab Demo rà soát, gỡ bỏ Malware .............................................................22
2.1. Nội dung demo....................................................................................................22
2.2. Lab 01: Rà soát gỡ bỏ Malware Keylogger PlugX .........................................23
2.3. Lab 02: Rà soát gỡ bỏ Malware Trojan Zeus .................................................32
Tổng kết............................................................................................................................36
Danh mục tài liệu tham khảo .........................................................................................37
Bảng phân công nhiệm vụ
STT
Mã sinh
viên
Họ và tên Phần việc thực hiện
1 B13DCAT056
Phạm Trung
Đức
- Làm slide
- Thuyết trình tuần 2 + 3
- Trình bày Demo trên lớp
- Thực hiện, soạn thảo
báo cáo.
- Làm lab demo 01.
2 B13DCAT094 Nguyễn Tuấn
- Tìm kiếm thông tin, tài
liệu
- Dịch tài liệu
- Làm lab demo 02.
Lời dẫn
Trong bối cảnh ngày nay khi mạng Internet càng mở rộng với hàng tỉ thiết bị PC,
Laptop, smart phone, IoT được kết nối chặt chẽ với nhau, yêu cầu mở rộng đầu tư cho an
ninh thông tin, an toàn mạng trở nên thiết thực hơn bao giờ hết. Bên cạnh những nguy cơ
phổ biến như tấn công từ chối dịch vụ DDoS, chèn SQL Injection, khai thác Exploit CVE
thì Malware đóng vai trò vô cùng then chốt trong ngành An toàn thông tin.
Các Malware hiện đại ngày nay có cơ chế phức tạp, đóng vai trò tấn công APT gây
thất thoát hàng triệu đô la. Đồng thời, các chương trình Anti Virus cũng dần trở nên kém
hiệu quả khi mỗi ngày số lượng Malware tăng tới hàng triệu đơn vị, sử dụng nhiều phương
pháp tinh vi tránh bị phát hiện. Chính thực tế như vậy khiến hệ thống mạng máy tính trong
các tập đoàn bên cạnh việc sử dụng Anti Virus còn áp dụng phương pháp Forensic điều tra
số để rà soát, gỡ bỏ hoàn toàn Malware khỏi hệ thống. Bài tìm hiểu môn An toàn phần
mềm của nhóm 26 chúng em sẽ áp dụng một qui trình hiệu quả qua bộ phần mềm
SysInternal Suits với mục đích rà soát, gỡ bỏ phần mềm mã độc một cách hiệu quả khỏi hệ
thống.
Trang 2
Chương 1: Lý thuyết nền tảng rà soát gỡ bỏ
Malware trên Sysinternal Suite Tools
1.1. Lý thuyết về điều tra số Windows
Trong phần đầu tiên này, chúng ta sẽ tìm hiểu về lý thuyết nền tảng về đặc điểm
thông dụng Malware tác động lên hệ điều hành Windows. Bằng cách điều tra thông tin dựa
trên những đặc điểm này, việc điều tra rà soát tìm kiếm Malware có thể hiệu quả.
1.1.1 Windows Registry
Registry được coi là cấu trúc xương sống của hệ điều hành Microsoft Windows, vốn
là cơ sở dữ liệu dùng để lưu trữ các thông số kỹ thuật của Windows và lưu lại những thông
tin về sự thay đổi, lựa chọn cũng như những thiết lập từ người sử dụng Windows. Registry
chứa các thông tin về phần cứng, phần mềm, người sử dụng và một điều nữa là Registry
luôn được cập nhật khi người dùng có sự thay đổi trong các thành phần của Control Panel,
File Associations và một số thay đổi trong menu Options của một số ứng dụng.
Cấu trúc chung của Registry bao gồm Key và Values (Khóa và giá trị của khóa).
Các phần mềm, hành vi hệ thống khi thay đổi cách hoạt động đều có thể tác động lên giá
trị Registry Key. Đặt ở góc nhìn của người rà soát, một Malware cũng là phần mềm thực
thi trên máy tính, cũng sinh ra tiến trình, sự kiện thêm sửa xóa file và các giá trị RegKey.
Chính vì vậy, qua việc phân tích Registry trong Windows, ta có thể phát hiện được hành
vi của Malware.
Để có thể chạy và thực thi cùng lúc với hệ điều hành Windows, Malware thường tác
động lên giá trị các RegKey Run và Runonce với bốn giá trị phổ biến:
 HKEY_LOCAL_MACHINESoftwareMicrosoftWindow
sCurrentVersionRun
 HKEY_CURRENT_USERSoftwareMicrosoftWindows
CurrentVersionRun
 HKEY_LOCAL_MACHINESoftwareMicrosoftWindow
sCurrentVersionRunOnce
 HKEY_CURRENT_USERSoftwareMicrosoftWindows
CurrentVersionRunOnce
Trang 3
1.1.2 Windows Process
Một tiến trình là một chương trình đang được thi hành. Tiến trình sử dụng tài
nguyên như CPU, bộ nhớ, tập tin, các thiết bị nhập xuất để hoàn tất công việc của nó. Các
tài nguyên này được cung cấp khi tiến trình tạo hay trong quá trình thi hành. Tiến trình
được coi là một đơn vị làm việc của hệ thống. Một hệ thống có thể có nhiều tiến trình cùng
lúc, trong đó một số tiến trình là của hệ điều hành, một số tiến trình là của người sử dụng.
các tiến trình này có thể diễn ra đồng thời.
Các chương trình khi hoạt động trong Windows sẽ tạo ra tiến trình. Có thể kể đến các tiến
trình cốt lõi của hệ điều hành Windows:
 Ctfmon.exe: Cwindowssystem32ctfmon.exe là Chương trình
chạy ngầm khi mở MS office.
 lsass.exe: Cwindowssystem32lsass.exe là trình hệ thống cơ cấu
an ninh hệ điều hành.
 Csrss.exe: Cwindowssystem32csrss.exe là trình quản lí đồ họa
trong hệ điều hành.
 Smss.exe: Cwindowssystem32smss.exe là tiến trình thông báo
những gì xảy ra trong sesions của hệ thống.
 Winlogon.exe: Cwindowssystem32winlogon.exe phụ trách việc
quản lí login và logout.
 Wmipvse.exe: Cwindowssystem32wbemvmiprvse.exe là file
quan trọng của Windows Management Instrucmentation.
Những mẫu Malware tinh vi thường đặt tên làm giả những tiến trình trên với thông
tin đầy đủ các chữ kí xác thực Microsoft nhằm tránh bị phát hiện và đánh lừa người sử
dụng. Vì thế, khi tìm kiếm Malware, người điều tra sẽ tìm kiếm, truy lùng những tiến trình
khả nghi có thể đóng vai trò gây hại. Có thể kể đến ví dụ như việc xuất hiện tiến trình
cftmon.exe trong khi không sử dụng Word Excel, hay là việc xuất hiện tiến trình
psexec.exe trong khi không thực hiện truy nhập điều khiển từ xa.
1.1.3 Windows Event Log
Mỗi khi Windows khởi chạy, hệ điều hành sẽ bắt đầu ghi lại các hoạt động (event)
diễn ra bên trong hệ thống. Đó không phải báo cáo chung chung như "This user has started
Solitaire ten times today" (người dùng này đã chơi game Solitaire mười lần trong hôm nay),
mà là các chi tiết quan trọng của việc khởi động Windows, quá trình đăng nhập của người
dùng, những dịch vụ đã bắt đầu và kết thúc trong phiên làm việc, sự cố hệ thống và nhiều
thứ khác.
Trang 4
EventLog của Windows nằm tại: %SYSTEM ROOT%SYSTEM32winevtlogs.
Event Viewer là công cụ riêng của Windows để xem xét các hoạt động được "ghi
sổ" này (hay còn gọi là log). Chương trình này tiện lợi cho việc chẩn đoán các trục trặc
trong Windows và là một phương tiện hiệu quả giúp khám phá những gì đang xảy ra ở "hậu
trường" của hệ điều hành. Thực tế cho thấy, Event Viewer là nơi đầu tiên cần xem xét khi
máy tính gặp sự cố mà không rõ nguyên nhân.
Trong Windows có ba loại Event Logs phổ biến:
 System: ghi lại các Event của hệ điều hành, như là các service hoặc
boot.
 Security: ghi lại các event based và group policy
 Application: ghi lại các event từ ứng dụng trong máy. Ví dụ như truy
cập các file và cảnh báo của Antivirus
Khi Malware xâm nhập và lây nhiễm hệ thống Microsoft Windows, nó có thể sinh
ra các tiến trình thiết lập truy vấn kết nối TCP/UDP đến máy chủ điều khiển, đặt kết nối
truy nhập từ xa, tạo hoặc cài đặt chương trình mới.
1.1.4 Windows Prefetch
Windows lưu trữ các file Prefetch hỗ trợ quá trình khởi động của hệ điều hành. Các
loại file này đuôi .pf và nằm trong đường dẫn System32/Prefetch. Với mỗi một file .pf đại
diện cho một chương trình, có lưu trữ danh sách các file và thư viện DLL để preload vào
bộ nhớ, giúp cho hẹ điều hành và các chương trình khởi động nhanh hơn. Mỗi file thực thi
như .exe gồm file prefetch bao gồm các thông tin:
 Tên file thực thi
 Đường dẫn thực thi
 Số lượng thực thi của phần mềm đó trong HĐH
 Thời điểm chạy lần cuối
 Danh sách thư viện .DLL của chương trình.
Bằng cách phân tích các file Prefetch, người rà soát có thể tìm thấy được những file
liên quan đến tiến trình độc. Việc phân tích các file Prefetch như vậy cực kì hiệu quả khi
áp dụng lên những mẫu mã độc có cơ chế ẩn mình bằng cách sử dụng những tiến trình hợp
lệ trong Windows.
1.1.5 Các thư mục phổ biến
Các ứng dụng Windows thường lưu trữ dữ liệu và cài đặt trong một thư mục có tên
AppData (Application Data). Mỗi tài khoản người dùng Windows đều có một AppData
Trang 5
riêng biệt. Tuy nhiên, đây là một thư mục ẩn và người dùng chỉ có thể thấy khi kích hoạt
tính năng hiển thị file ẩn trong File Explorer.
Mỗi tài khoản người dùng đều có một thư mục AppData với các dữ liệu riêng biệt.
AppData cho phép các chương trình, ứng dụng Windows có thể lưu trữ các thiết lập khác
nhau nếu máy tính có nhiều tài khoản người dùng. Thư mục AppData lần đầu tiên được
giới thiệu trên Windows Vista và vẫn còn xuất hiện trên Windows 10. Thư mục AppData
có thể được xác định bằng cách:
 Dựa vào đường dẫn sau: Ví dụ tên người dùng trên máy tính là
DUC. Vậy thư mục AppData sẽ có dạng: C: Users DUC
AppData.
 Gõ đường dẫn %appdata% để truy cập trực tiếp vào thư mục
AppData Roaming, nơi chứa toàn bộ dữ liệu của các ứng dụng
trên Windows.
Có ba thư mục chứa bên trong AppData là Local, LocalLow và Roaming.
 Roaming (%appdata%): thư mục này chứa các dữ liệu có thể
di chuyển từ người dùng này sang người dùng khác. Miễn rằng
máy tính được kết nối với một miền và dữ liệu luôn được đồng
bộ qua một hệ thống máy chủ.
 Local (%appdata%/…local): Nếu không cùng kết nối với một
tên miền, dữ liệu giữa hai thư mục Roaming và Local
(%localappdata%) gần như không có sự khác biệt. Sự khác biệt
chỉ nằm ở chỗ, các dữ liệu không thể di chuyển theo cùng một
hồ sơ người dùng.
 LocalLow (%appdata%/…/locallow): thư mục này gần như
tương đồng với thư mục Local, nhưng được thiết kế dành riêng
cho các ứng dụng có mức truy cập thấp và bảo mật hạn chế hơn.
Ví dụ khi trình duyệt web Internet Explorer kích hoạt chức năng
bảo mật Protected Mode, ta sẽ chỉ tìm thấy dữ liệu của IE trong
thư mục LocalLow.
Khi Malware lây nhiễm vào hệ thống thường tạo ra các file trong đường dẫn này
nhằm tránh bị phát hiện bởi người sử dụng, hoặc các công cụ quét. Chính vì thế, khi điều
tra tìm kiếm mã độc trong Windows, người điều tra cần rà soát các thư mục phổ biến của
%AppData%.
Trang 6
1.1.6 Basic Network Forensic
Trong bối cảnh từ những năm gần đây, các mẫu Malware được tạo ra với mục đích
phá hoại, thâm nhập, đánh cắp thông tin dẫn đến hầu hết trong các trường hợp máy tính bị
nhiễm mà người dùng không hề hay biết. Nhu cầu hoạt động như vậy khiến môi trường bị
lây nhiễm phải có Internet để Malware hoạt động được hoàn toàn. Vậy nên bằng cách quan
sát kết nối được thiết lập bởi các tiến trình, người rà soát có thể tìm kiếm được process
đáng nghi của Malware. Ví dụ như một tiến trình explorer.exe (vốn là để lướt truy cập
file) lại có kết nối TCP đến một máy chủ từ xa.
1.2. Tổng quan bộ phần mềm SysInternal Suite Tools
Sysinternals Suite là một nhánh của website Microsoft Tech chuyên cung cấp các
nguồn tài liệu kỹ thuật; tiện ích quản lý, chẩn đoán, khắc phục sự cố và giám sát trong môi
trường Microsoft Windows. Sysinternals được thành lập bởi nhà lập trình viên Bryce
Cogswell và Mark Russinovich.
Website Sysinternals cung cấp các công cụ miễn phí để quản trị và giám sát máy
tính chạy Windows.
Sysinternals hiện tại có 69 tiện ích bên trong và Sysinternals không dành cho người
không am hiểu hệ thống máy tính. Nó là bộ công cụ hữu ích cũng như cần thiết nhằm mục
đích chẩn đoán lỗi, bạn còn có thể “diệt virus bằng tay” chỉ với Sysinternals.
Trang 7
Hình 1.1: Các phần mềm trong bộ SysInternals Tools Suite
Sử dụng các công cụ phổ biến như Process Explorer, Process Monitor, Autoruns giúp
phát hiện rà soát gỡ bỏ được Malware bằng tay.
1.3. Các bước gỡ bỏ Malware bằng SysInternal Tools
Tổng quan về việc gỡ bỏ rà soát Malware có thể tóm gọn trong 7 bước chính:
Trang 8
Hình 1.2: Bảy bước áp dụng cơ bản rà soát, gỡ bỏ Malware khỏi máy người dùng.
1.3.1 Ngắt kết nối mạng của hệ thống
Ngắt kết nối máy tính hoặc máy tính bị nhiễm từ mạng là một phần thiết yếu của
quá trình loại bỏ phần mềm độc hại vì việc này đảm bảo rằng các máy tính bị nhiễm không
lây lan phần mềm độc hại sang các máy tính khác trên mạng.
Bước này có thể được thực hiện bằng cách ngắt kết nối hoặc vô hiệu hoá cáp mạng
hoặc thẻ từ mỗi máy tính (bao gồm tắt mạng không dây thông qua chuyển mạch phần cứng
nếu có thể) hoặc bằng cách vô hiệu hóa tất cả các chức năng mạng từ màn hình cấu hình
BIOS (hướng dẫn thực hiện nhiệm vụ này khác nhau đối với các máy tính khác nhau và bo
mạch chủ).
1.3.2 Xác định tiến trình độc
Sau khi máy tính nhiễm mã độc bị ngắt kết nối khỏi mạng, bước tiếp theo trong quá
trình gỡ bỏ Malware là xác định bất kỳ quy trình độc hại nào. Bước này liên quan đến việc
tìm kiếm các qui trình có dấu hiệu đặc biệt như:
 Tiến trình không Icon.
 Tiến trình không có mô tả thành phần chi tiết, tên công ty.
 Các file có thông tin ghi nguồn gốc từ Microsoft nhưng không
được xác thực chữ kí.
 Process có tên lạ nằm trong Windows Directory phổ biến như
Win32, %APPDATA%, %TEMP%, , Common files.
 Các file đã được nén hoặc mã hóa. Các Malware được mã hóa
với mục đích chủ yếu chống bị phân tích.
 Các file với đường dẫn có URL lạ.
Trang 9
 Tiến trình có kết nối đầu cuối TCP/IP.
 Tiến trình có chứa các services và DLL khả nghi.
Bản thân những dấu hiệu trên không nhất thiết là của Malware. Nhiều chương trình
hợp pháp được mã hóa hoặc nén, nhiều tiến trình hợp pháp chạy mà không hề có biểu tượng
icon. Ngoài ra, không phải tất cả các tệp và quy trình phần mềm độc hại đều có tất cả các
dấu hiệu được liệt kê ở đây. Tuy nhiên, những dấu hiệu này thường là những manh mối
hữu ích để phát hiện phần mềm độc hại trên máy tính bị nhiễm. Công cụ Sysinternals
Process Explorer giúp phát hiện các quy trình độc hại.
Hình 1.3: Minh họa tiến trình Process độc của Malware trên Process Explorer.
1.3.2.1 Sử dụng Process Explorer
Process Explorer là một loại "Super Task Manager" cung cấp một loạt các khả
năng khắc phục sự cố chung, bao gồm cả việc phát hiện ra các vấn đề về phiên bản DLL,
xử lý rò rỉ, thông tin tập tin bị khóa, xử lý sự cố và chi tiết các quy trình treo.
Cửa sổ chính của Process Explorer cung cấp hiển thị thông tin về quá trình đang
chạy trên máy tính. Mặc dù có những điểm tương đồng bề ngoài giữa khung nhìn này và
tab Processes trong Windows Task Manager, Process Explorer cung cấp rất nhiều thông
tin về mỗi quá trình. Mỗi hàng trong danh sách quá trình đại diện cho một đối tượng quá
trình chạy trên máy tính có không gian địa chỉ ảo riêng của nó và một hoặc nhiều luồng có
thể thực thi mã tại một số điểm.
Tên của các quá trình độc hại thường bắt chước tên của các quy trình hợp pháp, có
thể làm cho chúng khó xác định trong Task Manager. Sử dụng Process Explorer giúp
bạn dễ dàng xác định các quy trình chạy từ các vị trí đáng ngờ hoặc có các đặc điểm đáng
ngờ. Theo mặc định, các quy trình được liệt kê trong một chế độ xem theo thứ bậc được
gọi là cây quá trình, cho thấy quan hệ cha / con giữa các quy trình. Các cột hiển thị một
loạt các thuộc tính cho mỗi quá trình, bao gồm tên của công ty xuất bản hình ảnh, mô tả
ngắn, thông tin về phiên bản và các thông tin khác.
Trang 10
Khi rà soát Malware, ta chú ý đến các cột Company Name, Description, và
Version. Các nhà xuất bản phần mềm hợp pháp thường điền đủ thông tin các cột này trong
khi tác giả Malware lười biếng có thể bỏ qua nó.
Hình 1.4: Bảng màu sắc phân biệt tiến trình khác nhau trong Process Explorer
Trong Process Explorer, các hàng có màu sắc khác nhau để chỉ:
 Màu xanh nước biển nghĩa là tiến trình được thực thi cùng bối cảnh với
chương trình Process Explorer. Điều này có nghĩa rằng tiến trình này
chạy dưới quyền User Active Control chứ không phải là hệ thống, hoặc
service account.
 Màu hồng cho biết quá trình đang lưu trữ một hoặc nhiều dịch vụ
Windows. Các dịch vụ có thể chạy một mình, hoặc là một phần của DLL
dịch vụ bên trong một tiến trình Svchost.exe.
 Màu tím chỉ ra rằng chương trình đã được đóng gói (nén hoặc mã hóa).
 Màu xanh lá cây và màu đỏ chỉ ra rằng quá trình vừa mới bắt đầu hoặc
thoát. Theo mặc định, hàng tiến trình chỉ được đánh dấu màu xanh lá
cây hoặc màu đỏ trong 1 giây, khiến chúng rất khó theo dõi. Ta có thể
tùy chỉnh trong phần Options để nó tồn tại lâu hơn một giây.
Di chuyển con trỏ chuột qua một hàng sẽ hiển thị một chú giải công cụ với thông
tin về quy trình, chẳng hạn như đường dẫn đầy đủ đến tiến trình, có thể giúp xác định các
quy trình chạy từ các vị trí bất thường hoặc đáng ngờ. Phần chú giải cũng cung cấp thông
tin bổ sung cho các quy trình hệ thống, chẳng hạn như các tệp DLL do Rundll32.exe lưu
Trang 11
trữ, các dịch vụ được lưu trữ bởi Svchost.exe và các quy trình dịch vụ khác và thông tin
máy chủ COM cho Dllhost.exe. Phần mềm độc hại thường cố gắng che giấu sự hiện diện
của nó bằng cách tự gắn chặt vào các quy trình hệ thống như vậy, vì vậy hãy quan tâm đến
chú giải công cụ khi điều tra nguồn lây nhiễm.
Hình 1.5: Process Explorer hiển thị hông tin chi tiết về một tiến trình
Để nghiên cứu quy trình khó nhận biết, chọn Search Online từ trình đơn Process
hoặc nhấn Ctrl + M để tìm kiếm tên quy trình sử dụng trình duyệt được cấu hình và công
cụ tìm kiếm. Đôi khi, phần mềm độc hại sử dụng chuỗi ngẫu nhiên hoặc bán ngẫu nhiên
cho tên quy trình và tệp, vì vậy ngay cả khi không thể xác định được bằng chứng khẳng
định rằng quy trình là độc hại, một tìm kiếm không tạo ra kết quả nào cho một tên quy trình
đôi khi có thể chỉ ra rằng quá trình đáng ngờ.
Hình 1.6: Minh họa tiến trình của Malware trên Process Explorer không có thông tin, không mô tả, không
icon.
Trang 12
1.3.2.2 DLL View
Phần mềm độc hại có thể ẩn bên trong quá trình hợp pháp như thư viện DLL, sử
dụng kỹ thuật DLL Injection. Cửa sổ phía dưới Process Explorer (có thể được hiển thị
bằng cách nhấp vào nút Show Lower Pane trên thanh công cụ hoặc nhấn Ctrl + L) liệt kê
nội dung của quá trình đã chọn ở phần trên.
Khung dưới có thể được cấu hình để hiển thị trong chế độ xem DLL hoặc chế độ
xem xử lý. DLL view liệt kê tất cả các DLL và các tệp khác được ánh xạ vào không gian
địa chỉ của tiến trình, và Handle view liệt kê tất cả các đối tượng hạt nhân được mở bởi
quá trình này. Nhấn Ctrl + D mở ra DLL view.
Hình 1.7: thư viện .DLL được liệt kê trong các Process được hiển thị
Trong DLL View, mỗi hàng trong khung bên dưới liệt kê thông tin về một tệp DLL,
tệp thi hành hoặc các tệp được ánh xạ bộ nhớ khác đang được quá trình sử dụng. Đối với
các Process hệ thống, DLL View liệt kê các tệp hình ảnh được ánh xạ vào bộ nhớ, bao gồm
Ntoskrnl.exe và tất cả trình điều khiển thiết bị đã tải. Giống như các Process, các tệp đóng
gói nào được đánh dấu màu tím.
DLL View sẽ rỗng đối với quy trình không hoạt động của hệ thống và quy trình gián
đoạn. Process Explorer cần được chạy với quyền Admin để liệt kê các DLL được nạp
trong các tiến trình đang chạy như một người dùng khác.
1.3.2.3 Process Properties
Click đúp vào một Process để truy nhập vào phần Properties nhằm thu được nhiều thông
tin của tiến trình.
Trang 13
Hình 1.8: Process Properties hiển thị một tiến trình
Process Properties này cung cấp thông tin quy trình chi tiết, phần lớn trong số đó
có thể hữu ích khi điều tra phần mềm độc hại. Thông tin quy trình được sắp xếp trên một
số tab, bao gồm:
 Image: Tab này hiển thị thông tin về tệp tin thực thi đã khởi chạy
tiến trình, bao gồm đường dẫn đến tệp, đối số dòng lệnh được sử dụng
để khởi chạy nó, tài khoản người dùng đang chạy, thời gian tạo tệp
và thời gian quá trình đã được bắt đầu.
 Service: Tab này cung cấp thông tin chi tiết về các dịch vụ đăng ký
trong tiến trình. Thông tin này bao gồm tên được sử dụng để xác định
service, tên hiển thị của dịch vụ, mô tả tùy chọn, và (cho Svchost.exe
DLLs) đường dẫn DLL.
 String: Tab này liệt kê bất kỳ chuỗi Unicode nào được tìm thấy trong
tệp thực thi như: URL, tên, String Debug, thông tin máy chủ C&C.
Những chuỗi nhúng trong file là những “chữ ký số” của Malware.
Process Explorer cho phép bạn xem các chuỗi trong không gian địa
chỉ của tệp tin trong bộ nhớ cũng như trên đĩa, có thể hữu ích trong
việc điều tra các tệp nén. (Strings.exe, một tiện ích Sysinternals
khác, cung cấp một giao diện dòng lệnh để trích xuất các chuỗi từ
một tệp).
Trang 14
1.3.2.4 Image Verification (Xác thực file)
Những kẻ tấn công thường gắn thêm thông tin hợp pháp vào Malware như tên công
ty, tập đoàn lớn như Microsoft, McAffe. Việc gắn thông tin giả này nhằm đánh lừa niềm
tin người dùng. Do đó, để đảm bảo rằng sản phẩm của họ là chính hãng, các nhà cung cấp
phần mềm hợp pháp đăng ký hầu hết các tệp chương trình mà họ xuất bản. Một chữ ký số
có thể được sử dụng để xác minh rằng một tập tin đã được ký kết bởi nhà cung cấp bằng
cách sử dụng một khóa riêng và rằng tập tin đã không được sửa đổi kể từ khi được ký kết.
Process Explorer cho phép tự động xác minh chữ ký của tập tin thực thi hoặc thư
viện DLL. Theo mặc định, việc xác minh chỉ được thực hiện theo yêu cầu và có thể được
thực hiện cho các tệp riêng lẻ hoặc cho tất cả các quy trình đang chạy. Trong phần
Properties cho cả các Process và DLL, tab Image có chứa nút Verified được sử dụng để
xác minh chữ ký số cho tệp được liên kết. Ấn nút này để Process Explorer để kiểm tra
Danh sách Thu hồi Giấy chứng nhận (CRL) cho chứng chỉ để đảm bảo rằng nó hợp lệ và
kiểm tra Hash SHA-1 xác minh rằng nó không bị giả mạo kể từ khi được ký.
Tab Verified Signer hiển thị bên cạnh biểu tượng tệp trong Properties và như một
cột có thể được hiển thị trong Process list và DLL View, cho biết trạng thái của bất kỳ
kiểm tra chữ ký nào đã được thực hiện. Nếu Process Explorer có thể xác minh chữ ký sẽ
hiển thị "Verified" (Đã xác thực), bên cạnh tên chứng chỉ xác thực. Lưu ý rằng tên chứng
chỉ xác thực có thể không giống với tên trong phần Company Name.
Ví dụ, hầu hết các tệp tin thực thi được vận chuyển như một phần của Windows
hiển thị "Microsoft Corporation" làm tên công ty nhưng được ký kết chứng thực là
"Microsoft Windows ".
Nếu không xác minh được chữ kí, hoặc tệp tin đã chọn không phải là loại tập tin
thực thi, thì trường đó trống hoặc hiển thị "Not Verified" hoặc “Unable to Verify” để
chỉ ra rằng tệp không được ký hoặc kiểm tra chữ ký không thành công.
Hình 1.9: Minh họa về tiến trình khả nghi không thể xác thực được chữ kí.
1.3.2.5 Điều tra Drivers được nạp
Một số tệp độc hại được thiết kế để tải làm trình Driver thiết bị. Vì thế điều tra
Drivers thiết bị cũng vô cùng quan trọng. Nhấp vào System trong Process List để hiển thị
tất cả các trình điều khiển hiện đang tải trong DLL View. Qua phần này, ta kiểm tra các
thuộc tính có sẵn cho DLL và các tệp khác, chẳng hạn như đường dẫn đến tệp trình điều
khiển, chữ kí xác thực, chuỗi nhúng trong tệp trên đĩa hoặc trong bộ nhớ, v.v.
Trang 15
1.3.2.6 Rà soát tìm kiếm Malware
Danh sách các quy trình đang hoạt động trên máy tính điển hình thay đổi liên tục,
đôi khi làm cho nó khó phát hiện hoạt động đáng ngờ. Thực tế, nếu một quy trình độc hại
bắt đầu và ngưng hoạt động nhanh hơn cả tiến trình hiện lên của Process Explorer, thì nó
sẽ không bao giờ xuất hiện trong Process Explorer cả. Ta có thể sử dụng một công cụ
khác của Sysinternals, Process Monitor để kiểm tra chi tiết các sự kiện, bao gồm các
thông báo lỗi và quy trình tồn tại trong thời gian ngắn.
Hình 1.10: Process Monitor hoạt động liệt kê các tiến trình xảy ra
Process Monitor ghi lại rất nhiều tiến trình khi chạy, mỗi hàng đại diện cho một sự
kiện diễn ra trong máy. Các sự kiện được ghi lại bởi Process Monitor bao gồm việc khởi
động hoặc thoát các tiến trình, kết nối mạng đầu cuối, thay đổi giá trị RegKey, và rất nhiều
sự kiện ở mức độ chi tiết. Mỗi hàng trong chương trình bao gồm các sự kiện diễn ra, đường
dẫn tới file hoặc Regkey, thời gian thực thi, chi tiết cụ thể.
Để xem những tiến trình tồn tại ngắn trong Process Monitor, ta ấn Ctrl + T để bật
Process Tree. Màn hình Process Tree hiển thị danh sách tất cả các tiến trình xảy ra từ khi
bật Process Monitor.
Trang 16
Hình 1.11: Process Tree trong Process Monitor.
Click vào các hàng sẽ hiển thị một hộp thoại Properties với tất cả các thông tin có
sẵn về sự kiện diễn ra dưới dạng các ngăn xếp sự kiện. Bằng cách kiểm tra ngăn xếp cuộc
gọi của một sự kiện độc hại, người điều tra có thể xác định chức năng trực tiếp gọi nó, có
thể cảnh báo về sự hiện diện của phần mềm độc hại.
Hình minh họa dưới đây trong Process Monitor là tiến trình tạo RegKey Autoruns
của một mẫu Malware Trojan.
Hình 1.12: Tiến trình đặt giá trị RegKey Autoruns của Malware được Process Monitor ghi lại.
Trang 17
1.3.3 Chấm dứt tiến trình độc của Malware
Sau khi xác định các quy trình độc hại bằng Process Explorer và Process Monitor,
ta ghi lại đường dẫn đầy đủ đến từng tệp độc hại để có thể xóa file sau khi chấm dứt các
qui trình của Malware.
Nhiều dòng Malware có thể được thiết kế để chống bị rà soát gỡ bỏ sẽ lây nhiễm
nhiều quy trình, mỗi chương trình theo dõi tiến trình khác và khởi động lại khi chúng được
chấm dứt. Thay vì chỉ đơn giản chấm dứt các quy trình độc hại, ta bắt đầu bằng cách tạm
ngừng từng quá trình đã xác định, và sau đó chấm dứt tất cả chúng. (Lưu ý rằng tạm ngưng
Svchost.exe và các quá trình hệ thống cốt lõi khác có thể làm cho các bộ phận của hệ thống
trở nên không phản ứng.) Để tạm ngừng quy trình trong Process Explorer, nhấp vào hàng
thích hợp trong phần danh sách tiến trình , nhấp vào Process, sau đó nhấp vào Suspend.
Hình 1.13: File Malware không thể bị xóa vì tiến trình của nó vẫn đang hoạt động.
Khi tiêu diệt tiến trình độc, ta cần quan sát kĩ xem có tiến trình nào mới hoặc khởi
động lại không (tiến trình khởi động có màu xanh lá cây). Nếu việc tiêu diệt, chấm dứt tiến
trình đó gây khởi động lại một loạt tiến trình khác, thì tiến trình đó chỉ là một phần nhỏ của
Malware.
Trang 18
1.3.4 Xác định và xóa bỏ Malware Autostarts RegKey
Diệt tiến trình độc hại là không đủ khi Malware vẫn có thể tồn tại trên máy tính bị
nhiễm bằng cách cấu hình chính nó để chạy khi Windows khởi động hoặc khi người dùng
đăng nhập. Tiện ích MsConfig đi kèm với Windows sẽ hiển thị danh sách các chương trình
nạp lúc khởi động cùng với thông tin chi tiết. Mặc dù tiện ích này có thể hữu ích cho các
mục đích khắc phục sự cố chung, Msconfig thường không đủ để xử lý nhiễm phần mềm
độc hại: không kiểm tra tất cả các khả năng khởi động (như Schedule Task, hoặc WMI).
Công cụ phát hiện phần mềm độc hại tốt hơn Msconfig là một công cụ khác của
Sysinternals, Autoruns.
Hình 1.14: Chương trình Autoruns khi chạy.
Trong hệ điều hành Windows, Registry được coi là một cấu trúc xương sống để
quản lí các tiến trình, hành vi hoạt động của chương trình. Cấu trúc chung của Registry
bao gồm Key và Values (Khóa và giá trị của khóa). Các phần mềm, hành vi hệ thống khi
thay đổi cách hoạt động đều có thể tác động lên giá trị Registry Key. Đặt ở góc nhìn của
người rà soát, một Malware cũng là phần mềm thực thi trên máy tính, cũng sinh ra tiến
trình, sự kiện thêm sửa xóa file và các giá trị RegKey. Chính vì vậy, qua việc phân tích
Registry trong Windows, ta có thể phát hiện được hành vi của Malware.
Để có thể chạy và thực thi cùng lúc với hệ điều hành Windows, Malware thường tác
động lên giá trị các RegKey Run và Runonce với bốn giá trị phổ biến:
 HKEY_LOCAL_MACHINESoftwareMicrosoftWindow
sCurrentVersionRun
 HKEY_CURRENT_USERSoftwareMicrosoftWindows
CurrentVersionRun
Trang 19
 HKEY_LOCAL_MACHINESoftwareMicrosoftWindow
sCurrentVersionRunOnce
 HKEY_CURRENT_USERSoftwareMicrosoftWindows
CurrentVersionRunOnce
1.3.4.1 Sử dụng Autoruns để gỡ bỏ Malware:
Khi khởi động Autoruns, chương trình ngay lập tức bắt đầu điền vào màn hình hiển
thị của nó với các mục thu thập được từ các tiến trình khởi động được biết đến. Mỗi hàng
tô bóng đại diện cho vị trí mục khởi động trong hệ thống tệp hoặc Registry Key. Các hàng
bên dưới đề mục bóng mờ cho các thông tin chi tiết về nó. Mỗi hàng hiển thị thông tin đăng
kí, nhà phát hành, đường dẫn file.
Nhấp vào một hàng để hiển thị thêm thông tin về mục ở cuối cửa sổ Autoruns, bao
gồm kích thước tệp, số phiên bản và bất kỳ đối số dòng lệnh nào được sử dụng để khởi
chạy mục. Nhấn đúp vào một mục trong danh sách hiển thị mục trong cửa sổ Regedit hoặc
Explorer, tùy thuộc vào mục đó là mục nhập registry hay tệp tin trên đĩa. Với các đường
dẫn RegKey, người rà soát có thể mở thư mục chứa file bằng cách ấn vào Entry – Jump
to.
Hình 1.15: Dưới các đề mục RegKey có màu xám là với thông tin về nhà phát hành, đường dẫn. Malware
thường là những file không có thông tin về nhà phát hành.
Trên máy tính, Autoruns có thể hiển thị hàng trăm mục cho các mục khởi động. Để
giảm số mục phải điều tra, ta click mục Hide Microsoft and Windows Entry và Verified
Windows Signature trong mục Options, sau đó click Refresh trên thanh công cụ để lọc
ra các mục có chữ ký Microsoft đã được xác minh.
Trang 20
Hình 1.16: Tùy chọn quét có thêm xác thực chữ kí và kiểm tra VirusTotal trong Autoruns
Sau khi tối ưu hóa tùy chỉnh, quan sát trên Autoruns sẽ nhanh chóng tìm được
RegKey Run của tiến trình Malware.
Hình 1.17: RegKey Run của Malware được xác định trên Autoruns.
Các mục tự khởi động Malware thường có thể được xác định bằng những đặc trưng quen
thuộc:
 Tệp không có icon.
 Tệp để trống thông tin mô tả, nhà phát hành.
 Tệp có tên dị thường, được đặt ngẫu nhiên.
 Tệp không thể xác minh, nằm trong đường dẫn đáng ngờ
như %TEMP%, %APPDATA%.
1.3.4.2 Xóa Key Autostart
Để xóa Autostart Malware, click vào Entry rồi Delete, hoặc nhấn Ctrl + D. Để vô
hiệu một mục nhập mà không xoá nó, hãy xóa hộp chọn ở cuối bên trái của hàng. Trước
Trang 21
khi xóa bất kỳ mục nhập nào, hãy ghi lại toàn bộ đường dẫn đến mỗi tệp độc hại để có thể
xóa sau đó.
Sau khi xóa hoặc vô hiệu hóa tự động khởi động đáng ngờ, làm mới danh sách bằng
cách click Refresh trên thanh công cụ hoặc nhấn F5. Nếu người rà soát bỏ lỡ mất bất kỳ
quy trình độc hại nào, họ có thể theo dõi danh sách tự khởi động Autoruns và tạo lại bất kỳ
mục bạn xóa. Nếu điều này xảy ra, quay trở lại Bước 2 và sử dụng Process Explorer và
Process Monitor để tìm và loại bỏ các quy trình độc.
1.3.5 Xóa bỏ file Malware
Sau khi chấm dứt các quy trình Malware và xóa các RegKey Autoruns, bước tiếp
theo là xóa các tệp độc hại bằng cách truy cập các vị trí tệp đã ghi lại trong quá trình điều
tra, tìm các tệp nguy hiểm và xóa chúng. Cũng cần lưu ý rằng, Malware thường được đặt
trong các đường dẫn phổ biến như %APPDATA%, %TEMP%, PROGRAMDATA,
COMMON FILES, SYSTEM32, nên ta cần rà soát cả những thư mục này để diệt tận gốc
nó.
Hình 1.18: File Malware nằm trong thư mục %APPDATA% vốn rất quen thuộc với những tiến trình độc.
1.3.6 Khởi động và lặp lại qui trình
Để xác nhận việc gỡ bỏ Malware, việc khởi động lại máy và quay lại bước 01 là cần
thiết. Một vài mẫu Malware có cơ chế chống bị phát hiện, vậy nên việc thực hiện bước này
có thể giúp phát hiện thêm những mẫu file, tệp, hoặc đường dẫn mà ta bỏ qua từ trước đó.
Trang 22
Chương 2: Lab Demo rà soát, gỡ bỏ
Malware
2.1. Nội dung demo
Phần mềm sử dụng:
 VMWare Workstation Version 12.5.7
 Windows 7 – 64 bits
 Bộ cài SysInternal Suite
 Hai Malware – PlugX Keylogger và Zeus Trojan được cài đặt vào hai snapshot
khác nhau.
Hình 2.1: Hai snapshot demo rà soát gỡ bỏ Malware
Đặt vấn đề: Phần mềm môi trường máy ảo VMWare có Windows 7 bản 64 bits bao
gồm hai snapshot cài đặt sẵn, trong đó mỗi snapshot thì có một Malware đã được thực thi
từ trước. Khác với việc phân tích các mẫu mã độc, khi vào máy tính bị nhiễm, ta thường
không thấy dấu hiệu nào bất thường. Nhiệm vụ của bài Demo Labs sẽ là rà soát tìm kiếm,
phát hiện và loại bỏ mẫu Malware chưa biết. Thông qua việc áp dụng hiệu quả các công cụ
Autoruns để tìm kiếm StartupKey, Process Explorer để xác định các tiến trình, Process
Monitor để quan sát hành vi tiến trình, người thực hiện nhiệm vụ rà soát sẽ xác định được
dấu hiệu xuất hiện của một tiến trình độc. Từ đó có thể gỡ bỏ được nó, giúp làm sạch hệ
thống.
Trang 23
2.2. Lab 01: Rà soát gỡ bỏ Malware Keylogger PlugX
Trong phần Demo 01, máy bị nhiễm dòng Malware PlugX. Đây là dòng Malware
sử dụng tiến trình hợp lệ của Windows để tải .DLL độc tùy chỉnh. Chính vì thế, việc phát
hiện ra Malware này tương đối thử thách khi nó sử dụng cơ chế ẩn mình trong service
Windows một cách hiệu quả.
Hình 2.2: Máy liên tục thiết lập kết nối tới địa chỉ IP: 188.166.191.7
Sử dụng Wireshark để quan sát, ngay cả khi không bật bất cứ trình duyệt nào, ta đều
thấy hệ thống tạo thiết lập kết nối tới địa chỉ IP 188.166.191.7. Đây không phải địa chỉ IP
thuộc về Microsoft hay Google.
Trang 24
Hình 2.3: Service của Windows thiết lập kết nối TCP ở cổng 54256 tới Domain độc
Sử dụng TCP View, ta thấy services của Windows liên tục thiết lập kết nối tới
Domain lạ tại port 54256. Đây cũng là một hành vi bất thường, khi services của Windows
thường chỉ đặt kết nối tới máy chủ, domain thuộc về Microsoft.
Hình 2.4: Địa chỉ IP 188.166.191.7 chính là Domain lạ
Sử dụng các trang web tìm kiếm thông tin về IP hoặc Domain như IP Info, Whois,
DNS, thông tin cho thấy địa chỉ IP đó chính là Domain node.hootyhooty.com mà máy liên
tục đặt thiết lập kết nối tới.
Hình 2.5: Domain này được liệt vào Blacklist
Tìm kiếm chỉ dẫn cho thấy Domain này nằm trong danh sách đen. Vậy ta nhanh
chóng kết luận rằng máy bị nhiễm Malware liên tục thiết lập kết nối tới Domain độc.
Trang 25
Áp dụng đúng qui trình ở phần đầu tiên, sau khi không thể tìm thấy thông tin gì bất
thường qua Autoruns, Process Explorer, ta chuyển sang sử dụng công cụ Process Monitor
nhằm tìm kiếm hành vi bất thường.
Hình 2.6: Tiến trình msiexec cố tạo ra các file trong đường dẫn C:ProgramDataschant
Trên Process Monitor, sau khi lọc Filter các hành vi điển hình của Malware như
RegCreateKey, RegWriteKey, CreateFile, WriteFile, ta nhanh chóng phát hiện ra một
tiến trình liên tục tác động đến Folder tại đường dẫn: C:ProgramDataschant. Điều này
dẫn đến nghi vấn về đường dẫn có tên lạ này.
Hình 2.7: Tiến trình msiexec.exe tạo và ghi vào file NvSmart.hlp
Trang 26
Tiếp tục quan sát, ta thấy được file NvSmart.hlp tại đường dẫn này được ghi đè
thành công qua nhiều event xảy ra.
Hình 2.8: Folder schant trong đường dẫn ProgramData có timestampt khả nghi
Thời gian thay đổi của Folder tại đường dẫn C:ProgramDataschant được đặt thay đổi
theo lần khởi động máy gần nhất là lúc 18h13p.
Hình 2.9: file NvSmart.hlp có timestampt khả nghi.
Mặc dù file NvSmart.hlp được ghi và cập nhật liên tục khi quan sát trên Process
Monitor, nhưng thời gian thay đổi của file lại là từ năm 2010. Mốc thời gian từ thời điểm
rất lâu đặt ra nghi vấn về sự tồn tại của file Malware này.
Trang 27
Hình 2.10: file NvSmart.hlp ghi lại các hoạt động
Nội dung của file NvSmart.hlp ghi lại toàn bộ thời gian tiến trình, các hoạt động
gõ keylog. Vậy đây chính là file ghi của Malware.
Hình 2.11: Tiến trình khả nghi msiexec.exe ghi lại file log
Trong phần nội dung của Process Monitor, ta thấy tiến trình msiexec.exe tạo và ghi
file NvSmart.hlp vốn ghi lại thông tin Keylog. Vì thế, ta xem xét chi tiết hoạt động của
Process này.
Trang 28
Hình 2.12: Tiến trình msiexec.exe khả nghi có thời gian khởi động từ lúc 18h13
Process msiexec.exe cũng hoạt động vào cùng thời điểm khởi động của máy. Trong
hệ điều hành Windows, file msiexec.exe của hệ thống có nhiệm vụ cài đặt các phần mềm
khác. Chính vì vậy, việc msiexec.exe hoạt động liên tục cùng thời điểm khi máy khởi động
cũng gây ra nghi ngờ với tiến trình này.
Hình 2.13: tiến trình msiexec.exe trong Process Tree
Quan sát trong Process Tree, ta cũng có thể thấy thời điểm khởi động của nó cùng
lúc với thời điểm khởi động máy, lúc 18h13p.
Trang 29
Hình 2.14: Windows Prefetch Viewer cho thấy tiến trình FMTOptions
Sử dụng WinPrefetchView để theo dõi các file .pf trong hệ thống, ta thấy file
FMTOPTIONS có thời điểm xuất hiện nghi vấn với thời điểm khởi động máy lúc 18h13.
Hình 2.15: Thông tin về file Prefetch của tiến trình này
Do Malware liên tục ghi lại các hành vi người sử dụng và phải sử dụng service cài
đặt phần mềm của Windows nên thời điểm khởi động máy cũng là lúc Malware được cài
đặt và hoạt động. Điều này khiến ta đặt các tiến trình, file có timestampt gần với 18h13p
đặt trong vòng nghi vấn. Trong phần Demo 01 này, thì file FMTOPTIONS.exe với thời
điểm Created và Modified lúc 18h13p khiến nó trở thành tiến trình bị nghi ngờ là
Malware.
Trang 30
Hình 2.16: Đường dẫn file gốc của tiến trình FMTOptions.exe
Phần Details của file .pf có liệt kê đầy đủ các thông tin về đường dẫn của tiến trình khả
nghi tại C:Program Files (x86)Common FilesMicrosoft SharedQuest Software.
Hình 2.17: Folder khả nghi của Malware
Tỏng đường dẫn này, Folder Quest Sofware có timestampt Date Modified lúc 18h13p,
trùng với nghi vấn về tiến trình Malware.
Hình 2.18: Các file trong folder khả nghi
Tệp của nó gồm các file FmtOptions.dll và FmtOntions.exe khả nghi. Trong đó,
file .exe khi được thực thi sẽ load và đẩy file thư viện .dll vào service của Windows. Cơ
Trang 31
chế hoạt động mang tính tinh vi khiến việc phát hiện tiến trình Malware trở nên khá khó
khăn hơn bình thường.
Hình 2.19: File khả nghi trong đường dẫn chính là Malware gây nhiễm hệ thống
Upload và scan file FmtOptions.dll, ta được kết quả xác nhận rằng đây là loại Malware
Trojan Backdoor. Xác định được tệp chứa và các file của tiến trình Malware, ta xóa toàn
bộ các file trong folder Quest Software.
Hình 2.20: RegKey Autostart của Malware đóng giả phần mềm hợp pháp Quest Software
Áp dụng đúng qui trình rà soát và gỡ bỏ, sau khi xóa xong các file, người rà soát cần xóa
bỏ các RegKey Autostart khỏi hệ thống. Tiếp tục áp dụng qui trình, ta sử dụng phần mềm
Autoruns để tìm ra được RegKey của Malware với thông tin đầy đủ.
Trang 32
Hình 2.21: RegKey Autorstart của Malware trong phần Registry Editor.
Click vào phần key của Malware trong Autoruns và được đẩy đến RegKey của Quest
Software, ta xóa phần này đi. Sau khi hoàn thành các bước rà soát và xóa bỏ, khởi động lại
máy để đảm bảo tiến trình được hoàn tất.
2.3. Lab 02: Rà soát gỡ bỏ Malware Trojan Zeus
Hình 2.22: Hai tiến trình Explorer khả nghi trên hệ thống.
Khi sử dụng Process Explorer, ta thấy xuất hiện hai tiến trình duyệt file explorer.exe. Một
tiến trình có ID 2048, tiến trình còn lại có ID 4000, dẫn đến nghi vấn rằng một trong hai là
tiến trình khả nghi.
Trang 33
Hình 2.23: Tiến trình Explorer khả nghi thiết lập kết nối mạng
Phần mềm TCP View cho thấy tiến trình explorer.exe thiết lập kết nối TCPv6 tại
port 39112. Trong hệ điều hành Windows, tiến trình explorer.exe chỉ xuất hiện khi người
dùng bật My Computer, lướt tìm kiếm file. Chính vì thế, việc explorer.exe tạo thiết lập kết
nối mạng TCP là bất thường. Đây chính là tiến trình chạy của Malware.
Hình 2.24: Tiến trình Explorer.exe này có đường dẫn bất thường tại thư mục C:UserAppDataRoaming
Trong phần Properties của tiến trình explorer.exe, ta có thể thấy đường dẫn của nó
nằm ở thư mục C:UsersAppDataRoaming. Đường dẫn tại %APPDATA% là nơi đặt
phổ biến của các mẫu Malware thông thường. Sau bước này, ta chọn Kill Process
explorer.exe có PID 4000.
Trang 34
Hình 2.25: RegKey Autostart của Iofus.exe không có thông tin mô tả và chữ kí.
Sử dụng Autoruns, ta thấy Key Start của phần mềm lạ có tên Iofus.exe nằm tại
đường dẫn ở thưc mục %APPDATA%. Key Start của file này không có thông tin mô tả
cũng như nhà phát hành.
Hình 2.26: Malware nằm tại đường dẫn AppDataRoamingYdanpyn.
Khi quét file này trên VirusTotal, ta nhận được kết quả trả về cảnh báo là Malware
Trojan.
Trang 35
Hình 2.27: Malware Zeus được nhận diện trên Virus Total.
Hình 2.28: RegKey của Malware.
Sau bước thực hiện phát hiện rà soát, diệt các process, người rà soát xóa các file
Malware và xóa RegKey của nó.
Trang 36
Tổng kết
Việc sử dụng bộ phần mềm SysInternals Suite và áp dụng theo qui chuẩn bảy bước
thực hiện này có thể phát hiện, rà soát và gỡ bỏ đến 90% số lượng Malware thông thường.
Trong tương lai, có thể các dòng mã độc sẽ được bổ sung thêm nhiều cơ chế tinh vi, khó
phát hiện để chống lại việc bị phân tích, cũng như bị rà soát và gỡ bỏ. Chính vì thế, việc
hiểu rõ, nắm rõ, thực hiện đúng những qui trình cơ bản là bước đầu cần thiết trong qui trình
bảo vệ các hệ thống, máy người dùng khỏi nguy cơ lây nhiễm mã độc.
Trang 37
Danh mục tài liệu tham khảo
[1] Advanced Malware Cleaning. Techniques for the IT. Professional -
Mark Russinovich. Microsoft Technical Fellow.
[2] Malware Hunting with the Sysinternals Tools RSA Conference - Mark
Russinovich
[3] Keylogger Software for Success -
https://www.softactivity.com/softactivity-keylogger/
[4]https://msdn.microsoft.com/enus/library/windows/desktop/aa376977(v=
vs.85)aspx

Mais conteúdo relacionado

Mais procurados

Hệ điều hành (chương 1)
Hệ điều hành (chương 1)Hệ điều hành (chương 1)
Hệ điều hành (chương 1)
realpotter
 
IDS Snort/SnortSam
IDS Snort/SnortSamIDS Snort/SnortSam
IDS Snort/SnortSam
Tiki.vn
 
Hệ điều hành (chương 2)
Hệ điều hành (chương 2)Hệ điều hành (chương 2)
Hệ điều hành (chương 2)
realpotter
 

Mais procurados (20)

Đồ án kiểm thử phần mềm
Đồ án kiểm thử phần mềmĐồ án kiểm thử phần mềm
Đồ án kiểm thử phần mềm
 
Hệ điều hành (chương 1)
Hệ điều hành (chương 1)Hệ điều hành (chương 1)
Hệ điều hành (chương 1)
 
Tổng quan về DoS - DDoS - DRDoS
Tổng quan về DoS - DDoS - DRDoSTổng quan về DoS - DDoS - DRDoS
Tổng quan về DoS - DDoS - DRDoS
 
IDS Snort/SnortSam
IDS Snort/SnortSamIDS Snort/SnortSam
IDS Snort/SnortSam
 
Đề tài: Hệ thống phát hiện cảnh báo nguy cơ tấn công mạng
Đề tài: Hệ thống phát hiện cảnh báo nguy cơ tấn công mạngĐề tài: Hệ thống phát hiện cảnh báo nguy cơ tấn công mạng
Đề tài: Hệ thống phát hiện cảnh báo nguy cơ tấn công mạng
 
ChuyenDeANM ung dung he thong IDS securityonion vao giam sat moi truong mang ...
ChuyenDeANM ung dung he thong IDS securityonion vao giam sat moi truong mang ...ChuyenDeANM ung dung he thong IDS securityonion vao giam sat moi truong mang ...
ChuyenDeANM ung dung he thong IDS securityonion vao giam sat moi truong mang ...
 
HẠ TẦNG KHÓA CÔNG KHAI(PKI)
HẠ TẦNG KHÓA CÔNG KHAI(PKI)HẠ TẦNG KHÓA CÔNG KHAI(PKI)
HẠ TẦNG KHÓA CÔNG KHAI(PKI)
 
Bài giảng kiểm thử xâm nhập PTIT
Bài giảng kiểm thử xâm nhập PTITBài giảng kiểm thử xâm nhập PTIT
Bài giảng kiểm thử xâm nhập PTIT
 
Hệ thống quản lý và phân tích log tập trung elk stack
Hệ thống quản lý và phân tích log tập trung elk stackHệ thống quản lý và phân tích log tập trung elk stack
Hệ thống quản lý và phân tích log tập trung elk stack
 
MỘT SỐ NGUY CƠ ĐỐI VỚI AN TOÀN, BẢO MẬT THÔNG TIN TRÊN MẠNG CNTT CƠ QUAN ĐẢNG...
MỘT SỐ NGUY CƠ ĐỐI VỚI AN TOÀN, BẢO MẬT THÔNG TIN TRÊN MẠNG CNTT CƠ QUAN ĐẢNG...MỘT SỐ NGUY CƠ ĐỐI VỚI AN TOÀN, BẢO MẬT THÔNG TIN TRÊN MẠNG CNTT CƠ QUAN ĐẢNG...
MỘT SỐ NGUY CƠ ĐỐI VỚI AN TOÀN, BẢO MẬT THÔNG TIN TRÊN MẠNG CNTT CƠ QUAN ĐẢNG...
 
Tấn công sql injection sử dụng câu lệnh select union
Tấn công sql injection sử dụng câu lệnh select unionTấn công sql injection sử dụng câu lệnh select union
Tấn công sql injection sử dụng câu lệnh select union
 
Practical Malware Analysis: Ch 2 Malware Analysis in Virtual Machines & 3: Ba...
Practical Malware Analysis: Ch 2 Malware Analysis in Virtual Machines & 3: Ba...Practical Malware Analysis: Ch 2 Malware Analysis in Virtual Machines & 3: Ba...
Practical Malware Analysis: Ch 2 Malware Analysis in Virtual Machines & 3: Ba...
 
Linux và mã nguồn mở
Linux và mã nguồn mởLinux và mã nguồn mở
Linux và mã nguồn mở
 
200 đề tài luận văn thạc sĩ an ninh mạng. HAY
200 đề tài luận văn thạc sĩ an ninh mạng. HAY200 đề tài luận văn thạc sĩ an ninh mạng. HAY
200 đề tài luận văn thạc sĩ an ninh mạng. HAY
 
Metasploit
MetasploitMetasploit
Metasploit
 
Windows Threat Hunting
Windows Threat HuntingWindows Threat Hunting
Windows Threat Hunting
 
Bảo mật ứng dụng web
Bảo mật ứng dụng webBảo mật ứng dụng web
Bảo mật ứng dụng web
 
Hệ điều hành (chương 2)
Hệ điều hành (chương 2)Hệ điều hành (chương 2)
Hệ điều hành (chương 2)
 
Thick Client Penetration Testing.pdf
Thick Client Penetration Testing.pdfThick Client Penetration Testing.pdf
Thick Client Penetration Testing.pdf
 
Database Firewall with Snort
Database Firewall with SnortDatabase Firewall with Snort
Database Firewall with Snort
 

Semelhante a Rà soát Malware bằng SysInternal Suite

Vu tuananh
Vu tuananhVu tuananh
Vu tuananh
Vũ Anh
 
Vu tuananh
Vu tuananhVu tuananh
Vu tuananh
Vũ Anh
 
SYSTEM HACKING - TUẦN 2
SYSTEM HACKING - TUẦN 2SYSTEM HACKING - TUẦN 2
SYSTEM HACKING - TUẦN 2
Con Ranh
 
Bao caothuctap
Bao caothuctapBao caothuctap
Bao caothuctap
Long Prồ
 
Tuan vq bao cao thuc tap_ system hacking
Tuan vq bao cao thuc tap_ system hackingTuan vq bao cao thuc tap_ system hacking
Tuan vq bao cao thuc tap_ system hacking
v7q3t
 
Báo cáo thực tập - Lần 1 - Hoàng Thanh Quý
Báo cáo thực tập - Lần 1 - Hoàng Thanh QuýBáo cáo thực tập - Lần 1 - Hoàng Thanh Quý
Báo cáo thực tập - Lần 1 - Hoàng Thanh Quý
Quý Đồng Nast
 
Tổng kết Báo cáo thực tập Athena - Hoàng Thanh Quý
Tổng kết Báo cáo thực tập Athena - Hoàng Thanh QuýTổng kết Báo cáo thực tập Athena - Hoàng Thanh Quý
Tổng kết Báo cáo thực tập Athena - Hoàng Thanh Quý
Quý Đồng Nast
 
Báo cáo cuối kì system hacking-Trần Nguyễn Lộc
Báo cáo cuối kì system hacking-Trần Nguyễn LộcBáo cáo cuối kì system hacking-Trần Nguyễn Lộc
Báo cáo cuối kì system hacking-Trần Nguyễn Lộc
Loc Tran
 
Bai10 bai giang
Bai10 bai giangBai10 bai giang
Bai10 bai giang
youti1992
 

Semelhante a Rà soát Malware bằng SysInternal Suite (20)

Vu tuananh
Vu tuananhVu tuananh
Vu tuananh
 
Báo cáo lần 1
Báo cáo lần 1Báo cáo lần 1
Báo cáo lần 1
 
Vu tuananh
Vu tuananhVu tuananh
Vu tuananh
 
SYSTEM HACKING - TUẦN 2
SYSTEM HACKING - TUẦN 2SYSTEM HACKING - TUẦN 2
SYSTEM HACKING - TUẦN 2
 
SYSTEM HACKING - TUẦN 1
SYSTEM HACKING - TUẦN 1SYSTEM HACKING - TUẦN 1
SYSTEM HACKING - TUẦN 1
 
Bao caothuctap
Bao caothuctapBao caothuctap
Bao caothuctap
 
Tuan vq bao cao thuc tap_ system hacking
Tuan vq bao cao thuc tap_ system hackingTuan vq bao cao thuc tap_ system hacking
Tuan vq bao cao thuc tap_ system hacking
 
Dự Đoán Lỗ Hổng Phần Mềm Dựa Trên Kỹ Thuật Khai Phá Dữ Liệu _08300812092019
Dự Đoán Lỗ Hổng Phần Mềm Dựa Trên Kỹ Thuật Khai Phá Dữ Liệu _08300812092019Dự Đoán Lỗ Hổng Phần Mềm Dựa Trên Kỹ Thuật Khai Phá Dữ Liệu _08300812092019
Dự Đoán Lỗ Hổng Phần Mềm Dựa Trên Kỹ Thuật Khai Phá Dữ Liệu _08300812092019
 
Dự Đoán Lỗ Hổng Phần Mềm Dựa Trên Kỹ Thuật Khai Phá Dữ Liệu
Dự Đoán Lỗ Hổng Phần Mềm Dựa Trên Kỹ Thuật Khai Phá Dữ Liệu Dự Đoán Lỗ Hổng Phần Mềm Dựa Trên Kỹ Thuật Khai Phá Dữ Liệu
Dự Đoán Lỗ Hổng Phần Mềm Dựa Trên Kỹ Thuật Khai Phá Dữ Liệu
 
Báo cáo thực tập - Lần 1 - Hoàng Thanh Quý
Báo cáo thực tập - Lần 1 - Hoàng Thanh QuýBáo cáo thực tập - Lần 1 - Hoàng Thanh Quý
Báo cáo thực tập - Lần 1 - Hoàng Thanh Quý
 
Tổng kết Báo cáo thực tập Athena - Hoàng Thanh Quý
Tổng kết Báo cáo thực tập Athena - Hoàng Thanh QuýTổng kết Báo cáo thực tập Athena - Hoàng Thanh Quý
Tổng kết Báo cáo thực tập Athena - Hoàng Thanh Quý
 
Báo cáo cuối kì system hacking-Trần Nguyễn Lộc
Báo cáo cuối kì system hacking-Trần Nguyễn LộcBáo cáo cuối kì system hacking-Trần Nguyễn Lộc
Báo cáo cuối kì system hacking-Trần Nguyễn Lộc
 
Slide báo cáo: System Hacking
Slide báo cáo: System HackingSlide báo cáo: System Hacking
Slide báo cáo: System Hacking
 
Báo cáo system hacking
Báo cáo system hackingBáo cáo system hacking
Báo cáo system hacking
 
Virus full
Virus fullVirus full
Virus full
 
Báo cáo thực tập cuối kỳ
Báo cáo thực tập cuối kỳBáo cáo thực tập cuối kỳ
Báo cáo thực tập cuối kỳ
 
Bai10 bai giang
Bai10 bai giangBai10 bai giang
Bai10 bai giang
 
Báo cáo tổng kết thực tập athena
Báo cáo tổng kết thực tập athenaBáo cáo tổng kết thực tập athena
Báo cáo tổng kết thực tập athena
 
Bao mat cho cac may tinh cua to chuc
Bao mat cho cac may tinh cua to chucBao mat cho cac may tinh cua to chuc
Bao mat cho cac may tinh cua to chuc
 
Nghiên cứu một số hình thức tấn công website phổ biến và các giải pháp phòng ...
Nghiên cứu một số hình thức tấn công website phổ biến và các giải pháp phòng ...Nghiên cứu một số hình thức tấn công website phổ biến và các giải pháp phòng ...
Nghiên cứu một số hình thức tấn công website phổ biến và các giải pháp phòng ...
 

Mais de Phạm Trung Đức

Mais de Phạm Trung Đức (9)

Báo cáo tốt nghiệp Android RSA mã hóa
Báo cáo tốt nghiệp Android RSA mã hóaBáo cáo tốt nghiệp Android RSA mã hóa
Báo cáo tốt nghiệp Android RSA mã hóa
 
An toàn hệ điều hành PTIT
An toàn hệ điều hành PTITAn toàn hệ điều hành PTIT
An toàn hệ điều hành PTIT
 
Phap luat chinh sach ATTT - ITSM
Phap luat chinh sach ATTT - ITSMPhap luat chinh sach ATTT - ITSM
Phap luat chinh sach ATTT - ITSM
 
Kĩ thuật bảo trì phần mềm
Kĩ thuật bảo trì phần mềmKĩ thuật bảo trì phần mềm
Kĩ thuật bảo trì phần mềm
 
Kĩ thuật bảo trì phần mềm
Kĩ thuật bảo trì phần mềmKĩ thuật bảo trì phần mềm
Kĩ thuật bảo trì phần mềm
 
Đường lối của Đảng xây dựng văn hóa thời kì Đổi mới
Đường lối của Đảng xây dựng văn hóa thời kì Đổi mớiĐường lối của Đảng xây dựng văn hóa thời kì Đổi mới
Đường lối của Đảng xây dựng văn hóa thời kì Đổi mới
 
Slide về việc bắt gói tin trên Python2.7
Slide về việc bắt gói tin trên Python2.7Slide về việc bắt gói tin trên Python2.7
Slide về việc bắt gói tin trên Python2.7
 
Lập trình phân tích bắt gói tin mạng bằng Python
Lập trình phân tích bắt gói tin mạng bằng PythonLập trình phân tích bắt gói tin mạng bằng Python
Lập trình phân tích bắt gói tin mạng bằng Python
 
Tấn công Social Engineering
Tấn công Social EngineeringTấn công Social Engineering
Tấn công Social Engineering
 

Rà soát Malware bằng SysInternal Suite

  • 1. HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG Chuyên ngành: ATTT - khoa CNTT --------------------------------------- Rà soát, gỡ bỏ mã độc bằng SysInternal Suite Môn học: An toàn phần mềm Giảng viên: Nguyễn Ngọc Điệp Nhóm sinh viên: Phạm Trung Đức Nguyễn Tuấn Hà nội, ngày 24 tháng 11 năm 2017
  • 2. Mục lục Bảng phân công nhiệm vụ.................................................................................................0 Lời dẫn................................................................................................................................1 Chương 1: Lý thuyết nền tảng rà soát gỡ bỏ Malware trên Sysinternal Suite Tools .2 1.1. Lý thuyết về điều tra số Windows ......................................................................2 1.1.1 Windows Registry .........................................................................................2 1.1.2 Windows Process...........................................................................................3 1.1.3 Windows Event Log ......................................................................................3 1.1.4 Windows Prefetch .........................................................................................4 1.1.5 Các thư mục phổ biến...................................................................................4 1.1.6 Basic Network Forensic ................................................................................6 1.2. Tổng quan bộ phần mềm SysInternal Suite Tools............................................6 1.3. Các bước gỡ bỏ Malware bằng SysInternal Tools............................................7 1.3.1 Ngắt kết nối mạng của hệ thống...................................................................8 1.3.2 Xác định tiến trình độc .................................................................................8 1.3.3 Chấm dứt tiến trình độc của Malware......................................................17 1.3.4 Xác định và xóa bỏ Malware Autostarts RegKey ....................................18 1.3.5 Xóa bỏ file Malware....................................................................................21 1.3.6 Khởi động và lặp lại qui trình....................................................................21 Chương 2: Lab Demo rà soát, gỡ bỏ Malware .............................................................22 2.1. Nội dung demo....................................................................................................22 2.2. Lab 01: Rà soát gỡ bỏ Malware Keylogger PlugX .........................................23 2.3. Lab 02: Rà soát gỡ bỏ Malware Trojan Zeus .................................................32 Tổng kết............................................................................................................................36 Danh mục tài liệu tham khảo .........................................................................................37
  • 3. Bảng phân công nhiệm vụ STT Mã sinh viên Họ và tên Phần việc thực hiện 1 B13DCAT056 Phạm Trung Đức - Làm slide - Thuyết trình tuần 2 + 3 - Trình bày Demo trên lớp - Thực hiện, soạn thảo báo cáo. - Làm lab demo 01. 2 B13DCAT094 Nguyễn Tuấn - Tìm kiếm thông tin, tài liệu - Dịch tài liệu - Làm lab demo 02.
  • 4. Lời dẫn Trong bối cảnh ngày nay khi mạng Internet càng mở rộng với hàng tỉ thiết bị PC, Laptop, smart phone, IoT được kết nối chặt chẽ với nhau, yêu cầu mở rộng đầu tư cho an ninh thông tin, an toàn mạng trở nên thiết thực hơn bao giờ hết. Bên cạnh những nguy cơ phổ biến như tấn công từ chối dịch vụ DDoS, chèn SQL Injection, khai thác Exploit CVE thì Malware đóng vai trò vô cùng then chốt trong ngành An toàn thông tin. Các Malware hiện đại ngày nay có cơ chế phức tạp, đóng vai trò tấn công APT gây thất thoát hàng triệu đô la. Đồng thời, các chương trình Anti Virus cũng dần trở nên kém hiệu quả khi mỗi ngày số lượng Malware tăng tới hàng triệu đơn vị, sử dụng nhiều phương pháp tinh vi tránh bị phát hiện. Chính thực tế như vậy khiến hệ thống mạng máy tính trong các tập đoàn bên cạnh việc sử dụng Anti Virus còn áp dụng phương pháp Forensic điều tra số để rà soát, gỡ bỏ hoàn toàn Malware khỏi hệ thống. Bài tìm hiểu môn An toàn phần mềm của nhóm 26 chúng em sẽ áp dụng một qui trình hiệu quả qua bộ phần mềm SysInternal Suits với mục đích rà soát, gỡ bỏ phần mềm mã độc một cách hiệu quả khỏi hệ thống.
  • 5. Trang 2 Chương 1: Lý thuyết nền tảng rà soát gỡ bỏ Malware trên Sysinternal Suite Tools 1.1. Lý thuyết về điều tra số Windows Trong phần đầu tiên này, chúng ta sẽ tìm hiểu về lý thuyết nền tảng về đặc điểm thông dụng Malware tác động lên hệ điều hành Windows. Bằng cách điều tra thông tin dựa trên những đặc điểm này, việc điều tra rà soát tìm kiếm Malware có thể hiệu quả. 1.1.1 Windows Registry Registry được coi là cấu trúc xương sống của hệ điều hành Microsoft Windows, vốn là cơ sở dữ liệu dùng để lưu trữ các thông số kỹ thuật của Windows và lưu lại những thông tin về sự thay đổi, lựa chọn cũng như những thiết lập từ người sử dụng Windows. Registry chứa các thông tin về phần cứng, phần mềm, người sử dụng và một điều nữa là Registry luôn được cập nhật khi người dùng có sự thay đổi trong các thành phần của Control Panel, File Associations và một số thay đổi trong menu Options của một số ứng dụng. Cấu trúc chung của Registry bao gồm Key và Values (Khóa và giá trị của khóa). Các phần mềm, hành vi hệ thống khi thay đổi cách hoạt động đều có thể tác động lên giá trị Registry Key. Đặt ở góc nhìn của người rà soát, một Malware cũng là phần mềm thực thi trên máy tính, cũng sinh ra tiến trình, sự kiện thêm sửa xóa file và các giá trị RegKey. Chính vì vậy, qua việc phân tích Registry trong Windows, ta có thể phát hiện được hành vi của Malware. Để có thể chạy và thực thi cùng lúc với hệ điều hành Windows, Malware thường tác động lên giá trị các RegKey Run và Runonce với bốn giá trị phổ biến:  HKEY_LOCAL_MACHINESoftwareMicrosoftWindow sCurrentVersionRun  HKEY_CURRENT_USERSoftwareMicrosoftWindows CurrentVersionRun  HKEY_LOCAL_MACHINESoftwareMicrosoftWindow sCurrentVersionRunOnce  HKEY_CURRENT_USERSoftwareMicrosoftWindows CurrentVersionRunOnce
  • 6. Trang 3 1.1.2 Windows Process Một tiến trình là một chương trình đang được thi hành. Tiến trình sử dụng tài nguyên như CPU, bộ nhớ, tập tin, các thiết bị nhập xuất để hoàn tất công việc của nó. Các tài nguyên này được cung cấp khi tiến trình tạo hay trong quá trình thi hành. Tiến trình được coi là một đơn vị làm việc của hệ thống. Một hệ thống có thể có nhiều tiến trình cùng lúc, trong đó một số tiến trình là của hệ điều hành, một số tiến trình là của người sử dụng. các tiến trình này có thể diễn ra đồng thời. Các chương trình khi hoạt động trong Windows sẽ tạo ra tiến trình. Có thể kể đến các tiến trình cốt lõi của hệ điều hành Windows:  Ctfmon.exe: Cwindowssystem32ctfmon.exe là Chương trình chạy ngầm khi mở MS office.  lsass.exe: Cwindowssystem32lsass.exe là trình hệ thống cơ cấu an ninh hệ điều hành.  Csrss.exe: Cwindowssystem32csrss.exe là trình quản lí đồ họa trong hệ điều hành.  Smss.exe: Cwindowssystem32smss.exe là tiến trình thông báo những gì xảy ra trong sesions của hệ thống.  Winlogon.exe: Cwindowssystem32winlogon.exe phụ trách việc quản lí login và logout.  Wmipvse.exe: Cwindowssystem32wbemvmiprvse.exe là file quan trọng của Windows Management Instrucmentation. Những mẫu Malware tinh vi thường đặt tên làm giả những tiến trình trên với thông tin đầy đủ các chữ kí xác thực Microsoft nhằm tránh bị phát hiện và đánh lừa người sử dụng. Vì thế, khi tìm kiếm Malware, người điều tra sẽ tìm kiếm, truy lùng những tiến trình khả nghi có thể đóng vai trò gây hại. Có thể kể đến ví dụ như việc xuất hiện tiến trình cftmon.exe trong khi không sử dụng Word Excel, hay là việc xuất hiện tiến trình psexec.exe trong khi không thực hiện truy nhập điều khiển từ xa. 1.1.3 Windows Event Log Mỗi khi Windows khởi chạy, hệ điều hành sẽ bắt đầu ghi lại các hoạt động (event) diễn ra bên trong hệ thống. Đó không phải báo cáo chung chung như "This user has started Solitaire ten times today" (người dùng này đã chơi game Solitaire mười lần trong hôm nay), mà là các chi tiết quan trọng của việc khởi động Windows, quá trình đăng nhập của người dùng, những dịch vụ đã bắt đầu và kết thúc trong phiên làm việc, sự cố hệ thống và nhiều thứ khác.
  • 7. Trang 4 EventLog của Windows nằm tại: %SYSTEM ROOT%SYSTEM32winevtlogs. Event Viewer là công cụ riêng của Windows để xem xét các hoạt động được "ghi sổ" này (hay còn gọi là log). Chương trình này tiện lợi cho việc chẩn đoán các trục trặc trong Windows và là một phương tiện hiệu quả giúp khám phá những gì đang xảy ra ở "hậu trường" của hệ điều hành. Thực tế cho thấy, Event Viewer là nơi đầu tiên cần xem xét khi máy tính gặp sự cố mà không rõ nguyên nhân. Trong Windows có ba loại Event Logs phổ biến:  System: ghi lại các Event của hệ điều hành, như là các service hoặc boot.  Security: ghi lại các event based và group policy  Application: ghi lại các event từ ứng dụng trong máy. Ví dụ như truy cập các file và cảnh báo của Antivirus Khi Malware xâm nhập và lây nhiễm hệ thống Microsoft Windows, nó có thể sinh ra các tiến trình thiết lập truy vấn kết nối TCP/UDP đến máy chủ điều khiển, đặt kết nối truy nhập từ xa, tạo hoặc cài đặt chương trình mới. 1.1.4 Windows Prefetch Windows lưu trữ các file Prefetch hỗ trợ quá trình khởi động của hệ điều hành. Các loại file này đuôi .pf và nằm trong đường dẫn System32/Prefetch. Với mỗi một file .pf đại diện cho một chương trình, có lưu trữ danh sách các file và thư viện DLL để preload vào bộ nhớ, giúp cho hẹ điều hành và các chương trình khởi động nhanh hơn. Mỗi file thực thi như .exe gồm file prefetch bao gồm các thông tin:  Tên file thực thi  Đường dẫn thực thi  Số lượng thực thi của phần mềm đó trong HĐH  Thời điểm chạy lần cuối  Danh sách thư viện .DLL của chương trình. Bằng cách phân tích các file Prefetch, người rà soát có thể tìm thấy được những file liên quan đến tiến trình độc. Việc phân tích các file Prefetch như vậy cực kì hiệu quả khi áp dụng lên những mẫu mã độc có cơ chế ẩn mình bằng cách sử dụng những tiến trình hợp lệ trong Windows. 1.1.5 Các thư mục phổ biến Các ứng dụng Windows thường lưu trữ dữ liệu và cài đặt trong một thư mục có tên AppData (Application Data). Mỗi tài khoản người dùng Windows đều có một AppData
  • 8. Trang 5 riêng biệt. Tuy nhiên, đây là một thư mục ẩn và người dùng chỉ có thể thấy khi kích hoạt tính năng hiển thị file ẩn trong File Explorer. Mỗi tài khoản người dùng đều có một thư mục AppData với các dữ liệu riêng biệt. AppData cho phép các chương trình, ứng dụng Windows có thể lưu trữ các thiết lập khác nhau nếu máy tính có nhiều tài khoản người dùng. Thư mục AppData lần đầu tiên được giới thiệu trên Windows Vista và vẫn còn xuất hiện trên Windows 10. Thư mục AppData có thể được xác định bằng cách:  Dựa vào đường dẫn sau: Ví dụ tên người dùng trên máy tính là DUC. Vậy thư mục AppData sẽ có dạng: C: Users DUC AppData.  Gõ đường dẫn %appdata% để truy cập trực tiếp vào thư mục AppData Roaming, nơi chứa toàn bộ dữ liệu của các ứng dụng trên Windows. Có ba thư mục chứa bên trong AppData là Local, LocalLow và Roaming.  Roaming (%appdata%): thư mục này chứa các dữ liệu có thể di chuyển từ người dùng này sang người dùng khác. Miễn rằng máy tính được kết nối với một miền và dữ liệu luôn được đồng bộ qua một hệ thống máy chủ.  Local (%appdata%/…local): Nếu không cùng kết nối với một tên miền, dữ liệu giữa hai thư mục Roaming và Local (%localappdata%) gần như không có sự khác biệt. Sự khác biệt chỉ nằm ở chỗ, các dữ liệu không thể di chuyển theo cùng một hồ sơ người dùng.  LocalLow (%appdata%/…/locallow): thư mục này gần như tương đồng với thư mục Local, nhưng được thiết kế dành riêng cho các ứng dụng có mức truy cập thấp và bảo mật hạn chế hơn. Ví dụ khi trình duyệt web Internet Explorer kích hoạt chức năng bảo mật Protected Mode, ta sẽ chỉ tìm thấy dữ liệu của IE trong thư mục LocalLow. Khi Malware lây nhiễm vào hệ thống thường tạo ra các file trong đường dẫn này nhằm tránh bị phát hiện bởi người sử dụng, hoặc các công cụ quét. Chính vì thế, khi điều tra tìm kiếm mã độc trong Windows, người điều tra cần rà soát các thư mục phổ biến của %AppData%.
  • 9. Trang 6 1.1.6 Basic Network Forensic Trong bối cảnh từ những năm gần đây, các mẫu Malware được tạo ra với mục đích phá hoại, thâm nhập, đánh cắp thông tin dẫn đến hầu hết trong các trường hợp máy tính bị nhiễm mà người dùng không hề hay biết. Nhu cầu hoạt động như vậy khiến môi trường bị lây nhiễm phải có Internet để Malware hoạt động được hoàn toàn. Vậy nên bằng cách quan sát kết nối được thiết lập bởi các tiến trình, người rà soát có thể tìm kiếm được process đáng nghi của Malware. Ví dụ như một tiến trình explorer.exe (vốn là để lướt truy cập file) lại có kết nối TCP đến một máy chủ từ xa. 1.2. Tổng quan bộ phần mềm SysInternal Suite Tools Sysinternals Suite là một nhánh của website Microsoft Tech chuyên cung cấp các nguồn tài liệu kỹ thuật; tiện ích quản lý, chẩn đoán, khắc phục sự cố và giám sát trong môi trường Microsoft Windows. Sysinternals được thành lập bởi nhà lập trình viên Bryce Cogswell và Mark Russinovich. Website Sysinternals cung cấp các công cụ miễn phí để quản trị và giám sát máy tính chạy Windows. Sysinternals hiện tại có 69 tiện ích bên trong và Sysinternals không dành cho người không am hiểu hệ thống máy tính. Nó là bộ công cụ hữu ích cũng như cần thiết nhằm mục đích chẩn đoán lỗi, bạn còn có thể “diệt virus bằng tay” chỉ với Sysinternals.
  • 10. Trang 7 Hình 1.1: Các phần mềm trong bộ SysInternals Tools Suite Sử dụng các công cụ phổ biến như Process Explorer, Process Monitor, Autoruns giúp phát hiện rà soát gỡ bỏ được Malware bằng tay. 1.3. Các bước gỡ bỏ Malware bằng SysInternal Tools Tổng quan về việc gỡ bỏ rà soát Malware có thể tóm gọn trong 7 bước chính:
  • 11. Trang 8 Hình 1.2: Bảy bước áp dụng cơ bản rà soát, gỡ bỏ Malware khỏi máy người dùng. 1.3.1 Ngắt kết nối mạng của hệ thống Ngắt kết nối máy tính hoặc máy tính bị nhiễm từ mạng là một phần thiết yếu của quá trình loại bỏ phần mềm độc hại vì việc này đảm bảo rằng các máy tính bị nhiễm không lây lan phần mềm độc hại sang các máy tính khác trên mạng. Bước này có thể được thực hiện bằng cách ngắt kết nối hoặc vô hiệu hoá cáp mạng hoặc thẻ từ mỗi máy tính (bao gồm tắt mạng không dây thông qua chuyển mạch phần cứng nếu có thể) hoặc bằng cách vô hiệu hóa tất cả các chức năng mạng từ màn hình cấu hình BIOS (hướng dẫn thực hiện nhiệm vụ này khác nhau đối với các máy tính khác nhau và bo mạch chủ). 1.3.2 Xác định tiến trình độc Sau khi máy tính nhiễm mã độc bị ngắt kết nối khỏi mạng, bước tiếp theo trong quá trình gỡ bỏ Malware là xác định bất kỳ quy trình độc hại nào. Bước này liên quan đến việc tìm kiếm các qui trình có dấu hiệu đặc biệt như:  Tiến trình không Icon.  Tiến trình không có mô tả thành phần chi tiết, tên công ty.  Các file có thông tin ghi nguồn gốc từ Microsoft nhưng không được xác thực chữ kí.  Process có tên lạ nằm trong Windows Directory phổ biến như Win32, %APPDATA%, %TEMP%, , Common files.  Các file đã được nén hoặc mã hóa. Các Malware được mã hóa với mục đích chủ yếu chống bị phân tích.  Các file với đường dẫn có URL lạ.
  • 12. Trang 9  Tiến trình có kết nối đầu cuối TCP/IP.  Tiến trình có chứa các services và DLL khả nghi. Bản thân những dấu hiệu trên không nhất thiết là của Malware. Nhiều chương trình hợp pháp được mã hóa hoặc nén, nhiều tiến trình hợp pháp chạy mà không hề có biểu tượng icon. Ngoài ra, không phải tất cả các tệp và quy trình phần mềm độc hại đều có tất cả các dấu hiệu được liệt kê ở đây. Tuy nhiên, những dấu hiệu này thường là những manh mối hữu ích để phát hiện phần mềm độc hại trên máy tính bị nhiễm. Công cụ Sysinternals Process Explorer giúp phát hiện các quy trình độc hại. Hình 1.3: Minh họa tiến trình Process độc của Malware trên Process Explorer. 1.3.2.1 Sử dụng Process Explorer Process Explorer là một loại "Super Task Manager" cung cấp một loạt các khả năng khắc phục sự cố chung, bao gồm cả việc phát hiện ra các vấn đề về phiên bản DLL, xử lý rò rỉ, thông tin tập tin bị khóa, xử lý sự cố và chi tiết các quy trình treo. Cửa sổ chính của Process Explorer cung cấp hiển thị thông tin về quá trình đang chạy trên máy tính. Mặc dù có những điểm tương đồng bề ngoài giữa khung nhìn này và tab Processes trong Windows Task Manager, Process Explorer cung cấp rất nhiều thông tin về mỗi quá trình. Mỗi hàng trong danh sách quá trình đại diện cho một đối tượng quá trình chạy trên máy tính có không gian địa chỉ ảo riêng của nó và một hoặc nhiều luồng có thể thực thi mã tại một số điểm. Tên của các quá trình độc hại thường bắt chước tên của các quy trình hợp pháp, có thể làm cho chúng khó xác định trong Task Manager. Sử dụng Process Explorer giúp bạn dễ dàng xác định các quy trình chạy từ các vị trí đáng ngờ hoặc có các đặc điểm đáng ngờ. Theo mặc định, các quy trình được liệt kê trong một chế độ xem theo thứ bậc được gọi là cây quá trình, cho thấy quan hệ cha / con giữa các quy trình. Các cột hiển thị một loạt các thuộc tính cho mỗi quá trình, bao gồm tên của công ty xuất bản hình ảnh, mô tả ngắn, thông tin về phiên bản và các thông tin khác.
  • 13. Trang 10 Khi rà soát Malware, ta chú ý đến các cột Company Name, Description, và Version. Các nhà xuất bản phần mềm hợp pháp thường điền đủ thông tin các cột này trong khi tác giả Malware lười biếng có thể bỏ qua nó. Hình 1.4: Bảng màu sắc phân biệt tiến trình khác nhau trong Process Explorer Trong Process Explorer, các hàng có màu sắc khác nhau để chỉ:  Màu xanh nước biển nghĩa là tiến trình được thực thi cùng bối cảnh với chương trình Process Explorer. Điều này có nghĩa rằng tiến trình này chạy dưới quyền User Active Control chứ không phải là hệ thống, hoặc service account.  Màu hồng cho biết quá trình đang lưu trữ một hoặc nhiều dịch vụ Windows. Các dịch vụ có thể chạy một mình, hoặc là một phần của DLL dịch vụ bên trong một tiến trình Svchost.exe.  Màu tím chỉ ra rằng chương trình đã được đóng gói (nén hoặc mã hóa).  Màu xanh lá cây và màu đỏ chỉ ra rằng quá trình vừa mới bắt đầu hoặc thoát. Theo mặc định, hàng tiến trình chỉ được đánh dấu màu xanh lá cây hoặc màu đỏ trong 1 giây, khiến chúng rất khó theo dõi. Ta có thể tùy chỉnh trong phần Options để nó tồn tại lâu hơn một giây. Di chuyển con trỏ chuột qua một hàng sẽ hiển thị một chú giải công cụ với thông tin về quy trình, chẳng hạn như đường dẫn đầy đủ đến tiến trình, có thể giúp xác định các quy trình chạy từ các vị trí bất thường hoặc đáng ngờ. Phần chú giải cũng cung cấp thông tin bổ sung cho các quy trình hệ thống, chẳng hạn như các tệp DLL do Rundll32.exe lưu
  • 14. Trang 11 trữ, các dịch vụ được lưu trữ bởi Svchost.exe và các quy trình dịch vụ khác và thông tin máy chủ COM cho Dllhost.exe. Phần mềm độc hại thường cố gắng che giấu sự hiện diện của nó bằng cách tự gắn chặt vào các quy trình hệ thống như vậy, vì vậy hãy quan tâm đến chú giải công cụ khi điều tra nguồn lây nhiễm. Hình 1.5: Process Explorer hiển thị hông tin chi tiết về một tiến trình Để nghiên cứu quy trình khó nhận biết, chọn Search Online từ trình đơn Process hoặc nhấn Ctrl + M để tìm kiếm tên quy trình sử dụng trình duyệt được cấu hình và công cụ tìm kiếm. Đôi khi, phần mềm độc hại sử dụng chuỗi ngẫu nhiên hoặc bán ngẫu nhiên cho tên quy trình và tệp, vì vậy ngay cả khi không thể xác định được bằng chứng khẳng định rằng quy trình là độc hại, một tìm kiếm không tạo ra kết quả nào cho một tên quy trình đôi khi có thể chỉ ra rằng quá trình đáng ngờ. Hình 1.6: Minh họa tiến trình của Malware trên Process Explorer không có thông tin, không mô tả, không icon.
  • 15. Trang 12 1.3.2.2 DLL View Phần mềm độc hại có thể ẩn bên trong quá trình hợp pháp như thư viện DLL, sử dụng kỹ thuật DLL Injection. Cửa sổ phía dưới Process Explorer (có thể được hiển thị bằng cách nhấp vào nút Show Lower Pane trên thanh công cụ hoặc nhấn Ctrl + L) liệt kê nội dung của quá trình đã chọn ở phần trên. Khung dưới có thể được cấu hình để hiển thị trong chế độ xem DLL hoặc chế độ xem xử lý. DLL view liệt kê tất cả các DLL và các tệp khác được ánh xạ vào không gian địa chỉ của tiến trình, và Handle view liệt kê tất cả các đối tượng hạt nhân được mở bởi quá trình này. Nhấn Ctrl + D mở ra DLL view. Hình 1.7: thư viện .DLL được liệt kê trong các Process được hiển thị Trong DLL View, mỗi hàng trong khung bên dưới liệt kê thông tin về một tệp DLL, tệp thi hành hoặc các tệp được ánh xạ bộ nhớ khác đang được quá trình sử dụng. Đối với các Process hệ thống, DLL View liệt kê các tệp hình ảnh được ánh xạ vào bộ nhớ, bao gồm Ntoskrnl.exe và tất cả trình điều khiển thiết bị đã tải. Giống như các Process, các tệp đóng gói nào được đánh dấu màu tím. DLL View sẽ rỗng đối với quy trình không hoạt động của hệ thống và quy trình gián đoạn. Process Explorer cần được chạy với quyền Admin để liệt kê các DLL được nạp trong các tiến trình đang chạy như một người dùng khác. 1.3.2.3 Process Properties Click đúp vào một Process để truy nhập vào phần Properties nhằm thu được nhiều thông tin của tiến trình.
  • 16. Trang 13 Hình 1.8: Process Properties hiển thị một tiến trình Process Properties này cung cấp thông tin quy trình chi tiết, phần lớn trong số đó có thể hữu ích khi điều tra phần mềm độc hại. Thông tin quy trình được sắp xếp trên một số tab, bao gồm:  Image: Tab này hiển thị thông tin về tệp tin thực thi đã khởi chạy tiến trình, bao gồm đường dẫn đến tệp, đối số dòng lệnh được sử dụng để khởi chạy nó, tài khoản người dùng đang chạy, thời gian tạo tệp và thời gian quá trình đã được bắt đầu.  Service: Tab này cung cấp thông tin chi tiết về các dịch vụ đăng ký trong tiến trình. Thông tin này bao gồm tên được sử dụng để xác định service, tên hiển thị của dịch vụ, mô tả tùy chọn, và (cho Svchost.exe DLLs) đường dẫn DLL.  String: Tab này liệt kê bất kỳ chuỗi Unicode nào được tìm thấy trong tệp thực thi như: URL, tên, String Debug, thông tin máy chủ C&C. Những chuỗi nhúng trong file là những “chữ ký số” của Malware. Process Explorer cho phép bạn xem các chuỗi trong không gian địa chỉ của tệp tin trong bộ nhớ cũng như trên đĩa, có thể hữu ích trong việc điều tra các tệp nén. (Strings.exe, một tiện ích Sysinternals khác, cung cấp một giao diện dòng lệnh để trích xuất các chuỗi từ một tệp).
  • 17. Trang 14 1.3.2.4 Image Verification (Xác thực file) Những kẻ tấn công thường gắn thêm thông tin hợp pháp vào Malware như tên công ty, tập đoàn lớn như Microsoft, McAffe. Việc gắn thông tin giả này nhằm đánh lừa niềm tin người dùng. Do đó, để đảm bảo rằng sản phẩm của họ là chính hãng, các nhà cung cấp phần mềm hợp pháp đăng ký hầu hết các tệp chương trình mà họ xuất bản. Một chữ ký số có thể được sử dụng để xác minh rằng một tập tin đã được ký kết bởi nhà cung cấp bằng cách sử dụng một khóa riêng và rằng tập tin đã không được sửa đổi kể từ khi được ký kết. Process Explorer cho phép tự động xác minh chữ ký của tập tin thực thi hoặc thư viện DLL. Theo mặc định, việc xác minh chỉ được thực hiện theo yêu cầu và có thể được thực hiện cho các tệp riêng lẻ hoặc cho tất cả các quy trình đang chạy. Trong phần Properties cho cả các Process và DLL, tab Image có chứa nút Verified được sử dụng để xác minh chữ ký số cho tệp được liên kết. Ấn nút này để Process Explorer để kiểm tra Danh sách Thu hồi Giấy chứng nhận (CRL) cho chứng chỉ để đảm bảo rằng nó hợp lệ và kiểm tra Hash SHA-1 xác minh rằng nó không bị giả mạo kể từ khi được ký. Tab Verified Signer hiển thị bên cạnh biểu tượng tệp trong Properties và như một cột có thể được hiển thị trong Process list và DLL View, cho biết trạng thái của bất kỳ kiểm tra chữ ký nào đã được thực hiện. Nếu Process Explorer có thể xác minh chữ ký sẽ hiển thị "Verified" (Đã xác thực), bên cạnh tên chứng chỉ xác thực. Lưu ý rằng tên chứng chỉ xác thực có thể không giống với tên trong phần Company Name. Ví dụ, hầu hết các tệp tin thực thi được vận chuyển như một phần của Windows hiển thị "Microsoft Corporation" làm tên công ty nhưng được ký kết chứng thực là "Microsoft Windows ". Nếu không xác minh được chữ kí, hoặc tệp tin đã chọn không phải là loại tập tin thực thi, thì trường đó trống hoặc hiển thị "Not Verified" hoặc “Unable to Verify” để chỉ ra rằng tệp không được ký hoặc kiểm tra chữ ký không thành công. Hình 1.9: Minh họa về tiến trình khả nghi không thể xác thực được chữ kí. 1.3.2.5 Điều tra Drivers được nạp Một số tệp độc hại được thiết kế để tải làm trình Driver thiết bị. Vì thế điều tra Drivers thiết bị cũng vô cùng quan trọng. Nhấp vào System trong Process List để hiển thị tất cả các trình điều khiển hiện đang tải trong DLL View. Qua phần này, ta kiểm tra các thuộc tính có sẵn cho DLL và các tệp khác, chẳng hạn như đường dẫn đến tệp trình điều khiển, chữ kí xác thực, chuỗi nhúng trong tệp trên đĩa hoặc trong bộ nhớ, v.v.
  • 18. Trang 15 1.3.2.6 Rà soát tìm kiếm Malware Danh sách các quy trình đang hoạt động trên máy tính điển hình thay đổi liên tục, đôi khi làm cho nó khó phát hiện hoạt động đáng ngờ. Thực tế, nếu một quy trình độc hại bắt đầu và ngưng hoạt động nhanh hơn cả tiến trình hiện lên của Process Explorer, thì nó sẽ không bao giờ xuất hiện trong Process Explorer cả. Ta có thể sử dụng một công cụ khác của Sysinternals, Process Monitor để kiểm tra chi tiết các sự kiện, bao gồm các thông báo lỗi và quy trình tồn tại trong thời gian ngắn. Hình 1.10: Process Monitor hoạt động liệt kê các tiến trình xảy ra Process Monitor ghi lại rất nhiều tiến trình khi chạy, mỗi hàng đại diện cho một sự kiện diễn ra trong máy. Các sự kiện được ghi lại bởi Process Monitor bao gồm việc khởi động hoặc thoát các tiến trình, kết nối mạng đầu cuối, thay đổi giá trị RegKey, và rất nhiều sự kiện ở mức độ chi tiết. Mỗi hàng trong chương trình bao gồm các sự kiện diễn ra, đường dẫn tới file hoặc Regkey, thời gian thực thi, chi tiết cụ thể. Để xem những tiến trình tồn tại ngắn trong Process Monitor, ta ấn Ctrl + T để bật Process Tree. Màn hình Process Tree hiển thị danh sách tất cả các tiến trình xảy ra từ khi bật Process Monitor.
  • 19. Trang 16 Hình 1.11: Process Tree trong Process Monitor. Click vào các hàng sẽ hiển thị một hộp thoại Properties với tất cả các thông tin có sẵn về sự kiện diễn ra dưới dạng các ngăn xếp sự kiện. Bằng cách kiểm tra ngăn xếp cuộc gọi của một sự kiện độc hại, người điều tra có thể xác định chức năng trực tiếp gọi nó, có thể cảnh báo về sự hiện diện của phần mềm độc hại. Hình minh họa dưới đây trong Process Monitor là tiến trình tạo RegKey Autoruns của một mẫu Malware Trojan. Hình 1.12: Tiến trình đặt giá trị RegKey Autoruns của Malware được Process Monitor ghi lại.
  • 20. Trang 17 1.3.3 Chấm dứt tiến trình độc của Malware Sau khi xác định các quy trình độc hại bằng Process Explorer và Process Monitor, ta ghi lại đường dẫn đầy đủ đến từng tệp độc hại để có thể xóa file sau khi chấm dứt các qui trình của Malware. Nhiều dòng Malware có thể được thiết kế để chống bị rà soát gỡ bỏ sẽ lây nhiễm nhiều quy trình, mỗi chương trình theo dõi tiến trình khác và khởi động lại khi chúng được chấm dứt. Thay vì chỉ đơn giản chấm dứt các quy trình độc hại, ta bắt đầu bằng cách tạm ngừng từng quá trình đã xác định, và sau đó chấm dứt tất cả chúng. (Lưu ý rằng tạm ngưng Svchost.exe và các quá trình hệ thống cốt lõi khác có thể làm cho các bộ phận của hệ thống trở nên không phản ứng.) Để tạm ngừng quy trình trong Process Explorer, nhấp vào hàng thích hợp trong phần danh sách tiến trình , nhấp vào Process, sau đó nhấp vào Suspend. Hình 1.13: File Malware không thể bị xóa vì tiến trình của nó vẫn đang hoạt động. Khi tiêu diệt tiến trình độc, ta cần quan sát kĩ xem có tiến trình nào mới hoặc khởi động lại không (tiến trình khởi động có màu xanh lá cây). Nếu việc tiêu diệt, chấm dứt tiến trình đó gây khởi động lại một loạt tiến trình khác, thì tiến trình đó chỉ là một phần nhỏ của Malware.
  • 21. Trang 18 1.3.4 Xác định và xóa bỏ Malware Autostarts RegKey Diệt tiến trình độc hại là không đủ khi Malware vẫn có thể tồn tại trên máy tính bị nhiễm bằng cách cấu hình chính nó để chạy khi Windows khởi động hoặc khi người dùng đăng nhập. Tiện ích MsConfig đi kèm với Windows sẽ hiển thị danh sách các chương trình nạp lúc khởi động cùng với thông tin chi tiết. Mặc dù tiện ích này có thể hữu ích cho các mục đích khắc phục sự cố chung, Msconfig thường không đủ để xử lý nhiễm phần mềm độc hại: không kiểm tra tất cả các khả năng khởi động (như Schedule Task, hoặc WMI). Công cụ phát hiện phần mềm độc hại tốt hơn Msconfig là một công cụ khác của Sysinternals, Autoruns. Hình 1.14: Chương trình Autoruns khi chạy. Trong hệ điều hành Windows, Registry được coi là một cấu trúc xương sống để quản lí các tiến trình, hành vi hoạt động của chương trình. Cấu trúc chung của Registry bao gồm Key và Values (Khóa và giá trị của khóa). Các phần mềm, hành vi hệ thống khi thay đổi cách hoạt động đều có thể tác động lên giá trị Registry Key. Đặt ở góc nhìn của người rà soát, một Malware cũng là phần mềm thực thi trên máy tính, cũng sinh ra tiến trình, sự kiện thêm sửa xóa file và các giá trị RegKey. Chính vì vậy, qua việc phân tích Registry trong Windows, ta có thể phát hiện được hành vi của Malware. Để có thể chạy và thực thi cùng lúc với hệ điều hành Windows, Malware thường tác động lên giá trị các RegKey Run và Runonce với bốn giá trị phổ biến:  HKEY_LOCAL_MACHINESoftwareMicrosoftWindow sCurrentVersionRun  HKEY_CURRENT_USERSoftwareMicrosoftWindows CurrentVersionRun
  • 22. Trang 19  HKEY_LOCAL_MACHINESoftwareMicrosoftWindow sCurrentVersionRunOnce  HKEY_CURRENT_USERSoftwareMicrosoftWindows CurrentVersionRunOnce 1.3.4.1 Sử dụng Autoruns để gỡ bỏ Malware: Khi khởi động Autoruns, chương trình ngay lập tức bắt đầu điền vào màn hình hiển thị của nó với các mục thu thập được từ các tiến trình khởi động được biết đến. Mỗi hàng tô bóng đại diện cho vị trí mục khởi động trong hệ thống tệp hoặc Registry Key. Các hàng bên dưới đề mục bóng mờ cho các thông tin chi tiết về nó. Mỗi hàng hiển thị thông tin đăng kí, nhà phát hành, đường dẫn file. Nhấp vào một hàng để hiển thị thêm thông tin về mục ở cuối cửa sổ Autoruns, bao gồm kích thước tệp, số phiên bản và bất kỳ đối số dòng lệnh nào được sử dụng để khởi chạy mục. Nhấn đúp vào một mục trong danh sách hiển thị mục trong cửa sổ Regedit hoặc Explorer, tùy thuộc vào mục đó là mục nhập registry hay tệp tin trên đĩa. Với các đường dẫn RegKey, người rà soát có thể mở thư mục chứa file bằng cách ấn vào Entry – Jump to. Hình 1.15: Dưới các đề mục RegKey có màu xám là với thông tin về nhà phát hành, đường dẫn. Malware thường là những file không có thông tin về nhà phát hành. Trên máy tính, Autoruns có thể hiển thị hàng trăm mục cho các mục khởi động. Để giảm số mục phải điều tra, ta click mục Hide Microsoft and Windows Entry và Verified Windows Signature trong mục Options, sau đó click Refresh trên thanh công cụ để lọc ra các mục có chữ ký Microsoft đã được xác minh.
  • 23. Trang 20 Hình 1.16: Tùy chọn quét có thêm xác thực chữ kí và kiểm tra VirusTotal trong Autoruns Sau khi tối ưu hóa tùy chỉnh, quan sát trên Autoruns sẽ nhanh chóng tìm được RegKey Run của tiến trình Malware. Hình 1.17: RegKey Run của Malware được xác định trên Autoruns. Các mục tự khởi động Malware thường có thể được xác định bằng những đặc trưng quen thuộc:  Tệp không có icon.  Tệp để trống thông tin mô tả, nhà phát hành.  Tệp có tên dị thường, được đặt ngẫu nhiên.  Tệp không thể xác minh, nằm trong đường dẫn đáng ngờ như %TEMP%, %APPDATA%. 1.3.4.2 Xóa Key Autostart Để xóa Autostart Malware, click vào Entry rồi Delete, hoặc nhấn Ctrl + D. Để vô hiệu một mục nhập mà không xoá nó, hãy xóa hộp chọn ở cuối bên trái của hàng. Trước
  • 24. Trang 21 khi xóa bất kỳ mục nhập nào, hãy ghi lại toàn bộ đường dẫn đến mỗi tệp độc hại để có thể xóa sau đó. Sau khi xóa hoặc vô hiệu hóa tự động khởi động đáng ngờ, làm mới danh sách bằng cách click Refresh trên thanh công cụ hoặc nhấn F5. Nếu người rà soát bỏ lỡ mất bất kỳ quy trình độc hại nào, họ có thể theo dõi danh sách tự khởi động Autoruns và tạo lại bất kỳ mục bạn xóa. Nếu điều này xảy ra, quay trở lại Bước 2 và sử dụng Process Explorer và Process Monitor để tìm và loại bỏ các quy trình độc. 1.3.5 Xóa bỏ file Malware Sau khi chấm dứt các quy trình Malware và xóa các RegKey Autoruns, bước tiếp theo là xóa các tệp độc hại bằng cách truy cập các vị trí tệp đã ghi lại trong quá trình điều tra, tìm các tệp nguy hiểm và xóa chúng. Cũng cần lưu ý rằng, Malware thường được đặt trong các đường dẫn phổ biến như %APPDATA%, %TEMP%, PROGRAMDATA, COMMON FILES, SYSTEM32, nên ta cần rà soát cả những thư mục này để diệt tận gốc nó. Hình 1.18: File Malware nằm trong thư mục %APPDATA% vốn rất quen thuộc với những tiến trình độc. 1.3.6 Khởi động và lặp lại qui trình Để xác nhận việc gỡ bỏ Malware, việc khởi động lại máy và quay lại bước 01 là cần thiết. Một vài mẫu Malware có cơ chế chống bị phát hiện, vậy nên việc thực hiện bước này có thể giúp phát hiện thêm những mẫu file, tệp, hoặc đường dẫn mà ta bỏ qua từ trước đó.
  • 25. Trang 22 Chương 2: Lab Demo rà soát, gỡ bỏ Malware 2.1. Nội dung demo Phần mềm sử dụng:  VMWare Workstation Version 12.5.7  Windows 7 – 64 bits  Bộ cài SysInternal Suite  Hai Malware – PlugX Keylogger và Zeus Trojan được cài đặt vào hai snapshot khác nhau. Hình 2.1: Hai snapshot demo rà soát gỡ bỏ Malware Đặt vấn đề: Phần mềm môi trường máy ảo VMWare có Windows 7 bản 64 bits bao gồm hai snapshot cài đặt sẵn, trong đó mỗi snapshot thì có một Malware đã được thực thi từ trước. Khác với việc phân tích các mẫu mã độc, khi vào máy tính bị nhiễm, ta thường không thấy dấu hiệu nào bất thường. Nhiệm vụ của bài Demo Labs sẽ là rà soát tìm kiếm, phát hiện và loại bỏ mẫu Malware chưa biết. Thông qua việc áp dụng hiệu quả các công cụ Autoruns để tìm kiếm StartupKey, Process Explorer để xác định các tiến trình, Process Monitor để quan sát hành vi tiến trình, người thực hiện nhiệm vụ rà soát sẽ xác định được dấu hiệu xuất hiện của một tiến trình độc. Từ đó có thể gỡ bỏ được nó, giúp làm sạch hệ thống.
  • 26. Trang 23 2.2. Lab 01: Rà soát gỡ bỏ Malware Keylogger PlugX Trong phần Demo 01, máy bị nhiễm dòng Malware PlugX. Đây là dòng Malware sử dụng tiến trình hợp lệ của Windows để tải .DLL độc tùy chỉnh. Chính vì thế, việc phát hiện ra Malware này tương đối thử thách khi nó sử dụng cơ chế ẩn mình trong service Windows một cách hiệu quả. Hình 2.2: Máy liên tục thiết lập kết nối tới địa chỉ IP: 188.166.191.7 Sử dụng Wireshark để quan sát, ngay cả khi không bật bất cứ trình duyệt nào, ta đều thấy hệ thống tạo thiết lập kết nối tới địa chỉ IP 188.166.191.7. Đây không phải địa chỉ IP thuộc về Microsoft hay Google.
  • 27. Trang 24 Hình 2.3: Service của Windows thiết lập kết nối TCP ở cổng 54256 tới Domain độc Sử dụng TCP View, ta thấy services của Windows liên tục thiết lập kết nối tới Domain lạ tại port 54256. Đây cũng là một hành vi bất thường, khi services của Windows thường chỉ đặt kết nối tới máy chủ, domain thuộc về Microsoft. Hình 2.4: Địa chỉ IP 188.166.191.7 chính là Domain lạ Sử dụng các trang web tìm kiếm thông tin về IP hoặc Domain như IP Info, Whois, DNS, thông tin cho thấy địa chỉ IP đó chính là Domain node.hootyhooty.com mà máy liên tục đặt thiết lập kết nối tới. Hình 2.5: Domain này được liệt vào Blacklist Tìm kiếm chỉ dẫn cho thấy Domain này nằm trong danh sách đen. Vậy ta nhanh chóng kết luận rằng máy bị nhiễm Malware liên tục thiết lập kết nối tới Domain độc.
  • 28. Trang 25 Áp dụng đúng qui trình ở phần đầu tiên, sau khi không thể tìm thấy thông tin gì bất thường qua Autoruns, Process Explorer, ta chuyển sang sử dụng công cụ Process Monitor nhằm tìm kiếm hành vi bất thường. Hình 2.6: Tiến trình msiexec cố tạo ra các file trong đường dẫn C:ProgramDataschant Trên Process Monitor, sau khi lọc Filter các hành vi điển hình của Malware như RegCreateKey, RegWriteKey, CreateFile, WriteFile, ta nhanh chóng phát hiện ra một tiến trình liên tục tác động đến Folder tại đường dẫn: C:ProgramDataschant. Điều này dẫn đến nghi vấn về đường dẫn có tên lạ này. Hình 2.7: Tiến trình msiexec.exe tạo và ghi vào file NvSmart.hlp
  • 29. Trang 26 Tiếp tục quan sát, ta thấy được file NvSmart.hlp tại đường dẫn này được ghi đè thành công qua nhiều event xảy ra. Hình 2.8: Folder schant trong đường dẫn ProgramData có timestampt khả nghi Thời gian thay đổi của Folder tại đường dẫn C:ProgramDataschant được đặt thay đổi theo lần khởi động máy gần nhất là lúc 18h13p. Hình 2.9: file NvSmart.hlp có timestampt khả nghi. Mặc dù file NvSmart.hlp được ghi và cập nhật liên tục khi quan sát trên Process Monitor, nhưng thời gian thay đổi của file lại là từ năm 2010. Mốc thời gian từ thời điểm rất lâu đặt ra nghi vấn về sự tồn tại của file Malware này.
  • 30. Trang 27 Hình 2.10: file NvSmart.hlp ghi lại các hoạt động Nội dung của file NvSmart.hlp ghi lại toàn bộ thời gian tiến trình, các hoạt động gõ keylog. Vậy đây chính là file ghi của Malware. Hình 2.11: Tiến trình khả nghi msiexec.exe ghi lại file log Trong phần nội dung của Process Monitor, ta thấy tiến trình msiexec.exe tạo và ghi file NvSmart.hlp vốn ghi lại thông tin Keylog. Vì thế, ta xem xét chi tiết hoạt động của Process này.
  • 31. Trang 28 Hình 2.12: Tiến trình msiexec.exe khả nghi có thời gian khởi động từ lúc 18h13 Process msiexec.exe cũng hoạt động vào cùng thời điểm khởi động của máy. Trong hệ điều hành Windows, file msiexec.exe của hệ thống có nhiệm vụ cài đặt các phần mềm khác. Chính vì vậy, việc msiexec.exe hoạt động liên tục cùng thời điểm khi máy khởi động cũng gây ra nghi ngờ với tiến trình này. Hình 2.13: tiến trình msiexec.exe trong Process Tree Quan sát trong Process Tree, ta cũng có thể thấy thời điểm khởi động của nó cùng lúc với thời điểm khởi động máy, lúc 18h13p.
  • 32. Trang 29 Hình 2.14: Windows Prefetch Viewer cho thấy tiến trình FMTOptions Sử dụng WinPrefetchView để theo dõi các file .pf trong hệ thống, ta thấy file FMTOPTIONS có thời điểm xuất hiện nghi vấn với thời điểm khởi động máy lúc 18h13. Hình 2.15: Thông tin về file Prefetch của tiến trình này Do Malware liên tục ghi lại các hành vi người sử dụng và phải sử dụng service cài đặt phần mềm của Windows nên thời điểm khởi động máy cũng là lúc Malware được cài đặt và hoạt động. Điều này khiến ta đặt các tiến trình, file có timestampt gần với 18h13p đặt trong vòng nghi vấn. Trong phần Demo 01 này, thì file FMTOPTIONS.exe với thời điểm Created và Modified lúc 18h13p khiến nó trở thành tiến trình bị nghi ngờ là Malware.
  • 33. Trang 30 Hình 2.16: Đường dẫn file gốc của tiến trình FMTOptions.exe Phần Details của file .pf có liệt kê đầy đủ các thông tin về đường dẫn của tiến trình khả nghi tại C:Program Files (x86)Common FilesMicrosoft SharedQuest Software. Hình 2.17: Folder khả nghi của Malware Tỏng đường dẫn này, Folder Quest Sofware có timestampt Date Modified lúc 18h13p, trùng với nghi vấn về tiến trình Malware. Hình 2.18: Các file trong folder khả nghi Tệp của nó gồm các file FmtOptions.dll và FmtOntions.exe khả nghi. Trong đó, file .exe khi được thực thi sẽ load và đẩy file thư viện .dll vào service của Windows. Cơ
  • 34. Trang 31 chế hoạt động mang tính tinh vi khiến việc phát hiện tiến trình Malware trở nên khá khó khăn hơn bình thường. Hình 2.19: File khả nghi trong đường dẫn chính là Malware gây nhiễm hệ thống Upload và scan file FmtOptions.dll, ta được kết quả xác nhận rằng đây là loại Malware Trojan Backdoor. Xác định được tệp chứa và các file của tiến trình Malware, ta xóa toàn bộ các file trong folder Quest Software. Hình 2.20: RegKey Autostart của Malware đóng giả phần mềm hợp pháp Quest Software Áp dụng đúng qui trình rà soát và gỡ bỏ, sau khi xóa xong các file, người rà soát cần xóa bỏ các RegKey Autostart khỏi hệ thống. Tiếp tục áp dụng qui trình, ta sử dụng phần mềm Autoruns để tìm ra được RegKey của Malware với thông tin đầy đủ.
  • 35. Trang 32 Hình 2.21: RegKey Autorstart của Malware trong phần Registry Editor. Click vào phần key của Malware trong Autoruns và được đẩy đến RegKey của Quest Software, ta xóa phần này đi. Sau khi hoàn thành các bước rà soát và xóa bỏ, khởi động lại máy để đảm bảo tiến trình được hoàn tất. 2.3. Lab 02: Rà soát gỡ bỏ Malware Trojan Zeus Hình 2.22: Hai tiến trình Explorer khả nghi trên hệ thống. Khi sử dụng Process Explorer, ta thấy xuất hiện hai tiến trình duyệt file explorer.exe. Một tiến trình có ID 2048, tiến trình còn lại có ID 4000, dẫn đến nghi vấn rằng một trong hai là tiến trình khả nghi.
  • 36. Trang 33 Hình 2.23: Tiến trình Explorer khả nghi thiết lập kết nối mạng Phần mềm TCP View cho thấy tiến trình explorer.exe thiết lập kết nối TCPv6 tại port 39112. Trong hệ điều hành Windows, tiến trình explorer.exe chỉ xuất hiện khi người dùng bật My Computer, lướt tìm kiếm file. Chính vì thế, việc explorer.exe tạo thiết lập kết nối mạng TCP là bất thường. Đây chính là tiến trình chạy của Malware. Hình 2.24: Tiến trình Explorer.exe này có đường dẫn bất thường tại thư mục C:UserAppDataRoaming Trong phần Properties của tiến trình explorer.exe, ta có thể thấy đường dẫn của nó nằm ở thư mục C:UsersAppDataRoaming. Đường dẫn tại %APPDATA% là nơi đặt phổ biến của các mẫu Malware thông thường. Sau bước này, ta chọn Kill Process explorer.exe có PID 4000.
  • 37. Trang 34 Hình 2.25: RegKey Autostart của Iofus.exe không có thông tin mô tả và chữ kí. Sử dụng Autoruns, ta thấy Key Start của phần mềm lạ có tên Iofus.exe nằm tại đường dẫn ở thưc mục %APPDATA%. Key Start của file này không có thông tin mô tả cũng như nhà phát hành. Hình 2.26: Malware nằm tại đường dẫn AppDataRoamingYdanpyn. Khi quét file này trên VirusTotal, ta nhận được kết quả trả về cảnh báo là Malware Trojan.
  • 38. Trang 35 Hình 2.27: Malware Zeus được nhận diện trên Virus Total. Hình 2.28: RegKey của Malware. Sau bước thực hiện phát hiện rà soát, diệt các process, người rà soát xóa các file Malware và xóa RegKey của nó.
  • 39. Trang 36 Tổng kết Việc sử dụng bộ phần mềm SysInternals Suite và áp dụng theo qui chuẩn bảy bước thực hiện này có thể phát hiện, rà soát và gỡ bỏ đến 90% số lượng Malware thông thường. Trong tương lai, có thể các dòng mã độc sẽ được bổ sung thêm nhiều cơ chế tinh vi, khó phát hiện để chống lại việc bị phân tích, cũng như bị rà soát và gỡ bỏ. Chính vì thế, việc hiểu rõ, nắm rõ, thực hiện đúng những qui trình cơ bản là bước đầu cần thiết trong qui trình bảo vệ các hệ thống, máy người dùng khỏi nguy cơ lây nhiễm mã độc.
  • 40. Trang 37 Danh mục tài liệu tham khảo [1] Advanced Malware Cleaning. Techniques for the IT. Professional - Mark Russinovich. Microsoft Technical Fellow. [2] Malware Hunting with the Sysinternals Tools RSA Conference - Mark Russinovich [3] Keylogger Software for Success - https://www.softactivity.com/softactivity-keylogger/ [4]https://msdn.microsoft.com/enus/library/windows/desktop/aa376977(v= vs.85)aspx