Este artigo necessita de uma revisão editorial. Como posso ajudar.
Quando um usuário visita uma página de HTTPS, a conexão com o servidor web é criptografada com SSL e portanto, protegido contra sniffers e ataques man-in-the-middle.
Se a página HTTPS inclui conteúdo obtido através de certo, HTTP em texto puro, então a conexão é criptografada apenas parcialmente: o conteúdo não criptografado é acessível a sniffers e pode ser modificado por atacantes man-in-the-middle, e portanto, a conexão não é mais safeguarded. Quando uma página da Web exibe este comportamento, é chamado de mixed content (Conteúdo Misto).
Console Web
A partir do Firefox 16, o Console Web exibe uma mensagem de aviso de conteúdo misto quando uma página em seu site tem este problema. O recurso de conteúdo misto que foi carregado via HTTP vai aparecer em vermelho, juntamente com o texto "conteúdo misto", que vai linka para esta página.
Para corrigir esse erro, solicitações de conteúdo HTTP deve ser removido e substituído com conteúdo servido por HTTPS. Alguns exemplos comuns de conteúdo misto incluem arquivos JavaScript, folhas de estilo, imagens, vídeos e outras mídias.
A partir do Firefox 23, o conteúdo mixed active é bloqueado por padrão (e exibir o conteúdo mixed display pode ser bloqueado, definindo uma preferência - security.mixed_content.block_active_content). Para tornar mais fácil para os desenvolvedores web para encontrar erros de conteúdo misto, todas as solicitações de conteúdo misto bloqueados são registradas no painel de segurança do Web Console.
Tipos de Conteúdo Misto
Existem duas categorias de conteúdo misto: Mixed Passive/Display e Mixed Active Content. A diferença está no nível de ameaça do pior cenário, se o conteúdo é reescrito como parte de um ataque man-in-the-middle. No caso de conteúdo passive, a ameaça é baixa (página aparece quebrada ou com conteúdo enganoso). No caso de conteúdo active, a ameaça pode levar a phishing, a divulgação de dados sensíveis, redirecionamento para sites maliciosos, etc.
Mixed passive/display content
Mixed Passive/Display Content é conteúdo servido através de HTTP que está incluída em uma página da web HTTPS, mas isso não pode alterar outras partes da página. Por exemplo, um invasor pode substituir uma imagem servido sobre HTTP com uma imagem inapropriada ou mensagem para o usuário. O invasor também pode inserir informações sobre as atividades do usuário, observando que as imagens são servidos para o usuário; muitas vezes, as imagens só são servidos em uma página específica dentro de um site. Se o atacante observa solicitações HTTP para certas imagens, ele poderia determinar qual página da web que o usuário está visitando.
Passive lista de conteúdos
Esta seção lista todos os tipos de solicitações HTTP que são considerados conteúdo passivo:
- <audio> (
src
attribute) - <img> (
src
attribute) - <video> (
src
attribute) - <object> subresources (quando um <object> realiza solicitações HTTP)
Mixed conteúdo ativo
Mixed Active Content é o conteúdo que tem acesso a todo ou parte do Document Object Model da página HTTPS. Este tipo de conteúdo misto pode alterar o comportamento da página HTTPS e potencialmente roubar dados confidenciais do usuário. Assim, além dos riscos descritos para exibir o conteúdo misturado acima, Mixed Active Content é vulnerável a alguns outros vetores de ataque.
No caso de Mixed Active Content, um atacante man-in-the-middle pode interceptar a solicitação de conteúdo HTTP. O atacante também pode reescrever a resposta para incluir o código JavaScript malicioso. Conteúdo ativo malicioso pode roubar as credenciais do usuário, adquirir dados sensíveis sobre o usuário, nem tente instalar malware no sistema do usuário (aproveitando vulnerabilidades no navegador ou seus plugins, por exemplo).
O risco envolvido com conteúdo misto não depende do tipo de site que o usuário está visitando e quão sensíveis os dados expostos a esse site pode ser. A página pode ter dados públicos visíveis para o mundo ou dados privados visível apenas quando autenticado. Se a página é pública e não tem dados sensíveis sobre o usuário, usando Mixed Active Content ainda fornece o atacante com a oportunidade de redirecionar o usuário para outras páginas HTTP e roubar cookies HTTP a partir desses sites.
Active lista de conteúdos
- <script> (
src
attribute) - <link> (
href
attribute) (isso inclui folhas de estilo CSS) - XMLHttpRequest solicitações de objetos
- <iframe> (
src
attributes) - Todos os casos em CSS onde um valor url é usado (@font-face, cursor, background-image, etc.)
- <object> (
data
attribute)
Veja também
Como corrigir um site com conteúdo misto bloqueado