Поиск всего небезопасного контента на безопасной странице
-
12-10-2019 - |
Вопрос
Как наиболее эффективный способ найти список всех URL-адресов без HTTPS, запрашиваемых на странице HTTPS? Если происходит такого рода нарушения безопасности, каждый браузер предупреждает пользователя, но я не могу найти простой способ найти, какие точные URL -адреса вызывают нарушение.
Самый простой способ, который я обнаружил до сих пор, - это использовать Firefox, но даже тогда это все еще не очень удобно. Во-первых, я могу щелкнуть правой кнопкой мыши, выберите «Информация о странице просмотра», нажмите на вкладку Media и прокрутить список URL-адресов. Тем не менее, это, кажется, только перечисляет файлы изображений, а не CSS или JS включает, что также может вызвать ошибку. Для них я должен использовать расширение Firebug, выберите вкладку «Сеть» и вручную навредить мышью на каждом элементе, чтобы увидеть весь URL. К сожалению, это может занять некоторое время, если у вас есть десятки медиа -файлов. Есть ли способ лучше?
Решение
Обратите внимание, что в недавних версиях Chrome эти ошибки будут отображаться в консоли JavaScript.
например
The page at https://mysecuresite.com displayed insecure content from http://unsecuresite.com/some.jpg.
Другие советы
Пытаться: www.whynopadlock.com Это даст вам отчет обо всем небезопасном контенте на любой веб -странице HTTPS.
Вы можете использовать Sslcheck
Это бесплатный онлайн -инструмент, который повторяет веб -сайт (следуя всем внутренним ссылкам) и сканирует небезопасное контент - изображения, сценарии и CSS.
(Отказ от ответственности: я один из разработчиков)
Используйте Fiddler.
Безопасные запросы вообще не будут отображаться (за исключением случаев, когда HTTPS подключается, что может быть скрыто), поэтому все, что вы увидите, плохо.
У меня была эта проблема, которая произошла в JavaScript:
/* for Internet Explorer */
/*@cc_on @*/
/*@if (@_win32)
document.write("<script id=__ie_onload defer src=javascript:void(0)><\/script>");
(.....)
SRC = JavaScript: void (0) следует избегать.
Вы не можете найти эту проблему, используя Fiddler или Chrome.
Ты можешь проверить https://www.missingpadlock.com/
Это онлайн -инструмент для ползания вашего сайта для поиска небезопасных страниц.
Если у вас есть веб -сайт, вам следует изучить а Content-Security-Policy
Варианты заголовка. Они могут включать принуждая https в ресурсах, или автоматически пытаться перенаправить ресурсы HTTP на HTTPS, среди прочего.
Примечательно, есть также report-uri
Директива для тесно связанных Content-Security-Policy-Report-Only
заголовок Это сообщает о любых нарушениях вашего CSP на URI по вашему выбору. Это означает, что любой браузер с поддержкой1 за report-uri
Пришлю вам отчеты о страницах на вашем сайте с проблемными HTTPS постоянно. Mozilla Developer Network имеет Пример PHP обработки отчетов.
1 Обратите внимание, что если вы можете разумно ожидать Любые Браузер с полной поддержкой CSP (RO), чтобы попасть на рассматриваемые страницы, не имеет значения, что некоторые браузеры не поддерживают его.
Я просто хочу оставить записку о том, что случилось со мной, когда возникла эта проблема.
Внезапно мой домен показал «смешанные: небезопасные предметы». Я вообще не мог найти причину. Консоль только что показывала изображение: http://www.example.com/
, На что я не смог найти никаких ссылок в любом месте.
Я искал и искал и в конечном итоге обнаружил, что на вкладке «Безопасность» Chrome, где она отображала «небезопасной контент», он сказал «Показать в вкладке сети». Когда я нажал на это, он снова показывал мне плохой URL, без информации, кроме Инициатор столбец. Он показывал изображение footer_bg.jpg
.
Кто -то вводил код в фоновое изображение моего нижнего колонтитула, подумал я? Оказывается, нет, я непреднамеренно переместил это изображение вчера и забыл об этом. Таким образом, страница запрашивала изображение, которого не было, возвращая ошибку. Я исправил ссылку на изображение, и страница снова загружается.
Только для тех, кто может иметь эту проблему в будущем.
Использовать Burp Suite, настройте область в качестве вашего веб -сайта, зайдите на безопасную страницу и проверьте, какой запрос представлен в HTTP -версии вашего сайта.
Если вы хотите одноразовое, разумно оправданное, рекурсивное сканирование всего веб-сайта, вы можете использовать Bramus's mixed-content-scan
от CLI. Он не проверяет ссылки в дополнительных JS/CSS, но отлично подходит для поиска одного поста, который стажер 3 года назад вышел из-за опасного не-SSL-сценария.
Для непрерывный решение, см мой другой ответ.