Kỹ thuật chèn mã vào tiến trình trên Windows mới cho phép tạo mã độc ẩn mình

09:46 | 26/11/2019

Các nhà nghiên cứu tại Công ty An toàn mạng SafeBreach (có trụ sở tại Mỹ và Israel) đã công bố danh sách các kỹ thuật chèn mã vào tiến trình trên Windows phổ biến nhất hiện nay. Không những thế, các chuyên gia còn phát hiện ra một phương pháp mới giúp mã độc ẩn mình và vượt qua mọi biện pháp bảo vệ mà Microsoft triển khai.

Một phần mềm độc hại có thể sử dụng các kỹ thuật chèn mã để đưa mã độc được thiết kế cho một hoạt động cụ thể nào đó vào một tiến trình hợp lệ, từ đó giúp nó thực hiện được mục tiêu. Nhờ lợi dụng tiến trình này, mã độc có thể tàng hình và vượt qua các cơ chế bảo mật.

Itzik Kotler – Đồng sáng lập, Giám đốc Công nghệ của SafeBreach và Amit Klein – Phó Chủ tịch nghiên cứu bảo mật của công ty đã tóm tắt và kiểm thử hơn 20 kỹ thuật chèn mã phổ biến hiện nay. Nghiên cứu này đánh giá các kỹ thuật có ổn định hay không, điều kiện tiên quyết và hạn chế của chúng là gì và chỉ định các API chính mà chúng sử dụng. Trong khi một số phương pháp chèn code chỉ là lý thuyết, thì số khác đã bị phần mềm độc hại khai thác trong thực tế. Các nhà nghiên cứu đã thực hiện tất cả các kỹ thuật này trên máy Windows 10x64 dựa trên các tiến trình 64 bit.

Đáng chú ý, Windows 10 có một số tính năng được thiết kế để bảo vệ chống lại kỹ thuật chèn mã vào tiến trình, bao gồm bảo vệ kiểm soát dòng chảy (Control Flow Guard), đảm bảo an toàn mã động (Dynamic Code Security), chính sách chữ ký nhị phân (Binary Signature) và chính sách vô hiệu hóa các điểm mở rộng (Extension Point Disable).

Trong một phỏng vấn về bài thuyết trình tại Hội nghị an ninh mạng Black Hat (Mỹ), 2 nhà nghiên cứu đã cho biết, chỉ có 02 trong số các kỹ thuật được thử nghiệm là thất bại hoàn toàn trước biện pháp bảo vệ của Windows 10. 04 kỹ thuật đã thành công ở bất kể mức độ bảo vệ nào. Các phương pháp chèn mã còn lại tùy thuộc vào mức độ bảo vệ trên Windows 10.

Theo các nhà nghiên cứu, các kỹ thuật chèn mã có khả năng vượt qua các cơ chế bảo vệ trên Windows thường khá mạnh và dễ phát hiện hơn. Tuy nhiên, kỹ thuật mới mà họ đã tìm thấy với tên gọi StackBomber được cho là ẩn mình tốt hơn và khó phát hiện hơn, đồng thời không cần leo thang đặc quyền để thực hiện.

StackBomber được mô tả là một kỹ thuật thực thi mã mới, hoạt động tốt khi được kết hợp với một kỹ thuật viết bộ nhớ mới cũng được tìm ra bởi 2 nhà nghiên cứu này.

Microsoft không cho rằng kỹ thuật chèn mã vào tiến trình là lỗ hổng bảo mật, do đó các nhà nghiên cứu của SafeBreach sẽ không nhận được tiền thưởng sau khi báo cáo phát hiện của mình. Tuy nhiên, Microsoft đưa ra cam kết về vấn đề bảo mật và sẽ có hành động phù hợp cần thiết để bảo vệ khách hàng.

SafeBreach đã cung cấp tất cả các bằng chứng khái niệm (PoC) đã sử dụng trong quá trình nghiên cứu của mình và phát hành một chương trình mã nguồn mở có tên PINJECTRA, cho phép người dùng có thể tự thực hiện chèn mã vào tiến trình.

Công ty cũng nhận thức được rằng, những phát hiện của họ có thể bị lạm dụng bởi tin tặc, nhưng mục tiêu của họ là giúp cộng đồng và đặc biệt là các công ty chuyên trách về đảm bảo an toàn cho khách hàng đưa ra các biện pháp phòng thủ, bảo mật vào sản phẩm của họ.