O HSTS não tenta manipular conteúdo misto: ele apenas controla se o navegador deve executar um redirecionamento 307
interno para HTTPS sempre que tentar carregar URLs HTTP, ou não. O aviso de conteúdo misto é um recurso do navegador e todos os navegadores atuais o fazem (Mozilla Firefox 23+, Google Chrome 21+, Internet Explorer 10+, Edge desde o início ...). Os blocos de aviso de conteúdo misto, por ex. <script>
e <iframe>
, mas não <img>
.
O aviso de conteúdo misto em todos os navegadores mencionados é verificado antes de carregar qualquer conteúdo, ou seja, antes do HSTS redirecionar também. Isso parece natural e também é fácil de testar. Por padrão, todas as imagens externas são carregadas mesmo usando HTTP simples, e um aviso de conteúdo misto é dado apenas para scripts e iframes.
OHSTSapenasalteraasituaçãoemqueumaimagemdeumdomínioativadoporHSTSécarregadausandoHTTPsimplese307InternalRedirect
éexecutada.Valeapenanotar:estaéumasituaçãosemavisosdeconteúdomistoenvolvidos.
Portanto, o HSTS não funciona como uma solução rápida para o problema de conteúdo misto :
- Você precisa corrigir
http://
URLs no seu site, mesmo para o domínio em si. - Você precisa garantir que não carregue scripts externos de fontes nas quais não confia.
- Se o terceiro não ativar o HSTS, ele ainda estará vulnerável a ataques man-in-the-middle.
- Terceiros podem carregar conteúdo de outras fontes externas, e tudo isso se aplica a eles também.
- O site de conteúdo externo pode estar corrompido ou realizar atividades maliciosas por conta própria.