1. Trang chủ
  2. » Luận Văn - Báo Cáo

luận văn thạc sĩ phương pháp phát hiện mã độc trong firmware của các thiết bị định tuyến và ứng dụng

60 28 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 60
Dung lượng 2,22 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO VIỆN HÀN LÂM KHOA HỌC VÀ CÔNG NGHỆ VIỆT NAM HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ --- Nguyễn Thùy Linh PHƯƠNG PHÁP PHÁT HIỆN MÃ ĐỘC TRONG FIRMWARE CỦA CÁC THIẾT BỊ ĐỊ

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO VIỆN HÀN LÂM KHOA HỌC

VÀ CÔNG NGHỆ VIỆT NAM

HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ

-

Nguyễn Thùy Linh

PHƯƠNG PHÁP PHÁT HIỆN MÃ ĐỘC TRONG FIRMWARE CỦA CÁC THIẾT BỊ ĐỊNH TUYẾN VÀ ỨNG DỤNG

LUẬN VĂN THẠC SĨ NGÀNH MÁY TÍNH

Hà Nội – 2021

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO VIỆN HÀN LÂM KHOA HỌC

VÀ CÔNG NGHỆ VIỆT NAM HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ

-

Nguyễn Thùy Linh

PHƯƠNG PHÁP PHÁT HIỆN MÃ ĐỘC TRONG FIRMWARE CỦA CÁC THIẾT BỊ ĐỊNH TUYẾN VÀ ỨNG DỤNG

Chuyên ngành: Hệ thống thông tin

Mã số: 8 48 01 04

LUẬN VĂN THẠC SĨ NGÀNH MÁY TÍNH

NGƯỜI HƯỚNG DẪN KHOA HỌC : Hướng dẫn 1:TS Nguyễn Trường Thắng Hướng dẫn 2:TS Phạm Mạnh Linh

Hà Nội - 2021

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan Luận văn này là công trình nghiên cứu khoa học nghiêm túc của cá nhân tôi, được thực hiện dưới sự hướng dẫn khoa học của

TS Nguyễn Trường Thắng và TS Phạm Mạnh Linh

Các số liệu, kết quả nêu trong luận văn là trung thực, có nguồn gốc rõ ràng và được trích dẫn đầy đủ theo quy định

Tác giả luận văn

Nguyễn Thùy Linh

Trang 4

LỜI CẢM ƠN

Tôi xin chân thành cảm ơn các thầy cô, cán bộ Học viện Khoa học

và Công nghệ - Viện Hàn lâm Khoa học và Công nghệ Việt Nam đã giúp

đỡ và truyền đạt kiến thức cho tôi trong suốt thời gian học tập, nghiên cứu tại trường

Tôi xin gửi lời cảm ơn sâu sắc tới TS Nguyễn Trường Thắng và TS Phạm Mạnh Linh đã định hướng cho tôi trong việc lựa chọn đề tài, đưa ra những nhận xét quý giá, trực tiếp hướng dẫn tôi trong suốt quá trình nghiên cứu và hoàn thành luận văn tốt nghiệp

Tôi xin cảm ơn các cấp Lãnh đạo và toàn thể đồng nghiệp, gia đình, bạn bè đã chia sẻ, giúp đỡ, tạo điều kiện cho tôi hoàn thành khóa luận này

Luận văn này được tài trợ bởi Học viện khoa học và Công nghệ và Viện Công nghệ thông tin, Viện hàn lâm Khoa học và công nghệ Việt Nam

từ đề tài mã số GUST.STS.DDT2019-TT02

Hà Nội, ngày tháng năm 2021

Nguyễn Thùy Linh

Trang 5

DANH MỤC CÁC KÝ HIỆU, TỪ VIẾT TẮT

APT Advanced Persistent Threat – hay còn gọi là các cuộc tấn công

chủ đích IDS Intrusion Detection Systems - Hệ thống phát hiện xâm nhập IPS Intrusion Prevention Systems – Hệ thống ngăn ngừa xâm nhập NIST National Institute of Standart and Technology

USB Universal Serial Bus

Mô hình

OSI

(Open System Interconnection Basic Reference) là mô hình mạng có 7 lớp, được phát triển bởi International Standards Organization (ISO)

IP Internet Protocol

CPU Central Processing Unit

ROM Read-Only Memory

RAM Random Access Memory

OS Operating System

IoT Internet of Things

Trang 6

DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ Hình 1.1 Số lượng mã độc trên toàn thế giới trong vòng 10 năm gần đây

(Nguồn AV-TEST) 4

Hình 1.2 Ngày 12/5/2017, chỉ sau vài giờ bùng phát, mã độc tống tiền WannaCry đã lây lan ra hàng chục quốc gia (ảnh chụp từ hệ thống giám sát của hãng bảo mật Kaspersky) 4

Hình 1.3 Công cụ của một mạng botnet 9

Hình 1.4 Ví dụ phương pháp phân tích tĩnh trên android 12

Hình 2.1 OSI, mô hình giao thức truyền thông 16

Hình 2.2 Cấu tạo bộ định tuyến 19

Hình 2.3 Một ví dụ kết quả tìm kiếm thông tin với công cụ Shodan.io 22

Hình 2.4 Quy trình tổng quan về firmadyne 27

Hình 2.5 Mô hình tổng quan về avatar 28

Hình 3.1 Tổng quan về quy trình phát hiện mã độc trên thiết bị định tuyến thông qua mô phỏng 31

Hình 4.1 Giám sát mã độc bằng strace và tcpdump 45

Hình 4.2 Kết quả giám sát cho thấy mã độc kết nối ra ngoài internet 46

Trang 7

MỤC LỤC

LỜI CAM ĐOAN I LỜI CẢM ƠN II DANH MỤC CÁC KÝ HIỆU, TỪ VIẾT TẮT III DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ IV MỤC LỤC V

MỞ ĐẦU 1

CHƯƠNG 1 TỔNG QUAN VỀ MÃ ĐỘC VÀ CÁC PHƯƠNG PHÁP PHÁT HIỆN 3

1.1.TỔNG QUAN VỀ MÃ ĐỘC 3

1.1.1 Khái niệm về mã độc 3

1.1.2 Tình hình mã độc tại Việt Nam và trên thế giới 3

1.1.3 Phân loại mã độc 6

1.1.4 Vai trò của việc phân tích mã độc 10

1.2.CÁC KỸ THUẬT VÀ PHƯƠNG PHÁP PHÂN TÍCH MÃ ĐỘC 10

1.2.1 Phương pháp phân tích tĩnh 11

1.2.2 Phương pháp phân tích động 12

1.2.3 Phương pháp phân tích lai 13

CHƯƠNG 2: TỔNG QUAN VỀ THIẾT BỊ ĐỊNH TUYẾN VÀ CẤU TRÚC CỦA FIRMWARE 16

2.1.GIỚI THIỆU VỀ MÔ HÌNH MẠNG OSI 16

2.2.THIẾT BỊ ĐỊNH TUYẾN 18

2.3.CẤU TRÚC CỦA FIRMWARE 22

2.4.MÃ ĐỘC TRONG FIRMWARE 24

2.5.PHƯƠNG PHÁP PHÁT HIỆN MÃ ĐỘC TRÊN THIẾT BỊ ĐỊNH TUYẾN ………25

2.5.1 Phương pháp phân tích tĩnh mã độc trên thiết bị định tuyến 26

2.5.2 Phương pháp phân tích động mã độc trên thiết bị định tuyến 26

Trang 8

CHƯƠNG 3: QUY TRÌNH PHÁT HIỆN MÃ ĐỘC TRÊN THIẾT BỊ ĐỊNH

TUYẾN 30

3.1.ĐỀ XUẤT QUY TRÌNH PHÁT HIỆN MÃ ĐỘC 30

3.2.BƯỚC 1, THU THẬP FIRMWARE TỪ CÁC NHÀ CUNG CẤP THIẾT BỊ ĐỊNH TUYẾN 31

3.3.BƯỚC 2, BÓC TÁCH FIRMWARE VÀ MÔ PHỎNG DỰA TRÊN MÁY ẢO QEMU 34

3.3.1 Bóc tách Firmware 34

3.3.2 Mô phỏng Firmware dựa trên máy ảo QEMU 35

3.3.3.Một số dấu hiệu phát hiện chương trình được giám sát là mã độc……… 41

CHƯƠNG 4: KẾT QUẢ THỰC NGHIỆM 44

4.1.KẾT QUẢ KHI THỰC NGHIỆM QUY TRÌNH PHÁT HIỆN MÃ ĐỘC TRÊN THIẾT BỊ ĐỊNH TUYẾN THÔNG QUA MÔ PHỎNG 44

4.2.ĐỐI SÁNH VỚI HỆ THỐNG KIỂM TRA MÃ ĐỘC VIRUSTOTAL ……… ……… 47

CHƯƠNG 5: KẾT LUẬN VÀ KIẾN NGHỊ 50

5.1.KẾT LUẬN 50

5.2.KIẾN NGHỊ 51

TÀI LIỆU THAM KHẢO 52

Trang 9

cơ đến từ không gian mạng Hoạt động tấn công mạng với mục đích chính trị, kinh tế nhằm vào cơ quan chính phủ, các tổ chức kinh tế, doanh nghiệp, hoạt động tội phạm mạng gia tăng về tính chất và quy mô Kiểm soát an ninh mạng

và phòng, chống tội phạm mạng được nhiều quốc gia đặc biệt quan tâm; ưu tiên xử lý các nguy cơ, hoạt động lợi dụng dịch bệnh Covid-19 để hoạt động tội phạm mạng

Từ thời điểm lý thuyết tự nhân bản của phần mềm máy tính được John Von Neumann (1903-1957) đưa ra (năm 1941) đến khi xuất hiện virus đầu tiên phải mất hơn 3 thập kỷ, nhưng với sự bùng nổ của Internet mã độc cũng theo đó bùng nổ theo Song song với việc ứng dụng công nghệ thông tin, mã độc cũng đã và đang len lỏi vào mọi mặt của đời sống, gây ra những thiệt hại

vô cùng nghiêm trọng cả về kinh tế lẫn an ninh, quốc phòng

Phát tán mã độc (Malware) đã thực sự trở nên phổ biến 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 toà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 hoạt động Mã độc được phát tán tại hầu hết các cơ quan quan trọng từ cơ quan Chính phủ, tới các cơ quan như tài chính ngân hàng, doanh nghiệp, …Các phần mềm chứa mã độ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

Mã độc hiện tại đã lây lan đa nền tảng 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 Với tốc độ phát triển của nền kinh tế và khoa học kỹ thuật, hiện nay hầu hết mọi cá nhân đều sở hữu thiết bị thông minh, vì vậy môi trường hoạt động cho mã độc ngày càng rộng

Trang 10

lớn và thiệt hại chúng gây ra là vô cùng to 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

Song hành cùng cuộc cách mạng công nghiệp lần thứ 4 là sự phát triển mạng lưới kết nối các thiết bị IoT (Internet of Things) Để đảm bảo sự thông suốt trong toàn bộ quá trình trao đổi thông tin giữa các thiết bị IoT, thì thiết bị định tuyến đóng vai trò then chốt Do đó, thiết bị định tuyến đã và đang trở thành mục tiêu tấn công phổ biến của tin tặc Điều này dẫn tới nguy cơ không chỉ mất an toàn thông tin của thiết bị IoT nói riêng mà còn là nguy cơ gây mất

an toàn, an ninh mạng nói chung Để phát hiện mã độc có được cài vào thiết

bị định tuyến của các nhà sản xuất hay không, luận văn này nghiên cứu đưa ra phương pháp để phát hiện mã độc trong các thiết bị định tuyến

Trang 11

1.1.2 Tình hình mã độc tại Việt Nam và trên thế giới

Kể từ khi mã độc đầu tiên xuất hiện vào năm 1984 đến nay, theo Viện nghiên cứu độc lập về an toàn thông tin của Đức AV-TEST (The Independent IT-Security Institute) - là một tổ chức độc lập có trụ sở ở Đức Chuyên đưa ra các đánh giá về các phần mềm diệt virus và bảo vệ thông tin Các đánh giá của AV-TEST có uy tín rất cao, mang lại cái nhìn tổng thể các sản phẩm diệt virus (anti-virus) trên thế giới), đã có khoảng hơn 1 tỷ mã độc được phát tán [2] Trong 10 năm gần đây, số lượng mã độc phát triển nhanh chóng trên toàn thế giới đã đặt ra nhiều vấn đề về an ninh thông tin cho toàn bộ những người

sử dụng Internet trên toàn cầu

Trang 12

Hình 1.1 Số lượng mã độc trên toàn thế giới trong vòng 10 năm gần đây

(Nguồn AV-TEST) Cùng với sự gia tăng về số lượng, chủng loại mã độc cũng phong phú hơn về cả hành vi và mục đích phát tán Các lĩnh vực mà mã độc nhắm đến bao gồm chính trị, kinh tế, tôn giáo và nhiều lĩnh vực quan trọng khác Những năm gần đây, một loạt mã độc tống tiền kiểu mới cực kỳ nguy hiểm vừa xuất hiện và hoành hành tại nhiều quốc gia trên thế giới như ở châu Âu, Trung Đông và Mỹ nhắm vào các công ty và hệ thống lớn khiến mọi hoạt động bị ngừng trệ Năm 2017, thế giới bị rúng động bởi sự hoành hành của mã độc tống tiền WannaCry lây nhiễm trên 250.000 máy tính ở 150 quốc gia trên thế giới

Hình 1.2 Ngày 12/5/2017, chỉ sau vài giờ bùng phát, mã độc tống tiền

WannaCry đã lây lan ra hàng chục quốc gia (ảnh chụp từ hệ thống giám sát

của hãng bảo mật Kaspersky)

Trang 13

Tại Việt Nam, xu hướng tấn công, phát tán mã độc vào các cơ quan, doanh nghiệp là hình thái tấn công phổ biến của giới tội phạm mạng mang tính chất quốc gia Bên cạnh các loại mã độc phổ biến thì cũng xuất hiện các dạng mã độc mới như mã độc đính kèm trong tệp tin văn bản Hầu hết người dùng nhận được email đã mở tập tin văn bản đính kèm và bị nhiễm

mã độc khai thác lỗ hổng của phần mềm Microsoft Office (bao gồm cả Word, Excel, Power Point) Khi xâm nhập vào máy tính mã độc này âm thầm kiểm soát toàn bộ máy tính nạn nhân, mở cổng hậu (Backdoor) cho phép tin tặc điều khiển máy tính nạn nhân từ xa Chúng cũng nhận lệnh tin tặc tải các mã độc khác về máy tính để ghi lại thao tác bàn phím, chụp màn hình và lấy cắp dữ liệu

Theo báo cáo International Privacy Day Report 2020 của Kaspersky, Việt Nam đứng thứ 9 trên toàn cầu về mức độ bị ảnh hưởng bởi phần mềm gián điệp, với 7.216 người dùng bị tấn công vào năm 2019 Tổng số người dùng bị ảnh hưởng bởi phần mềm gián điệp năm 2019 tại Việt Nam đã tăng 21,54%, từ 5.937 người dùng trong năm 2018 [3] Hacker trên thế giới đang lợi dụng sự kiện Virus Corona để đánh lừa mọi người tải phần mềm độc hại

Trước sự gia tăng mạnh mẽ về số lượng và mục đích tấn công của mã độc đã có nhiều biện pháp nhằm ngăn chặn và phòng ngừa mã độc như sử dụng các chương trình diệt virus, sử dụng hệ thống tường lửa, IDS, IPS, … để bảo vệ hệ thống Tuy nhiên, các biện pháp này chỉ ngăn chặn được phần nào các loại mã độc đã được biết đến rộng rãi Còn các biến thể mã độc hoặc mã độc mới thì hầu như các biện pháp trên trở nên vô hiệu Với phần mềm gián điệp, khi máy tính bị lây nhiễm, nó sẽ lấy cắp dữ liệu cá nhân, cookie, tài khoản email, tài khoản ngân hàng, …Các dữ liệu cá nhân bị đánh cắp sẽ được

sử dụng với mục đích xấu Ngoài ra, một hình thức tấn công nguy hiểm nữa là tấn công có chủ đích APT (Advanced Persistent Threat - thuật ngữ dùng để miêu tả một chiến dịch tấn công, thường do một nhóm các kẻ tấn công sử dụng những kỹ thuật tấn công nâng cao để có thể hiện diện và tồn tại lâu dài trên mạng Internet nhằm khai thác dữ liệu) Một hình thức tấn công APT phổ biến là bằng email chứa file văn bản, kẻ xấu giả làm người quen gửi email kèm file văn bản, khi người dùng mở file đính kèm, máy tính sẽ vô tình bị nhiễm mã độc

Trang 14

1.1.3 Phân loại mã độc

Có nhiều cách phân loại mã độc khác nhau dựa vào các tiêu chí khác nhau Trong đó, định nghĩa đưa ra bởi NIST (National Institute of Standards and Technology) là cách định nghĩa phổ biến nhất trong ngành khoa học máy tính ngày nay [4]

1.1.3.1 Virus

Trong khoa học máy tính, virus máy tính là những chương trình hay đoạn mã được thiết kế để tự nhân bản và sao chép chính nó vào các đối tượng lây nhiễm khác như: tập tin, ổ đĩa, máy tính, …

Trước đây virus thường có các hành động phá hoại như chương trình không hoạt động đúng như mong muốn, xóa dữ liệu, làm hỏng ổ cứng,

…Những virus mới được viết trong thời gian gần đây không còn thực hiện các trò đùa hay sự phá hoại đối với máy tính của nạn nhân bị lây nhiễm nữa

mà đa phần hướng đến việc lấy cắp các thông tin cá nhân nhạy cảm (các mã

số thẻ tín dụng, tài khoản, tài liệu mật, …) mở cửa sau cho tin tặc đột nhập chiếm quyền điều khiển hoặc thực hiện các hành động khác theo mục đích của người phát tán virus

Trên 90% số virus đã được phát hiện là nhắm vào hệ thống sử dụng hệ điều hành Windows bởi hệ điều hành này được sử dụng nhiều nhất trên thế giới Ngày nay, ngoài những mẫu virus thông thường thì đã xuất hiện những biến thể virus khác với các kỹ thuật tinh vi hơn cụ thể là virus đa hình (polymorphic) và siêu đa hình (meta-polymorphic)

1.1.3.2 Trojan Horse

Trojan là một chương trình độc lập, không tự nhân bản Nó lây vào hệ thống với biểu hiện ban đầu là lành tính nhưng thực chất bên trong có ẩn chứa các đoạn mã với mục đích gây hại Trojan có thể lựa chọn một trong 3 phương thức để gây hại như sau:

- Tiếp tục thực thi các chức năng của phần mềm mà nó bám vào, bên cạnh đó thực thi các hoạt động gây hại một cách riêng biệt

- Tiếp tục thực thi các chức năng của phần mềm mà nó bám vào, nhưng

Trang 15

sửa đổi một số chức năng để gây tổn hại hoặc che giấu các hành động phá hoại khác

- Thực thi luôn một phần mềm gây hại bằng cách núp dưới danh một phần mềm không có hại

1.1.3.3 Worm

Là một phần mềm có khả năng tự nhân bản và tự lây nhiễm trong hệ thống tuy nhiên nó có khả năng “tự đóng gói”, thường tự thực thi mà không cần sự can thiệp của người dùng Worm có thể chia làm 2 loại sau:

- Network Service Worm: lan truyền bằng cách lợi dụng các lỗ hổng bảo mật trong một dịch vụ mạng để tự lan truyền và lây nhiễm sang các máy chủ khác

- Mass Mailing Worm: là một dạng tấn công qua dịch vụ mail, tuy nhiên nó tự đóng gói để tấn công và lây nhiễm chứ không bám vào vật chủ

là mail Khi sâu này lây nhiễm vào hệ thống, nó thường cố gắng tìm kiếm

số địa chỉ và tự gửi bản thân nó đến các địa chỉ thu nhặt được Việc gửi đồng thời cho toàn bộ các địa chỉ thường gây quá tải cho mạng hoặc cho các máy chủ mail

1.1.3.4 Rootkits

Rootkits là thuật ngữ dùng để chỉ tập hợp các chương trình hay mã lệnh

có khả năng kiểm soá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, rootkits là những mã lệnh hay chương trình có khả năng kiểm soá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ờ hoặc khó có thể phát hiện ra được Tuy nhiên rootkits không thể tự lan truyền hay nhân bản được

1.1.3.5 Spyware

Spyware là phần mềm gián điệp chuyên thu thập thông tin từ các máy chủ qua mạng Internet và không có sự cho phép và nhận biết của máy chủ Spyware thường được cài đặt bí mật kèm theo các phần mềm miễn phí hoặc phần mềm chia sẻ được 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à bí mật chuyển thông tin đến một máy khác Phần mềm gián điệp cũng thu thập tin tức về địa chỉ thư điện

tử, mật khẩu, thông tin thẻ tín dụng, …

Trang 16

1.1.3.6 Ransomware

Là mã độc tống tiền 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 đã bị lây nhiễm, đòi hỏi một khoản tiền cho người đã lan truyền mã độc đó nhằm xóa bỏ hạn chế truy cập mà nó đã tạo ra trước đó Một vài dạng của ransomware mã hóa tệp tin, dữ liệu trên ổ cứng, một vài dạng khác thì đơn giản hơn chúng khóa hệ thống lại và hiển thị một thông báo để đòi hỏi người bị hại trả tiền

1.1.3.7 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, 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.1.3.8 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 ổ cứng khi thực thi, thay vào đó dữ liệu đượ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.1.3.9 Botnet

Bot là chương trình mã độc được cài lên máy tính nạn nhân và các máy tính này sẽ nằm trong một mạng lưới được điều khiển bởi tin tặc gọi là mạng Botnet Botnet cho phép kẻ tấn công truy cập và điều khiển hệ thống máy của nạn nhân Tất cả các máy bị nhiễm cùng một loại Botnet sẽ nhận cùng một lệnh từ một máy chủ điều khiển của kẻ tấn công thông qua các kênh như Internet Relay chat (IRC) hoặc hệ thống mạng ngang hàng Peer-to-Peer (P2P) Khi đã có trong tay một mạng lưới Botnet, các tin tặc điều khiển botnet

có thể sử dụng chúng như một công cụ chiến tranh mạng, tiêu biểu là tấn công

từ chối dịch vụ vào các mục tiêu cụ thể nhằm làm tê liệt hệ thống mạng của một tổ chức hoặc thậm chí là hệ thống mạng của một quốc gia

Trang 17

Hình 1.3 Công cụ của một mạng botnet

1.1.3.10 Web Browser Plug-in

Là phương thức cài mã độc hại thực thi cùng với trình duyệt Web Khi được cài đặt, kiểu mã độc này sẽ theo dõi tất cả hành vi duyệt Web của người dùng sau đó gửi thông tin ra ngoài Một dạng khác là phần mềm gián điệp có chức năng quay số điện thoại tự động, nó sẽ tự động kích hoạt modem và kết nối đến một số điện thoại ngầm định mặc dù không được phép của người dùng

1.1.3.11 Email Generator

Là những phần mềm cho phép tạo ra và gửi đi một số lượng lớn các email Mã độc này có thể reo rắc các email generator vào trong hệ thống Các phần mềm gián điệp, spam, mã độc hại có thể được đính kèm vào các email được sinh ra từ email generator và gửi tới các địa chỉ có trong sổ địa chỉ của máy bị nhiễm

1.1.3.12 Phishing

Là một hình thức tấn công có thể xem là kết hợp với mã độc hại Phishing là phương thức dụ người dùng kết nối và sử dụng một hệ thống máy tính giả mạo nhằm làm cho người dùng tiết lộ những thông tin bí mật về danh tính Kẻ tấn công thường tạo rat rang Web hoặc email có hình thức giống hệt như các trang Web hoặc email mà nạn nhân thường hay sử dụng như trang Web của ngân hàng…Trang Web giả mạo hoặc email này sẽ đề nghị nạn nhân

Trang 18

thay đổi hoặc cung cấp các thông tin bí mật về tài khoản, mật khẩu, thông tin

cá nhân,…Các thông tin này sẽ được sử dụng vào mục đích đánh cắp tiền trong tài khoản hoặc sử dụng vào các mục đích bất hợp pháp khác

1.1.4 Vai trò của việc phân tích mã độc

Vấn đề bảo đảm an ninh, an toàn cho các hệ thống thông tin ngày càng trở nên cấp thiết khi các hệ thống thông tin được kết nối với nhau và kết nối với mạng internet, người dùng ngày càng phải đối mặt với nhiều nguy cơ bị tấn công lấy cắp thông tin hoặc phá hoại hệ thống Trong số các phương thức tấn công thì phần mềm độc hại là một trong các dạng gây nhiều thiệt hại nhất

do khả năng lan truyền nhanh chóng

Phân tích mã độc là một bước quan trọng để ngăn chặn và tiêu diệt hoàn toàn mã độc ra khỏi máy tính và hệ thống mạng; khôi phục lại hiện trạng của mạng như ban đầu; truy tìm nguồn gốc tấn công Ngay cả khi ngày càng

có những phần mềm đảm bảo an ninh máy tính được phát triển thì vẫn cần thiết phải phân tích mã độc vì các phần mềm độc hại được phát triển ngày càng tinh vi và rất khó phát hiện, phần mềm đảm bảo an ninh mạnh nhất và được cập nhật thường xuyên cũng không thể loại bỏ được hết mã độc Phân tích mã độc sẽ phát hiện được phương thức lây lan, giảm thiểu thiệt hại do mã độc gây ra bằng cách đưa các cảnh báo tới cộng đồng, là nguồn thông tin quan trọng để cập nhật mẫu cũng như chức năng cho phần mềm đảm bảo an ninh máy tính

1.2 CÁC KỸ THUẬT VÀ PHƯƠNG PHÁP PHÂN TÍCH MÃ ĐỘC Hầu hết mã độc ở dạng các chương trình, dịch vụ (dạng binary) không thể đọc thông thường Các nghiên cứu liên quan đến phân tích mã độc hiện nay thường tập trung vào các bài toán trên nền tảng máy tính Để phân tích

mã độc thường chúng ta có hai hướng: phân tích sử dụng các hệ thống tự động và phân tích thủ công gồm phân tích hoạt động và phân tích bằng cách đọc mã thực thi của mã độc

Các kỹ thuật phân tích mã độc:

- Phân tích tĩnh (Static analysis)

- Phân tích động (Dynamic analysis)

- Gỡ rối (Debug)

Trang 19

- Điều tra hành vi của mã độc (Malware forensic)

Trong đó hai kỹ thuật chủ yếu là phân tích tĩnh và phân tích động, mỗi phương pháp lại có điểm mạnh và điểm yếu riêng Ngoài các phương pháp phổ biến trên, một số nghiên cứu gần đây cũng tập trung vào phương pháp lai (Hybrid-based) kết hợp các điểm mạnh của hai phương pháp phân tích tĩnh và động giúp việc phân tích hiệu quả hơn

So sánh ưu điểm và nhược điểm của các phương pháp phân tích mã độc:

Static analysis

- Không thực hiện việc chạy

mã độc, giảm thiểu nguy cơ lây lan và phá hủy hệ thống

- Phân tích mã độc dựa trên phân tích các cấu trúc tệp tin, phân tích định dạng file

- Không thực hiện việc chạy mã độc, khó biết được hoạt động của mã độc

- Phân tích và reverse code về dạng assembly, đòi hỏi phải có kinh nghiệm lập trình

Dynamic

analysis

- Giám sát được các hoạt động của mã độc qua việc chạy mã độc

- Giám sát được các tác động của mã độc lên hệ thống

- Xác định được ảnh hưởng của mã độc lên hệ thống

- khi thực hiện chạy mã độc khiến hệ thống đối mặt với những nguy cơ và rủi ro về

an toàn thông tin

- đôi khi rất khó có thể thực thi được phần mềm độc hại

do cần tham số để thực thi

1.2.1 Phương pháp phân tích tĩnh

Đặc điểm của phương pháp phân tích tĩnh là kiểm tra, phân tích mã độc

mà không thực thi mã độc Cơ bản của việc phân tích tĩnh bao gồm các bước kiểm tra các file thực thi mà không cần các hướng dẫn thực tế Qua bước phân tích tĩnh sẽ xác định liệu file đó có phải là mã độc hay không, cung cấp thông tin về chức năng của chúng, đôi khi những thông tin này sẽ cung cấp cho người dùng những dấu hiệu nhận dạng các loại mã độc Những nghiên cứu gần đây thường tập trung vào phân tích chuỗi byte, sử dụng khai phá dữ liệu

và học máy thay vì sử dụng những phương pháp thu thập đặc trưng truyền

Trang 20

thống Phương pháp phân tích mã trung gian (bytecode) dựa trên Entropy cũng được đề xuất để phát hiện các kỹ thuật gây rối, đóng gói, mã hóa những đoạn mã độc nhúng trên các tập tin Những đặc trưng khác trong phân tích tĩnh thường được sử dụng như: tiêu đề tập tin (header), các lời gọi hàm (system-calls) API, PSI (Printable Strings Information), FLF (Function Length Frequency), các thư viện liên kết, …

Hình 1.4 Ví dụ phương pháp phân tích tĩnh trên Android

1.2.2 Phương pháp phân tích động

Phân tích động là bước kiểm tra, phân tích khi mã độc được thực thi Phân tích động thường được thực hiện sau khi cơ bản đã phân tích tĩnh mã độc Phân tích động cho ta biết hai yếu tố cơ bản là giám sát các mã độc khi

nó đang chạy và kiểm tra hệ thống sau khi mã độc thực hiện Khi phân tích tĩnh cái chúng ta nhìn thấy chỉ là chuỗi các dãy số nhị phân hoặc các hàm cấp thấp dẫn tới khó có thể xác định được chính xác hành động của mã độc, còn trong phân tích động cho phép chúng ta quan sát mã độc khi chúng hoạt động thực sự với những tính năng chúng được lập trình, đây là một cách hiệu quả

để xác định tính năng của mã độc

Ví dụ khi ta phân tích một phần mềm đánh cắp tài liệu và lưu qua USB, chúng ta có thể gặp khó khăn khi xác định tính năng này trong bước phân tích tĩnh, nhưng khi phân tích động, qua việc giám sát đọc ghi file của tiến trình chúng ta sẽ xác định ngay được chức năng đánh cắp tài liệu này của mã độc

Trang 21

Mặc dù phân tích động có nhiều điểm mạnh, nhưng chúng ta chỉ nên phân tích động sau khi phân tích tĩnh vì:

- Phân tích động có thể bỏ sót những tính năng chỉ được kích hoạt khi

có những điều kiện đặc biệt

- Phân tích động có thể dẫn tới làm lộ quá trình phát hiện và phân tích

mã độc Mã độc có thể phát hiện được đang bị phân tích sau đó gửi thông tin này về kẻ phát tán mã độc

- Gây nguy cơ mất an toàn cho mạng và hệ thống do chúng ta chưa biết hết được mã độc có những module nào và khả năng của nó đến đâu

Yêu cầu quan trọng nhất trong phân tích động là xây dựng một môi trường an toàn có khả năng kiểm soát và quan sát hành vi của các tập tin khi thực thi và tránh mọi lây nhiễm sang môi trường thực tế Các môi trường an toàn được sử dụng phổ biến trong phát hiện mã độc hiện nay là:

Máy ảo (virtual machine): máy ảo giống như một máy tính bên trong

một máy tính khác và được chạy cách ly với hệ điều hành chủ từ đó tạo ra một môi trường an toàn để thực thi mã độc Các máy ảo đều có chức năng lưu lại trạng thái hoạt động (snapshot) và có thể quan sát, thu thập các hành vi của tập tin thực thi Tuy nhiên, hạn chế của phương pháp sử dụng máy ảo là nhiều loại mã độc có khả năng phát hiện được môi trường thực thi vì thế nhiều mã độc không thể hiện hết hành vi của mình

Sandbox: là công cụ tạo ra môi trường an toàn khi thực thi mã độc mà

không sợ ảnh hưởng tới hệ thống thực Điểm khác biệt giữa Sandbox và Máy

ảo là khả năng kiểm soát chặt chẽ các tài nguyên, cấp quyền hoạt động, các khả năng truy cập mạng, quan sát hệ thống, gỡ lỗi (debug) hay đọc/ghi file từ các thiết bị trong quá trình thực thi cho cả chương trình hoặc từng đoạn mã

1.2.3 Phương pháp phân tích lai

Cả phân tích tĩnh và phân tích động đều có những hạn chế nhất định Vì thế phân tích tĩnh và phân tích động đều có thể bổ trợ lẫn nhau Vì vậy, các nghiên cứu phương pháp lai hiện nay tiếp cận theo hướng phân tích tĩnh trước sau đó tiến hành dò quét động để bổ sung các thông tin nhằm xác định mã độc hoặc sử dụng phân tích động để thực hiện bóc tách mã độc rồi sử dụng phân tích tĩnh

Trang 22

Với sự bùng nổ về số lượng cũng như các mối lo ngại về an ninh an toàn trong các thiết bị IoT nói chung và thiết bị định tuyến nói riêng thì các nhà khoa học cũng đã và đang tập trung nghiên cứu và phát triển các phương pháp phát hiện mã độc thích hợp Các nghiên cứu này được trình bày trong

chương tiếp theo

Trang 23

KẾT LUẬN CHƯƠNG 1

Trong Chương 1, luận văn đã nghiên cứu những kiến thức cơ bản về

mã độc, tổng quan về tình hình mã độc hiện nay tại Việt Nam và trên thế giới Luận văn đã trình bày về một số loại mã độc phổ biến hiện nay và vai trò của việc phân tích mã độc Ngoài ra, tại chương này, những phương pháp để phát hiện mã độc cũng được nêu ra Luận văn cũng đề cập đến các ưu điểm, nhược điểm của từng phương pháp để có cái nhìn tổng quan hơn, từ đó chọn ra được một phương pháp thích hợp nhất

Trong thời đại ngày nay, những nguy cơ về mất an ninh, an toàn thông tin trở nên nguy hiểm, phức tạp, khó lường hơn với sự phát triển của mã độc Trong thời gian gần đây đã xuất hiện nhiều mã độc nguy hiểm mới lây nhiễm trong các thiết bị định tuyến (như mã độc nguy hiểm có tên là VPNFilter do một nhóm hacker phát tán lây lan tới hơn 500.000 thiết bị router của gia đình hoặc các công ty nhỏ trên toàn thế giới) Chính vì vậy, luận văn sẽ trình bày những kiến thức tổng quan về thiết bị định tuyến và các phương pháp để phát hiện mã độc trên những thiết bị này

Trang 24

2 CHƯƠNG 2: TỔNG QUAN VỀ THIẾT BỊ ĐỊNH TUYẾN VÀ

CẤU TRÚC CỦA FIRMWARE

2.1 GIỚI THIỆU VỀ MÔ HÌNH MẠNG OSI

Mô hình mạng OSI hay mô hình 7 tầng OSI (Open Systems

Interconnection Reference Model) là mô hình căn bản về các tiến trình

truyền thông, thiết lập các tiêu chuẩn cấu trúc mạng ở mức độ quốc tế, cũng

là cơ sở chung để các hệ thống khác nhau có thể liên kết và truyền thông

được với nhau

Mô hình OSI tổ chức các giao thức thành 7 tầng, mỗi tầng tập trung

giải quyết một phần của tiến trình truyền thông, chia tiến trình truyền thông

thành nhiều tầng và trong mỗi tầng có thể có nhiều giao thức khác nhau thực

hiện các nhu cầu truyền thông cụ thể

Hình 2.1 OSI, mô hình giao thức truyền thông

Vai trò và chức năng của 7 tầng OSI

Mô hình OSI 7 tầng tiếp nhận nhiệm vụ liên mạng, tiến hành chia thành

các tầng tương ứng được xếp trồng lên nhau Chủ yếu các chức năng của nó

được tồn tại ở tất cả các hệ thống giao tiếp, ngoài tên mô hình 7 tầng, 7 lớp thì

nó còn hay được gọi là Mô hình Tham chiếu OSI hoặc chỉ là Mô hình OSI

Mô hình gồm 7 tầng OSI là một hệ thống mở, nó có khả năng kết nối

thông tin với các hệ thống khác nhau, tương thích với các chuẩn OSI

Trang 25

- Tầng 1-4: là các tầng thực hiện chức năng di chuyển dữ liệu, đây là các tầng cấp thấp

- Tầng 5-7: tầng cấp cao chứa các dữ liệu ứng dụng Cách thức vận hành của hệ thống network nằm trong một quy tắc chung đó là chuyển dữ liệu

đi Mỗi tầng sẽ thực hiện các chức năng chuyên biệt riêng sau đó mới chuyển các dữ liệu đi tới các tầng tiếp theo

Tầng 7: Tầng ứng dụng (Application layer)

Tầng ứng dụng là tầng gần với người sử dụng nhất Nó cung cấp phương tiện cho người dùng truy nhập các thông tin và dữ liệu trên mạng thông qua chương trình ứng dụng Tầng này là giao diện chính để người dùng tương tác với chương trình ứng dụng, và qua đó với mạng

Tầng 6: Tầng trình diễn (Presentation layer)

Tầng trình diễn biến đổi dữ liệu để cung cấp một giao diện tiêu chuẩn cho tầng ứng dụng Nó thực hiện các tác vụ như mã hóa dữ liệu sang dạng

MIME (Giao thức mở rộng thư điện tử Internet đa mục đích - Multipurpose

Internet Mail Extensions), nén dữ liệu, và các thao tác tương tự đối với biểu diễn dữ liệu để trình diễn dữ liệu theo như cách mà chuyên viên phát triển giao thức hoặc dịch vụ cho là thích hợp Ví dụ chuyển đổi tệp văn bản từ mã EBCDIC sang mã ASCII, hoặc tuần tự hóa các đối tượng (object serialization) hoặc các cấu trúc dữ liệu (data structure)

Tầng 5: Tầng phiên (Session layer)

Tầng phiên kiểm soát các (phiên) hội thoại giữa các máy tính Tầng này thiết lập, quản lý và kết thúc các kết nối giữa trình ứng dụng địa phương và trình ứng dụng ở xa Tầng này còn hỗ trợ hoạt động song công (duplex) hoặc bán song công (half-duplex) hoặc đơn công (Single) và thiết lập các qui trình đánh dấu điểm hoàn thành (checkpointing) – giúp việc phục hồi truyền thông nhanh hơn khi có lỗi xảy ra, vì điểm đã hoàn thành đã được đánh dấu – trì hoãn (adjournment), kết thúc (termination) và khởi động lại (restart) Mô hình OSI uỷ nhiệm cho tầng này trách nhiệm “ngắt mạch nhẹ nhàng” (graceful close) các phiên giao dịch (một tính chất của giao thức kiểm soát giao vận TCP) và trách nhiệm kiểm tra và phục hồi phiên, đây là phần thường không được dùng đến trong bộ giao thức TCP/IP

Trang 26

Tầng 4: Tầng giao vận (Transport Layer)

Tầng giao vận cung cấp dịch vụ chuyên dụng chuyển dữ liệu giữa các người dùng tại đầu cuối, nhờ đó các tầng trên không phải quan tâm đến việc cung cấp dịch vụ truyền dữ liệu đáng tin cậy và hiệu quả Tầng giao vận kiểm soát độ tin cậy của một kết nối được cho trước Một số giao thức có định hướng trạng thái và kết nối (state and connection orientated) Có nghĩa là tầng giao vận có thể theo dõi các gói tin và truyền lại các gói bị thất bại Một ví dụ điển hình của giao thức tầng 4 là TCP Tầng này là nơi các thông điệp được chuyển sang thành các gói tin TCP (Transmission Control Protocol) hoặc UDP (User Datagram Protocol) Ở tầng 4 địa chỉ được đánh là address ports, thông qua address ports để phân biệt được ứng dụng trao đổi

Tầng 3: Tầng mạng (Network Layer)

Tầng mạng cung cấp các chức năng và qui trình cho việc truyền các chuỗi dữ liệu có độ dài đa dạng, từ một nguồn tới một đích, thông qua một hoặc nhiều mạng, trong khi vẫn duy trì chất lượng dịch vụ (quality of service) mà tầng giao vận yêu cầu Tầng mạng thực hiện chức năng định tuyến Các thiết bị định tuyến (router) hoạt động tại tầng này — gửi dữ liệu

ra khắp mạng mở rộng, làm cho liên mạng trở nên khả thi (còn có thiết bị chuyển mạch (switch) tầng 3, còn gọi là chuyển mạch IP) Đây là một hệ thống định vị địa chỉ logic (logical addressing scheme) – các giá trị được chọn bởi kỹ sư mạng Hệ thống này có cấu trúc phả hệ Ví dụ điển hình của giao thức tầng 3 là giao thức IP

2.2 THIẾT BỊ ĐỊNH TUYẾN

Thiết bị định tuyến (Router) là thiết bị mạng tầng 3 của mô hình OSI (Network Layer) Router kết nối hai hay nhiều mạng IP với nhau Các máy tính trên mạng phải "nhận thức" được sự tham gia của một router, nhưng đối với các mạng IP thì một trong những quy tắc là mọi máy tính kết nối mạng đều có thể giao tiếp được với router Thiết bị định tuyến (Router) là thiết bị được sử dụng trên mạng để thực thi các hoạt động xử lý truyền tải thông tin trên mạng

Chức năng cơ bản của thiết bị định tuyến:

- Định tuyến (routing): là chức năng đảm bảo gói tin được chuyển

Trang 27

chính xác tới địa chỉ cần đến

- Chuyển mạch các gói tin (packet Switching): là chức năng chuyển mạch số liệu, truyền tải các gói tin theo hướng đã định trên cơ sở các định tuyến được đặt ra

Cấu tạo cơ bản của bộ định tuyến:

Bộ định tuyến (Router) là một thiết bị mạng máy tính được thiết kế đặc biệt để đảm đương được vai trò xử lý truyền tải thông tin trên mạng Nó được thiết kế bao gồm các phần tử không thể thiếu như CPU, bộ nhớ ROM, RAM, các BUS dữ liệu, hệ điều hành

Các phần tử khác tuỳ theo nhu cầu sử dụng có thể có hoặc không bao gồm trong giao tiếp, các module và tính năng đặc biệt của hệ điều hành

Hình 2.2 Cấu tạo bộ định tuyến

- CPU: Điều khiển mọi hoạt động của Router trên cơ sở các hệ thống

chương trình thực thi của hệ điều hành

- ROM: chứa các chương trình tự động kiểm tra và có thể có thành

phần cơ bản nhất sao cho bộ định tuyến có thể thực thi được một số hoạt động tối thiểu ngay cả khi không có hệ điều hành hay hệ điều hành bị hỏng

- RAM: tương tự RAM trong máy tính, mục đích của nó cũng là cấp

phát vùng nhớ để cung cấp cho các quá trình như: lưu trữ các bảng định tuyến, các vùng đệm, tập tin cấu hình khi chạy, các thông số đảm bảo hoạt động của bộ định tuyến

- NVRAM (Non-volatile RAM): là nơi chứa file cấu hình khởi động

(Configure), không bị mất thông tin khi mất nguồn File

Trang 28

Startup-Config được lưu trong này để đảm bảo khi khởi động lại, cấu hình của Router

sẽ được tự động đưa về trạng thái đã lưu giữ trong file Vì vậy, phải thường xuyên lưu giữ file running-config trong RAM thành file startup-config

- Flash: là thiết bị nhớ / lưu trữ có khả năng xoá và ghi được, không

mất dữ liệu khi cắt nguồn Hệ điều hành của bộ định tuyến được chứa ở đây Tuỳ thuộc các bộ định tuyến khác nhau hệ điều hành sẽ được chạy trực tiếp từ Flash hay được bung ra RAM trước khi chạy Tập tin cấu hình cũng có thể được lưu trữ trong Flash

- CFE (Common Firmware Environment): là một giao diện phần

sụn và bộ nạp khởi động được phát triển bởi Broadcom cho các hệ thống trên chip 32 bit và 64 bit Nó được thiết kế để trở thành một bộ công cụ linh hoạt

về khởi tạo CPU và mã bootstrap để sử dụng trên các bộ xử lý nhúng (thường chạy trên các CPU tập lệnh MIPS32/64 được tìm thấy trong Broadcom SoC (System-On-a-Chip)) Nó gần giống với BIOS trên nền tảng PC của IBM Mã nguồn của nó có sẵn trên giấy phép nguồn mở của Broadcom Chức năng chính của nó là khởi tạo CPU, bộ nhớ đệm, bộ điều khiển bộ nhớ và các thiết

bị ngoại vi cần thiết Nó thường kết hợp một số trình điều khiển thiết bị tích hợp cho thiết bị ngoại vi SoC (System-On-a-Chip), nó có một số lựa chọn bảng điều khiển, bao gồm cổng nối tiếp, trình giả lập ROM, JTAG (Joint Test Action Group), v.v Cũng giống như trong môi trường bộ tải khởi động khác, các biến thường được định cấu hình trong bộ lưu trữ liên tục để tạo tùy chọn khởi động tự động

- Interface (Network controller): là giao diện web giúp cho người dùng

có thể giao tiếp và cấu hình các cài đặt tùy ý lên bộ định tuyến

Khi khởi động router sẽ tự đọc ROM để nạp OS trước khi nạp file Startup-Config trong NVRAM

Hệ điều hành (OS): đảm đương hoạt động của bộ định tuyến Hệ điều hành của các bộ định tuyến khác nhau có các chức năng khác nhau Mỗi bộ định tuyến có thể chạy rất nhiều hệ điều hành khác nhau tuỳ thuộc vào nhu cầu sử dụng cụ thể, các chức năng cần thiết phải có của bộ định tuyến và các thành phần phần cứng có trong bộ định tuyến

Các giao tiếp: bộ định tuyến có nhiều giao tiếp trong đó chủ yếu bao gồm:

- Giao tiếp WAN (hay còn gọi cổng serial): đảm bảo cho các kết nối

Trang 29

diện rộng thông qua các phương thức truyền thông khác nhau như leased-line, Frame Relay, X.25, ISDN, ATM, xDSL… Các giao tiếp WAN cho phép bộ định tuyến kết nối theo nhiều các giao diện và tốc độ khác nhau: V.35, X.21, G.703, E1, E3, cáp quang v.v…

- Giao tiếp LAN: đảm bảo cho các kết nối mạng cục bộ, kết nối đến các vùng cung cấp dịch vụ trên mạng Các giao tiếp LAN thông dụng: Ethernet, FastEthernet, GigaEthernet…

- Cổng console: được sử dụng để cấu hình trực tiếp bộ định tuyến Tốc

độ dữ liệu dùng cho cấu hình bằng máy tính qua cổng COM là 9600b/s Giao diện của cổng này là RJ45

- Cổng AUX: được sử dụng để quản lý và cấu hình cho bộ định tuyến thông qua modem dự phòng cho cổng Console Giao diện ra của cổng này cũng là RJ45

Có rất nhiều thành phần cấu tạo nên bộ định tuyến, nhưng trong quá trình khai thác, cài cắm mã độc lên thiết bị định tuyến kẻ tấn công (hacker) thường chỉ tập trung vào khai thác những thành phần hoạt động ở mức thấp khó bị phát hiện bởi phần mềm quét mã độc thông thường Mã độc thường sẽ được cài cắm vào trong FLASH, NVRAM, hay trong các tập tin cấu hình qua giao diện web (web-interface) Các thành phần này thường chứa các tập tin khởi động, cấu hình, , khi bộ định tuyến hoạt động, nơi mà mã độc có thể dễ dàng hoạt động mà không bị phát hiện

Theo các nghiên cứu gần đây cho thấy có rất nhiều nền tảng hệ điều hành sử dụng trong thiết bị định tuyến như: VxWorks, Nucleus, Linux…Với nhiều loại tập tin hệ thống khác nhau như CramFS, SquashFS, JFFS2, RomFS, … Mỗi kiểu tập tin hệ thống lại sử dụng các cách thức nén khác nhau như SquashFS dùng LZMA để tối ưu hóa nén dữ liệu cùng tốc độ hay CramFS dùng zlib…

Tìm kiếm bằng công cụ Shodan.io, thấy rằng hiện đa số các thiết bị mạng sử dụng hệ điều hành nền tảng nhân Kernel Unix Vì vậy, để có thể phân tích, phát hiện hiệu quả mã độc nhúng trên thiết bị mạng thì việc tìm hiểu một số cấu trúc định dạng tập tin hệ thống thường dùng trên firmware thiết bị mạng là rất cần thiết

Trang 30

Hình 2.3 Một ví dụ kết quả tìm kiếm thông tin với công cụ Shodan.io

2.3 CẤU TRÚC CỦA FIRMWARE

Firmware là một thuật ngữ được dùng để chỉ những chương trình máy tính cố định và điều khiển cấp thấp nhiều thiết bị điện tử Đối với các thiết bị đơn giản, firmware là tất cả những gì chúng cần để hoạt động Đối với các thiết bị tiên tiến hơn như máy tính, chúng cần thêm phần mềm software - chẳng hạn, hệ điều hành và ứng dụng phần mềm - để sử dụng

Cấu trúc của firmware rất đa dạng, phụ thuộc vào chức năng và thiết kế của từng nhà sản xuất Firmware có thể được chia thành các kiểu như sau:

- Full-blown (full-OS/kernel + bootloader + libs + apps): đây thường là một Linux hoặc Windows firmware vì chúng chứa một hệ điều hành hoàn chỉnh nhưng tối giản Các ứng dụng có thể chạy trong chế độ người dùng, kernel modules, drivers

- Integrated (apps+OS-as-a-lib): đây là một bản firmware không đầy đủ, các chức năng và hệ điều hành được xây dựng như một thư viện chứ không có đầy đủ các thành phần cần thiết như trong bản Full-blown

- Partial updates (apps hoặc libs hoặc resources hoặc support): Loại firmware này chỉ chứa các tập tin dùng trong việc cập nhật cho bản firmware cần nâng cấp

Hệ điều hành hoàn chỉnh nhưng tối giản trong các firmware loại này thường chứa các tập tin hệ thống như sau:

- Bootloader: là một đoạn mã được thực thi trước khi hệ điều hành bắt đầu chạy và nó cho phép nhà sản xuất thiết bị quyết định những tính năng nào

Ngày đăng: 03/08/2021, 11:26

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w