it-swarm-es.com

¿Cómo puedo ocultar lo que estoy usando para ejecutar mi sitio?

¿Hay algo que pueda hacer para evitar que alguien sepa que mi sitio está usando Drupal mirando el código fuente de la página principal? Me refiero a las personas que escanean sitios usando software que detecta el software solía ejecutar el sitio web para poder atacarlo utilizando cualquier punto débil conocido.

Si no es posible ocultar completamente el hecho de que el sitio está utilizando Drupal, ¿es posible al menos confundirlos (por ejemplo, aliasando las páginas de los nodos con URL como http://example.com/servlets/<node-id>.jsp)?

72
kiamlaluno

Esta es una pregunta antigua y ya respondida, pero recientemente me esforcé por escribir una descripción de todos las cosas que necesitarías cambiar:

  • Elimine el metagenerador para Drupal 7
  • Elimine el texto revelador como CHANGELOG.txt
  • Verifique el encabezado Caduca
  • Directorios móviles para códigos de estado HTTP 200/404/403
  • Busque mensajes de texto predeterminados: modifique todos los mensajes orientados al usuario
  • Mire el HTML: el html predeterminado del núcleo y los módulos es un signo revelador

Básicamente: técnicamente podría ser posible ocultar el hecho de que su sitio ejecuta Drupal, pero pasaría tanto tiempo en él que no vale la pena. En su lugar, debe centrarse en hacer que sea seguro y en operaciones seguras (por ejemplo, la capacidad de implementar actualizaciones rápidamente, monitorear registros, etc.).

52
greggles

No puedes ocultarlo por completo. La mayoría de lo que se necesita para hacerlo requeriría piratear el núcleo. La mayor diferencia es la variable Drupal JavaScript que se puede leer desde la página principal o desde cualquier página.

Si desea mejorar la seguridad de su sitio ocultando que es un sitio Drupal), su esfuerzo se gasta mejor en revisiones de código que en tratar de ocultar el hecho de que el sitio está hecho con Drupal.

99
googletorp

¡Es demasiado fácil de hacer, Kiam!

  • Utilice un proxy inverso o personalice su demonio http para filtrar el molesto encabezado http Drupal http
  • Denegar el acceso http a cualquier Drupal carpetas predeterminadas
  • Utilice PHP buffer de salida para reescribir y ocultar su fuente HTML, eliminar datos innecesarios
  • Use alias de URL o custom_url_rewrite_in/outbound para hacer que sus URL sean un desastre
  • Cambie el error 404 predeterminado, elimine/cambie update.php
  • Realice cualquier otro cambio si alguien se entera

Y por último, pero no menos importante, asegúrese de que su sitio sea tan simple que no requiera JS o CSS para comportamientos normales (no use Vistas o Ctools ...), no admita la autenticación del usuario, etc., lo que significa que su sitio debería ser tan simple como un sitio html estático.

Ok, todo eso para que la gente crea que su sitio no ejecuta Drupal. De todos modos, la seguridad por oscuridad es inútil.

42
jcisio

Hay un artículo oficial y una discusión sobre lo mismo .

No puedes No lo intentes

  • Los ataques automatizados (con mucho, los ataques más comunes) ni siquiera inspeccionan el servidor antes de probar sus exploits .
    La inspección de los registros de cualquier sitio de alto perfil mostrará miles de solicitudes infructuosas de /AspBB/db/betaboard.mdb_private/cmd.asp/scripts/../../winnt/system32/cmd.exe/wp-login//administrator/components/com_wmtgallery/admin.wmtgal, /cgi-bin/ip.cgi ... y cualquier número de intentos de exploits históricos en cualquier sistema no relacionado.
    Los ataques a exploits ocurren incluso si los exploits no existen en su sistema operativo o CMS. Cualquier cosa que haga para identificar mal su sitio ser ignorado de todos modos por piratas informáticos aficionados.
  • Lo que creas que puedes ocultar, hay otras pistas para cualquier sistema.
    Simplemente eliminando algunas de las cadenas que contienen 'drupal' no oculta su sitio a cualquier intruso razonable. Hay docenas de formas que se pueden usar para adivinar lo que está sirviendo a sus páginas, incluso servicios dedicados para saber si ese sitio ejecuta Drupal. Solo las palabras clave que que reconoce y cree que son una amenaza son un subconjunto menor de los indicadores reales.
    Pregunte por index.php /? Q = user. Luego intente deshabilitar esa respuesta sin paralizar su sitio.
  • La seguridad por oscuridad no es seguridad. Da una falsa impresión de estar 'seguro' cuando solo está ocultando vulnerabilidades detrás de una cortina de humo que cualquier atacante que representara una amenaza real sería capaz de ver.
  • Aunque no es del todo imposible piratear el código hasta el punto en que la mayoría trazas de Drupal) están ocultas de la fuente HTML , (Después de todo, es de código abierto), los pasos necesarios para hacerlo necesariamente romperían el núcleo de manera tan grave que su rama pirateada del código sería incompatible con las actualizaciones de seguridad real  que no podría parchear y estaría realmente abierto a cualquier amenaza real futura identificada por el equipo de seguridad. Esta es una verdadera ruta a la vulnerabilidad del sistema.
  • Los módulos más importantes o útiles tienen su propia 'firma' de código que es difícil de ocultar sin reescrituras significativas. Si está usando 'vistas', 'cck', 'ad', 'imagecache', 'jquery', agregación css, temas contribuidos o cualquier cosa útil en su sitio - alguien puede decir . Ocultarlo por completo generalmente requeriría una conversión total de las funciones del tema, al menos. Incluso entonces, la obsfucación probablemente no funcionará .
  • Para eliminar la identificación de muchas de las funciones avanzadas, como incluso la fácil instalación de Google Analytics que puede usar Drupal Libraries para trabajar, necesariamente debe renunciar a esas funciones por completo o reescribirlas de alguna manera eso no aprovecha la infraestructura Drupal. A veces esto es posible, pero en todos los casos es contraproducente.

Puede que le interese leer Asegurar su sitio también.

Recuerde nunca hackear núcleo

34
niksmac

Algo adicional que puede hacer es usar también el módulo Alias ​​de archivo para cambiar la estructura de archivos predeterminada.

El módulo Alias ​​de archivo le permite usar alias personalizables de token para sus archivos cargados, lo que le brinda la capacidad de mantener su sistema de archivos organizado de la manera habitual mientras proporciona rutas de aspecto limpio (es decir, no más/sitios/predeterminado/archivos /).

1
john

No tiene sentido ocultar que su sitio ejecuta Drupal. Es la forma incorrecta de mirar sitios web en desarrollo. En lo que debe centrarse es en la seguridad. Asegúrese de implementar todas las medidas de valores y todo estará bien. No hay una razón en el mundo para ocultar que está utilizando un determinado cms u otro software. Con complementos de FF como Wappalyzer, puede saber en un instante si un sitio usa Drupal, por lo que la pregunta es bastante discutible.

1
picxelplay

Estoy de acuerdo con otras personas en que no puedes ocultarlo por completo. Si observa la fuente HTML, notará que muchas veces los archivos CSS y JavaScript no se han agregado. Se debe habilitar la agregación CSS y JavaScript.

1
user140

En ese pasado, cambié mis fuentes por las típicas fuentes de proyecto Ruby como Lucida Sans, también aumentando los tamaños de entrada como lo hacen todos los niños modernos.

Otro regalo es el gráfico "throbber" para los campos de autocompletar. Tampoco funciona cuando aumenta el tamaño de entrada. Aquí hay uno que puedes robar: http://beta.seattlebedandbreakfast.com/misc/throbber.gif

0
doublejosh