Viện Đào Tạo Quốc Tế
Mục Cứng
Lục FPT- JETKING
Học Viện Mạng Và Phần
Lời Cảm Ơn...................................................................................................................... 3
Lời Mở Đầu...................................................................................................................... 4
Chương 1: Tổng quan về mã độc....................................................................................6
1.1 Mã độc và mục đích của mã độc...........................................................................6
1.1.1 Khái niệm về mã độc.......................................................................................6
1.1.2 Mục đích của Malware....................................................................................6
1.2 Phân loại mã độc và cơ chế hoạt động..................................................................7
1.2.1 Virus.................................................................................................................7
1.2.2 Worm................................................................................................................ 7
1.2.3 Trojan...............................................................................................................7
1.2.4 Rootkits............................................................................................................7
Đồ Án
ĐỀ TÀI:1.2.6
HỆAdware.............................................................................................................8
THỐNG PHÂN TÍCH MÃ ĐỘC TỰ ĐỘNG CUCKOO
SANDBOX
1.2.7 Fileless Malware..............................................................................................8
1.2.5 Spyware............................................................................................................8
1.2.8 Ransomware....................................................................................................8
1.3 Tìm hiểu về cấu trúc PE file..................................................................................8
Giảng
Viên Hướng Dẫn
Thầy Lê Anh Tú
1.4 Các hình thức tấn cơng của mã độc....................................................................10
1.4.1 Qua thiết bị lưu trữ.......................................................................................10
Nhóm sinh viên thực hiện
1.4.2 Phát tán qua các phần mềm..........................................................................11
1.4.3 Phát tán qua các trang Web..........................................................................12
Nguyễn Văn Sỹ
MSV: JH1907004
1.4.4 Phát tán qua thư điện tử...............................................................................12
Mai Quốc Bảo
MSV: JH18010005
1.4.5 Phát tán qua mạng nội bộ.............................................................................14
Nguyễn Hữu Chiến
MSV: JH1903001
Bùi Khánh Dương
MSV: JH18010001
1.4.6. Phát tán qua các dịch vụ IM........................................................................14
1.5 Các hành vi của mã độc.......................................................................................15
1.6 Xu hướng phát triển của mã độc.........................................................................15
Chương 2: Quy trình Phân tích mã độc.......................................................................17
2.1 Mục đích của việc phân tích mã độc...................................................................17
2.2 Quy trình phân tích và xử lý mẫu mã độc hại....................................................18
2.2.1 Nhận diện hệ thống bị nhiễm mã độc hại và khoanh vùng xử lỷ...............18
2.2.2 Thu thập mẫu mã độc hại.............................................................................19
2.2.3. Các kỹ thuật phân tích mã độc....................................................................20
Hà Nội: 2021
1
2.2.4 Viết báo cáo tổng kết hành vi hoạt động của mã độc..................................21
2.2.5 Xử lý mẫu mã độc..........................................................................................21
Chương 3: Giới thiệu về Cuckoo Sandbox..................................................................21
3.1. Khái niệm Sandbox.............................................................................................21
3.2. Giới thiệu hệ thống Cuckoo Sanbox..................................................................22
3.3. Cài đặt Cuckoo Sandbox....................................................................................23
3.4. Chạy Cuckoo Sanbox..........................................................................................24
3.4.1 Khởi động Virtualbox...................................................................................24
3.4.2 Khởi động Cuckoo Sandbox.........................................................................24
3.5. Kiến trúc của Cuckoo.........................................................................................25
3.6. Các tính năng của Cuckoo Sandbox..................................................................25
Chương 4: Ứng dụng Cuckoo Sandbox trong phân tích mã độc................................26
4.1 Thực hiện phân tích động các mã độc trên Cuckoo Sandbox...........................26
4.1.1 Mã độc 1.........................................................................................................26
4.1.2 Mã độc 2.........................................................................................................31
KẾT LUẬN..................................................................................................................... 34
TÀI LIỆU THAM KHẢO.............................................................................................34
Lời Cảm Ơn
Qua thời gian nghiên cứu và hoàn thành đồ án, chúng em đã hiểu thêm về mã độc
cũng như biết được rất nhiều các cơng cụ phân tích chúng. Trong quá trình thực
hiện đồ án, chúng em đã nhận được sự giúp đỡ tận tình của thầy Lê Anh Tú giúp
2
chúng em hoàn thành tốt đồ án học kỳ này. Vì thời gian làm đồ án hạn hẹp, kiến
thức và kinh nghiệm chưa nhiều nên khơng tránh khỏi sai sót, rất mong nhận được
sự góp ý của các thầy cơ và các bạn.
Nhóm chúng em xin chân thành cảm ơn!
Hà Nội, tháng 5 năm 2021
Nhóm sinh viên
Nguyễn Văn Sỹ
Mai Quốc Bảo
Nguyễn Hữu Chiến
Bùi Khánh Dương
Lời Mở Đầu
Phát tán mã độc (Malware) đã thực sự trở thành một ngành “công nghiệp ”
trong các hoạt động gián điệp và phá hoại hệ thống, phần mềm hiện nay. Theo
thống kê từ các cơ quan, tổ chức, doanh nghiệp chuyên về An ninh, an tồn thơng
tin, hoạt động phát tán mã độc khơng chỉ tồn tại ở những nước phát triển mà ngay
tại các nước đang phát triển như Việt Nam cũng trở thành mảnh đất màu mỡ cho
các Hacker tấn công. Mã độc được phát tán tại hầu hết các cơ quan quan trọng từ
các cơ quan Chính phủ, Quốc hội tới các cơ quan tài chính như ngân hàng, viện
nghiên cứu, trường đại học,…. Các phần mềm chứa mã độc được tồn tại dưới rất
nhiều hình thức và có khả năng lây lan vơ cùng lớn.
Khơng dừng lại ở đó, mã độc hiện tại đã lây lan đa nền tảng và hiện tại
khơng chỉ giới hạn ở máy tính cá nhân mà cịn lây lan sang các thiết bị thơng minh
như smartphone. Với tốc độ phát triển của nền kinh tế, hiện nay hầu hết mọi cá
nhân đều sở hữu một thiết bị thơng minh hay máy tính cá nhân, vì vậy môi trường
hoạt động dành cho mã độc ngày càng rộng lớn và thiệt hại chúng gây ra cho
chúng ta là vô cùng lớn. Theo thống kê của Trung tâm ứng cứu khẩn cấp máy tính
Việt Nam (VNCERT) sự cố tấn cơng về mã độc đang có chiều hướng gia tăng với
thủ đoạn ngày càng tinh vi.
Nhằm góp phần hiểu rõ về hoạt động hành vi của mã độc cũng như tác hại
của việc phát tán mã độc trên hệ thống, các thiết bị thơng minh,… Báo cáo đã tìm
3
hiểu và nghiên cứu về “hệ thống phân tích mã độc tự động cuckoo sandbox”.
Mục tiêu của Báo cáo gồm các nội dung chính:
Chương 1. Tổng quan về mã độc: chương này giới thiệu những vấn đề cơ
bản nhất về mã độc và vai trị của việc phân tích mã độc, mô tả khái quát về cấu
trúc file PE của Windows; các hình thức tấn cơng, hành vi của mã độc và xu hướng
phát triển của mã độc.
Chương 2. Quy trình Phân tích mã độc: chương này mơ tả mục đích phân
tích mã độc và quy trình phân tích mã độc
Chương 3. Giới thiệu về Cuckoo Sandbox: chương này giới thiệu và mơ
tả các bước trong q trình phân tích mã độc và tìm hiểu về Sandbox.
Chương 4. Ứng dụng Cuckoo Sandbox trong phân tích mã độc: Áp dụng
lý thuyết đưa ra trong Chương 3 để phân tích mã độc.
Phần Kết luận: trình bày tổng hợp các kết quả báo cáo.
Bài báo cáo đã đạt được một số kết quả khả quan trong việc nghiên cứu kỹ
thuât phân tích mã độc dựa trên phân tích động, đưa ra được quy trình phân tích.
Tuy nhiên, báo cáo khơng thể tránh khỏi những thiếu sót, vì vậy nhóm rất mong
nhận được những ý kiến đóng góp, nhận xét của thầy cơ giáo để kết quả bài báo
cáo được hoàn thiện hơn.
4
Chương 1: Tổng quan về mã độc
1.1 Mã độc và mục đích của mã độc
1.1.1 Khái niệm về mã độc
Malware, trong Tiếng Anh là từ viết tắt của “malicious software”, malware
đề cập đến những chương trình phần mềm được thiết kế để gây hại hoặc làm
những hành động không mong muốn trên hệ thống máy tính. Một định nghĩa rất
ngắn gọn nhưng nói lên đầy đủ những tính chất của malware. Malware bản chất là
một phần mềm như những phần mềm khác trên máy tính mà chúng ta v n sử dụng
hàng ngày, nó có đầy đủ những đặc điểm, tính chất của một phần mềm bình thường
chỉ khác là nó có thêm tính độc hại (malicious).
1.1.2 Mục đích của Malware
Malware được tạo ra để khai thác tài nguyên trên máy tính để tìm kiếm lợi
nhuận. Tài ngun đó là
- Dữ liệu
Đây là mỏ vàng thực sự với tin tặc. Dữ liệu trên máy tính cịn có giá trị lớn
hơn nhiều chiếc máy tính đó. Từ những dữ liệu cá nhân như
- Thông tin đăng nhập, tài khoản: sử dụng để đánh cắp tiền, mạo danh
- Ảnh, video: mã hóa để yêu cầu tiền chuộc
- Tên, tuổi, địa chỉ email, số điện thoại, lịch sử duyệt web: bán cho các bên
làm quảng cáo.
- Tài liệu cơng việc
- Tài sản trí tuệ như mã nguồn chương trình, bản thiết kế, ý tưởng kinh doanh
- Hoạt động người dùng
Đặt quảng cáo hoặc chuyển hướng người dùng đến những trang quảng cáo để
thu phí quảng cáo.
- Khả năng tính tốn và kết nối
Máy tính là một cỗ máy điện tốn, có kết nối mạng thậm chí là cấu hình mạnh
với kết nối băng thông rộng. Khi chiếm được quyền điều khiển tin tặc hồn tồn có
thể sử dụng để thực hiện những tác vụ địi hỏi khả năng tính tốn như đào bitcoin,
tấn cơng DDoS. Nếu đó là máy server cung cấp dịch vụ thì khả năng khai thác cịn
lớn hơn rất nhiều
5
1.2 Phân loại mã độc và cơ chế hoạt động
Việc phân loại thành những dòng malware khác nhau sẽ cho một cái nhìn cơ
bản về hành vi của loại malware đó làm cho việc tìm hiểu về malware trở nên dễ
dàng hơn. Hiện tại chưa có một tiêu chuẩn chung nào về việc phân loại malware.
Những công ty phát triển phần mềm quét malware thường có những cách phân loại
của riêng mình, cũng như có rất nhiều tài liệu phân loại theo những cách khác
nhau. Nhưng về cơ bản thì malware được phân thành virus, worm và trojan dựa
trên hành vi của chúng trên máy tính của người dùng.
1.2.1 Virus
Đây là thuật ngữ xuất hiện đầu tiên về malware hại trên máy tính. Từ những
giai đoạn đầu phát triển của malware trong những năm 1980.
Virus máy tính là thuật ngữ được lấy từ virus sinh học. Cũng như virus sinh
học, virus máy tính khơng tồn tại thành một thực thể độc lập, một file độc lập mà
nó sẽ bám vào một thực thể, một file nào đó. Q trình lây nhiễm sẽ từ file này
sang file khác, khi file bị nhiễm virus chuyển từ máy bị nhiễm sang máy sạch thì
một tiến trình lây nhiễm mới lại lặp lại. Trong giai đoạn internet chưa phổ biến như
hiện nay thì đây gần như là cách lây nhiễm duy nhất.
Hiện nay có rất nhiều người, khơng chỉ là người dùng bình thường mà
cảnhững người làm về công nghệ thông tin thường sử dụng sai thuật ngữ virus để
chỉ malware. Thực tế thì virus chỉ là một loại malware
1.2.2 Worm
Worm là sâu mà sâu thì tự bị được. Worm dùng để chỉ những malware tồn tại
một cách độc lập, một file độc lập nhưng nó v n có khả năng tự tạo những bản sao
của chính nó vào những vị trí cần thiết để tiến hành lây nhiễm. Đơn giản nhất là
tạo một bản sao vào các thiết bị lưu trữ ngoài (như USB), thư mục chia sẻ trong
LAN rồi từ đó lây nhiễm sang các máy sạch.
1.2.3 Trojan
Trojan tồn tại độc lập, là một file độc lập, khơng có khả năng lây nhiễm.
Thơng thường trojan sẽ lừa người dùng mở nó bằng các kỹ thuật social engineering
như đặt những biểu tượng giống như thư mục, file văn bản, file hình ảnh, đặt tên có
liên quan đến người dùng như “Baocaotaichinh.doc”, “Danhsachcanbo2015.xls”
1.2.4 Rootkits
Rootkit là thuật ngữ được dùng để chỉ tập hợp các chương trình hay mã lệnh
có khả năng kiểm sốt hệ thống nhưng khơng bị phát hiện theo cách bình thường.
Nói cách khác rootkit là những mã lệnh hay chương trình có khả năng kiểm sốt ở
cấp độ quản trị phổ thơng một hệ thống máy tính mà người dùng khơng bao giờ
6
hoặc khó có thể phát hiện ra được. Tuy nhiên rootkit không thể tự lan truyền hay
nhân bản được.
1.2.5 Spyware
Spyware là phần mềm gián điệp chuyên thu thập các thông tin từ các máy
chủ (thơng thường vì mục đích thương mại) qua mạng Internet mà khơng có sự
nhận biết và cho phép của chủ máy. Một cách điển hình, spyware được cài đặt một
cách bí mật như là một bộ phận kèm theo của các phần mềm miễn phí (freeware)
và phần mềm chia sẻ (shareware) mà người ta có thể tải về từ Internet. Một khi đã
cài đặt, spyware điều phối các hoạt động của máy chủ trên Internet và lặng lẽ
chuyển các dữ liệu thông
1.2.6 Adware
Adware là phần mềm quảng cáo thường hay có ở trong các chương trình cài
đặt tải từ trên mạng. Một số phần mềm vô hại, nhưng một số có khả năng hiển thị
thơng tin lên màn hình, cưỡng chế người dùng
1.2.7 Fileless Malware
Fileless malware là một phần mềm độc hại không sao chép bất cứ tệp tin và
thư mục nào vào ổ đĩa cứng khi thực thi, Thay vào đó, dữ liệu độc hại được đưa
trực tiếp vào bộ nhớ của tiến trình đang chạy và mã độc thực thi ngay trên RAM.
Việc điều tra số và lần vết mã độc trở nên khó khăn do bộ nhớ sẽ được giải phóng
khi máy tính khởi động lại.
1.2.8 Ransomware
Là mã độc tống tiền bao gồm nhiều lớp phần mềm với chức năng hạn chế truy
cập đến hệ thống máy tính mà đã lây nhiễm, và đòi hỏi một khoản tiền cho người
đã tạo ra mã độc đó nhằm mục đích xố bỏ việc hạn chế truy cập mà nó đã tạo ra
trước đó. Một vài dạng của ramsomware mã hoá tệp tin, dữ liệu trên ổ đĩa cứng
(nhằm tống tiền), trong khi một vài dạng khác thì đơn giản hơn, chúng khố hệ
thống lại và hiển thị một thông báo để thuyết phục người bị hại trả tiền
1.3 Tìm hiểu về cấu trúc PE file
Một bước rất quan trọng khi tìm hiểu về mã độc là tìm hiểu về file PE vì gần
như mọi mã thực thi được nạp bởi Windows đều có định dạng PE. Đây là dạng phổ
biến bậc nhất của mã độc và cũng là định dạng hay bị lây nhiễm mã độc nhất.
Định dạng file PE được dùng cho những file thực thi, mã đối tượng và các
DLL của Windows. Định dạng này là một cấu trúc dữ liệu bao gồm thông tin cần
thiết để Windows OS Loader quản lý được mã thực thi trong nó.
Để có thể thực thi trên máy tính, nội dung file PE được chia thành các thành
phần và có mối liên hệ mật thiết với nhau. Nắm rõ cấu trúc PE sẽ giúp chúng ta
7
hiểu được cơ chế thực thi của một phần mềm, từ việc tổ chức tới việc nạp lên bộ
nhớ, các tài nguyên sử dụng…
Hơn nữa, khi chúng ta muốn sửa đổi một file, ví dụ như thêm vào một số
đoạn mã, chỉnh sửa một số thành phần nhưng vẫn muốn phần mềm thực thi bình
thường, ví dụ trong trường hợp cần chỉnh sửa các cơng cụ phân tích để tránh bị
phát hiện bởi mã độc thì chúng ta cần phải nắm rõ cấu trúc PE file cũng như mối
liên hệ giữa các thành phần trong file để có thể nhanh chóng thay đổi file và thoả
mãn yêu cầu đề ra mà không ảnh hưởng tới chức năng cũng như hoạt động của file.
Mặt khác, đối với các mã sử dụng kỹ thuật tiêm mã vào các tiền trình đang
có để che giấu sự tồn tại trên hệ thống, nếu chúng ta không hiểu rõ cấu trúc của file
PE sẽ rất khó tìm ra tiến trình bị tiêm mã độc.
Hình 2.1. Cấu trúc cơ bản của PE
Cấu trúc PE có thể gồm nhiều section, trong đó tối thiểu cần 2 section: data
và code. Một số section thông dụng hay được gặp ở các phần mềm :
1. Executable Code Section, có tên là .text (Microsoft).
2. Data Sections, có tên là .data, .rdata, .bss (Microsoft) hay DATA (Borland)
3. Resources Section, có tên là .rsrc
4. Export Data Section, có tên là .edata
5. Import Data Section. có tên là .idata
6. Debug Information Section, có tên là .debug
8
Cấu trúc các section trên bộ nhớ và trên ổ đĩa là như nhau, tuy nhiên khi
được nạp lên bộ nhớ, các Windows loader sẽ quyết định thứ tự và vị trí nạp các
phần, do đó vị trí các phần trên ổ đĩa và trên bộ nhớ sẽ có sự khác biệt.
1.4 Các hình thức tấn cơng của mã độc
Hiện nay có rất nhiều hình thức phát tán mã độc hại, có thể thơng qua email,
thơng qua các phần mềm và gắn mã độc vào bên trong, thông qua các đường link
trang web, thông qua việc chia sẻ file USB…
1.4.1 Qua thiết bị lưu trữ
Cách phát tán phổ biến nhất của mã độc trước đây là qua các thiết bị lưu trữ
di động, dù là thời sử dụng đĩa mềm ngày xưa hay thẻ nhớ USB ngày nay. Hiện tại,
thẻ nhớ trong các thiết bị di động thông minh, hay thiết bị ghi âm, ghi hình kỹ thuật
số cũng là một vật trung gian hiệu quả cho việc lan truyền mã độc. Các thiết bị di
động thơng minh thì hay phải nạp pin và phương thức nạp pin qua cổng USB lại rất
tiện dụng, điều này tiềm ẩn nguy cơ rất lớn cho việc lây truyền mã độc.
Một số dạng phát tán điển hình qua USB:
- Lợi dụng chức năng Autorun:
Khi thiết bị lưu trữ có sử dụng giao tiếp USB được cắm vào máy tính đã
nhiễm mã độc, mã độc sẽ phát hiện ra thiết bị có thể lây nhiễm được, sau đó tự sao
chép bản thân mình vào một vị trí bí mật trên thiết bị đó. Tiếp theo, nó ghi một file
autorun.inf có nội dung cơ bản như sau:
[Autorun]
OPEN = Đường dẫn virus trong đĩa USB
Từ Windows Vista trở về trước, Windows sẽ mặc nhiên kiểm tra tập tin autorun.inf
trong các thiết bị USB và thực thi các câu lệnh có trong đó.
- Đánh lừa người dùng:
Trong nhiều trường hợp, các lây nhiễm sử dụng tập tin Autorun khơng hiệu
quả, ví dụ như từ hệ điều hành Windows 7 trở về sau, chức năng này khơng cịn
hoạt động nữa. Mã độc chuyển sang sử dụng cách đánh lừa người dùng để thực thi
file mã độc đã lây nhiễm trên thẻ nhớ USB. Có thể kể đến như:
Ẩn thư mục trên USB và thay vào đó là các tập tin mã độc có hình thư
mục với tên tương tự các thư mục tồn tại ban đầu. Với cách này, mã độc dễ dàng
lừa được người dùng khởi chạy nó nếu trên hệ thống đang tắt chức năng hiển thị
file ẩn và phần mở rộng file.
9
Chuyển các file .doc, .docx của người dùng vào vị trí bí mật trên thẻ nhớ
USB thay thế vào đó là các file mã độc có tên và hình đại diện (icon) là file doc,
docx. Đồng thời sử dụng các khoảng trắng để kéo dài tên file tối đa, làm người
dùng có để hiện tên file thì cũng có khả năng cao bị đánh lừa.
Ví dụ:
Tập tin .doc gốc: Baocaothuctap.doc
Tập tin mã độc: Baocaothuctap.doc.exe
Vì tên tập tin quá dài nên Windows sẽ rút ngắn lại khi hiển thị và để dấu “..”
cuối cùng, thể hiện là tên văn bản còn tiếp tục. Nhưng người dùng sẽ dễ dàng bỏ
qua sự thể hiện này và chỉ nhìn lướt với tên hiển thị ngay đầu tiên nên dễ dàng bị
đánh lừa.
Cả 2 cách trên đối với người dùng thông thường đều rất khó nhận ra khi lỡ
khởi chạy nhầm phải mã độc, vì khi đã đạt được mục đích lây nhiễm, mã độc vẫn
mở thư mục hoặc tập tin như bình thường cho người dùng. Thậm chí, trong nhiều
trường hợp, mã độc cịn khơi phục lại thẻ nhớ USB như chưa hề bị nhiễm để tránh
sự phát hiện.
1.4.2 Phát tán qua các phần mềm
Các phần mềm được viết ra có chứa sẵn mã độc, hoặc các phần mềm chính
thống bị sửa đổi để thêm mã độc vào được phát tán tràn lan trên mạng
Internet. Các phần mềm Crack (bẻ khóa) có tỉ lệ chứa mã độc trong đó rất
cao. Nhiều khi vì chủ quan hay vì muốn dùng phần mềm mà không phải trả
tiền, người dùng sẵn sàng bất chấp mọi nguy cơ bị lây nhiễm mã độc để dùng
những phần mềm này
10
Phần mềm Keygen bẻ khố có nguy cơ lây nhiễm mã độc
1.4.3 Phát tán qua các trang Web
Khi truy cập các trang web, hệ thống có thể bị nhiễm mã độc bất kỳ lúc nào,
nhất là khi truy cập vào các trang khơng đáng tin cậy. Điều này có thể xảy ra
ngày cả khi chúng ta chỉ mở trang web, vì các trình duyệt, đặc biệt là các
thành phần của trình duyệt được phát triển bởi hãng thứ 3 (plugin) ẩn chứa rất
nhiều nguy cơ mất an toàn. Mã độc có thể lợi dụng những lỗ hổng này để phát
tán và lây nhiễm vào hệ thống
1.4.4 Phát tán qua thư điện tử
Khi mà thư được sử dụng ngày càng rộng rãi thì đây là một nguồn lây
nhiễm rất hiệu quả. Khi đã lây nhiễm vào máy nạn nhân, mã độc có thể tự
tìm ra danh sách các địa chỉ thư điện tử trong máy tính và nó tự gửi đi hàng
loạt những thư đánh lừa được đính kèm bản thân nó hoặc các liên kết chứa
mã độc. Khi người nhận khơng phát hiện ra thư bị nhiễm mã độc thì khả
năng cao sẽ bị nhiễm mã độc vào máy và từ máy này mã độc lại tiếp tục lây
nhiễm. Chính vì vậy, số lượng phát tán mã độc có thể theo cấp số nhân khiến
trong thời gian ngắn hàng triệu máy tính có thể bị lây nhiễm.
Ngày nay, khi phần mềm quản lý thư điện tử kết hợp với phần mềm
diệt mã độc có thể khắc phục được hành động tự nhân bản hàng loạt để phát
tán qua các địa chỉ thư điện tử trong danh bạ máy tính thì chủ nhân mã độc
có thể chuyển qua hình thức tự gửi thư phát tán mã độc bằng các nguồn địa
chỉ sưu tập được, các địa chỉ này cũng có thể là của chính mã độc đó gửi về.
Phương thức phát tán qua thư điện tử bao gồm:
- Phát tán vào các file đính kèm: Với cách này, người dùng sẽ khơng bị
nhiễm mã độc đến khi phần mềm đính kèm đó được kích hoạt. Mã độc cũng
khơng dại gì chỉ gửi đúng mã độc của mình, mà chúng thường ẩn dưới bỏ
bọc là các phần mềm miễn phí hay những phần mềm có nội dung nhạy cảm.
11
Nội dung email giả mạo Thủ tướng được gởi đến người dùng Việt Nam năm 2015
(Nguồn: nld.com.vn)
- Phát tán do mở một liên kết trong thư điện tử: Liên kết trong thư điện tử
có thể dẫn tới một trang web được cài sẵn mã độc, các này thường khai thác
lỗ hổng của trình duyệt hoặc các plugin (thành phần cài đặt thêm) của trình
duyệt, ví dụ như trình FlashPlayer.
Thư điện tử kèm liên kết độc hại
12
- Phát tán ngay khi mở để xem thư điện tử: Trường hợp này vô cùng nguy
hiểm bởi chưa cần kích hoạt các file hay mở liên kết gì hệ thống đã bị nhiễm
mã độc. Cách này thường là do mã độc khai thác lỗ hổng của hệ điều hành.
Mặc dù vây, cách khai thác này cũng khó thực hiện hơn, do lỗ hổng trên hệ
điều hành chưa bị phát hiện (zero day) sẽ ít hơn rất nhiều lỗ hổng trên trình
duyệt và các plugin của nó.
1.4.5 Phát tán qua mạng nội bộ
Mã độc sẽ tìm tất cả các thư mục trong cùng mạng nội bộ (Của máy nạn
nhân) xem có thư mục nào chia sẻ (Share) và cho phép sửa chữa chúng hay
khơng. Sau đó chúng sẽ tự sao chép và chờ đợi một ai đó vơ ý chạy chúng.
1.4.6. Phát tán qua các dịch vụ IM
Nhắn tin nhanh (Instant Messaging), là dịch vụ cho phép hai người trở lên
nói chuyện trực tuyến với nhau qua một mạng máy tính. Tương tự như lây
nhiễm qua thư điện tử, mã độc lây nhiễm qua IM cũng có những phương
thức tương tự như gửi file hay gửi link chứa mã độc. Mã độc này có thể lây
nhiễm với nhiều nền tảng IM từ Google Talk, Facebook Chat, Skype cho đến
MSN Messenger, Yahoo Messenger cho đến những phần mềm như Pidgin và
ICQ. Nói cách khác, khơng cơng cụ chat hiện hành nào thoát khỏi phạm vi
ảnh hưởng của mã độc nguy hiểm này.
Với lượng người dùng khổng lồ của mình, khơng ngạc nhiên khi Facebook
được xem là điểm bị lây nhiễm và phát tán đầu tiên. Mã độc nguy hiểm được
phát hiện lây lan bằng cách gửi đi một tập tin được đặt tên là
“Video_xxx.zip” (trong đó xxx là các số ngẫu nhiên). Khi người dùng tải về
và giải nén sẽ được tập tin có phần mở rộng .mp4.exe. Nếu tiếp tục bấm vào
file này, người dùng sẽ bị nhiễm mã độc và trở thành nguồn lây lan.
13
Mã độc trên Facebook Messenger được phát tán
1.5 Các hành vi của mã độc
Khi lây nhiễm vào một máy tính, mã độc thường thực hiện một số hành vi
nhằm che dấu sự hoạt động của chúng trước người dùng, đồng thời tạo ra các mơi
trường để có thể tự khởi động cùng hệ thống cũng như tải về các mã độc khác. Sau
đây là một số hành vi tiêu biểu nhất mà người phân tích mã độc cần tìm hiểu:
- Sự thay đổi về hệ thống tập tin: Bao gồm việc tạo, thay đổi nội dung hay xóa
các tập tin trên hệ thống.
- Sự thay đổi trong hệ thống Registry: Bao gồm việc tạo ra hoặc sửa đổi các
giá trị trong khóa registry.
- Tiêm nhiễm vào các tiến trình khác đang chạy trên hệ thống.
- Tạo ra các Mutex nhằm tránh việc xung đột khi sử dụng tài nguyên trên máy
tính.
- Tạo ra các hoạt động mạng đáng ngờ: Kết nối đến các trang web lạ để tải về
mã độc khác, kết nối đến các máy chủ IRC, thực hiện việc quét các hệ thống
bên ngoài,…
- Khởi chạy hoặc cho dừng các dịch vụ trên Windows: ví dụ dịch vụ của trình
diệt Virus.
1.6 Xu hướng phát triển của mã độc
Có thể nhận thấy từ trước đến nay mã độc có xu hướng phát triển tăng dần
cả về độ phức tạp cũng như mục tiêu mà chúng nhắm đến. Hiện nay, đa phần mã
độc được thiết kế nhắm đến các mục tiêu được xác định từ trước, đó có thể là một
cá nhân hoặc một tổ chức. Xuất phát từ mục đích đó, mã độc hiện nay được thiết
14
kế sao cho có khả năng che dấu càng lâu càng tốt, sau đó chúng mới thực hiện các
mục đích phá hoại ăn cắp thông tin hay gián điệp.
Một đặc tính nguy hiểm của mã độc hiện nay đó là được thiết kế với mục
đích lây nhiễm dài hạn trên mục tiêu, điều đó có nghĩa là khi lây nhiễm vào máy
mục tiêu, thay vì ngay lập tức có những hành vi phá hoại hay ăn cắp dữ liệu dễ bị
phát hiện, chúng sẽ thực hiện một loạt sự chuẩn bị để tồn tại trong hệ thống lâu dài.
Sau đó, mới thực thi các cuộc tấn công vào hệ thống lớn hơn, hay tấn cơng ra ngồi
hệ thống đã bị lây nhiễm với sự đảm bảo rằng nếu cuộc tấn cơng thất bại, kẻ tấn
cơng có thể sử dụng mã độc đó cho một cuộc tấn cơng khác vào thời gian sau đó
với một hình thức hay cách tiếp cận khác.
Trong những mã độc đã được phân tích, người ta còn nhận thấy xu hướng
cải tiến phức tạp trong việc đánh cắp dữ liệu – một trong những mục đích quan
trọng của mã độc. Cách thức mà mã độc sử dụng phải đảm bảo dữ liệu đánh cắp
được không bị chặn hay bị phát hiện nhưng hành vi đánh cắp vẫn đảm bảo tính bí
mật, điều này địi hỏi kẻ tấn công phải sử dụng những kênh giao thức phổ biến
cũng như mã hoá dữ liệu khi truyền đi.
Mục tiêu của những loại mã độc nguy hiểm thời gian gần đây có thể bao
gồm qn sự, chính trị hay thu nhập các thơng tin tình báo kinh tế, làm gián đoạn
các hoạt động hoặc phá huỷ các thiế bị công nghiệp. Mã độc Stuxnet cho phép kẻ
tấn công phá vỡ các hệ thống kiểm sốt cơng nghiệp trong q trình làm giàu
Uranium của một cơ sở công nghiệp cụ thể là một điển hình cho xu hướng phát
triển của mã độc trong tương lai.
Social engineering - một kỹ thuật cho phép kẻ tấn công lợi dụng yếu tố con
người để đánh bại hệ thống an ninh cũng được sử dụng nhiều hiện nay (yếu tố con
người luôn là điểm yếu nhất trong mọi phương án phòng vệ). Nhờ kỹ thuật này, kẻ
tấn cơng có thể xâm nhập sâu vào hệ thống an ninh của đối tượng. Dựa vào các
thông tin thu thập thông qua mạng xã hội hay các trang web thơng tin truyền thơng,
kẻ tấn cơng có thể tập hợp thông tin về mục tiêu cũng như một mạng lưới thơng tin
xung quanh mục tiêu, từ đó các cuộc tấn cơng trở nên đáng tin cậy và có sức thuyết
phục để dễ dàng vượt qua hệ thống an ninh.
Ghi nhận đầu tiên về mã độc vào năm 1981 và phát triển nhanh chóng theo
xu hướng phát triển của cơng nghệ máy tính. Càng ngày, mã độc càng trải qua
những thay đổi đáng kể về đặc điểm, phân loại cũng như mục đích sử dụng. Cùng
với sự bùng nổ của mạng máy tính, thiết bị di động thơng minh, mã độc cũng tăng
15
trưởng với tốc độ chóng mặt và kẻ tấn cơng liên tục biến đổi mã độc để thích ứng
với các công nghệ và nền tảng mới.
Nếu như ban đầu mục tiêu của những đoạn mã độc chỉ nhằm đến những máy
tính đơn lẻ, cơ chế lây lan hầu như khơng có và tác hại mang tính trêu chọc thì
ngày nay mã độc có thể gây ra những thiệt hại lớn đối với hệ thống máy tính, cơ
chế lây lan phức tạp, phá hoại hoặc đánh cắp dữ liệu, tấn công từ chối dịch vụ.
Nghiêm trọng hơn, mã độc có thể được phát triển phức tạp và thiết kế tinh vi với
mục đích gián điệp, phá hoại trên diện rộng bởi các tổ chức, chính phủ trên thế
giới. Từ đó dẫn tới nguy cơ về một cuộc chiến tranh mạng Cyberwar lan rộng.
Dựa vào thực tế sự phát triển mã độc hiện nay, một số dự đoán xu hướng
phát triển của mã độc trong tương lai:
- Các loại mã độc với các kỹ thuật chống phân tích được cải tiến.
- Mã độc trong các thiết bị di động bùng phát do xu hướng di động đã và sẽ
phát triển mạnh trong tương lai.
- Mã độc với những kỹ thuật được cải tiến đảm bảo sao cho chúng có thể lây
nhiễm trên diện rộng đồng thời trên nhiều nền tảng khác nhau.
- Mã độc được sử dụng như là một công cụ quan trọng trong chiến tranh
mạng giữa các tổ chức hay các quốc gia.
Cùng với sự bùng nổ của mạng máy tính, thiết bị di động cũng như sự phát
triển khơng ngừng của công nghệ thông tin, mã độc cũng liên tục phát triển và biến
đổi để phù hợp.
Chúng không ngừng cải tiến để chống lại sự phát hiện từ phía người sử
dụng, biến đổi để thích nghi với mơi trường, nền tảng mới với mục tiêu lây nhiễm
trên diện rộng cho cùng một mục đích của người viết mã độc. Mã độc có thể coi là
loại vũ khí sắc bén của chiến tranh mạng trong tương lai.
Chương 2: Quy trình Phân tích mã độc
2.1 Mục đích của việc phân tích mã độc
Mục tiêu chính của việc phân tích malware là thu thập các thông tin về hành
vi, hoạt động để tiến hành xử lý, gỡ bỏ malware ra khỏi hệ thống, ứng phó khi sự
cố malware đã xảy ra. Thơng thường sẽ phải xác định chính xác những gì đã xảy ra
trên hệ thống, đảm bảo xác định được những máy, những file bị lây nhiễm. Khi
phân tích mẫu malware nghi ngờ, phải xác định được mẫu nghi ngờ đó làm gì từ
đó tìm phương pháp để xác định nó trên hệ thống, ước tính thiệt hại có thể xảy ra.
Với những người trong giai đoạn học tập, nghiên cứu, việc phân tích giúp
hiểu một các rõ ràng, trực quan về hoạt động của malware thay vì chỉ đọc những
16
định nghĩa, phân tích một cách mơ hồ.
Với những người phát triển phần mềm quét malware, IDS/IPS thì sẽ dựa trên
kết quả phân tích đó để cập nhật những dấu hiệu (signature) vào phần mềm, hệ
thống quét.
2.2 Quy trình phân tích và xử lý mẫu mã độc hại
2.2.1 Nhận diện hệ thống bị nhiễm mã độc hại và khoanh vùng xử lỷ
a. Phát hiện ra sự cố hệ thống bị nhiễm mã độc hại là bước quan trọng nhất
trong quy trình xử lý. Nếu hệ thống bị nhiễm mã độc hại mà khơng phát hiện sớm
thì có thể gây ra hậu quả khó lường.
Có rất nhiều dấu hiệu cho biết một hệ thống bị nhiễm mã độc hại, dưới đây là một
vài dấu hiệu thường thấy:
Dấu hiệu nhiễm Virus :
- Hệ thống tự động shutdown hoặc logging off đột ngột.
- Hệ thống có ít bộ nhớ hơn bình thường.
- Tên một ổ đĩa bị thay đổi hay khơng có thể truy cập được vào.
- Các chương trình và các file đột nhiên khơng truy cập được vào( ví dụ Task
manager, Registry Editor, Folder Options).
- Các chương trình hoặc file lạ được tạo ra.
- Lưu lượng mạng trong hệ thống tăng cao.
Dấu hiệu nhiễm Trojan :
- Màn hình tự dưng có gợn sóng. - Wall-paper của máy bị thay đổi.103 - Màu sắc
cửa sổ Windows bị thay đổi. - Chức năng chuột trái, chuột phải bị hốn đổi vị trí
lẫn nhau. - Con trỏ chuột không xuất hiện, tự di chuyển - Nút Windows Start
không xuất hiện. - Thanh Taskbar tự dưng khơng xuất hiện. - Máy tính bạn tự dưng
shutdown hoặc tự tắt.
Dấu hiệu nhiễm Spyware
- Trang web mặc định tự động thay đổi.
- Firewall và các chương trình Anti-Virus tự động tắt.
- Đèn báo mạng nhấp nháy nhiều.
- Không thể tắt được hết các popup windows nhảy ra.
- Chương trình mới tự động trong mục Add/remove Program
- Có 1 vài icon và shortcuts lạ nằm trên thanh taskbar , system tray hoặc trên
desktop.
17
- Chuyển tới 1 một trang lạ thay vì lỗ 404, khi trang web khơng tìm thấy.
- Bạn nhận cảnh báo liên tục từ firewall về một chương trình khơng rõ ràng hoặc
một tiến trình nào đó cố gắng truy cập ra Internet.
- Bạn nhận được một số email quay trở lại hoặc nhìn thấy có một số email tự gửi
đi.
- Trình duyệt web của bạn chạy chậm hơn so với bình thường.
- Có thanh toolbar xuất hiện lạ thường trên web-browser
Trên đây là những dấu hiệu thường thấy khi máy tính bị nhiễm mã độc hại. Ngồi
ra có thể tham khảo thêm các dấu hiệu khác tại các trang web về bảo mật, về mã
độc hại.
b. Sau khi nhận diện được hệ thống bị nhiễm mã độc hại cần phải :
- Khoanh vùng xử lý (cách ly các máy có dấu hiệu nghi ngờ nhiễm mã độc hại).
- Ghi lại ngày giờ phát hiện mã độc hại và các thơng tin liên quan.
- Để ngun tình trạng của phần cứng, phần mềm liên quan đến hệ thống bị nhiễm.
- Xác định hệ thống bị nhiễm mã độc hại :
• Thơng tin về hệ điều hành đang sử dụng.
• Trình duyệt Web.
• Firewall.
• Các trình bảo vệ máy hiện thời đã có. Từ đó ta xác định được các modules, các
tiến trình, các dịch vụ, các drivers, các add-on trình duyệt, phiên bản hệ điều hành
… của hệ thống có liên quan đến hoạt động của mã độc hại. Mục đích thu thập
thơng tin để sau này có thể xác định nguồn gốc lây lan và tại sao lại bị nhiễm thơng
qua đâu? Đồng thời cũng rà sốt lại một lượt xem hệ thống mình có bị lỗi bảo mật
nào không. Trên đây là những hành động người quản trị cần làm ngay khi hệ thống
bị nhiễm mã độc hại. Thường thì người phân tích mã độc hại chỉ nhận được mẫu
rồi thực hiện phân tích. Tuy nhiên đứng ở góc độ người làm an tồn thơng tin hay
một quản trị mạng hệ thống thì việc xử lý tốt các bước ban đầu sẽ giúp ích cơng
việc khắc phục sự cố tốt hơn.
2.2.2 Thu thập mẫu mã độc hại
Thu thập mẫu virus, mã độc là quá trình tìm ra các file nhiễm virus, các file
nghi ngờ nhiễm virus trong hệ thống nhằm mục đích nghiên cứu, phân tích và học
hỏi
Thường có rất nhiều cách để có thể thu thập mẫu, trong đồ án này khơng nêu các
phương pháp để có thể lấy được mã độc hại một cách chuyên nghiệp như xây dựng
18
hệ thống honeypot giống một số hãng phần mềm diệt virus…. Hoặc lấy mẫu từ
khách hàng tự gửi đến, từ các nguồn chia sẻ trên mạng, mua từ các hãng nghiên
cứu bảo mật….
Việc tự mình thu thập được mã độc hại trên chính hệ thống địi hỏi nhiều kinh
nghiệm, ví dụ thấy có các file thực thi lạ trên hệ thống thì nén nó lại bằng trình nén
và đặt mật khẩu sau đó mang đi phân tích. Hoặc dùng một số công cụ giám sát hệ
thống như process để xem có tiến trình nào lạ khơng, tìm cách xem cái nào tạo ra
tiến trình lạ đó rồi xác định nó nằm ở đâu, nén nó lại mang đi phân tích.
2.2.3. Các kỹ thuật phân tích mã độc
Thơng thường khi tiến hành phân tích malware chúng ta chỉ có mẫu malware
dưới dạng file thực thi, chưa một ai có thể đọc trực tiếp file này để tìm kiếm hành
vi của malware. Để có thể hiểu được malware chúng ta sẽ sử dụng những công cụ
khác nhau, mỗi công cụ sẽ tiết lộ cho chúng ta một chút thông tin về malware. Từ
những mảnh nhỏ thơng tin đó chúng ta sẽ có được một bức tranh đầy đủ chi tiết.
Có hai cách tiếp cận để phân tích malware: tĩnh và động. Phân tích tĩnh đề
cập đến việc kiểm tra malware mà khơng tiến hành thực thi, chạy malware. Ngược
lại phân tích động sẽ chạy malware độc đó. Cả hai kỹ thuật đều có hai mức độ cơ
bản và nâng cao.
2.2.3.1 Phân tích tĩnh cơ bản
Phân tích tĩnh cơ bản bao gồm việc kiểm tra file thực thi mà không quan sát
các câu lệnh thực sự. Phân tích tĩnh cơ bản có thể xác định khi nào một file
là malware, cung cấp thông tin về chức năng. Phân tích tĩnh cơ bản thì rõ
ràng và nhanh chóng nhưng sẽ khơng hiệu quả và để sót những hành vi quan
trọng nếu loại malware đó được thiết kế một cách tinh vi.
2.2.3.2 Phân tích tĩnh nâng cao
Phân tích tĩnh nâng cao bao gồm kỹ thuật dịch ngược mã
(reverseengineering) bằng cách tải file thực thi vào một trình disassembler
và nhìn vào những mã lệnh để khám phá xem malware làm những gì. Những
mã lệnh đó được thực thi bởi CPU, do đó kỹ thuật phân tích tĩnh nâng cao sẽ
cho biết chính xác những gì malware làm. Tuy nhiên, phân tích tĩnh nâng
cao yêu cầu một lượng kiến thức hoàn toàn khác biệt so với phân tích tĩnh cơ
bản, đó là kiến thức về disassembly, những cấu trúc mã lệnh, những ý tưởng
(concept) của hệ điều hành (như Windows)
2.2.3.3 Phân tích động cơ bản
Các kỹ thuật phân tích động cơ bản liên quan đến việc chạy malware và
quan sát hành vi trên hệ thống để gỡ bỏ những file bị lây nhiễm. Tuy nhiên
trước khi có thể chạy malware một cách an toàn cần phải xây dựng một mơi
trường sẽ cho phép chạy malware đó mà không làm ảnh hương đến hệ thống
cũng như hạ tầng mạng. Giống như các kỹ thuật phân tích tĩnh cơ bản, các
19
kỹ thuật phân tích động cơ bản có thể được tiến hành bởi hầu hết mọi người
mà không cần hiểu biết sâu về lập trình, nhưng sẽ khơng hiệu quả với tất cả
các loại malware và có thể bỏ sót những hành vi quan trọng.
2.2.3.4 Phân tích động nâng cao
Phân tích động nâng cao sử dụng một chương trình debugger để kiểm tra
trạng thái của một malware đang thực thi. Phân tích động nâng cao cung cấp
một cách khác để trích xuất thơng tin chi tiết từ file thực thi. Những kỹ thuật
phân tích này rất hữu dụng khi muốn thu nhận những thơng tin mà rất khó
có thể lấy được bằng những kỹ thuật khác
2.2.4 Viết báo cáo tổng kết hành vi hoạt động của mã độc
Viết báo cáo cần trả lời các câu hỏi sau
Tên malware / họ ?
Mã hash ?
Dung lượng ?
Malware nằm ở đâu trên máy ?
Malware kết nối tới đâu ?
Manlware làm cái gì ?
2.2.5 Xử lý mẫu mã độc
Tìm signature của mã độc hại và phương pháp diệt mã độc hại
Trong bước này thực hiện:
• Tìm đặc điểm nhận diện mã độc hại trong hệ thống sau khi phân tích (ví dụ
tại offset nào đó chứa chuỗi string nào, hoặc giá trị MD5 của file…).
• Đề ra các phương án khắc phục hệ thống bị nhiễm mã độc hại.
• Tìm phương án diệt nó, nếu nắm được hành vì của nó có thể tự viết các
script xóa mã độc hại đó trong hệ thống.
Chương 3: Giới thiệu về Cuckoo Sandbox
3.1. Khái niệm Sandbox
• Theo nghĩa đen :
Sandbox chính là một cái khung, trung bình khoảng 1-2, chứa đầy cát (sand
= cát; box = đóng khung). Theo lịch sử thì người Hy Lạp cổ dùng nó như một bản
nháp, dùng que vạch chữ trên cát, tính tốn xong cứ việc xóa đi làm.
20
• Trong ngành IT (Công nghệ thông tin):
Sandbox được định nghĩa là một kỹ thuật quan trọng trong lĩnh vực bảo mật.
Nó có tác dụng làm cơ lập các ứng dụng, ngăn chặn các phần mềm độc hại để
chúng không có cơ hội tấn cơng vào các phần mềm máy tính, cài cắm các mã độc
nhằm ăn cắp thơng tin cá nhân của người khác hoặc ăn cắp thông tin quan trọng từ
các cơ quan nhà nước tới quốc hội, chính phủ.
Hiện nay Sandbox thường được cài vào máy chủ PC hay máy chủ của các tổ
chức, doang nghiệp có nhu cầu sử dụng nhằm âm thầm bảo vệ thông tin khỏi các
nguy cơ bị kẻ xấu tấn công.
3.2. Giới thiệu hệ thống Cuckoo Sanbox
Cuckoo Sandbox là phần mềm mã nguồn mở cho phép phân tích mã độc
một cách tự động. Cuckoo Sandbox là một tập các mã kịch bản viết bằng ngôn ngữ
21
Python, cho phép gắn thêm các thành phần để phân tích mã độc bằng cách đưa
chúng vào mơi trường ảo hoá và theo dõi hành vi.
Trong bài báo cáo đã triển khai Cuckoo Sandbox trên nền hệ điều hành
Ubuntu 20.4 và dùng máy ảo VirtualBox làm mơi trường phân tích.
3.3. Cài đặt Cuckoo Sandbox
Các bước cài đặt Cuckoo Sandbox trên môi trường Ubuntu kết hợp với máy
ảo VirtualBox.
Cuckoo Sandbox được phát triển trên Python và dử dụng các thành phần như
MongoDB, Yara, SSDEEP, Tcpdump,…
a)
Cài đặt Python libraries (Python 2.7)
$ sudo apt-get install python python-pip python-dev libffi-dev libssl-dev
$ sudo apt-get install python-virtualenv python-setuptools
$ sudo apt-get install libjpeg-dev zlib1g-dev swig
b)
Cài đặt MongoDB, PostgreSQL
$ sudo apt-get install mongodb
$ sudo apt-get install postgresql libpq-dev
c)
Cài đặt VirtualBox 6.1
sudo apt-get install -y virtualbox
d)
Cài đặt Tcpdump (Chỉnh sửa quyền cho Tcpdump để Cuckoo có thể thực
hiện với quyền không phải quyền quản trị)
sudo apt-get install -y tcpdump libcap2-bin apparmor-utils
sudo groupadd pcap
sudo usermod -a -G pcap cuckoo
sudo chgrp pcap /usr/sbin/tcpdump
sudo setcap cap_net_raw,cap_net_admin=eip /usr/sbin/tcpdump
getcap /usr/sbin/tcpdump
sudo aa-disable /usr/sbin/tcpdump
e)
Cài đặt Volatility 2.6
pip install openpyxl
pip install ujson
pip install pycrypto
pip install distorm3
pip install pytz
git clone />cd volatility
python setup.py build
python setup.py install
f)
Cài đặt Cuckoo Sandbox
sudo useradd cuckoo
;tạo tài khoản
22
sudo usermod -a -G vboxusers cuckoo
;tài khoản chạy cuckoo và tài
khoản virtualbox phải đồng nhất
id cuckoo
sudo pip install -U pip setuptools
sudo pip install -U cuckoo
;kiểm tra tài khoản
;tải và cài đặt cuckoo
3.4. Chạy Cuckoo Sanbox
3.4.1 Khởi động Virtualbox
- Khởi động Virtualbox:
$ virtualbox
Máy ảo cuckoo1 được tạo ra sử dụng hệ điều hành Window 7 sau khi khởi
động tạo một snapshot được đặt tên là Snapshot1 sẽ được dùng trong quá trình
phân tích để trở về trạng thái ban đầu trước khi Cuckoo Sandbox thực hiện q
trình phân tích.
3.4.2 Khởi động Cuckoo Sandbox
- Thực hiện việc khởi động Cuckoo Sandbox với câu lệnh: cuckoo
- Khởi động hệ thống giao diện web phân tích Cuckoo Sandbox
- Giao diện hệ thống web phân tích tự động mã độc Cuckoo Sandbox:
- Để thực hiện việc phân tích một file chọn mục SUBMIT A FILE FOR
ANALYSIS sau đó chọn một file để thực hiện phân tích hay có thể phân tích
một URLs/Hashes điền đường dẫn trang web chứa file phân tích vào khung
SUBMIT URLS/HASHES.
23
3.5. Kiến trúc của Cuckoo
Cuckoo là một sandbox phân tích malware. Cho phép thực thi malware trong
một môi trường máy ảo, ngồi ra nó cịn cho phép phân tích trên mơi trường máy
thật. Kiến trúc của cuckoo theo mơ hình của một máy ảo thật sự bao gồm host và
guest.
- Máy host là máy được cài chương trình ảo hóa như virtualbox hay vmware.
- Máy guest là một máy tính được cài hệ điều hành dành cho việc thực thi
malware. Có thể là máy ảo hoặc máy vật lý.
Máy chủ chạy thành phần cốt lõi của hộp Sanbox quản lý tồn bộ q trình phân
tích, trong khi máy guest là môi trường biệt lập nơi các mẫu phần mềm độc hại
được thực thi và phân tích một cách an tồn.
3.6. Các tính năng của Cuckoo Sandbox
Cuckoo Sandbox có thể thu thập được dữ liệu như:
- Dấu vết của các hàm API được gọi bởi tất cả các tiến trình mã độc sinh ra.
- Các tập tin được tạo, xóa, sửa, tải xuống bởi mã độc trong suốt quá trình
thực thi của chúng.
- Trích xuất tồn bộ bộ nhớ (memory dump) của một tiến trình.
- Trích xuất tồn bộ bộ nhớ của hệ thống.
24
- Theo vết việc truyền tải dữ liệu theo định dạng PCAP.
- Phân tích các dữ liệu trích xuất được.
- Phân tích một/nhiều URL.
Cuckoo Sandbox hỗ trợ giao diện dịng lệnh và giao diện đồ họa trên nền web.
- Ghi dấu các hàm API của Windows được gọi.
- Sao chép các tập tin được tạo ra và các tập tin bị xóa khỏi hệ thống.
- Lưu được bộ nhớ của tiến trình của mã độc và bộ nhớ của tồn hệ thống để
phân tích (kết hợp với cơng cụ Volatility).
- Chụp ảnh màn hình trong suốt quá trình thực thi mã độc.
- Theo vết và lưu các kết nối mạng để phân tích.
Chương 4: Ứng dụng Cuckoo Sandbox trong phân tích mã
độc
4.1 Thực hiện phân tích động các mã độc trên Cuckoo Sandbox
4.1.1 Mã độc 1
- Thông tin về cơ bản về mã độc Locky Ransomware:
Thông tin cơ bản về mã độc Locky Ransomware
- Kết quả tổng quan mục phân tích tĩnh:
25