Если я использую функцию PHP fopen()
для извлечения данных с веб-сайта HTTPS, это то, что можно назвать безопасным соединением HTTPS. т.е. обеспечивает ли он защиту от атак типа «человек в середине» и «подслушивание»?Предоставляет ли PHP fopen() защиту от типичных атак при доступе к ресурсам https?
ответ
Не по умолчанию, нет.
Он всегда будет обеспечивать защиту от простых подслушивающих атак, поскольку данные всегда будут зашифрованы (до тех пор, пока сервер SSL, к которому вы подключаетесь, позволяет использовать хотя бы один зашифрованный шифр - да, шифры с нулевым шифрованием разрешены в соединениях HTTPS: roll-eyes :) Однако по умолчанию он не будет защищать от man-in-the-middle, поскольку он не проверяет сертификаты сервера, поэтому вы не можете быть уверены, что вы подключились к предназначенный сервер.
Подтверждение сертификата может быть включено. Для этого вам необходимо предоставить пакет корневого сертификата и использовать четвертый аргумент fopen
, который позволяет указать контекст потока. Контекст потока позволяет вам изменять поведение потока. В приведенном ниже примере переключатели заставляют сертификаты проверяться на соответствие корневым сертификатам в указанном файле пакета.
$context = stream_context_create(array(
'ssl' => array(
'cafile' => 'ca_bundle.crt',
'verify_peer' => true
)
));
$file = fopen($url, 'r', false, $context);
- 1. Предоставляет ли LINQ ExecuteCommand защиту от атак SQL-инъекций?
- 2. Предоставляет ли Realm for React Native защиту от инъекционных атак?
- 3. Поддерживает ли Spring JDBC любую защиту от атак SQL-инъекций?
- 4. Предоставляет ли SSL защиту от точки к точке?
- 5. unsafePerformIO при доступе к зависимым ресурсам C
- 6. NullPointerException при доступе к ресурсам связки OSGi
- 7. Предоставляет ли GAE количественную защиту от злоупотреблений по умолчанию?
- 8. Как может $ _SERVER ['HTTPS'] быть пустым при доступе к HTTPS?
- 9. Как реализовать функцию, например, защиту от атак в моем приложении
- 10. Предоставляет ли мьютекс защиту переменных во всем мире?
- 11. PHP fopen возвращает 403 Запрещено с HTTPS
- 12. Apache Wink подключиться к ресурсам https
- 13. Jsonexception при доступе к данным от 000webhost
- 14. Блокировка доступа к ресурсам PHP
- 15. GWTP Защита от атак XSRF
- 16. Временная функция PHP fopen?
- 17. Поддерживает ли JSF1.2 защиту CSRF?
- 18. Защищает ли HTTPS от сеанса?
- 19. Предоставляет ли google защиту ddos для вычисления vms?
- 20. Защита данных PHP от различных атак
- 21. Пути к ресурсам в PHP
- 22. Предоставляет ли HTTPS поддержку маршрутизатора Cloudfoundry?
- 23. «Смешанный контент» Ошибка при доступе к HTTP в HTTPS-странице
- 24. Ошибка при доступе к веб-службе php
- 25. Предоставляет ли PHP FILTER_VALIDATE_EMAIL достаточную безопасность?
- 26. Избавьтесь от типичных стилей Windows?
- 27. ERR_ADDRESS_UNREACHABLE при доступе к моему сайту без https
- 28. Имеет ли phpMyAdmin встроенную защиту
- 29. Неопределенный индекс при доступе к индексу массива
- 30. PHP - проблема при доступе к другой переменной
Еще одна вещь, которую вы можете захотеть, - ограничить допустимый набор шифров только разрешенными сильными формами шифрования. Самый сильный доступный шифр (разрешенный как клиентом, так и сервером) должен использоваться по умолчанию; однако, если вы действительно суетливы, вы можете отказаться от подключения к серверам, которые не поддерживают достаточно высокий уровень шифрования. Если кто-то знает, как это сделать на PHP, отправьте сообщение. – Cheekysoft