5.4.2 Правила
При использовании связи HTTP/S необходимо соблюдать следующие правила:
В транзакции HTTP информация, отправленная или полученная, может быть перехвачена или подделана, а сервер, с которым установлено соединение, может оказаться поддельным. Конфиденциальная информация должна отправляться и получаться только через связь HTTPS.
Данные, полученные в связи HTTP, могут быть использованы злоумышленником для эксплуатации уязвимостей приложения. Поэтому необходимо предполагать, что приложение получает данные любого значения и формата, и осторожно обрабатывать полученные данные, чтобы избежать создания новых уязвимостей. Кроме того, не следует слепо доверять данным, полученным от серверов HTTPS. Серверы HTTPS могут быть созданы злоумышленниками, или данные могут быть сгенерированы на других серверах HTTPS. См. раздел «3.2 Осторожная и безопасная обработка входных данных».
SSLException
, например, уведомления пользователя (обязательно)В связи HTTPS, когда сертификат сервера недействителен или связь находится под атакой посредника, SSLException
будет возникать как ошибка проверки. Поэтому необходимо реализовать соответствующую обработку исключений для SSLException
. Уведомление пользователя о неудачной связи, регистрация ошибки и т. д. могут считаться типичными реализациями обработки исключений. В некоторых случаях может не потребоваться специальное уведомление пользователя. Поскольку способ обработки SSLException
зависит от спецификаций и особенностей приложения, необходимо тщательно рассмотреть этот вопрос перед принятием решения.
Как упоминалось выше, когда возникает SSLException
, приложение может подвергаться атаке посредника, поэтому оно не должно пытаться отправлять или получать конфиденциальную информацию через небезопасные протоколы, такие как HTTP.
TrustManager
(обязательно)Достаточно изменить KeyStore
, используемый для проверки сертификата сервера, чтобы установить связь через HTTPS с частными сертификатами, такими как самоподписанные сертификаты. Однако, как объясняется в разделе «5.4.3.3 Опасный код отключения проверки сертификатов», существует множество опасных реализаций TrustManager
в Интернете, таких как примеры кода, используемого для этой цели. Приложения, реализованные путём ссылки на эти примеры кода, могут иметь уязвимости.
Если вам нужно установить связь через HTTPS с частным сертификатом, см. безопасный пример кода в разделе «5.4.1.3 Связь через HTTPS с использованием частного сертификата».
Конечно, пользовательский TrustManager
можно безопасно реализовать, но для этого требуется достаточные знания в области шифрования и безопасной связи, чтобы не выполнять код с уязвимостями. Поэтому это правило является обязательным.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )