Está en la página 1de 9

Actividad Evaluativa Tarea (Eje 3)

Vulnerabilidades en aplicaciones WEB

Presentado a:
Ing. JORGE OSPINA BELTRAN

Presentado por:
EDGAR IVAN ROJAS BARRERA

Institución Universitaria Área Andina


Ingeniería de Sistemas
Seguridad en Aplicaciones
Marzo 2022
Bogotá D.C.
Introducción

Con el desarrollo de la presente tarea, se busca identificar las posibles


vulnerabilidades que pueden llegar a afectar el funcionamiento de una aplicación
WEB.

El avance tecnológico, y la globalización de mercados, la alta demanda de


aplicaciones web y el afán de las organizaciones por ser competentes exige
que los profesionales de TI desarrollen a diario aplicaciones web donde exigen
que éstas garanticen la seguridad de la información, por esto y más motivos,
que es de vital relevancia que conozcamos de temas tan importantes como:
vulnerabilidades de las aplicaciones web, autenticación/autorización, anatomía
de un ataque a una aplicación web, OWASP, clasificación de amenazas,
herramientas de intrusión, técnicas de ataque directo al usuario, debilidades de
las aplicaciones web, análisis de técnicas de defensa directa y prevención de
ataques, estos conocimientos le permitirán generar estrategias para desarrollar
aplicaciones web.
Objetivos

1. Generales

● Argumentar y analizar el tema “por qué fracasan las estrategias en


lasorganizaciones”, vinculando aspectos tratados en el curso y los
puntuales del referente.

2. Específicos

● Implementar un cuadro comparativo con base a las 10


vulnerabilidades propuestas donde se dé respuesta clara al ejercicio
solicitado, utilizando la información dada en el eje correspondiente
además de la investigación realizada por nuestra propia cuenta.

● Conocer y aplicar los conceptos para dar una adecuada respuesta


ante el problema planteado.

● Estudiar el eje correspondiente, así como sus lecturas recomendadas


para comprender las diferentes vulnerabilidades que pueden llegar a
afectar el funcionamiento de una aplicación web.
Desarrollo
Entradas invalidadas Fallos de control de Acceso Fallos en la administración de Autentificación y Sesión
Tipo

En esta vulnerabilidad las restricciones de control de acceso existen


para delimitar las acciones de los usuarios autenticados, pero éstas no
siempre se aplican correctamente. Una de las habilidades esenciales
La información de entrada utilizada en la invocación a de los atacantes es la explotación del control de acceso. De lograrlo, Es cuando no se realiza una autenticación segura o directamente
componentes web no es validada pueden acceder, de forma no autorizada, a funcionalidades o datos, no existe mecanismo alguno de
antes de ser usada por la aplicación web, por lo que cuentas de otros usuarios, ver archivos sensibles, modificar datos, autenticación. Las credenciales de las cuentas de usuario y las
DESCRIPCION
puede manipularse la entrada para cambiar derechos de acceso y permisos, y otras acciones relacionadas contraseñas de inicio de sesión no están
incluir contenido sintáctico, más específicamente código con la divulgación, modificación o incluso, destrucción de datos o del propiamente protegidos o no son almacenadas de manera
malicioso mismo sistema.. Las debilidades del control de acceso son comunes encriptada.
debido a la falta de detección automática y a la falta de
pruebas funcionales efectivas por parte de los
desarrolladores de aplicaciones.

La explotación del control de acceso es una habilidad esencial de los


atacantes.Las herramientas SAST y DAST pueden detectar la ausencia
de controles de acceso pero, en el caso de estar presentes, no
pueden verificar si son correctos. Es detectable utilizando medios
Entre los ataques para manuales o de formaautomática en algunos frameworks que carecen
explotar dicha vulnerabilidad están los de inyección y los de controles de acceso. Los atacantes pueden detectar la autenticación
MECANISMO DE de XSS. La principal diferencia La Herramienta SAST (Static application security testing) es un defectuosa utilizando medios manuales y explotarlos
EXPLOTACION entre ambos ataques es que el primero tiene como conjunto de tecnologías diseñadas para analizar códigos fuentes,byte utilizando herramientas automatizadas con listas de
objetivo final la aplicación, mientras que code y binarios con el fin de obtener un indicativo del nivel de contraseñas, ataques de diccionario o con ingenieria social.
el segundo apunta a otros usuarios de la misma. seguridad del aplicativo. La Herramienta DAST (Pruebas de seguridad
de aplicaciones dinámicas) es una solución de seguridad que se usa
para descubrir vulnerabilidades en el software durante su estado de
ejecución, incluso cuando se implementa en la producción.

Los agresores, al comprometer las contraseñas, pueden vencer


las restricciones de autenticación y asumir la identidad de otros
Los atacantes pueden alterar cualquier parte de una
En 2012, hackers maliciosos obtuvieron acceso a los servidores de IRS usuarios, solo tienen que
solicitud HTTP, incluidas la url, la cadena de consulta, los
EJEMPLO REAL DE (el SII estadounidense) en Carolina del Sur a través de una contraseña obtener el acceso a unas pocas
encabezados,cookies, campos de formulario y campos
ATAQUE de administrador predeterminada, robando 3.6 millones de números cuentas o a una cuenta de
ocultos, para tratar de eludir los mecanismos de
de seguridad social. administrador para comprometer el
seguridad del sitio
sistema.
Desbordamiento del Búffer
Tipo Fallos de Cross Site Scripting (XSS)

Es un ataque de inyección de código malicioso para su posterior ejecución que


puede realizarse a sitios web, aplicaciones locales e incluso al propio navegador. Causado por errores/descuidos de programación este se lleva a cabo cuando un programa informático excede el uso de
Sucede cuando un usuario mal intencionado envía código malicioso a la aplicación cantidad de memoria asignado por el sistema operativo, escribiendo en el bloque de memoria contiguo. Estos fallos son
DESCRIPCION
web y se coloca en forma de un hipervínculo para conducir al usuario a otro sitio utilizados por ciber-delincuentes para lograr ejecutar código arbitrario en un equipo, de manera que en muchos casos
web, mensajería instantánea o un correo electrónico. Así mismo, puede provocar logran tomar control del equipo víctima o ejecutar un ataque de Denegación de Servicios (DoS)
una negación de servicio.

Existen 3 diferentes tipos de vulnerabilidades de desbordamiento de búfer las cuales son:


Existen tres tipos conocidos de secuencias de comandos en sitios cruzados: Desbordamiento de memoria heap: Cuando un búfer basado en memoria heap es desbordado, la información de control
reflejado, almacenado e inyección. XSS reflejado es el más fácil para explotar – una en estas etiquetas es sobrescrita, y cuando la rutina de gestión del heap libera el búfer, se produce una sobre escritura de
página reflejara información suministrada por el usuario directamente de vuelta al dirección de memoria que conduce a una violación de acceso.
usuario: Desbordamiento de pila: Los desbordamientos de pila ocurren cuando se copian datos de tamaño variable sobre búfers
XSS almacenado toma información hostil, la almacena en un fichero, una base de de tamaño fijo localizados en la pila del programa sin ninguna comprobación de límites. Las vulnerabilidades de este tipo
MECANISMO DE datos, u otro sistema de almacenamiento, y luego en una etapa posterior, muestra son consideradas generalmente de un nivel de gravedad alto, ya que su explotación en la mayoría de casos permitiría la
EXPLOTACION dicha información sin filtrado alguno. Esto es extremadamente peligroso en ejecución de código o provocaría una Denegación de Servicio.
sistemas de administración de contenidos (CMS), blogs, o foros, donde un gran Cadena de formato: Es un ataque cibernético, el cual se produce cuando los datos enviados a través de una cadena de
número de usuarios accederá a la información introducida por otros usuarios. Con entrada de caracteres son evaluados como un comando por la aplicación o servidor al cual van dirigidos. De esta forma, el
ataques basados en inyección DOM, el código JavaScript del sitio Web y sus atacante podría ejecutar código, leer la pila o causar un error de segmentación en la aplicación en ejecución, lo que
variables son manipuladas, en lugar de los elementos HTML. provocaría nuevos comportamientos que podrían comprometer la seguridad o la estabilidad del sistema al que van
dirigidos.

Phishing a los usuarios de la entidad bancaria Bancolombia, se envio un correo a los


usuarios de este banco en el que se le informaba a los clientes que por motivos de
seguridad los servicios contratados por este habían sido suspendidos
Para explotar un desbordamiento de búfer en pila, el atacante debe identificar una vulnerabilidad de desbordamiento de
temporalmente y que para volver a hacer uso de estos canales virtuales debían
EJEMPLO REAL DE buffer en un programa (inspección/auditoría del código, traza de ejecución en debugger,”probar” entradas inesperadas
hacer clic en un enlace proporcionado en el cuerpo del correo. Una vez el cliente
ATAQUE fuzzing), conocer cómo se organiza el buffer y la pila en memoria para llevar acabo la explotación, luego de esto se
ingresaba a la página fraudulenta, se le solicitaba que ingresara los datos
ejecuta el código arbitrario aportado por atacante.
correspondientes al usuario, contraseña y preguntas de seguridad con el fin de
obtener en una base de datos toda la información necesaria a la hora de realizar
una transferencia de dinero.
Inyección de código Fallas en el manejo de errores Almacenamiento inseguro
Tipo

La inyección de comandos es un método de Las aplicaciones pueden revelar, involuntariamente, información sobre su configuración,
ataque en el que un hacker busca su funcionamiento interno, o pueden violar la privacidad a través de una variedad de
Muchas aplicaciones web no protegen adecuadamente los datos
vulnerabilidades de seguridad en aplicaciones problemas. También pueden revelar su estado interno dependiendo de cuánto tardan en
sensibles, tales como tarjetas de crédito y credenciales a
web para explotarlas y ejecutar comandos procesar ciertas operaciones u ofreciendo diferentes respuestas a diferentes entradas,
DESCRIPCION autenticación con mecanismos de cifrado o hashing. Los atacantes
específicos (por ejemplo: modificar un como, por ejemplo, mostrando el mismo mensaje de error con distintos números de
pueden modificar o robar tales datos protegidos
formulario de inicio de sesión o inyectar código error. Las aplicaciones Web suelen revelar información sobre su estado interno a través
inadecuadamente.
malicioso, entre otros) y así poder acceder a de mensajes de error detallados o de depuración. Esta información, a menudo, puede ser
información confidencial. utilizada para lanzar, o incluso automatizar, ataques muy potentes.

Una aplicación es vulnerable a este tipo de Todos los años millones y millones de combinaciones de
ataque cuando los datos suministrados por el • Errores de configuración. usuario/contraseña, grandes cantidades de información
usuario no son válidos o filtrados por la • Errores Web financiera, médica y de otro tipo son robados de diferentes bases
MECANISMO DE
aplicación, cuando se invocan consultas • Errores de protocolo -Errores de configuración de datos y sorprendentemente muchas veces todo eso está
EXPLOTACION
dinámicas no parametrizadas, las inyecciones • Errores Web guardado en texto plano o débilmente encriptado. Los datos de
más comunes son en SQL, NoSQL, comandos de tarjetas de crédito se venden en los circuitos criminales a valores
SO, LDAP. irrisoriamente bajos.

Por ejemplo una aplicación cifra las tarjetas de crédito en la base


de datos para prevenir que los datos sean expuestos a los usuarios
Los password por default o débiles, usuarios con demasiados privilegios e inclusive la
Inyección de código malicioso a través de finales. Sin embargo, la base de datos descifra automáticamente
utilización de protocolos de encriptación obsoletos, normalmente una de las cosas más
EJEMPLO REAL DE formularios web para ejecutar un comando no las columnas de las tarjetas de crédito, permitiendo que una
típicas en las organizaciones es que utilizan algún sistema de encriptación web, lo cual
ATAQUE autorizado o eludir el proceso de inicio de sesión vulnerabilidad de inyección de SQL pueda extraer las tarjetas de
con una aplicación de teléfono celular se puede crackear en menos de 10 o 15 segundos o
y acceder a información confidencial. crédito en texto plano. El sistema debería haberse configurado de
inclusive con una laptop.
manera que solo las aplicaciones del back-end pudieran descifrar
los datos, no la capa frontal de la aplicación web.
Denegación de servicio Fallas en la administración de Configuración
Tipo

Configuraciones incorrectas de seguridad pueden ocurrir en cualquier nivel del stack tecnológico, incluidos los
Tienen la finalidad de provocar que un servicio o recurso sea inaccesible servicios de red, la plataforma, el servidor web, el servidor de aplicaciones, la base de datos, frameworks, el código
para los usuarios legítimos. Este tipo de ataques pueden provocar la parada personalizado y máquinas virtuales preinstaladas, contenedores, Configuraciones incorrectas de seguridad pueden
DESCRIPCION de todos los servicios de una máquina, o que la máquina sólo puede dar ocurrir en cualquier nivel del stack tecnológico, incluidos los servicios de red, la plataforma, el servidor web, el
determinados servicios o que no puede dar servicio a determinados servidor de aplicaciones, la base de datos, frameworks, el código personalizado y máquinas virtuales preinstaladas,
usuarios. contenedores, etc. Los escáneres automatizados son útiles para detectar configuraciones erróneas, el uso de cuentas
o configuraciones predeterminadas, servicios innecesarios, opciones heredadas, etc.

• El manejo de errores revela a los usuarios trazas de la aplicación u otros mensajes demasiado informativos.
• Para los sistemas actualizados, las nuevas funciones de seguridad se encuentran desactivadas o no se encuentran
configuradas de forma adecuada o segura.
Los ataques DoS se pueden llevar a cabo de diferentes formas y cubren
• Las configuraciones de seguridad en el servidor de aplicaciones, en el framework de aplicación (ej., Struts, Spring,
MECANISMO DE infinidad de servicios. Existen tres tipos básicos de ataque, el consumo de
ASP.NET), bibliotecas o bases de datos no se encuentran especificados con valores seguros.
EXPLOTACION recursos limitados, la destrucción o alteración de datos, y la destrucción o
• El servidor no envía directrices o cabeceras de seguridad a los clientes o se encuentran configurados con valores
alteración física de componentes de la red.
inseguros.
• El software se encuentra desactualizado o posee vulnerabilidades

Uno de los ataque mas comunes son los de consumo de ancho de banda,
estos pueden ser:
Smurf Attack: Este ataque se basa en mandar un gran número de peticiones
echo (ICMP) a direcciones de Broadcast usando una IP de origen falsa. Esto La configuración incorrecta de una sola carga de trabajo en la nube o instancia de unidad de almacenamiento puede
EJEMPLO REAL DE provoca que la IP de origen sea inundada con multitud de respuestas. costar millones a una empresa o dificultar el cumplimiento de las normas. Las vulnerabilidades de chip de hardware,
ATAQUE ICMP Ping Flood: En este ataque se inunda a la víctima con paquetes ICMP por ejemplo, Meltdown, Spectre y Foreshadow, permiten el acceso no autorizado a espacios de memoria protegidos
Echo Request. de servicios en la nube que se alojan en el mismo servidor físico.
Fraggle Attack: Es similar al ataque Smurf pero en este caso se envía tráfico
UDP en lugar de ICMP.
Conclusiones

En conclusión vemos que es nuestra responsabilidad como profesionales de TI el velar por la


seguridad, no solo de la empresa en que laboremos sino también de nuestro hogar e inclusive
amigos, brindando el apoyo, dando consejos y generando conciencia de cómo prevenir ataques
vía aplicaciones WEB.

Después de evidenciar las diferentes vulnerabilidades a las que pueden estar expuestas las
aplicaciones que diariamente utilizamos concluimos que es imperativo el estudio y aplicación de
diferentes normas y métodos que mitiguen dichos riesgos. Hoy en día la seguridad de software
es algo muy importante y que día a día aumenta el impacto de los riesgos que se generan a partir
de las vulnerabilidades, es por esto por lo que el correcto estudio de las guías propuestas por
OWASP (Open Web Application Security Project) se vuelve fundamental, ya que no solo son
útiles para poder detectar estas vulnerabilidades, sino que fue desarrollado por una comunidad
de expertos en el área con el fin de también poder mitigarlas.
Bibliografía

Narváez, D., Romero, C., & Núñez, M. (2016). Evaluación de ataques de Denegación de servicio
DoS y DDoS, y mecanismos de protección. GEEKS DECC-REPORTS, 2(1).

Segundo, C. J. N. Hacking web (Análisis de ataques SQL Inyección, XSS).

Claros, G. M. S. INYECCIÓN DE CÓDIGO Y ATAQUES AL SITIO WEB.

Zambrano, A., Guarda, T., Valenzuela, E. V. H., & Quiña, G. N. (2019). Técnicas de mitigación
para principales vulnerabilidades de seguridad en aplicaciones web. Revista Ibérica de Sistemas
e Tecnologias de Informação, (E17), 299-308.

Ortega, J. C. G., Toledo, R. A. J., Guzmán, J. A. M., Villota, A. M. Z., & Ortiz, G. A. O. (2017).
Aspectos fundamentales en la construcción de páginas web seguras basados en
OWASP. Boletín Informativo CEI, 4(2).

Garcia, L., & Estiwar, L. (2017). Guia: OWASP Top 10-2013 (Bachelor's thesis, Universidad Piloto
de Colombia).

Díaz, V. A. (2010). OWASP Top 10 2013: actualización de los riesgos más extendidos asociados
a las aplicaciones web. Revista SIC: ciberseguridad, segu-ridad de la nformación y privacidad,
92-96.

Chicaiza, G., Ponce, L., & Velázquez Campos, G. Inyección de SQL, caso de estudio
OWASP. Sangolquí, SF.

Jimenez Cuenu, C. D. (2019). Implementación de controles que permitan garantizar la seguridad


de un sitio web en base a owasp.

Avilés, G. G. (2015). Seguridad en bases de datos y aplicaciones web. IT Campus Academy.

Saucedo, A. L. H., & Miranda, J. M. (2016). Guía de ataques, vulnerabilidades, técnicas y


herramientas para aplicaciones web. ReCIBE, 4(1).

Romaniz, S. C. (2008). Seguridad de aplicaciones web: vulnerabilidades en los controles de


acceso. In XIV Congreso Argentino de Ciencias de la Computación.

También podría gustarte