¿ASP es más pequeño que HTML para el mismo sitio web?
1. Independencia de plataforma y servidor;
2. Proceso de desarrollo abierto, código fuente abierto;
3. Las etiquetas Jsp son extensibles y jsp puede ejecutarse en todas las plataformas.
Prefacio
Microsoft Active Server Pages (ASP) es un entorno de secuencias de comandos del lado del servidor que se puede utilizar para crear y ejecutar aplicaciones de servidor web interactivas dinámicas. Con ASP, puede combinar páginas HTML, comandos de script y componentes ActiveX para crear páginas web interactivas y potentes aplicaciones basadas en web.
Hoy en día, muchos sitios web, especialmente sitios web de comercio electrónico, utilizan principalmente ASP para implementar sus escritorios frontales. Ahora ASP es muy común en las aplicaciones de sitios web.
ASP es una herramienta rápida para desarrollar aplicaciones de sitios web, pero algunos webmasters solo ven las capacidades de desarrollo rápido de ASP, pero ignoran los problemas de seguridad de ASP. ASP ha estado plagado de muchas lagunas y puertas traseras desde el principio, incluida la pesadilla de 81, problemas de verificación de contraseñas, vulnerabilidades de IIS, etc., que siempre han hecho temblar a los desarrolladores de sitios web ASP.
Este artículo intenta explicar los problemas de seguridad de ASP a partir de las vulnerabilidades del sistema operativo y del propio programa ASP, y brinda soluciones o sugerencias.
Dos palabras clave
ASP, seguridad de red, IIS, SSL, cifrado.
Tres mecanismos de trabajo ASP
La tecnología Active Server Page proporciona a los desarrolladores de aplicaciones un método de desarrollo de aplicaciones basado en scripts intuitivo, rápido y eficiente, que mejora enormemente el efecto de desarrollo. Antes de discutir la seguridad de ASP, primero echemos un vistazo a cómo funciona ASP. Los scripts ASP están escritos en texto plano.
Los scripts ASP son una serie de archivos en formato de texto, que consisten en scripts escritos según una sintaxis específica (actualmente soporta vbscript y jscript) y mezclados con páginas HTML estándar. Cuando un usuario final en el lado del cliente utiliza un navegador WEB para acceder a una aplicación basada en script ASP a través de Internet, el navegador WEB enviará una solicitud HTTP al servidor WEB. Después de que el servidor WEB analiza y determina que la solicitud es una aplicación de un script ASP, llama automáticamente al motor de interpretación y ejecución del script ASP (ASP.DLL) a través de la interfaz ISAPI. ASP.DLL obtendrá el archivo de script ASP especificado del sistema de archivos o del búfer interno y luego lo analizará, interpretará y ejecutará. El resultado final del procesamiento formará contenido en formato HTML, que se devolverá al navegador WEB a través de la "ruta original" del servidor WEB, y el navegador WEB formará la presentación del resultado final en el cliente. Esto completa una llamada de script ASP completa. Varias llamadas de scripts ASP orgánicos constituyen una aplicación de script ASP completa.
Echemos un vistazo al entorno necesario para ejecutar ASP:
Microsoft Internet Information Server 3.0/4.0/5.0 en el servidor NT
Microsoft en Win2000 Internet Information Server 3.0/4.0/5.0
Microsoft Personal Web Server en Windows 95/98
Microsoft IIS con WINDOWS NT Option Pack proporciona una potente funcionalidad, pero IIS Cybersecurity es aún más peligroso. Debido a que pocas personas usan Windows 95/98 como servidor, en este artículo discutiré más sobre la seguridad de IIS en NT.
En cuarto lugar, Microsoft afirma las ventajas de seguridad de ASP
Aunque el enfoque de este artículo es discutir las vulnerabilidades y puertas traseras de ASP, es necesario hablar de las "ventajas" de ASP en seguridad de redes.
La razón por la que agrego un "" es porque a veces las "ventajas" reclamadas por Microsoft son exactamente las culpables de sus riesgos de seguridad.
Microsoft dijo que una de las principales ventajas de ASP en la seguridad de la red es que los usuarios no pueden ver el programa fuente de ASP. Desde el principio de ASP, ASP ejecuta e interpreta declaraciones HTML estándar en el lado del servidor y luego las transmite al navegador del cliente. "Proteger" el programa fuente puede proteger muy bien los derechos de autor de los desarrolladores de ASP. Imagine que ha trabajado duro para crear un programa excelente y dárselo a otros para que lo copien. ¿Qué pensarías? Y los piratas informáticos también pueden analizar su programa ASP y encontrar vulnerabilidades. Más importante aún, a algunos desarrolladores de ASP les gusta escribir contraseñas, nombres de usuarios privilegiados y rutas directamente en sus propios programas, lo que permite a otros encontrar fácilmente la "entrada" para atacar el sistema adivinando las contraseñas y rutas. Sin embargo, se han descubierto muchas vulnerabilidades que pueden ver el programa fuente ASP, de las que hablaremos más adelante.
IIS admite directorios virtuales, que se pueden administrar a través de la pestaña "Directorio" en el cuadro de diálogo "Propiedades del servidor". Establecer un directorio virtual es de gran importancia para la gestión del sitio web. Los directorios virtuales ocultan información importante sobre la estructura de directorios del sitio. Porque en el navegador, los clientes pueden obtener fácilmente la información de la ruta del archivo de la página seleccionando "Ver código fuente". Si utiliza rutas físicas en páginas web, quedará expuesta información importante sobre el directorio del sitio, lo que puede provocar fácilmente ataques al sistema. En segundo lugar, siempre que ambas máquinas tengan el mismo directorio virtual, puede mover una página web de una máquina a otra sin realizar ningún cambio en el código de la página. Más importante aún, cuando coloca una página web en un directorio virtual, puede establecer diferentes atributos para el directorio, como: Lectura, excepcional, secuencia de comandos. El acceso de lectura significa pasar el contenido del directorio desde IIS al navegador. Y el acceso de ejecución permite que los archivos ejecutables se ejecuten en este directorio. Cuando necesite utilizar asp, debe configurar el directorio de almacenamiento. Archivo ASP para "ejecutar". Se recomienda que al crear un sitio web, coloque los archivos HTML y los archivos ASP en diferentes directorios y luego configure el subdirectorio HTML en "leer" y el subdirectorio ASP en "ejecutar". Esto no solo facilita la administración de la WEB, sino que también lo hace. También se mejoró la seguridad del programa ASP para evitar que los clientes accedan al contenido del programa.
Análisis y solución de cinco vulnerabilidades ASP
Algunas personas dicen que una computadora que no contacta con el mundo exterior es la computadora más segura, y una computadora que cierra todos los puertos y no Proporcionar cualquier servicio también es el más seguro. Los piratas informáticos suelen utilizar nuestros puertos abiertos para realizar ataques, el más común de los cuales es el DDOS (ataque de denegación de servicio). A continuación enumeraré más de 20 vulnerabilidades de ASP, y cada vulnerabilidad será descrita y resuelta.
1 Agregue un símbolo especial después del programa ASP para ver el programa fuente ASP.
Versiones afectadas:
win95 pws
IIS3.0
98 pws4 no tiene esta vulnerabilidad.
Esta vulnerabilidad no existe en IIS4.0 o superior.
Descripción del problema:
Estos símbolos especiales incluyen el punto decimal, 81,: $DATA. Por ejemplo:
e/welcome.asp
Entonces lo correspondiente es:
e/w...HiliteType=Full
)
Porque el archivo ' null.htw ' no es un archivo de mapeo del sistema real, es solo un archivo virtual almacenado en la memoria del sistema. Incluso si has eliminado todos los reales. De forma predeterminada, las solicitudes de archivos null.htw son manejadas por webhits.dll. Por lo tanto, IIS sigue siendo vulnerable a esta vulnerabilidad.
Soluciones de problemas o sugerencias:
Si las funciones proporcionadas por este sitio web son necesarias para el sistema, descargue el parche correspondiente. Si no es necesario, simplemente elimine el archivo de imagen. Utilice la herramienta de gestión MMC de IIS.
Las correcciones son las siguientes:
Index Server 2.0:
Intel:
/downloads/release.asp? Raro...ReleaseID=17727
Alfa:
/downloads/release.asp? Raro...ReleaseID=17728
Servicio de indexación para Windows 2000:
Intel:
/downloads/release.asp? Raro...ReleaseID=17726
8. Vulnerabilidad del programa de la sala de chat ASP
Descripción del problema:
Si el programa ASP de la sala de chat está diseñado incorrectamente, Es fácil ser utilizado por otros para hacer cosas malas: patear a la gente, atravesar paredes, causar problemas.
Primero, echemos un vistazo a las vulnerabilidades de las salas de chat. Echemos un vistazo al siguiente código:
…………………………
………………
………… p>
onsubmit = " return chksend();" gt
******
************
Discurso:
En voz baja:
Objeto:
Expresión:
! ! ! ! ! !
! ! ! !
El código anterior se descargó en el cuadro de voz después de iniciar sesión en una sala de chat con el nombre en código "Tester". Esta es sólo una pequeña sección, pero hay dos vulnerabilidades en esta pequeña sección de código.
La primera vulnerabilidad
Echemos un vistazo a las dos oraciones con "*" en el código anterior. El "probador" en la primera oración es mi nombre de inicio de sesión, el ". boy" en la segunda oración es el género al iniciar sesión, y mire la primera oración a continuación donde agregué "!", también está mi nombre cuando aterricé. Estas son las dos vulnerabilidades de las que quiero hablar ahora. Si desea atravesar el muro en esta sala de chat, simplemente guarde el código del cuadro de voz, cambie la "Acción" de "Formulario" a la dirección de la sala de chat y luego cambie el "*" a "Probador". en la primera oración Simplemente cambie la palabra por el nombre que desee. También puedes cambiar tu género cambiando "niño" por "niña" en la segunda oración. Esto se llama penetración en la pared. Incluso puedes cambiar el nombre de alguien en línea y luego hablar, para poder hablar bajo el nombre de otra persona.
La segunda laguna
Esta es la laguna para patear a la gente. ¡Miremos el cinturón! La primera oración del número tiene el nombre del usuario legítimo que inició sesión. Mirando la segunda oración, tiene "getout", además tiene una etiqueta "formulario". Este es el código cuando salimos de la sala de chat. ¿De qué sirve? Pruébalo primero. Primero, cambie la "Acción" en la pestaña "Formulario" por la dirección de la sala de chat; de lo contrario, no sabremos a qué persona enviar el mensaje. Luego cambie "Fengfeng" por el nombre de la persona que desea expulsar, haga clic en "Salir" y luego expulse a esa persona de la sala de chat. Esta es la laguna jurídica para expulsar a la gente en las salas de chat.
La razón principal de estas dos vulnerabilidades es que estas dos vulnerabilidades impiden que el programa de servicio identifique si las instrucciones emitidas por el cliente son usuarios legítimos. Las dos vulnerabilidades anteriores engañan al programa de servicio para que cambie su nombre para dar un discurso o cambie su nombre para salir, lo que hace sufrir a los usuarios reales.
Por supuesto, el programa anterior todavía tiene lagunas. El cuadro de entrada no filtra declaraciones HTML ni declaraciones JAVAscript. Ya analizamos este problema en detalle en la Vulnerabilidad 5, por lo que no lo discutiremos aquí.
Soluciones de problemas o sugerencias:
En programación, basta con que el programa de servicio identifique quién dio la instrucción. Específicamente, puedes enviar un código de identificación a cada chat, como Wu Bi, o puedes identificarlo junto con cada contraseña del chat, o puedes cifrar aleatoriamente la contraseña del chat para identificación, etc. En cualquier caso, basta con que su programa de servicio identifique quién dio la orden.