IV. NGHIÊN CỨU LỖ HỔNG BẢO MẬT CỦA ANDROID
3. Nghiên cứu Malware, Trojan và cơ chế tạo mã độc trên Android:
3.1. Khái niệm Malware, Trojan:
- Malware - Malicious Sofware có nghĩa là bất kỳ phần mềm máy tính độc hại nào đó được tạo nên với ý định xâm nhập làm hại máy tính, thu thập thông tin, truy
cập dữ liệu nhạy cảm… mà người sử dụng không hề hay biết. Malware bao gồm virus,
worm, trojan horse, adware, spyware, keyloger, backdoor, rootkit…
- Trojan - Trojan Horse gọi là phần mềm gián điệp. Nó là một chương trình phần mềm độc hại mà không cố gắng để tự tái tạo, thay vào đó nó sẽ được cài đặt vào hệ thống của người dùng bằng cách giả vờ là một chương trình phần mềm hợp pháp.
- Hiện nay, malware chỉ xâm nhập vào máy tính và đánh cắp thông tin người
dùng, nó chưa có cơ chế lây lan. Cách thức hoạt động của malware giống như trojan
chứ không như virus phá hủy.
- Đơn giản là malware và trojan giúp tin tặc truy cập vào máy người dùng, điều
khiển từ xa, thu thập thông tin người dùng…
3.2. Cơ chế hoạt động của Malware:
Lấy một ví dụ cụ thể về 1 Malware rất phổ biến trong thời gian vừa qua đó là
Malware DroidDream. Malware này hoạt động qua 2 giai đoạn:
- Giai đoạn 1: DroidDream được nhúng vào trong một ứng dụng (số lượng ứng
dụng chứa Malware này hiện đã nhiều hơn 50 ứng dụng) và sẽ chiếm được quyền root
vào thiết bị của bạn ngay sau khi bạn chạy ứng dụng đó trong lần sử dụng đầu tiên.
- Giai đoạn 2: Tự động cài đặt một ứng dụng thứ 2 với một permission đặc biệt
cho phép quyền uninstall. Một khi các ứng dụng thứ 2 được cài đặt, nó có thể gửi các
thông tin nhạy cảm tới một máy chủ từ xa và âm thầm tải thêm các ứng dụng khác Một khi DroidDream chiếm được quyền root, Malware này sẽ chờ đợi và âm thầm cài đặt một ứng dụng thứ hai, DownloadProviderManager.apk như một ứng dụng hệ thống. Việc cài đặt ứng dụng hệ thống này nhằm ngăn ngừa người dùng xem hoặc gỡ bỏ cài đặt các ứng dụng mà không được phép.
3.3. Cơ chế hoạt động của Trojan:
- Trojan có nhiều loại nhưng phổ biến là 2 loại: Trojan dùng để điều khiển và Trojan dùng để đánh cắp mật khẩu.
- Bước đầu cơ chế hoạt động của cả 2 loại này là giống nhau. Máy tính sẽ bị nhiễm trojan qua tập tin đính kèm của thư điện tử, chương trình trò chơi, chương trình nào đó mà bạn vô tình chạy thử. Nó sẽ tự sao chép vào nơi nào đó trong máy tính. Sau đó nó bắt đầu ghi vào registry của máy các thông số đề nó có thễ tự động khởi chạy khi máy tính khởi động.
- Tiếp theo, đối với trojan điều khiển nó sẽ cho phép tin tặc từ xa nắm quyền điều
khiển máy tính. Còn đối với trojan đánh cắp mật khẩu, nó lưu mật khẩu của người dùng vào 1 file và tự động gửi mail đến tin tặc khi máy tính kết nối mạng.
V. CÀI ĐẶT VÀO THIẾT BỊ ANDROID TROJAN ỨNG DỤNG iCALENDAR VÀ TROJAN ỨNG DỤNG iMATCH
Những tác vụ gây ảnh hưởng cho các ứng dụng khác, hệ điều hành, và người sử dụng thiết bị đều được bảo vệ bởi cơ chế Permission, ví dụ như gửi tin nhắn, truy cập vào thông tin cá nhân,.... Nói cách khác những người lập trình sẽ khai báo Permission cho những nguồn tài nguyên mà ứng dụng sẽ truy cập hay sử dụng. Những Permission này sẽ được thông báo đến người dùng trước khi cài đặt ứng dụng.
1. Các Tools cần thiết để cài đặt:
- Máy ảo Android ADV trên phần mềm Eclipse
- Ứng dụng iCalendar.apk và iMatch.apk
- Tải phần mềm Super Apktool v2.1 tại link:
http://mobilelife.vn/resources/super-apk-tool-v2-0-cong-cu-chinh-sua-apk-bang- giao-dien-cuc-manh.12/
2. Tải về và xem source code của các ứng dụng *.apk:
Bước 1:
- Dùng phần mềm Dex2Jar để chuyển đổi file *.dex thành file *.jar
- Tiếp theo xem source code của ứng dụng*.apk bằng phần mềm Jd-gui
Bước 2: Sau khi tải ứng dụng định dạng *.apk về. Ta giải nén bằng phần mềm
WinRAR. Sau đó copy file classes.dex của ứng dụng vào thư mục chứa phần
mềm Dex2Jar
Bước 3: Mở command trong Window lên.
Di chuyển đến thư mục phần mềm Dex2Jar bằng lệnh cd
Bước 4: Chuyển đổi file bằng lệnh “dex2jar <tên file>”
Bước 5: Dùng Jd-gui mở file classes_dex2jar.jar vừa được tạo để xem source code của ứng dụng
- Lưu ý là chúng ta chỉ có thể xem nhưng không chỉnh sửa được.