Phần lớn các môi trường phát triển tích hợp Android và công cụ dịch ngược APK tồn tại lỗ hổng bảo mật
Những lập trình viên Android, Java sử dụng các môi trường phát triển tích hợp (IDE) phổ biến như Google Android Studio, IntelliJ hay Eclipse, cũng như những người sử dụng các công cụ dịch ngược tệp APK như APKTool hay Cuckoo-Droid có thể bị đánh cắp dữ liệu, kiểm soát máy tính và thực thi mã độc từ xa. Cách thực hiện tấn công này rất đơn giản, được mô tả như sau: kẻ tấn công chỉ cần thêm một tệp AndroidManifest.xml giả vào gói ứng dụng (package), Sau đó, ngồi chờ dữ liệu bị đánh cắp được chuyển về.
Check Point giải thích rằng, lỗ hổng bảo mật này bắt nguồn từ công cụ APKTool và các nền tảng tương tự. Những công cụ này được dùng cho mục đích phân rã các tệp APK để kiểm tra tính tương thích với nền tảng và kiểm thử ứng dụng. Rất nhiều ứng dụng phổ biến thuộc dạng như trên không chặn được các thực thể XML tham chiếu ngoài (XXE), do đó cho phép kẻ xấu có thể xem toàn bộ nội dung trong máy tính của nạn nhân.
Để thực hiện tấn công này, kẻ tấn công cần tạo ra một tệp AndroidManifest.xml độc hại để khai thác lỗ hổng XXE. Dữ liệu từ máy tính của nạn nhân sẽ tự động chuyển tới cho chúng. Sau khi được tải trong một môi trường phát triển tích hợp có lỗ hổng, tệp XML độc hại sẽ chuyển bất kì tệp nào tới kẻ tấn công. Những tệp bị chuyển không chỉ hạn chế trong phạm vi của môi trường phát triển tích hợp, mà có thể là bất kỳ tệp nào trên máy.
Bên cạnh đó, các nhà nghiên cứu cũng phát hiện ra rằng, kẻ tấn công còn có thể đưa tệp XML độc hại vào các kho lưu trữ (repository) Android bên trong thư viện Android Archive Library (AAR). Sau khi được đọc từ kho lưu trữ, thư viện AAR và tệp XML độc hại bên trong nó sẽ lợi dụng lỗ hổng để đánh cắp bất kì dữ liệu nào.
Các nhà nghiên cứu của Check Point còn phát hiện thêm một lỗ hổng trên công cụ APKTool, cho phép thực thi lệnh bất kỳ trên máy tính bị ảnh hưởng. Những người dùng APKTool cao cấp có thể quen thuộc với đoạn UnknownFiles trong tệp APKTOOL.YML. Đó là một đoạn mã cho phép người dùng thêm mã lệnh từ một vị trí không điển hình và đặt nó vào đúng chỗ cần thiết khi tệp APK được biên dịch. Đó cũng là một cách khai thác lỗ hổng để thực thi mã từ xa. Theo CheckPoint, việc chỉnh sửa đoạn UnknownFiles cho phép chèn một tệp bất kỳ vào hệ thống tệp và sau đó đoạn lệnh có thể được thực thi. Lỗ hổng này ảnh hưởng tới những người vô tình dịch ngược một tệp APK độc hại.
Google, Jetbrains và nhóm phát triển APKTool đều khẳng định rằng họ đã khắc phục lỗ hổng này. Check Point cho biết, các công ty khác cũng đã vá lỗ hổng, nhưng không nói rõ đó là những công ty nào. Vì thế, để tránh bị ảnh hưởng, cách tốt nhất hiện nay là người dùng nên sử dụng những công cụ đã được vá lỗi.
Nguyễn Anh Tuấn
Theo Tech Republic