sitios maliciosos lista analisis javascript https

maliciosos - Detecta HTTPS con JavaScript



analisis de sitios maliciosos (6)

Puedes usar el no estándar

window.location.protocol

En Firefox: documentación de MDC

En IE, parece ser

document.location.protocol

Documentación de MSDN

No puedo encontrar información confiable sobre cómo se comporta esto en otros navegadores, pero espero que cumplan con el cuasi estándar de document.location.protocol .

Tal vez el plugin jQuery url solucione esto sin tener que lidiar con las diferencias entre navegadores. Nunca lo he usado, pero parece prometedor:

jQuery.url.attr("protocol");

Estoy tratando de encontrar cómo puedo detectar con JavaScript si estoy en un entorno HTTP o HTTPS.

Llamo a una solicitud de Ajax, así que si estoy en HTTPS y llamo a HTTP Ajax, recibo un 302 Movido temporalmente.

Estaba pensando en obtener la window.location.href actual y hacer una manipulación de cadenas.

¿Cuál es la mejor forma de detectar HTTPS usando JavaScript?


Mirando cómo Google Analytics agrega su script a la página:

ga.src = (''https:'' == document.location.protocol ? ''https://ssl'' : ''http://www'') + ''.google-analytics.com/ga.js'';

Entonces document.location.protocol parecería seguro para todos los navegadores.


location.protocol funciona en todos los navegadores.


Hay una lib verdaderamente ordenada llamada URI para cosas como esta. https://github.com/medialize/URI.js

Probablemente no necesite esto solo para obtener el protocolo, pero si va a manipular URIs de cadenas, debe usar esto.


En muchos casos, uno puede omitir el protocolo por completo. Entonces, en lugar de

<img src="https://test.com/image.jpg" />

uno podría usar

<img src="//test.com/image.jpg" />

El navegador luego agrega el protocolo actual automáticamente. Esto también funciona para incluir archivos en la cabeza, y también debería funcionar para llamadas ajax.

Editar: Hacer esto ahora se considera un antipatrón:

Ahora que se alienta SSL para todos y no tiene problemas de rendimiento, esta técnica ahora es un antipatrón. Si el activo que necesita está disponible en SSL, utilice siempre el recurso https: //.

Permitir que el fragmento solicite a través de HTTP abre la puerta a ataques como el reciente ataque Github Man-on-the-side. Siempre es seguro solicitar activos HTTPS incluso si su sitio está en HTTP, sin embargo, lo contrario no es cierto.

ver: http://www.paulirish.com/2010/the-protocol-relative-url/


Qué tal esto ?

var protocol = window.location.href.indexOf("https://")==0?"https":"http";