Theo dõi các nguồn dữ liệu nhạy cảm trên các thiết bị di động chạy hệ điều hành AndroidTheo dõi các nguồn dữ liệu nhạy cảm trên các thiết bị di động chạy hệ điều hành AndroidTheo dõi các nguồn dữ liệu nhạy cảm trên các thiết bị di động chạy hệ điều hành AndroidTheo dõi các nguồn dữ liệu nhạy cảm trên các thiết bị di động chạy hệ điều hành AndroidTheo dõi các nguồn dữ liệu nhạy cảm trên các thiết bị di động chạy hệ điều hành AndroidTheo dõi các nguồn dữ liệu nhạy cảm trên các thiết bị di động chạy hệ điều hành AndroidTheo dõi các nguồn dữ liệu nhạy cảm trên các thiết bị di động chạy hệ điều hành AndroidTheo dõi các nguồn dữ liệu nhạy cảm trên các thiết bị di động chạy hệ điều hành AndroidTheo dõi các nguồn dữ liệu nhạy cảm trên các thiết bị di động chạy hệ điều hành AndroidTheo dõi các nguồn dữ liệu nhạy cảm trên các thiết bị di động chạy hệ điều hành Android
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN NAM CHUNG THEO DÕI CÁC NGUỒN DỮ LIỆU NHẠY CẢM TRÊN CÁC THIẾT BỊ DI ĐỘNG CHẠY HỆ ĐIỀU HÀNH ANDROID Ngành: Công Nghệ Thông Tin Chuyên ngành: Kỹ Thuật Phần Mềm Mã số: 60480103 TÓM TẮT LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC: TS Nguyễn Đại Thọ Hà Nội – 2017 MỞ ĐẦU Các thiết bị di động có nhiều cảm biến dịch vụ bên không gian riêng tư người dùng Vậy nên chúng có khả giám sát nhiều khía cạnh nhạy cảm sống người sử dụng (ví dụ: vị trí, sức khỏe hay giao thiệp) Người dùng thường giao dịch tốn trực tuyến, nhiều tình họ không đánh giá đầy đủ chất mức độ thông tin khai thắc ứng dụng bên thứ Sự gia tăng nhanh chóng thiết bị di động khiến chúng trở thành thiếu với sống nhiều người Thật vậy, thiết bị cung cấp cho người dùng loạt dịch vụ thiết yếu (ví dụ: định vị, liên lạc kết nối Internet) chức hữu ích (ví dụ: nghe nhạc, nhiếp ảnh, xem truyền hình, mua sắm trực tuyến ) Để đáp ứng dịch vụ này, thiết bị di động đại trang bị nhiều cảm biến, khả thu thập thông tin môi trường xung quanh người dùng vô phong phú Người dùng nhà phát triển chấp nhận công nghệ thu thập thơng tin để đổi lấy nhiều tính công nghệ cao mà chúng mang lại Trên thực tế, nhiều ứng dụng mời chào dịch vụ hồn tồn miễn phí với đánh đổi ẩn dấu việc thu thập liệu mà hầu hết dùng cho việc quảng cáo Có nhiều nghiên cứu ra, người dùng thường hành động mà khơng hiểu mức độ thơng tin họ trích từ thơng tin thu thập Ngay người dùng ý thức việc thu thập liệu, họ khơng thể hồn tồn nhận hàm ý không trực quan việc chia sẻ liệu họ Các nhà nghiên cứu cảm biến thiết bị dùng bí mật để bắt phím bấm, chạm điện thoại để dò tìm vị trí, ghi âm giọng nói hay hoạt động thường ngày người dùng Phần lớn thiết bị chạy hệ điều hành Android iOS Cùng với bùng nổ thị trường hệ điều hành nguồn mở Android trở thành hệ điều hành phổ biến với kho ứng dụng lên đến 2,5 triệu ứng dụng Dữ liệu thu thập được truy xuất nhiều bên thường cho phép rõ ràng người dùng Thế nên việc giám sát luồng liệu ứng dụng trao đổi với bên cần thiết Để đảm bảo tính bảo mật, tồn vẹn khả dụng thông tin mà thiết bị di động truy cập, lưu trữ xử lý thách thức khó khăn Nhưng việc kiểm sốt an ninh chưa theo kịp với rủi ro gây thiết bị di động Các nhà phát triển doanh nghiệp nỗ lực đưa giải pháp an ninh thông tin thiết bị động có số hệ bật phần mềm, phần cứng tích hợp như: Samsung Knox, BlackBerry Balance, AndroidLeaks, SCANDAL, IccTAp, TaintDroid - TaintDroid hệ thống có khả kiểm tra truy cập thông tin nhạy cảm người dùng mức thời gian thực Nó kiểm tra luồng thông tin thiết bị di động chạy hệ điều hành Android hiệu Tuy hạn chế không kiểm tra dạng luồng điều khiển, định hướng mức kiến trúc ban đầu xây dựng TaintDroid chạy thiết bị chạy hệ điều hành Android từ phiên 2.1 trở Nó hỗ trợ kiểm tra dấu vết (taint) thông tin cá nhân nhạy cảm người dùng bị ứng dụng truy cập Mục tiêu hệ thống rò tìm liệu nhạy cảm bị gửi từ ứng dụng khơng tin cậy TaintDroid kiểm tra nhiều loại thơng tin như: vị trí, số điện thoại, máy ảnh, số IMEI, lịch sử trình duyệt Chính ưu điểm nối bật so với hệ thống khác theo dõi truy cập thông tin nhạy cảm mà chọn làm đề tài nghiên cứu cải tiến khuôn khổ luận văn Tuy hệ thống có khả kiểm sốt cảnh báo truy cập trái phép nhóm thơng tin kể trên, cảnh báo chung mức loại thông tin theo taint Việc hỗ trợ người dùng kiểm sốt chung việc truy cập thơng tin nhạy cảm mà chưa biết xác thơng tin bị truy cập gửi trái phép 3 - Hướng cải tiến khuôn khổ luận văn bổ sung cho hệ thống TaintDroid tính cảnh báo người dùng ứng dụng truy cập thơng tin nhạy cảm lịch sử trình duyệt Mục tiêu cải tiến thơng báo cho người dùng có ứng dụng khơng tin cậy truy cập đến tên đăng nhập, mật hay mã số thẻ tín dụng Với nhu cầu thói quen người dùng điện thoại thông minh (Smartphone) nay, việc truy cập Internet thường xuyên với việc sử dụng ứng dụng truy Internet FaceBook, Twitter, Chrome, … để làm việc giải trí Như thấy, với chế hoạt động trình duyệt web ứng dụng hoạt động web có nhiều thơng tin trình duyệt lưu lại trình sử dụng Các thơng tin lưu lại thành liệu lịch sử trình duyệt (browser history), chứa nhiều thơng tin nhạy cảm - Cải tiến hồn thành với kết đạt cụ thể rõ ràng định hướng đề Hệ thống kiểm tra xác taint chứa thơng tin nhạy cảm lịch sử trình duyệt bị ứng dụng không tin cậy truy cập Việc cải tiến không làm ảnh hưởng đến luồng xử lý hiệu hệ thống Cụ thể thông tin tên truy cập, mật hay mã số thẻ tín dụng bị truy cập, hệ thống thông báo riêng so với thông báo sẵn có hình thức thay đổi đèn LED tần suất nhấp nháy Việc cải tiến kiểm chứng môi trường thật, thiết bị sử dụng điện thoại di động Google Nexus Việc xây dựng, cài đặt chạy thử tuân thủ bước nhóm phát triển hệ thống TaintDroid đưa Tồn tài liệu luận văn bố trí với bố cục chương mục tóm tắt sau: Chương - Bảo mật riêng tư thiết bị di động: Chương giới thiệu khái niệm, tầm quan trọng phương pháp nguyên lý bảo mật riêng tư Ngồi giới thiệu chi tiết bảo mật cho trình duyệt web số hệ thống an ninh cho thiết bị di động tiêu biểu 4 Chương - Hệ thống TantDroid: Giới thiệu từ tổng quan đến chi tiết thành phần TaintDroid phân tích đánh giá hiệu hệ thống Chương - Cải tiến theo dõi nguồn liệu nhạy cảm: Chương miêu tả chi tiết việc cải tiến hệ thống TaintDroid, từ giải pháp chi tiết kiểm soát truy cập taint lịch sử trình duyệt web đến giải pháp tổng thể để kiểm soát truy cập loại taint mà hệ thống có Chương - Kết thử nghiệm: Miêu tả chi tiết trình thực nghiệm từ môi trường, thiết bị đến việc chạy ứng dụng thiết bị thật Đưa đánh giá cải tiến theo tiêu chí cụ thể, hướng thảo luận định hướng Kết luận: Chỉ tính ứng dụng hệ thống cải tiến, hạn chế tồn 5 Chương Bảo mật riêng tư thiết bị di động 1.1 Bối cảnh chung Trong xã hội ngày nay, nói đến smartphone nói đến cơng nghệ Các smartphone kết nối nhiều liệu cá nhân sống, không liệu đơn danh bạ mà nhiều loại liệu kiểu vị trí, sở thích mua sắm trực tuyến Chúng có khả tải chạy ứng dụng bên thứ có kết nối với Internet Một ví dụ điển hình ứng dụng hình (Wallpaper) gửi thơng tin số điện thoại tới nhà phát triển Khi ứng dụng chạy thường truy cập thông tin thiết bị không tường minh, cách chúng thực việc Trong nghiên cứu, nhóm tác giả chọn tên Dynamic Taint Analysis, gọi Taint Tracking Ý tưởng đánh dấu thẻ taint thông tin nhạy cảm nguồn sau theo dấu liệu chuyển qua hệ thống Trong ngữ cảnh báo cáo, liệu đánh dấu truyền qua giao diện mạng smartphone biết thơng tin có nhạy cảm hay khơng? Trong q trình nghiên cứu, nhóm tác giả đưa mơ hình sơ lược hướng tiếp cận đa mức kiểm tra hiệu smartphone sau: Hình 1.1 Mơ hình kiểm tra hiệu điện thoại di động 1.2 Khái niệm bảo mật riêng tư Chính sách riêng tư tuyên bố pháp lý xác định chủ quyền thương mại với liệu cá nhân thu thập người sử dụng, bao gồm việc liệu xử lý vào Từ năm 1960, Hội đồng châu Âu nghiên cứu mở rộng Internet tập trung vào ảnh hưởng công nghệ đến quyền người Nghiên cứu sách để bảo vệ liệu cá nhân Nó biết đến với tên gọi tiếng Anh “Privacy Policy” Tên gọi thỏa thuận pháp lý quyền bảo vệ liệu cá nhân cách đầy đủ, thỏa thuận biết tới tên sau: 1.3 Tầm quan trọng bảo mật riêng tư Chính sách bảo mật tài liệu quan trọng ứng dụng web hay di động Nó miêu tả chi tiết quan điểm thủ tục việc thu thập thông tin từ người sử dụng Các phần tài liệu sách bảo mật miêu tả 1.4 Các phương pháp cơng cụ đảm bảo tính riêng tư Chính sách với người dùng ứng dụng đặc biệt quan trọng, tài liệu sách bảo mật phương thức cho việc nhận thu thập thông tin cá nhân ứng dụng cách dùng chúng Dưới phương pháp công cụ điển hình việc đảm bảo tính riêng tư 1.5 Các nguyên lý chung đảm bảo tính tiêng tư Từ thập niên 1980, có nhiều tổ chức hay quốc gia tiến hành xây dựng nguyên lý cho việc đảm bảo tính riêng tư Các nước Mỹ, Canada, Australia, Ấn Độ hay liên minh Châu Âu đưa nguyên lý chung Điển hình tổ chức hợp tác phát triển kinh tế Châu Âu đưa nguyên lý sau cho đầy đủ: 1.6 Bảo mật riêng tư cho trình duyệt web Trình duyệt web ứng dụng phần mềm dùng để nhận, trình bày duyệt nguồn thông tin Internet Một tài nguyên thông tin xác định định danh tài nguyên (URI) trang web, hình ảnh, video hay mẩu liệu Một trình duyệt web định nghĩa ứng dụng phần mềm hay chương trình thiết kế để người dùng truy cập, nhận xem tài liệu tài nguyên khác Internet 8 Chương Hệ thống TaintDroid 2.1 Giới thiệu Android Android tảng di động mã nguồn mở với nhân hệ điều hành Linux, dành cho thiết bị di động smartphone máy tính bảng Hầu hết chức phát triển ứng dụng chạy bên tầng trung gian Các ứng dụng viết ngôn ngữ Java C/C++, chúng dịch thành mã tùy biến định dạng DEX Mỗi ứng dụng thực thi thực thể biên dịch bên máy ảo Dalik miêu tả tổng quát kiến trúc hệ điều hành Android Hình 2.1 Kiến trúc hệ điều hành Android 2.2 Giới thiệu TaintDroid TaintDroid thực hóa việc theo dõi dấu vết bên hệ điều hành Android TaintDroid thực việc theo dõi mức biến hệ thống bên máy ảo biên dịch Đánh dấu vết lưu trữ thẻ taint Khi ứng dụng thực phương thức nguyên gốc, thẻ taint đưa trở lại Cuối thẻ taint gán cho gói tiếp nhận thơng qua binder Hình 2.2 miêu tả kiến trúc TaintDroid thông tin đánh dấu ứng dụng tin cậy với đủ thông tin Giao diện đánh dấu gọi phương thức nguyên gốc thực thi trình biên dịch máy ảo Dalvik Máy ảo Dalvik phân tán thẻ taint tương ứng với quy định luồng liệu ứng dụng tin cậy sử dụng thông tin đánh dấu 2.3 Kiến trúc TaintDroid TaintDroid phiên phát triển hệ điều hành Android 4.3, nên nhìn chung tồn kiến trúc hệ thống tương tự hệ điều hành Android 4.3 Hình 2.2 Kiến Trúc TaintDroid Bên Trong Android 2.4 Các chức - Thông báo liệu nhạy cảm bị gửi đi: TaintDroid liên tục kiểm tra luồng liệu gửi từ ứng dụng Khi liệu nhạy cảm gửi dựa việc ánh xạ với bảng taint ảo định nghĩa sẵn Hệ thống thông báo chi tiết đến người dùng loại liệu bị gửi kèm theo thông tin như: ứng dụng gửi, thời gian, IP gửi liệu đến - Lưu dấu vết liệu để xác thực quyền truy cập: Khi hệ thống phát taint gửi đi, dấu vệt lưu lại xác 10 thực quyệt truy cập thơng tin Việc xác định quyền ứng dụng khai báo từ lúc cài đặt vào hệ điều hành thiết bị 2.5 Nguyên lý hoạt động - Thông tin đánh dấu bên ứng dụng xác định Giao diện taint triệu gọi phương thức nguyên gốc từ giao diện trình biên dịch máy ảo Dalvik, lưu trữ dấu taint bên đồ taint ảo Máy ảo Dalvik đưa thẻ taint tương ứng qua luồng liệu dành cho ứng dụng tin cậy sử dụng thơng tin taint Mọi thực thể trình biên dịch phân tán thẻ taint dạng mơ - Triển khai kiến trúc có số thách thức mức hệ thống, bao gồm 1) Lưu trữ thẻ Taint, 2) Phân tán mã biên dịch taint, 3) Phân tán taint mã nguyên gốc, 4) Phân tán taint IPC, 5) Phân tán taint thiết bị lưu chữ thứ cấp 2.6 Các thành phần 2.6.1 Lưu trữ thẻ Taint - Việc lựa chọn cách lưu trữ thẻ dấu vết ảnh hưởng đến hiệu nhớ hệ thống Các hệ thống kiểm tra dấu vết động thường lưu trữ thẻ mức byte hay word liệu Các thẻ taint thường lưu trữ nhớ bóng khơng liền kề đồ dấu vết - Dalvik có kiểu biến cần cho lưu trữ dấu vết gồm biến nội phương thức, đối phương thức, trường lớp tĩnh, trường thực thể lớp mảng Mỗi biến lưu trữ dạng vector với độ dài 32bit mã hóa nên cho phép tạo 32 taint khác 11 Hình 2.3 Định dạng thay đổi Stack 2.6.2 Phân tán mã biên dịch taint TaintDroid kiểm tra theo luồng nên xác khơng làm ảnh hưởng đến hiệu Nó thực kiểm tra taint mức biến với máy ảo biên dịch Dalvik Các biến cung cấp ngữ nghĩa có giá trị cho việc phân tán taint, trỏ liệu riêng biệt từ biến vô hướng chủ yếu kiểm tra biến kiểu số nguyên, số thư Tuy nhiên có vài trường hợp tham chiếu đối tượng cần theo dõi để đảm bảo việc phân tán taint hoạt động xác 2.6.3 Phân tán taint mã nguyên gốc Mã nguyên gốc không theo dõi TaintDroid Lý tưởng có ngữ nghĩa phân tán biên dịch Do cần tiền điều kiện cho việc kiểm tra taint xác mơi trường Java TaintDroid có tiền điều kiện thơng qua việc đo không tự động, hồ sơ phương thức phụ thuộc vào yêu cầu theo tình 2.6.4 Phân tán taint IPC Các thẻ taint phải phân tán ứng dụng chúng trao đổi liệu Việc theo dõi ảnh hưởng đến hiệu nhớ hệ 12 thống TaintDroid theo dõi taint mức thông điệp Một thẻ taint thông điệp thể bên đánh dấu taint gán cho biến chứa bên thông điệp Chúng ta dùng tính chất mức thơng điệp để tối ưu hiệu lưu trữ lúc IPC Và chọn việc thực mức thông điệp việc phân tán taint mức biến hệ thống mức biến, nhận kiểm sốt việc mở gói biến theo cách khác để biết thơng tin không cần phân tán taint 2.6.5 Phân tán taint thiết bị lưu trữ thứ cấp Các thẻ taint bị lưu liệu vào tệp, thiết kế lưu thẻ taint vào tệp Để làm điều phải mở rộng thuộc tính hỗ trợ hệ thống tệp máy chủ Android định dạng thẻ nhớ theo hệ thống tệp ext2 Như với mảng IPC, lưu trữ thẻ taint tệp dẫn đến vấn đề giới hạn đánh dấu taint cho CSDL thơng tin Cách khác kiểm tra thẻ taint tinh chỉnh để giảm chi phí việc thêm nhớ vấn đề hiệu 2.6.6 Thư viện giao diện taint Tài nguyên taint định nghĩa bên mơi trường ảo hóa phải kết nối thẻ taint với hệ thống kiểm tra Chúng ta trừu tượng tài nguyên taint vào thư viện giao diện taint đơn lẻ Giao diện thực chức năng: 1) thêm đánh dấu taint vào biến; 2) nhận đánh dấu taint từ biến Thư viện cung cấp khả để thêm, bớt thẻ taint chức dùng mã Java không tin cậy để xóa đánh dấu taint 13 Chương Cải tiến theo dõi nguồn liệu nhạy cảm Trước miêu tả chi tiết giải pháp cải tiến theo dõi liệu nhạy cảm, phân tích chi tiết thành phần hệ thống TaintDroid kiểm tra mức luồng liệu, kiểm tra mức luồng điều khiển để tối ưu hóa hiệu TaintDroid kiểm tra liệu nhận ứng dụng hành động khả nghi Tuy nhiên ứng dụng độc hại thực thụ lấy thơng tin người dùng thông qua luồng điều khiển Việc kiểm tra luồng điều khiển yêu cầu việc xử lý tĩnh, có nghĩa xử lý ứng dụng bên thứ khơng có mã nguồn Điểu khiển trực tiếp luồng kiểm tra linh hoạt taint xác định 3.1 Giải pháp cải tiến theo dõi truy cập lịch sử trình duyệt Nhưng với nhu cầu thói quen người dùng thiết bị di động nay, việc truy cập Internet cao, với việc sử dụng ứng dụng truy cập Internet FaceBook, Twitter, Browser, … để làm việc giải trí Như thấy, với chế hoạt động trình duyệt website ứng dụng hoạt động website có nhiều thơng tin trình duyệt lưu lại q trình sử dụng chứa nhiều thơng tin nhạy cảm Vậy cải tiến hệ thống để hỗ trợ việc kiểm sốt truy cập lịch sử trình duyệt, góp phần cho hệ thống hồn thiện việc giám sát ứng dụng truy cập liệu nhạy cảm người dùng Trong khuôn khổ việc nghiên cứu tảng Taintdroid, nghiên cứu kiểm soát truy cập thực trình duyệt Google Chrome trình duyệt ngầm định hệ điều hành Android Như trình bày, việc cải tiến nhằm đưa phân tích chi tiết thơng tin lịch sử trình duyệt để TaintDroid theo dõi thơng báo có truy cập khơng an toàn Nên trước tiên phải thêm 14 logic lớp TaintDroid NotifyService chương trình TaintDroidNotifyController xử lý taint chi tiết bước cần thực giải pháp tiến: Bước 1: Lấy thông tin log hệ thống Bước 2: Tìm kiếm taint lịch sử trình duyệt Bước 3: Xử lý taint Bước 4: Điều chỉnh gửi thông báo 3.1.1 Lấy thông tin log hệ thống Lấy thông tin log hệ thống, để lấy thông tin log hệ thống, cần phải xử lý liệu lớp TaintDroidNotifyService, lớp thực thi dịch vụ Mỗi thực thi dịch vụ, block xử lý liên tục đến dừng dịch vụ Nó hỗ trợ lấy khối hàng đợi hệ thống thông qua giao diện BlockingQueue Các block chuyển đổi sang đối tượng log tương tự khái báo TaintDroid Mỗi khối hàng đợi chứa đầy đủ thông tin như: thời gian, mã số tiến trình, thẻ thơng điệp 3.1.2 Tìm kiếm taint lịch sử trình duyệt Tìm kiếm taint lịch sử trình duyệt log, xử lý khối hàng đợi, hệ thống trích xuất liệu từ thơng điệp để lấy thông tin cần thiết như: địa IP, kiểu Taint, tên tiến trình, liệu Cụ thể việc tìm kiếm định danh taint từ thơng điệp thơng qua việc phân tích thơng điệp theo mẫu Nếu tìm số taint so sánh với bảng ánh xạ định nghĩa sẵn Tại thời điểm trên, tìm taint tương ứng browser history 3.1.3 Xử lý taint Trong luồng xử lý taint hệ thống, tiến hành kiểm tra xử lý taint lịch sử trình duyệt Dựa vào liệu taint, tiến hành kiểm tra xem ứng dụng có danh sách đen truy cập không Nếu không thuộc danh sách đen tiến hành kiểm tra xem có vi phạm truy cập thơng tin định nghĩa Hình 3.3 miêu tả chi tiết luồng xử lý lịch trình duyệt tích hợp luồng xử lý hệ thống 15 3.1.4 Điều chỉnh gửi thông báo Dựa vào kết kiểm tra vi phạm truy cập theo luồng xử lý hình 3.4 trên, vi phạm điểu chỉnh thông báo dựa theo mức độ vi phạm Mỗi thông báo thuộc phần cải tiến đồng thời hiển thị đèn LED theo cường độ tần suất xác định trước theo cải tiến Ngoài hệ thống phát âm riêng biệt theo mức độ truy xuất thông tin nhạy cảm người dùng Các thông báo trước đưa lên giao diện hệ thống điều chỉnh phù hợp với mức độ bảo mật bị truy cập 3.2 Giải pháp cải tiến tổng quát Trên sở cải tiến kiểm sốt truy cập thơng tin nhạy cảm lịch sử trình duyệt trên, tơi xin đề xuất giải pháp cải tiến tổng quát sau Chúng ta xây dựng phân tích sách (Privacy Analyzer), phân tích taint theo luật sách (Privacy rule) đầu vào xác định trả lại kết liệu taint có vi phạm sách can thiệp hay khơng Khi dịch vụ TaintDroid chạy, module đăng ký dịch vụ nhận taint Module sử dụng phân tích sách để kiểm tra vị phạm sách taint Hình 3.4 Luồng Cải Tiến Tổng Quát 16 3.2.1 Phân tích taint Khi dịch vụ TaintDroidNotifyService chạy, module đăng ký dịch vụ nhận taint ứng dụng truy cập gửi theo luồng Module chuẩn bị luật sách, gửi kèm thông tin taint để xử lý Dịch vụ thông báo TaintDroid mở rộng từ dịch vụ Android, nên lắng nghe tất liệu hàng đợi hệ điều hành Dữ liệu hàng đợi định nghĩa theo cấu trúc theo lớp hàng đợi Android Mỗi có khối hàng đợi truyền đi, TaintDroid lấy liệu phương thức take() lớp Queue Như hàng đợi block điều TaintDroid xử lý khóa theo taint định nghĩa để thông báo cho người dùng cần thiết Dưới đoạn mã chương trình minh họa xử lý 3.2.2 Phân tích luật Khi module mở rộng từ dịch vụ TaintDroid, nhận hàng đợi dịch vụ chuẩn bị luật riêng Sau gọi thư viện PrivacyAnalyzer để xử lý kiểm tra vi phạm sách Thơng thường module tao để kiểm tra truy cập thông tin nhạy cảm, nên cung cấp luật tương ứng đến thông tin nhạy cảm Để chuẩn bị thông tin đầu vào trước xử lý, cần phải xác định danh sách luật để kiểm tra Và cấu trúc luật, thực thể tương ứng lớp PrivacyRule 3.2.3 Tạo ghi sách can thiệp Khi việc phân tích luật taint đầu vào hồn thành, phân tích sách chuẩn bị liệu để tạo ghi sách trả lại cho module gọi Bản ghi miêu tả chi tiết tình trạng vi phạm sách từ trạng thái đến đặc tả chi tiết vi phạm Để tạo tra cấu trúc ghi cần tạo lớp có tên PrivacyRecord phải công khai để module khác truy xuất hình ảnh minh họa cấu trúc lớp 17 Chương Kết thử nghiệm 4.1 Kiểm tra cải tiến Sau cài đặt xong ứng dụng TaintDroid Notify điện thoại, ta chọn ứng dụng từ hình chính, chọn nút “Start” để bắt đầu theo dõi số hình ảnh minh hoạt hoạt động kiểm tra cải tiến truy cập lịch sử trình duyệt Hình 4.1: Giao diện chương trình thực thi 18 Hình 4.2: Danh sách thơng báo Hình 4.3 Thơng báo truy cập lịch sử trình duyệt 19 Hình 4.4 Thơng báo truy xuất tên đăng nhập Hình 4.5 Thơng báo truy xuất mã số thẻ tín dụng 20 4.2 Đánh giá cải tiến Hệ thống sau cải tiến (TaintDroid’) hoạt động bình thường khơng có thay đổi mặt kiến trúc luồng xử lý ảnh hướng đến hệ thống cũ Và số tiêu chí đánh giá bật so với hệ điều hành gốc (Android) hệ thống TaintDroid trước cải tiến 4.2.1 MacrobenchMarks Mỗi thực nghiệm tiến hành đo 50 lần quan sát khoảng 95% thời lượng Mỗi trường hợp bỏ qua lần chạy đầu để khơng tính thời gian khởi tạo kết ghi nhận bảng 4.1 Bảng 4.1: Kết MacrobenchMarks (1.000 thông điệp) Android TaintDroid TaintDroid’ Tải ứng dụng 63 ms 65 ms 68 ms Tạo danh bạ 348 ms 367 ms 372 ms Đọc danh bạ 101 ms 119ms 125 ms Gọi điện 96 ms 106 ms 112 ms Chụp ảnh 1718 ms 2216 ms 2247 ms 4.2.2 Java MacrobenchMark Hình 4.6 cho thấy kết thời gian thực thi số microbenchmark Java Một cổng Android CaffeineMark tiêu chuẩn sử dụng CaffeineMark dùng số liệu lưu trữ hữu dùng cho so sánh liên quan 21 Hình 4.6 Microbenmark overhead Java 4.2.3 IPC MacrobenchMark Chỉ số IPC xem xét chi phí điểu chỉnh gói Trong thực nghiệm ứng dụng client-service tạo để thực giao dịch nhanh Dịch vụ cung cấp đối tượng tài khoản (tên đăng nhập, số dư) giao diện setAccount() getAccount(), thực nghiệm đo thời gian client yêu cầu thực giao diện 5.000 lần Bảng 4.2 tóm tắt kết số IPC Bảng 4.2: Kết kiểm tra thông lượng IPC (5.000 thông điệp) Android TaintDroid TaintDroid’ Thời gian (s) 9.24 10.03 10.15 Bộ nhớ (ứng dụng) 21.05 MB 21.76 MB 22.04 MB Bộ nhớ (dịch vụ) 18.52 MB 19.42 MB 20.72 MB 4.3 Định hướng Mối quan ngại an ninh thông tin điện thoại di động gia tăng Các bảo vệ mức hệ điều hành Kylin, Saint Security-by-Contact cung cấp máy bảo mật cải tiến cho Android Windows Mobile Các tiếp cận trống lại việc truy cập đến thông tin nhạy cảm, nhiên thơng tin đưa vào ứng dụng khơng thể thêm điều chỉnh Với hệ thống có 22 hình to hơn, widget đồ họa hỗ trợ người dùng cách truy cập trực quan Các hệ điều hành điểu khiển luồng thông tin phân quyền cải tiến Asbestos HiStar xử lý gán nhãn truy xuất điểu khiển dựa mơ hình lưới Denning cho bảo mật luồng thông tin Flume cung cấp cải tiến tương tự cho trừu tượng hệ điều hành 23 KẾT LUẬN Luận văn cải tiến TaintDroid thành công mục tiêu đặt ra, tính giám sát truy cập thơng tin nhạy cảm lịch trình duyệt hoạt động Sau cải tiến, hệ thống hoạt động với luồng xử lý ban đầu Hiệu hệ thống sau cải tiến trì mức độ cao Các tài nguyên chạy ứng dụng cải tiến tăng không đáng kể không ảnh hưởng nhiều so với hệ thống ban đầu Phần cải tiến đưa giải pháp tổng thể cho việc phân tích sách truy cập taint Tuy cải tiến số hạn chế, mang tính ứng dụng cao hai mặt - Tính ứng dụng: Hiện nay, việc người dùng thường xuyên bị thu thập thơng tin cá nhân nói chung thơng tin lịch sử trình duyệt phổ biến Nhất họ cài đặt ứng dụng không tin cậy từ bên thứ Việc sử dụng trình duyệt để đăng nhập vào website mua sắm trực tuyến cung cấp thông tin đăng nhập hay thẻ tín dụng phổ biến Cái tiến thông báo truy xuất trái phép thông tin từ lịch sử trình duyệt thiết thực Người dùng biết ứng dụng khơng tin cậy truy xuất thơng tin Nó góp phần hỗ trợ người dùng tốt việc kiểm sốt bảo mật thơng tin cá nhân thời đại bùng nổ Internet - Các hạn chế: Lịch sử trình duyệt cải tiến cụ thể áp dụng với thành phần khác Các cải tiến bị giới hạn TaintDroid kiểm tra theo luồng liệu Nó khơng thể kiểm tra mức luồng điều khiển để tối ưu hóa hiệu Việc kiểm tra luồng điều khiển u cầu việc xử lý tĩnh, có nghĩa khơng thể áp dụng để xử lý ứng dụng bên thứ mà khơng có mã nguồn Hơn nữa, với tinh vi nay, ứng dụng độc hại thực thụ có khả mã hóa liệu trước gửi đi, nên việc kiểm tra luồng liệu lọc thông tin thời điểm bị vơ hiệu hóa ... trúc hệ điều hành Android Hình 2.1 Kiến trúc hệ điều hành Android 2.2 Giới thiệu TaintDroid TaintDroid thực hóa việc theo dõi dấu vết bên hệ điều hành Android TaintDroid thực việc theo dõi mức... triển hệ điều hành Android 4.3, nên nhìn chung tồn kiến trúc hệ thống tương tự hệ điều hành Android 4.3 Hình 2.2 Kiến Trúc TaintDroid Bên Trong Android 2.4 Các chức - Thông báo liệu nhạy cảm bị. .. tiến theo dõi nguồn liệu nhạy cảm Trước miêu tả chi tiết giải pháp cải tiến theo dõi liệu nhạy cảm, phân tích chi tiết thành phần hệ thống TaintDroid kiểm tra mức luồng liệu, kiểm tra mức luồng điều