Chương 1: tổng quan MSTG-CRYPTO-6 Tất ca các gid trị ngẫu nhiên được tạo Đã thực hiện tốt bằng cách sử dụng bộ tạo số ngẫu nhiên đủ an toàn. MSTG-AUTH-1 Nếu ứng dụng cung cap cho người dùng quyền truy cập vào một dịch vụ từ xa, một số hình thức xác thực, Đã thực hiện tốt chang hạn như xác thực tên người dùng / mật khẩu, sẽ được thực hiện tại điểm cuối từ xa. MSTG-AUTH-2 Nếu quan lý phiên trang thai được sử dụng, điểm cuối từ xa sử dụng mã định danh phiên được tạo ngẫu nhiên Đã thực hiện tốt để xác thực các yêu cầu của khách hàng mà không cần gửi thông tin đăng nhập của người dùng. MSTG-AUTH-3 Xác thực và quản Can cải tiên lý phiên Nếu xác thực dựa trên mã thông báo Lí do: nội dung và hướng dẫn không trạng thái (JWT), máy chủ kiểm thử đã lỗi thời, không đủ cung cấp mã thông báo đã được ký chỉ tiết bằng thuật toán bảo mật.
MSTG-AUTH-4 Điểm cuối từ xa kết thúc phiên hiện Đã thực hiện tốt tại khi người dùng đăng xuất. MSTG-AUTH-5 Áp dụng chính sách mật khẩu và thực Đã thực hiện tốt thi chính sách này tại điểm cuối từ xa. MSTG-AUTH-6 Điêm cuôi từ xa thực hiện cơ chê đê Đã thực hiện tốt ngăn ngừa việc gửi thông tin xác thực quá nhiêu lân. Tran Minh Nhật - B17DCAT139 Đồ án tốt nghiệp MSTG-AUTH-7 Các phiên bị vô hiệu tại điểm cuối từ xa sau một khoảng thời gian không hoạt động được xác định trước và mã thông báo truy cập hết hạn.
MSTG-AUTH-8 Xác thực sinh trắc học, nếu có, không bị ràng buộc bởi sự kiện (tức là sử dụng một API chỉ trả về "true" hoặc "false"). Thay vào đó, nó dựa trên việc mở khóa chuỗi khóa / kho khóa. MSTG-AUTH-9 Xác thực đa yếu tố (2FA) tồn tại ở điểm cuối từ xa và được thực thi một cách chính xác. MSTG-AUTH-10 Các giao dịch nhạy cảm phải yêu cầu xác thực từng bước.
MSTG-AUTH-II Ứng dụng thông báo cho người dùng về tất cả các hoạt động nhạy cảm với tài khoản của họ. Người dùng có thể xem danh sách các thiết bị, xem thông tin theo ngữ cảnh (địa chi IP, vi trí, v.) và chặn các thiết bị cụ thể. MSTG-AUTH-12 Cơ chế ủy quyền nên được xác định và thực thi ở điểm cuối từ xa. MSTG-NETWORK-1 Giao thức kết nối Dit liệu được mã hóa trên mạng bằng TLS.
Kênh bảo mật được sử dụng nhất quán trong toàn bộ ứng dụng. Trần Minh Nhật — B17DCAT139 10 Đồ án tốt nghiệp MSTG-NETWORK-2 Cài đặt TLS phù hợp với các phương pháp hay nhất hiện tại hoặc càng gần càng tốt nếu hệ điều hành di động không hỗ trợ các tiêu chuân được đề xuất. MSTG-NETWORK-3 Ứng dụng xác minh chứng chỉ X.509 của điểm cuối từ xa khi kênh bảo mật được thiết lập. Chỉ các chứng chỉ do CA đáng tin cậy ký mới được chấp nhận.
MSTG-NETWORK-4 Ứng dụng sử dụng kho lưu trữ chứng chỉ của riêng mình hoặc ghim chứng chỉ điểm cuối hoặc khóa công khai và sau đó không thiết lập kết nối với các điểm cuối cung cấp chứng chỉ hoặc khóa khác, ngay cả khi được ký bởi CA đáng tin cậy. MSTG-NETWORK-5 Ung dung không dựa vào một kênh liên lạc không an toàn (email hoặc SMS) cho các hoạt động quan trọng, chăng hạn như đăng ký và khôi phục tài khoản. MSTG-NETWORK-6 Ứng dụng chỉ sử dụng các thư viện kết nối và thư viện bảo mật được cập nhật bản mới nhật. MSTG-PLATFORM- 1 Tương tác nền tảng Ung dung chỉ yêu cầu bộ quyền tối thiểu cần thiết.
Trần Minh Nhật — B17DCAT139 11 Đồ án tốt nghiệp MSTG-PLATFORM-2 Tất ca các đầu vào từ các nguồn bên ngoài và người dùng đều được kiểm tra, và nếu cần thiết sẽ được làm sạch. Điều này bao gồm dữ liệu nhận được qua giao diện người dùng, các cơ chế IPC như intent, URL tùy chỉnh va nguồn mang. MSTG-PLATFORM-3 Ung dụng không cho phép truy cập các chức năng nhạy cảm qua lược đồ URL tùy chỉnh, trừ khi các cơ chế này được bảo vệ đúng cách. MSTG-PLATFORM-4 Ung dung không cho phép truy cập các chức năng nhạy cảm qua cơ chế IPC, trừ khi các cơ chế này được bảo vệ đúng cách.
MSTG-PLATFORM-5 JavaScript bị tắt trong WebViews trừ khi được yêu cầu rõ ràng. MSTG-PLATFORM-6 WebView được định cấu hình dé chi cho phép bộ xử lý giao thức tối thiểu được yêu cầu (lý tưởng là chỉ https được hỗ trợ). Các trình xử lý tiềm ân nguy hiểm, chăng hạn như tệp, số điện thoại va id ứng dụng, đã bị vô hiệu hóa. Trần Minh Nhật — B17DCAT139 12 Đồ án tốt nghiệp Chương 1: tổng quan MSTG-PLATFORM-7 Nên gộp lại Nếu các phương thức gốc của ứng dụng được hiển thị với WebView, Gộp chung vào MSTG- hãy xác minh rằng WebView chỉ hiển PLATFORM-5 thị JavaScript có trong gói ứng dụng.
MSTG-PLATFORM-8 Quá trình giải mã hóa đôi tượng, nêu Đã thực hiện tốt có, được triên khai băng cách sử dụng các API tuân tự hóa an toàn. MSTG-PLATFORM-9 Ung dung tự bao vệ mình khỏi các cuộc tấn công che phủ màn hình. MSTG-PLATFORM-10 Bộ nhớ cache, bộ nhớ và tài nguyên được tải (JavaScript, v.) cua WebView phải được xóa trước khi WebView bị phá hủy. MSTG-PLATFORM-11 Xác minh rang ứng dụng ngăn việc sử dụng bàn phím tùy chỉnh của bên thứ ba bat cứ khi nào dữ liệu nhạy cảm được nhập.
MSTG-CODE-I Ứng dụng được ký và cấp phép bằng Lí do: nội dung và hướng dẫn chứng chỉ hợp lệ, trong đó khóa bí kiểm thử đã lỗi thời, không đủ mật được bảo vệ đúng cách. chỉ tiết Chất lượng MSTG-CODE-2 mã nguồn Ung dung da duoc dung 6 chế độ và câu hình phát hành, với các cài đặt phù hợp với Đã thực hiện tốt bản phát hành bản phát hành (ví dụ: không thể chạy ở chế độ gỡ lỗi). MSTG-CODE-3 Các dữ liệu gỡ lỗi đã bị xóa khỏi các Đã thực hiện tốt tệp nhị phân gốc. Tran Minh Nhật - B17DCAT139 13 Đồ án tốt nghiệp MSTG-CODE-4 Mã gỡ lỗi và mã hỗ trợ nhà phát triển (ví dụ: mã kiểm tra, cửa sau, cài đặt an) đã bị xóa.
Ứng dụng không ghi lại các lỗi dài dòng, hoặc thông báo gỡ lỗi chỉ tiết. MSTG-CODE-5 Tất cả các thành phần của bên thứ ba được ứng dụng di động sử dụng, chăng hạn như thư viện và dịch vụ, đều được xác định và kiểm tra với các lỗ hồng đã biết. MSTG-CODE-6 Ứng dụng phát hiện và xử lý các trường hợp ngoại lệ có thể xảy ra. MSTG-CODE-7 Mặc định từ chối quyền truy cập khi xảy ra lỗi xử lý logic trong quy trình kiểm soát bảo mật.
MSTG-CODE-8 Bộ nhớ được cấp phat, giải phóng va sử dụng một cách an toàn. MSTG-CODE-9 Các tính năng bảo mật miễn phi được kích hoạt. MSTG-RESILIENCE-I Phương pháp bảo Ứng dụng phát hiện và phản hồi sự vệ ứng dụng hiện diện của thiết bị đã được root bằng cách cảnh báo người dùng hoặc từ chối hoạt động. Trần Minh Nhật — B17DCAT139 14 Đồ án tốt nghiệp Chương 1: tổng quan MSTG-RESILIENCE-2 Ứng dung ngăn chặn việc gỡ lỗi va / hoặc phát hiện và phản hồi với trình gỡ lỗi đang được đính kèm.
Tat cả các giao thức gỡ lỗi có sẵn phải được kiểm tra. MSTG-RESILIENCE-3 Ung dụng phát hiện các tệp thực thi và dữ liệu giả mạo MSTG-RESILIENCE-4 Ung dung phát hiện và phản hồi sự hiện diện của các công cụ dịch ngược phô biến được cài đặt trên thiết bị. MSTG-RESILIENCE-5 Ứng dụng phát hiện và phản hồi khi được chạy trong trình giả lập. MSTG-RESILIENCE-6 Ung dung phát hiện và phan hồi với mã nguồn và dữ liệu giả mạo trong không gian bộ nhớ của chính nó.
MSTG-RESILIENCE-7 Ung dung thuc hién nhiều co chế với mỗi loại phòng thủ. Trần Minh Nhật — B17DCAT139 15 Đồ án tốt nghiệp Chương 1: tổng quan MSTG-RESILIENCE-8 Các cơ chế phát hiện kích hoạt các phản hồi thuộc nhiều loại khác nhau, bao gồm cả các phản hồi chậm va phản hồi ngầm. MSTG-RESILIENCE-9 Kỹ thuật làm rối mã nguồn được áp dụng. MSTG-RESILIENCE- 10 Ung dụng triển khai chức năng 'ràng buộc thiết bi’ bằng cách sử dụng mã định danh thiết bị tạo thành từ nhiều thuộc tính đặc trưng duy nhất của thiết bị.
MSTG-RESILIENCE-II Tat cả các tệp và thư viện thực thi thuộc ứng dụng đều được mã hóa ở cấp độ tệp; và mã nguồn cùng với những dữ liệu quan trọng bên trong tệp thực thi được mã hóa hoặc đóng gói. Kỹ thuật phân tích tinh bình thường không làm lộ mã nguồn hoặc dữ liệu quan trọng. MSTG-RESILIENCE- 12 Nên gộp lại Sử dụng kỹ thuật lam roi mã nguôn Gộp với MSTG- đủ an toàn đê bảo vệ mã nguôn trước RESILIENCE-9 các kỹ thuật gỡ rối mã nguồn. MSTG-RESILIENCE-13 Bên cạnh việc đảm bảo đường truyền dữ liệu an toàn, có thể áp dụng thêm phương pháp mã hóa tải trọng để ngăn chặn thêm việc nghe trộm.
Tran Minh Nhật - B17DCAT139 16 Đồ án tốt nghiệp Chương 1: tổng quan Một số đề mục chưa được trình bày tốt trong quy trình kiểm thử do tổ chức OWASP dé xuất có nội dung như sau: - MSTG-STORAGE-9 (được đánh giá khó khăn, không thích hợp khi áp dụng) yêu cầu ứng dụng Android phải che đi nội dung của ứng dụng khi duyệt ở chế độ đa nhiệm dé tránh lộ các dữ liệu nhạy cảm. Tuy nhiên, như đã trình bày ở bảng đánh giá trên, việc này thực tế chỉ cần áp dụng nếu ứng dụng tuân theo tiêu chuẩn PCI [5]. FLAG_SECURE not set FLAG_SECURE set Email Email Email account Email account OMTG-DATAST-008 This application contains sentive datal Username: litsnarf Password: OW***+** Hình 1.1: nội dung MSTG-STORAGE-9 - MSTG-PLATFORM-5 (được đánh giá cần cải tiến) chi đưa ra phương hướng kiểm tra như sử dung các playload kiểm tra lỗ hổng XSS, chứ không đề cập tới payload như nào, trong khi payload kiểm tra lỗ héng XSS trên Webview khác so với trên ứng dụng Web thông thường. Dynamic Analysis Dynamic Analysis depends on operating conditions.
There are several ways to inject JavaScript into an app's WebView: Stored Cross-Site Scripting vulnerabilities in an endpoint; the exploit will be sent to the mobile app's WebView when the user navigates to the vulnerable function. ¢ Attacker takes a man-in-the-middle (MITM) position and tampers with the response by injecting JavaScript. ¢ Malware tampering with local files that are loaded by the WebView. To address these attack vectors, check the following: ® All functions offered by the endpoint should be free of ¢ The HTTPS communication must be implemented according to best practices to avoid MITM attacks.
This means: all communication is encrypted via TLS (see test case “Testing for Unencrypted Sensitive Data on the Network"), the certificate is checked properly (see test case “Testing Endpoint Identify Verification"), and/or the certificate should be pinned (see “Testing Custom Certificate Stores and SSL Pinning").2: nội dung MSTG-PLATFORM-5 Tran Minh Nhật - B17DCAT139 17 Đồ án tốt nghiệp Chương 1: tổng quan Kết quả phân tích và đánh giá quy trình kiểm thử được sử dụng bởi công ty Oversecured như sau: Bảng 1.