WhiteHat News #ID:0911
VIP Members
-
30/07/2014
-
79
-
711 bài viết
[HITBSecConf2016] Tấn công "SandJacking" cho phép hacker cài đặt các ứng dụng iOS độc hại
AMSTERDAM - Hack In The Box - Một lỗ hổng chưa được vá trên iOS có thể bị khai thác để thay thế các ứng dụng hợp pháp bằng phiên bản giả mạo, cho phép tin tặc truy cập thông tin nhạy cảm mà không bị nghi ngờ.
Việc phát triển mã độc nhắm mục tiêu đến hệ điều hành iOS của Apple không phải dễ dàng. Trước hết, mọi ứng dụng được thiết kế dành cho iOS chạy trong một sandbox có thể ngăn chặn tiến trình khác truy cập vào ứng dụng và dữ liệu liên quan. Bảo vệ sandbox là nhiệm vụ rất quan trọng bởi sandbox có thể lưu trữ tài liệu, cơ sở dữ liệu, thư viện và cookie - tất cả đều có thể phơi bày những thông tin nhạy cảm.
Về phía Apple, hãng ngăn chặn mã độc xâm nhập iPhone và iPad bằng cách yêu cầu tất cả các ứng dụng phát tán thông qua kho ứng dụng chính thức của mình được ký với một chứng nhận mà chỉ có thể lấy được thông qua một quy trình xác thực kỹ lưỡng. Hơn nữa, hành vi của các ứng dụng này cũng được Apple xem xét cẩn thận, và việc cài đặt phải được xác nhận trên thiết bị.
Mặc dù vậy, một loại mã độc vẫn lây nhiễm được một lượng lớn thiết bị trong những năm qua bằng cách lợi dụng các lỗ hổng thiết kế khác nhau. Danh sách bao gồm WireLurker, YiSpecter, XCodeGhost, ZergHelper và AceDeceiver.
Nhà nghiên cứu Chilik Tamir thuyết trình tại Hội thảo Hack In The Box
Lợi dụng các chứng nhận của Apple để cài malware
Chilik Tamir, một nhà nghiên cứu an ninh của Mi3 Security, phát hiện thấy một số phương pháp tấn công mới có thể được sử dụng để cài đặt ứng dụng độc hại trên thiết bị iOS không jailbreak.
Tại hội thảo Black Hat châu Á mới đây, chuyên gia này đã mô phỏng cách thức một tin tặc có thể khai thác một tính năng dành cho nhà phát triển được giới thiệu gần đây của Apple để cài đặt malware trên thiết bị.
Với sự ra đời của Xcode 7, Apple bắt đầu cho phép các nhà phát triển cá nhân tạo ứng dụng iOS với chứng nhận lấy được bằng cách cung cấp Apple ID. Việc tạo một Apple ID rất dễ dàng và thông tin duy nhất người dùng cần cung cấp để đăng ký là một cái tên và một địa chỉ email – mà cả tên và email đều không nhất thiết phải là thật.
Các loại chứng nhận này được cung cấp cho các ứng dụng mà các nhà phát triển không muốn tải lên App Store. Điều này có nghĩa là các ứng dụng đó sẽ không phải qua khâu kiểm duyệt của Apple. Tính năng của các ứng dụng này cũng hạn chế so với các ứng dụng thông thường mà các nhà phát triển phải tuân thủ quy trình xác thực để lấy được chứng nhận. Cụ thể hơn, các ứng dụng này không được phép truy cập Apple Pay, tên miền ứng dụng, trung tâm trò chơi, iCloud, tính năng mua in-app, các sổ tiết kiệm/ví, đồng thời chúng không thể sử dụng các tính năng thông báo.
Tuy nhiên, các ứng dụng được tạo với chứng nhận "vô danh" này vẫn có thể được sử dụng để tiến hành các nhiệm vụ có lợi cho một loại malware nào đó, chẳng hạn như thu thập dữ liệu GPS, truy cập vào sổ địa chỉ và lịch của nạn nhân, trích xuất dữ liệu exif và truy cập HealthKit.
Tấn công Su-A-Cyder
Tại Black Hat châu Á, Tamir phát hành một công cụ proof-of-concept (PoC) có tên "Su-A-Cyder", có thể được sử dụng để nhanh chóng thay thế một ứng dụng hợp pháp trên một thiết bị iOS bằng một phiên bản giả mạo mà nó tạo ra. Chương trình giả mạo đó hoạt động giống hệt như ứng dụng hợp pháp, nhưng có tính năng độc hại cho phép hacker kiểm soát hoàn toàn và truy cập vào ứng dụng.
Do Su-A-Cyder được thiết kế để thay thế ứng dụng hợp pháp bằng một ứng dụng độc hại khi điện thoại mục tiêu được kết nối với một máy tính, công cụ này và phương pháp tấn công mà nó thực hiện phù hợp nhất cho các cuộc tấn công có mục tiêu, khi mà hacker có thể truy cập vật lý vào một thiết bị và biết được mật mã của thiết bị đó.
Tuy nhiên, như Tamir đã chỉ ra, có một số trường hợp mà kiểu tấn công này sẽ có tác dụng. Ví dụ, một cá nhân muốn theo dõi vợ/chồng hoặc con cái mình, nhân viên cửa hàng sửa điện thoại được cho phép truy cập nhiều thiết bị, và ngay cả trong môi trường doanh nghiệp nơi mà các nhân viên không quen với việc giao thiết bị của mình cho bên IT.
Trước khi phát hành iOS 8.3, việc thay thế một ứng dụng hợp pháp trên iPhone bằng một phiên bản giả mạo rất đơn giản, chỉ bằng cách gán bộ nhận diện (ID) tương tự cho ứng dụng độc hại và cài đặt trên thiết bị - ghi đè lên các ứng dụng ban đầu với phiên bản giả. Apple đã nhận ra nguy cơ này và bắt đầu ngăn chặn cài đặt ứng dụng có ID tương tự với ứng dụng đã tồn tại kể từ iOS 8.3.
Tấn công SandJacking
Tamir phát hiện một cách thức mới, đặt tên là "SandJacking", cho phép hacker sử dụng kỹ thuật Su-A-Cyder ngay cả trên phiên bản iOS mới nhất.
Vấn đề ở đây là trong khi Apple đã vá lỗ hổng trong quy trình cài đặt nhằm đảm bảo các ứng dụng hợp pháp không thể bị thay thế, nhưng hãng lại bỏ qua quy trình khôi phục. Điều này cho phép kẻ tấn công có quyền truy cập vào thiết bị tạo ra một bản sao lưu, loại bỏ các ứng dụng hợp pháp, cài đặt các phiên bản độc hại và sau đó khôi phục lại thiết bị từ bản sao lưu. Quy trình khôi phục không loại bỏ các ứng dụng độc hại, cho phép hacker truy cập dữ liệu người dùng liên kết với ứng dụng đó.
Đáng chú ý là các ứng dụng độc hại chỉ cho phép truy cập vào sandbox của ứng dụng mà nó thay thế. Điều này có nghĩa hacker cần tạo ra các phiên bản độc hại cho từng ứng dụng mục tiêu. Tuy nhiên, Tamir tin rằng đây không phải vấn đề vì toàn bộ quy trình có thể tự động hóa.
Tamir mô phỏng cuộc tấn công SandJacking tại Hội thảo Hack In The Box (HITB), Amsterdam vào thứ năm, sử dụng Skype như ứng dụng mục tiêu. Nhà nghiên cứu cho biết trong một cuộc phỏng vấn rằng các cuộc tấn công SandJacking đã được thử nghiệm thành công với rất nhiều ứng dụng phổ biến.
Một khi ứng dụng giả mạo được cài đặt, nạn nhân sẽ không phát hiện ra đấy không phải là bản gốc - họ phải kiểm tra chứng nhận app và thiết lập dự phòng của thiết bị để biết ứng dụng không phải từ nhà phát triển hợp pháp.
Lỗ hổng được phát hiện vào tháng 12/2015 và được báo cáo cho Apple trong tháng 1/2016. Apple đã xác nhận vấn đề này, nhưng vẫn chưa đưa ra bản vá. Sau khi Apple xử lý lỗ hổng này, Tamir sẽ phát hành công cụ SandJacker tự động hóa toàn bộ quy trình đẩy ứng dụng độc hại đến các thiết bị iOS thông qua lỗ hổng SandJacking.
Nguồn: Security Week
Việc phát triển mã độc nhắm mục tiêu đến hệ điều hành iOS của Apple không phải dễ dàng. Trước hết, mọi ứng dụng được thiết kế dành cho iOS chạy trong một sandbox có thể ngăn chặn tiến trình khác truy cập vào ứng dụng và dữ liệu liên quan. Bảo vệ sandbox là nhiệm vụ rất quan trọng bởi sandbox có thể lưu trữ tài liệu, cơ sở dữ liệu, thư viện và cookie - tất cả đều có thể phơi bày những thông tin nhạy cảm.
Về phía Apple, hãng ngăn chặn mã độc xâm nhập iPhone và iPad bằng cách yêu cầu tất cả các ứng dụng phát tán thông qua kho ứng dụng chính thức của mình được ký với một chứng nhận mà chỉ có thể lấy được thông qua một quy trình xác thực kỹ lưỡng. Hơn nữa, hành vi của các ứng dụng này cũng được Apple xem xét cẩn thận, và việc cài đặt phải được xác nhận trên thiết bị.
Mặc dù vậy, một loại mã độc vẫn lây nhiễm được một lượng lớn thiết bị trong những năm qua bằng cách lợi dụng các lỗ hổng thiết kế khác nhau. Danh sách bao gồm WireLurker, YiSpecter, XCodeGhost, ZergHelper và AceDeceiver.
Nhà nghiên cứu Chilik Tamir thuyết trình tại Hội thảo Hack In The Box
Lợi dụng các chứng nhận của Apple để cài malware
Chilik Tamir, một nhà nghiên cứu an ninh của Mi3 Security, phát hiện thấy một số phương pháp tấn công mới có thể được sử dụng để cài đặt ứng dụng độc hại trên thiết bị iOS không jailbreak.
Tại hội thảo Black Hat châu Á mới đây, chuyên gia này đã mô phỏng cách thức một tin tặc có thể khai thác một tính năng dành cho nhà phát triển được giới thiệu gần đây của Apple để cài đặt malware trên thiết bị.
Với sự ra đời của Xcode 7, Apple bắt đầu cho phép các nhà phát triển cá nhân tạo ứng dụng iOS với chứng nhận lấy được bằng cách cung cấp Apple ID. Việc tạo một Apple ID rất dễ dàng và thông tin duy nhất người dùng cần cung cấp để đăng ký là một cái tên và một địa chỉ email – mà cả tên và email đều không nhất thiết phải là thật.
Các loại chứng nhận này được cung cấp cho các ứng dụng mà các nhà phát triển không muốn tải lên App Store. Điều này có nghĩa là các ứng dụng đó sẽ không phải qua khâu kiểm duyệt của Apple. Tính năng của các ứng dụng này cũng hạn chế so với các ứng dụng thông thường mà các nhà phát triển phải tuân thủ quy trình xác thực để lấy được chứng nhận. Cụ thể hơn, các ứng dụng này không được phép truy cập Apple Pay, tên miền ứng dụng, trung tâm trò chơi, iCloud, tính năng mua in-app, các sổ tiết kiệm/ví, đồng thời chúng không thể sử dụng các tính năng thông báo.
Tuy nhiên, các ứng dụng được tạo với chứng nhận "vô danh" này vẫn có thể được sử dụng để tiến hành các nhiệm vụ có lợi cho một loại malware nào đó, chẳng hạn như thu thập dữ liệu GPS, truy cập vào sổ địa chỉ và lịch của nạn nhân, trích xuất dữ liệu exif và truy cập HealthKit.
Tấn công Su-A-Cyder
Tại Black Hat châu Á, Tamir phát hành một công cụ proof-of-concept (PoC) có tên "Su-A-Cyder", có thể được sử dụng để nhanh chóng thay thế một ứng dụng hợp pháp trên một thiết bị iOS bằng một phiên bản giả mạo mà nó tạo ra. Chương trình giả mạo đó hoạt động giống hệt như ứng dụng hợp pháp, nhưng có tính năng độc hại cho phép hacker kiểm soát hoàn toàn và truy cập vào ứng dụng.
Do Su-A-Cyder được thiết kế để thay thế ứng dụng hợp pháp bằng một ứng dụng độc hại khi điện thoại mục tiêu được kết nối với một máy tính, công cụ này và phương pháp tấn công mà nó thực hiện phù hợp nhất cho các cuộc tấn công có mục tiêu, khi mà hacker có thể truy cập vật lý vào một thiết bị và biết được mật mã của thiết bị đó.
Tuy nhiên, như Tamir đã chỉ ra, có một số trường hợp mà kiểu tấn công này sẽ có tác dụng. Ví dụ, một cá nhân muốn theo dõi vợ/chồng hoặc con cái mình, nhân viên cửa hàng sửa điện thoại được cho phép truy cập nhiều thiết bị, và ngay cả trong môi trường doanh nghiệp nơi mà các nhân viên không quen với việc giao thiết bị của mình cho bên IT.
Trước khi phát hành iOS 8.3, việc thay thế một ứng dụng hợp pháp trên iPhone bằng một phiên bản giả mạo rất đơn giản, chỉ bằng cách gán bộ nhận diện (ID) tương tự cho ứng dụng độc hại và cài đặt trên thiết bị - ghi đè lên các ứng dụng ban đầu với phiên bản giả. Apple đã nhận ra nguy cơ này và bắt đầu ngăn chặn cài đặt ứng dụng có ID tương tự với ứng dụng đã tồn tại kể từ iOS 8.3.
Tấn công SandJacking
Tamir phát hiện một cách thức mới, đặt tên là "SandJacking", cho phép hacker sử dụng kỹ thuật Su-A-Cyder ngay cả trên phiên bản iOS mới nhất.
Vấn đề ở đây là trong khi Apple đã vá lỗ hổng trong quy trình cài đặt nhằm đảm bảo các ứng dụng hợp pháp không thể bị thay thế, nhưng hãng lại bỏ qua quy trình khôi phục. Điều này cho phép kẻ tấn công có quyền truy cập vào thiết bị tạo ra một bản sao lưu, loại bỏ các ứng dụng hợp pháp, cài đặt các phiên bản độc hại và sau đó khôi phục lại thiết bị từ bản sao lưu. Quy trình khôi phục không loại bỏ các ứng dụng độc hại, cho phép hacker truy cập dữ liệu người dùng liên kết với ứng dụng đó.
Đáng chú ý là các ứng dụng độc hại chỉ cho phép truy cập vào sandbox của ứng dụng mà nó thay thế. Điều này có nghĩa hacker cần tạo ra các phiên bản độc hại cho từng ứng dụng mục tiêu. Tuy nhiên, Tamir tin rằng đây không phải vấn đề vì toàn bộ quy trình có thể tự động hóa.
Tamir mô phỏng cuộc tấn công SandJacking tại Hội thảo Hack In The Box (HITB), Amsterdam vào thứ năm, sử dụng Skype như ứng dụng mục tiêu. Nhà nghiên cứu cho biết trong một cuộc phỏng vấn rằng các cuộc tấn công SandJacking đã được thử nghiệm thành công với rất nhiều ứng dụng phổ biến.
Một khi ứng dụng giả mạo được cài đặt, nạn nhân sẽ không phát hiện ra đấy không phải là bản gốc - họ phải kiểm tra chứng nhận app và thiết lập dự phòng của thiết bị để biết ứng dụng không phải từ nhà phát triển hợp pháp.
Lỗ hổng được phát hiện vào tháng 12/2015 và được báo cáo cho Apple trong tháng 1/2016. Apple đã xác nhận vấn đề này, nhưng vẫn chưa đưa ra bản vá. Sau khi Apple xử lý lỗ hổng này, Tamir sẽ phát hành công cụ SandJacker tự động hóa toàn bộ quy trình đẩy ứng dụng độc hại đến các thiết bị iOS thông qua lỗ hổng SandJacking.
Nguồn: Security Week
Chỉnh sửa lần cuối bởi người điều hành: