Văn bản thô/HTTP văn bản thuần tuý

Danh mục OWASP: MASVS-NETWORK: Giao tiếp qua mạng

Tổng quan

Việc cho phép giao tiếp mạng dạng văn bản thô trong ứng dụng Android có nghĩa là bất kỳ ai giám sát lưu lượng truy cập mạng đều có thể xem và chỉnh sửa dữ liệu đang được truyền. Đây là lỗ hổng bảo mật nếu dữ liệu được truyền bao gồm thông tin nhạy cảm như mật khẩu, số thẻ tín dụng hoặc thông tin cá nhân khác.

Bất kể bạn có gửi thông tin nhạy cảm hay không, việc sử dụng văn bản thô vẫn có thể là một lỗ hổng bảo mật vì lưu lượng truy cập HTTP ở dạng văn bản thô/văn bản thuần tuý cũng có thể bị chỉnh sửa thông qua các cuộc tấn công đầu độc mạng như nhiễm độc ARP hoặc DNS, từ đó có khả năng cho phép kẻ tấn công tác động đến hành vi của một ứng dụng.

Mức độ tác động

Khi một ứng dụng Android gửi hoặc nhận dữ liệu ở dạng văn bản thô qua một mạng, bất kỳ ai đang giám sát mạng đều có thể chặn và đọc dữ liệu đó. Nếu dữ liệu này bao gồm thông tin nhạy cảm như mật khẩu, số thẻ tín dụng hoặc tin nhắn cá nhân, thì điều này có thể dẫn đến hành vi đánh cắp danh tính, gian lận tài chính và các vấn đề nghiêm trọng khác.

Ví dụ: một ứng dụng truyền mật khẩu ở dạng văn bản thô có thể tiết lộ những thông tin xác thực này cho một đối tượng xấu muốn chặn lưu lượng truy cập. Sau đó, dữ liệu này có thể được dùng để truy cập trái phép vào tài khoản của người dùng.

Giải pháp giảm thiểu

Hướng dẫn trong phần này chỉ áp dụng cho những ứng dụng nhắm đến Android 8.1 (API cấp 27) trở xuống. Kể từ Android 9 (API cấp 28), tính năng hỗ trợ văn bản thô sẽ bị tắt theo mặc định.

Hãy sử dụng chức năng NetworkSecurityConfig.xml để chọn không dùng lưu lượng truy cập qua văn bản thô:

XML

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <domain-config cleartextTrafficPermitted="false">
        <domain includeSubdomains="true">secure.example.com</domain>
    </domain-config>
</network-security-config>

Lựa chọn này giúp ngăn chặn tình trạng hồi quy ngẫu nhiên trong ứng dụng do các thay đổi về URL do các nguồn bên ngoài cung cấp, chẳng hạn như máy chủ phụ trợ.

Tài nguyên