Inside Cyber Warfare - Chương X: Vũ khí hóa mã độc (Phần cuối)

WhiteHat Team

Administrators
Thành viên BQT
09/04/2020
85
553 bài viết
Inside Cyber Warfare - Chương X: Vũ khí hóa mã độc (Phần cuối)
Sau Phần 3, liệu rằng cuộc tấn công Vũ khí hóa mã độc Phần 4 này sẽ cho chúng ta biết thêm những thông tin quan trọng gì?

Các cuộc tấn công nhắm vào sỹ quan quân đội và quan chức chính phủ​

Những cuộc tấn công nhắm vào các sỹ quan quân đội và quan chức chính phủ luôn mang đến những câu chuyện thời sự nóng hổi. Các hãng truyền thông thường sẽ viết rằng: “các thiết bị đã bị xâm nhập” và “dữ liệu đã bị đánh cắp” nhưng chỉ cung cấp một vài chi tiết theo kiểu các cuộc tấn công được tiến hành như thế nào. Trong phần này, chúng ta sẽ thảo luận về các phương tiện được sử dụng để thực hiện các cuộc tấn công mục tiêu. Cuộc tấn công được mô tả ở đây dựa trên các vụ việc đã xảy ra trên thực tế. Một số chi tiết kỹ thuật đã được thay đổi, nhưng những điểm chính của cuộc tấn công vẫn được giữ nguyên.

Anh-whitehat-vn (7).png

Nghiên cứu là chìa khóa mở ra khả năng tấn công​

Các cuộc tấn công có chủ đích và tinh vi thường bắt đầu từ việc nghiên cứu. Một lượng lớn thời gian, tiền bạc và chất xám của con người được dành cho việc tìm kiếm các lỗ hổng mới trong những phần mềm được sử dụng phổ biến như Microsoft Word, Internet Explorer, Mozilla Firefox và thậm chí cả hệ điều hành phổ biến trên thế giới như Microsoft Windows.

Khi một lỗ hổng mới bị phát hiện, tổ chức tìm ra nó sẽ dành được lợi thế: họ có một thứ vũ khí mà không có cách thức phòng thủ riêng biệt và đội phòng thủ không hề biết rằng việc khai thác lỗ hổng đang diễn ra. Những lỗ hổng này được gọi là “0day” hay zero day”. Đây là những lỗ hổng tốt nhất phục vụ cho việc tấn công mạng.

Các cuộc tấn công này có đòn sát thương cực lớn và nạn nhân hiếm khi biết mình đang bị xâm nhập. Các cuộc tấn công DDoS thu hút nhiều sự chú ý của giới truyền thông vì chúng ồn ào và dễ phát hiện, nhưng các cuộc tấn công 0day mục tiêu với payload tấn công tùy chỉnh thì thường im ắng, hầu như là không thể phát hiện một cách chính xác và là điển hình cho một cuộc tấn công mạnh mẽ nhất hiện có của các đơn vị tấn công mạng. Đó là kiểu tấn công thể hiện khả năng thật sự của một đơn vị.

Trong ví dụ sau đây, tổ chức tấn công đã tìm ra lỗ hổng trong phần mềm xử lý văn bản Microsoft Word. Word được chính phủ Mỹ sử dụng rộng rãi và kẻ tấn công biết điều đó. Cần làm rõ, chi tiết về kỹ thuật khai thác sẽ không được tiết lộ, thay vào đó, phần này sẽ chỉ đưa ra các điểm chính của lỗ hổng.

Trước hết, cần phải hiểu rằng trước Microsoft Office 2007, tất cả các tài liệu Office đều được lưu trữ dưới dạng tệp nhị phân.

Các chương trình như Microsoft Word sử dụng các định dạng tệp nhị phân, có tiếng là bảo mật kém và còn bị ảnh hưởng bởi những lỗ hổng có thể gây hỏng bộ nhớ của hệ thống máy tính khi cố gắng phân tích định dạng này. Nếu kẻ tấn công phá hỏng được bộ nhớ của hệ thống một cách có kiểm soát (qua việc sử dụng shellcode), sau đó chúng có thể chiếm quyền truy cập vào hệ thống mục tiêu.

Việc khai thác, cùng với shellcode của kẻ tấn công, được ẩn sâu bên trong nội dung nhị phân thô của tài liệu Word độc hại. Cấu trúc nhị phân của tài liệu khiến người dùng thông thường không thể biết được liệu nó có chứa mã độc hại hay không. Ví dụ ở hình 10-2 cho thấy một tài liệu được hiển thị bằng Microsoft Word.

h1.png


Hình 10-2: Tài liệu được xem dưới dạng Microsoft Word

Mở một tài liệu Word trong trình biên tập hex sẽ hiển thị nội dung thô của file, khác xa những gì người dùng nhìn thấy trong Microsoft Word. Người dùng bình thường sẽ không thể hiểu hay phát hiện được liệu nội dung độc hại có tồn tại trong cấu trúc nhị phân của bản Word hay không. Chính trong dữ liệu nhị phân thô này, kẻ tấn công sẽ đặt mã khai thác và shellcode của mình. Một phần nội dung dữ liệu nhị phân thô được hiển thị trong hình 10-3. Bạn có thể tìm ra mã khai thác trong dữ liệu nhị phân không?

h2.png


Hình 10-3: Nội dung dữ liệu thô từ một tài liệu Microsoft Word

Các tổ chức tinh vi với khả năng tấn công mạng mạnh mẽ sẽ dự trữ các lỗ hổng 0day này nhằm đảm bảo họ có đủ “hỏa lực” mạng để chiếm lợi thế trong việc tiếp cận các mục tiêu.

Phân phối các cuộc tấn công mục tiêu​

Khi các nhóm tấn công tìm ra và phát triển mã khai thác phù hợp cho một lỗ hổng 0day, chúng sẽ chuyển sang giai đoạn lựa chọn mục tiêu. Nhiều lần, công việc này sẽ dựa trên hai đánh giá cơ bản: giá trị thông tin sẽ thu được từ một mục tiêu cụ thể và độ khó của việc khai thác thành công (gồm cả khả năng bị phát hiện).

Các mã khai thác 0day thường được triển khai nhắm vào nhân viên có đặc quyền về bảo mật hệ thống, trực tiếp chịu trách nhiệm xử lý dữ liệu nhạy cảm hoặc có thể tạo bước đệm vào tổ chức mục tiêu. Điều này khiến các quan chức cấp cao trở thành mục tiêu “béo bở” cho các cuộc tấn công.

Chi phí để phát triển một mã khai thác “tin cậy” cho những phần mềm phổ biến là khá cao và các tổ chức có tay nghề sẽ triển khai mã khai thác 0day chỉ nhằm vào những mục tiêu mà chắc chắn sẽ đem lại lợi nhuận khi đầu tư vào lỗ hổng này. Các tổ chức triển khai mã khai thác 0day sẽ cẩn trọng để tránh bị phát hiện vì một khi lỗ hổng 0day bị phát giác thì nó sẽ nhanh chóng mất đi giá trị nếu các bản vá được cập nhật và các biện pháp đối phó cụ thể được triển khai. Độ tinh vi và tin cậy về mặt kỹ thuật của mã khai thác sẽ ảnh hưởng lớn đến khả năng bị phát hiện.

Khi mã khai thác được đưa vào sử dụng và lựa chọn xong mục tiêu, kẻ tấn công sẽ phát tán mã khai thác đến mục tiêu đó. Một trong những cách thức phát tán phổ biến nhất của các mã khai thác là qua email. Email là huyết mạch của nhiều doanh nghiệp, cho phép trao đổi thông tin một cách hiệu quả và thuận tiện. Hầu như mọi máy chủ email đều chặn các loại file nguy hiểm như các file thực thi (.exe), file batch (.bat) và đoạn script (.vbs) nhưng phần lớn các máy chủ email lại cho phép gửi các tài liệu Word (.doc) hoặc các tài liệu Office khác. Trong trường hợp này, kẻ tấn công sẽ phát tán mã khai thác được ẩn trong các tài liệu Word, cho phép nó “dạo chơi” khắp mạng lưới của tổ chức nạn nhân đến mục tiêu đã định.

Những kẻ tấn công có trình độ sẽ không đơn giản chỉ xác định địa chỉ email của mục tiêu và gửi đi; việc trinh sát mở rộng được thực hiện trước khi quá trình khai thác được tiến hành. Thu thập lịch trình di chuyển kế tiếp, các cộng sự quen biết, quy ước đặt tên cho các tài liệu và các chi tiết khác giúp tạo dựng uy tín và tăng khả năng khai thác thành công. Phần lớn thông tin này được thu thập từ các nguồn công khai như Google hoặc các website công cộng. Hình 10-4 và 10-5 cho thấy một số loại thông tin mà có thể lấy từ các mục tiêu có giá trị cao bằng thu thập thông tin tình báo nguồn mở (OSINT).

h3.png


Hình 10-4: Thông tin nhạy cảm được phát hiện bằng OSINT

h4.png


Hình 10-5: Thông tin liên hệ của các đơn vị quân đội được tìm thấy bằng OSINT

Các nhóm tấn công sử dụng phương pháp OSINT và thu thập thông tin tình báo truyền thống để có được một “bức tranh” toàn cảnh về hoạt động của mục tiêu. Chẳng hạn, nếu kẻ tấn công đã xác định mục tiêu là sỹ quan chỉ huy (CO) của một trong những đơn vị trực thuộc quân đội Hoa Kỳ, tên này sẽ sử dụng thời gian để liệt kê các cộng sự làm việc chặt chẽ với CO đó. Nếu kẻ tấn công đã lấy được một danh sách liên hệ (hình 10-5), hắn có thể liên lạc với nhiều thành viên khác nhau trong danh sách nhân viên của CO, thu thập thông tin tình báo để vẽ ra bức tranh hoạt động quanh CO này. Các mảnh ghép thông tin có thể có giá trị với kẻ tấn công gồm các sự kiện sắp diễn ra, địa chỉ email, tên và biệt hiệu của cộng sự và các thông tin liên lạc khác liên quan đến mục tiêu và cộng sự.

Khi kẻ tấn công thu thập thông tin tình báo về mục tiêu và các cộng sự, hắn có thể xây dựng một kịch bản thuyết phục cho vụ tấn công. Ví dụ, sau khi kẻ tấn công liệt kê các địa chỉ email có mối liên hệ với các cộng sự của CO, hắn có thể giả mạo một email từ một cộng sự liên quan đến sự kiện sắp diễn ra. Ví dụ như email trong hình 10-6.

h5.png

Hình 10-6: Email giả mạo có vẻ từ một nguồn đáng tin cậy

Giả mạo một email đơn giản rất dễ được thực hiện thông qua việc sử dụng các máy chủ SMTP tùy chỉnh. Một số ngôn ngữ lập trình cung cấp các API đơn giản có thể bị lợi dụng để giả mạo email, khiến chúng có vẻ đến từ bất kỳ nguồn nào kẻ tấn công lựa chọn.

Khi email được gửi đi, nó trở thành một thứ vũ khí. Tài liệu Word đính kèm trong email có chứa payload để lây nhiễm cho bất kỳ ai mở nó. Các hệ thống phát hiện xâm nhập dựa trên chữ ký và phần mềm diệt virus sẽ không thể phát hiện cuộc tấn công này; chỉ những kẻ tấn công có kiến thức về cấu trúc của nó và nhiều kinh nghiệm, vì đây chính là một vụ khai thác 0day.

Một khi nạn nhân không nghi ngờ gì mà mở tài liệu Word, họ sẽ bị lây nhiễm một cách âm thầm, từ đó tất cả dữ liệu trên hệ thống của họ cũng sẽ bị xâm phạm. Kẻ tấn công sau đó sẽ cài đặt rootkit trên hệ thống bị lây nhiễm, cho phép truy cập không bị kiểm soát trong tương lai. Các rootkit rất tinh vi và có thể né được kể cả những cơ chế phát hiện thông thái nhất. Khi quy trình phát hiện được cải tiến, cơ chế logic tránh bị phát hiện của rookit cũng thay đổi, tạo ra một trò chơi mèo vờn chuột nguy hiểm, mà cái giá phải trả là dữ liệu của nạn nhân.

Ra lệnh, kiểm soát và trích xuất dữ liệu​

10 năm trước, phát hiện một hệ thống bị lây nhiễm là việc gì đó khá đơn giản. Phần lớn các hệ thống này chỉ là kết nối ngược trở lại với kẻ tấn công đang gửi đi các lệnh được thực thi. Nhiều lần, các kênh giao tiếp chưa mã hóa, được dùng để kiểm soát hệ thống lây nhiễm và việc trích xuất dữ liệu nhạy cảm dễ dàng bị các đội ngũ phát hiện xâm nhập tìm ra. Kết nối ngược trở lại các kênh IRC tại nước ngoài là một dấu hiệu cho thấy hệ thống đã bị xâm nhập và việc giám sát các giao tiếp ở dạng bản rõ từ các hệ thống lây nhiễm thậm chí còn được dùng trong lỗ lực tình báo/phản gián. Hình 10-7 thể hiện một phần nhỏ của các kênh giao tiếp IRC được chụp lại từ mã độc cổ điển.

h6.png


Hình 10-7: Giao tiếp lệnh và điều khiển ở dạng bản rõ của mã độc

Ngày nay, mã độc tinh vi hơn và ẩn náu tốt hơn. Nói chung, mã độc hiện nay ít khi ghi vào đĩa mà chỉ lưu trữ trên bộ nhớ của hệ thống. Điều này khiến cho các nỗ lực điều tra truy vết thực sự khó khăn. Các nhà nghiên cứu đến từ Core Security Technologies và nhà nghiên cứu John Heasman đến từ NGSSoftware Insight Security Research đã chứng minh các ví dụ thực tế về cách bộ nhớ và các rootkit PCI có thể được triển khai nhằm vào các mục tiêu.

Ngoài ra, đã qua rồi cái ngày khi các hệ thống bị xâm nhập sẽ truyền thẳng dữ liệu đánh cắp dưới dạng bản thô ngược trở lại các hệ thống của kẻ tấn công. Ngày nay, mã độc tinh vi sẽ thực hiện các bước tỉ mỉ để che giấu cách giao tiếp và ý định của mình. Các lệnh được mã hóa, giao tiếp qua giao thức HTTP, ra lệnh và kiểm soát tập trung, trích xuất dữ liệu thông qua các phương tiện bí mật mới là chuẩn mực. Ví dụ, dùng các phiên bản nâng cao của phần mềm độc hại Nugache. Các nhà nghiên cứu Dave Dittich từ Đại học Washington và Sven Dietrich từ Viện Công nghệ Stevens đã nghiên cứu về phần mềm độc hại Nugache và cho thấy cách nó sử dụng thuật toán Rijndael độ dài 256 bit để mã hóa cách thức giao tiếp lệnh và điều khiển P2P (ngang hàng). Vì thực hiện các thuật toán mật mã phù hợp, nên ngay cả khi các nhà nghiên cứu có toàn quyền truy cập vào thời gian chạy trong các cấu trúc dữ liệu bộ nhớ, họ vẫn có thể giải mã luồng dữ liệu chỉ theo một chiều.

Tại sao các lỗ hổng 0-day trên máy client có thể tàn phá nặng nề đến vậy?​

Các vụ khai thác máy client nhắm vào phần mềm được cài đặt trên máy nạn nhân. Các trình duyệt web, các plugin của trình duyệt (Java, Flash, Silverlight, …), phần mềm xử lý văn bản, trình đọc file PDF và kể cả hệ điều hành đều được xem là phần mềm của máy client. Còn phần mềm bên phía máy chủ gồm có máy chủ web và máy chủ email.

Khai thác lỗ hổng 0day phía máy client chiếm ưu thế đối với các tổ chức thuê các chiến dịch tấn công. Phát hiện những lỗ hổng trong thành phần máy client phổ biến ảnh hưởng đến hàng triệu người dùng và việc nghiên cứu cần thiết để phát hiện ra chúng có thể được thực hiện một cách bí mật, không có dấu hiệu bên ngoài nào cho thấy là nó được tiến hành. Một khi kẻ tấn công tìm được lỗ hổng trong máy client và tiến hành khai thác, chúng đã có được một thứ vũ khí để sẵn sàng triển khai ngay tức thì.

Việc khai thác máy client mang lại một số lợi thế cho kẻ tấn công. Đầu tiên, một khi việc khai thác được tiến hành, kẻ tấn công thường có sẵn vô số các cơ chế phát tán (qua web, tài liệu Word, file PDF, Flash,…), phần lớn trong số này được cho phép đi qua tường lửa. Ví dụ, hầu như tất cả tường lửa của các doanh nghiệp cho phép người dùng lướt web và nhận email. Điều này cho phép kẻ tấn công khả năng phá vỡ các biện pháp bảo mật vòng ngoài chẳng hạn như tường lửa và mạng riêng ảo (VPN). Như đã đề cập ở các phần trước, công nghệ diệt virus đơn giản là không thể theo kịp các mối đe dọa đã biết, các mã khai thác 0day mà các phần mềm này biết đến lại càng ít hơn.

Vì tin tặc khai thác thành công lỗ hổng ở phía máy client, chúng sẽ không chỉ chiếm được quyền truy cập vào tất cả dữ liệu và thông tin được đặt trên hệ thống bị xâm nhập, mà còn truy cập được vào tất cả các tài nguyên có sẵn trên đó. Ví dụ, nếu hệ thống bị xâm nhập là một phần trong mạng lưới lớn hơn, tin tặc giành quyền truy cập đến mạng lưới lớn hơn đó. Trong trường hợp này, kẻ tấn công sử dụng thiết bị đã bị xâm nhập làm bước đệm cho các cuộc tấn công tiếp theo trong mạng nội bộ. Thông thường, các tài nguyên nội bộ không được bảo vệ tốt như các tài nguyên hiện diện ra ngoài Internet, khiến chúng dễ dàng là mục tiêu cho kẻ tấn công muốn giành quyền truy cập vào các mạng lưới nội bộ.

Phòng ngự trước lỗ hổng 0day​

Đơn giản là không có cách thức phòng thủ cụ thể nào trước các mã khai thác 0day cả. Mỗi cách khai thác 0day là độc nhất vô nhị và chỉ kẻ tấn công mới biết được toàn bộ chi tiết về lỗ hổng. Tuy nhiên, có một số bước mà tổ chức có thể thực hiện để giảm thiểu thiệt hại do 0day gây ra.

Phòng thủ sâu​

Đơn giản là không có gì thay thế được việc phòng thủ theo chiều sâu của các tổ chức.

Hệ thống phòng thủ được phân lớp, bảo vệ dữ liệu nhạy cảm và các hệ thống quan trọng thông qua nhiều cơ chế phòng thủ khác nhau. Điều này buộc tin tặc phải tăng cường nỗ lực thu thập thông tin tình báo cần có để khai thác thành công, vì chúng sẽ phải hiểu mỗi lớp phòng thủ đang bảo vệ thông tin theo mong muốn. Phòng thủ chắc trong chiến lược phòng thủ sâu cũng làm tăng đáng kể độ tinh vi và nỗ lực cần có để khai thác thành công, vì tin tặc cần phải biết cách qua mặt nhiều cơ chế phòng thủ chứ không phải một. Phòng thủ theo chiều sâu không thể đảm bảo an toàn khỏi các nỗ lực khai thác của những tin tặc tinh vi nhưng sẽ làm tăng khả năng để lại dấu vết và phát hiện sớm.

Sử dụng công nghệ như MOICE và ảo hóa​

Các tài liệu Office đang trở thành công cụ tấn công phổ biến. Cho đến khi Microsoft chuyển sang định dạng XML cho các tài liệu này, tệp tin như Microsoft Word (.doc), PowerPoint (.ppt) và Excel (.xls) từng có định dạng nhị phân. Định dạng nhị phân rất khó để phân tích cú pháp và sử dụng, mở ra bề mặt tấn công lớn hơn. Đã có sự gia tăng các vụ khai thác liên quan đến Microsoft Office trong vài năm qua do sự phổ biến của bộ công cụ này trong các tập đoàn lớn và chính phủ. Để chống lại sự gia tăng này, Microsoft đã phát triển Microsoft Office Isolated Conversion Environment (MOICE) để giúp giảm thiểu các nguy cơ an ninh khi mở tài liệu. MOICE chuyển đổi định dạng tệp tin nhị phân Office truyền thống sang định dạng Office Open XML mới, nhằm giảm thiểu mối đe dọa tiềm ẩn được giấu bên trong các nội dung nhị phân của tài liệu Word. Các công nghệ như ảo hóa cho phép thực thi mã trong môi trường được kiểm soát và hạn chế, vì vậy khi các mã khai thác 0day bị phát hiện, việc kiểm tra các đặc tính và chữ ký của mã khai thác có thể được thực hiện một cách an toàn.

Cách ly vật lý giữa các dữ liệu nhạy cảm​

Một biện pháp an ninh vận hành phổ biến trong mạng lưới của chính phủ và quân đội là tách biệt về mặt vật lý các mạng lưới theo sự phân loại của dữ liệu. Các thông tin chưa phân loại sẽ được cách ly vật lý khỏi các dữ liệu được đánh dấu là BÍ MẬT và từ đó lần lượt tách khỏi dữ liệu được đánh giá là TUYỆT MẬT. Sự cách ly về mặt vật lý các dữ liệu cho thấy một trong những phương thức hiệu quả nhằm giảm thiểu bề mặt tấn công với dữ liệu cực kỳ nhạy cảm. Cách ly về mặt vật lý của các mạng lưới cũng kèm theo những chi phí vận hành đáng kể. Công sức nhân sự để phân loại dữ liệu có thể cao, đặc biệt trong những tình huống chú trọng về thời gian. Ngoài ra, dù việc cách ly mạng lưới dữ liệu cho phép đặt các biện pháp kiểm soát dữ liệu chặt chẽ hơn trên mạng lưới chứa thông tin bị hạn chế nhưng cũng đòi hỏi các tài nguyên đi kèm.

Tài nguyên là hữu hạn trong mọi tổ chức, đồng nghĩa với việc xây dựng một hệ thống phòng thủ mạnh mẽ cho các mạng lưới bí mật sẽ thường phải đánh đổi bằng chi phí phòng thủ trên mạng lưới chưa được phân loại. Thông thường, quyết định phân bổ nguồn lực cho mạng lưới phân loại tương phản với chưa phân loại là không rõ ràng, nhưng trong thời đại của OSINT và phương tiện truyền thông xã hội phổ biến hiện nay, một tập hợp đầy đủ về những phần chưa phân loại có thể cung cấp cho đối thủ một bức tranh rõ ràng về các hoạt động đã được phân loại.

Nguồn: Inside Cyber Warfare
Tác giả: Jeffrey Carr
 
Chỉnh sửa lần cuối:
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Thẻ
inside cyber warfare vũ khí hóa mã độc
Bên trên