Категория OWASP: MASVS-CODE: Качество кода
Обзор
Реализация HostnameVerifier
отвечает за проверку соответствия имени хоста в сертификате сервера имени хоста сервера, к которому пытается подключиться клиент.
Небезопасная реализация HostnameVerifier в приложении Android — это реализация, которая неправильно проверяет имя хоста сервера, с которым взаимодействует приложение. Это может позволить злоумышленнику выдать себя за законный сервер и заставить приложение отправить злоумышленнику конфиденциальные данные.
Эта уязвимость существует, поскольку класс HostnameVerifier
имеет вызовы функций, которые могут пропускать проверку имени хоста сертификата X.509 и вместо этого проверять только хэш сертификата. Распространенным заблуждением является то, что функция SSLSession#isValid
выполняет операцию, связанную с безопасностью, хотя на самом деле ее целью является только проверка того, действителен ли сеанс и доступен ли он для возобновления или присоединения; ни один из которых не подтверждает безопасность сеанса. Класс HostnameVerifier был заменен классом NetworkSecurityConfig .
Влияние
Небезопасные реализации HostnameVerifier могут привести к появлению уязвимостей, которые можно использовать для выполнения атак MiTM (Man-in-The-Middle) на сетевой трафик из приложения-жертвы. Результатом использования этого небезопасного кода является то, что сетевые данные пользовательского приложения могут быть скомпрометированы сетевыми злоумышленниками (удаленно или локально), если этот код сработает. Воздействие зависит от непреднамеренного раскрытия содержимого сетевого трафика (PII, личная информация, конфиденциальные значения сеанса, учетные данные службы и т. д.).
Смягчения
Используйте файл NetworkSecurityConfig.xml, чтобы обеспечить правильную обработку всех соединений на этапе производства, тестирования, отладки и разработки, а не использовать или реализовывать собственный код проверки сертификата TLS/SSL.
Ресурсы
- Документация по настройке сетевой безопасности
- Эта проверка ищет реализации HostnameVerifier, метод проверки которых всегда возвращает true (таким образом, доверяя любому имени хоста).
- Документация разработчика для класса HostnameVerifier.
- Класс AllowAllHostnameVerifierDetector в Android
Категория OWASP: MASVS-CODE: Качество кода
Обзор
Реализация HostnameVerifier
отвечает за проверку соответствия имени хоста в сертификате сервера имени хоста сервера, к которому пытается подключиться клиент.
Небезопасная реализация HostnameVerifier в приложении Android — это реализация, которая неправильно проверяет имя хоста сервера, с которым взаимодействует приложение. Это может позволить злоумышленнику выдать себя за законный сервер и заставить приложение отправить злоумышленнику конфиденциальные данные.
Эта уязвимость существует, поскольку класс HostnameVerifier
имеет вызовы функций, которые могут пропускать проверку имени хоста сертификата X.509 и вместо этого проверять только хэш сертификата. Распространенным заблуждением является то, что функция SSLSession#isValid
выполняет операцию, связанную с безопасностью, хотя на самом деле ее целью является только проверка того, действителен ли сеанс и доступен ли он для возобновления или присоединения; ни один из которых не подтверждает безопасность сеанса. Класс HostnameVerifier был заменен классом NetworkSecurityConfig .
Влияние
Небезопасные реализации HostnameVerifier могут привести к появлению уязвимостей, которые можно использовать для выполнения атак MiTM (Man-in-The-Middle) на сетевой трафик из приложения-жертвы. Результатом использования этого небезопасного кода является то, что сетевые данные пользовательского приложения могут быть скомпрометированы сетевыми злоумышленниками (удаленно или локально), если этот код сработает. Воздействие зависит от непреднамеренного раскрытия содержимого сетевого трафика (PII, личная информация, конфиденциальные значения сеанса, учетные данные службы и т. д.).
Смягчения
Используйте файл NetworkSecurityConfig.xml, чтобы обеспечить правильную обработку всех соединений на этапе производства, тестирования, отладки и разработки, а не использовать или реализовывать собственный код проверки сертификата TLS/SSL.
Ресурсы
- Документация по настройке сетевой безопасности
- Эта проверка ищет реализации HostnameVerifier, метод проверки которых всегда возвращает true (таким образом, доверяя любому имени хоста).
- Документация разработчика для класса HostnameVerifier.
- Класс AllowAllHostnameVerifierDetector в Android
Категория OWASP: MASVS-CODE: Качество кода
Обзор
Реализация HostnameVerifier
отвечает за проверку соответствия имени хоста в сертификате сервера имени хоста сервера, к которому пытается подключиться клиент.
Небезопасная реализация HostnameVerifier в приложении Android — это реализация, которая неправильно проверяет имя хоста сервера, с которым взаимодействует приложение. Это может позволить злоумышленнику выдать себя за законный сервер и заставить приложение отправить злоумышленнику конфиденциальные данные.
Эта уязвимость существует, поскольку класс HostnameVerifier
имеет вызовы функций, которые могут пропускать проверку имени хоста сертификата X.509 и вместо этого проверять только хэш сертификата. Распространенным заблуждением является то, что функция SSLSession#isValid
выполняет операцию, связанную с безопасностью, хотя на самом деле ее целью является только проверка того, действителен ли сеанс и доступен ли он для возобновления или присоединения; ни один из которых не подтверждает безопасность сеанса. Класс HostnameVerifier был заменен классом NetworkSecurityConfig .
Влияние
Небезопасные реализации HostnameVerifier могут привести к появлению уязвимостей, которые можно использовать для выполнения атак MiTM (Man-in-The-Middle) на сетевой трафик из приложения-жертвы. Результатом использования этого небезопасного кода является то, что сетевые данные пользовательского приложения могут быть скомпрометированы сетевыми злоумышленниками (удаленно или локально), если этот код сработает. Воздействие зависит от непреднамеренного раскрытия содержимого сетевого трафика (PII, личная информация, конфиденциальные значения сеанса, учетные данные службы и т. д.).
Смягчения
Используйте файл NetworkSecurityConfig.xml, чтобы обеспечить правильную обработку всех соединений на этапе производства, тестирования, отладки и разработки, а не использовать или реализовывать собственный код проверки сертификата TLS/SSL.
Ресурсы
- Документация по настройке сетевой безопасности
- Эта проверка ищет реализации HostnameVerifier, метод проверки которых всегда возвращает true (таким образом, доверяя любому имени хоста).
- Документация разработчика для класса HostnameVerifier.
- Класс AllowAllHostnameVerifierDetector в Android
Категория OWASP: MASVS-CODE: Качество кода
Обзор
Реализация HostnameVerifier
отвечает за проверку соответствия имени хоста в сертификате сервера имени хоста сервера, к которому пытается подключиться клиент.
Небезопасная реализация HostnameVerifier в приложении Android — это реализация, которая не проверяет должным образом имя хоста сервера, с которым взаимодействует приложение. Это может позволить злоумышленнику выдать себя за законный сервер и заставить приложение отправить злоумышленнику конфиденциальные данные.
Эта уязвимость существует, поскольку класс HostnameVerifier
имеет вызовы функций, которые могут пропускать проверку имени хоста сертификата X.509 и вместо этого проверять только хэш сертификата. Распространенным заблуждением является то, что функция SSLSession#isValid
выполняет операцию, связанную с безопасностью, хотя на самом деле ее целью является только проверка того, действителен ли сеанс и доступен ли он для возобновления или присоединения; ни один из которых не подтверждает безопасность сеанса. Класс HostnameVerifier был заменен классом NetworkSecurityConfig .
Влияние
Небезопасные реализации HostnameVerifier могут привести к появлению уязвимостей, которые можно использовать для выполнения атак MiTM (Man-in-The-Middle) на сетевой трафик из приложения-жертвы. Результатом использования этого небезопасного кода является то, что сетевые данные пользовательского приложения могут быть скомпрометированы сетевыми злоумышленниками (удаленно или локально), если этот код сработает. Воздействие зависит от непреднамеренного раскрытия содержимого сетевого трафика (PII, личная информация, конфиденциальные значения сеанса, учетные данные службы и т. д.).
Смягчения
Используйте файл NetworkSecurityConfig.xml, чтобы обеспечить правильную обработку всех соединений на этапе производства, тестирования, отладки и разработки, а не использовать или реализовывать собственный код проверки сертификата TLS/SSL.
Ресурсы
- Документация по настройке сетевой безопасности
- Эта проверка ищет реализации HostnameVerifier, метод проверки которых всегда возвращает true (таким образом, доверяя любому имени хоста).
- Документация разработчика для класса HostnameVerifier.
- Класс AllowAllHostnameVerifierDetector в Android