Anda di halaman 1dari 6

RESEA PRUEBAS DE VALIDACION DE ENTRADA DE DATOS

EMMANUEL PEALOZA RODRGUEZ


CARLOS ALBERTO BALLESTAS MENDOZA.

RESEA

PRESENTADO A:
FABIO GARCA
FUNDACIN UNIVERSITRIA TECNOLGICO COMFENALCO

FACULTAD DE INGENIERA
SEMESTRE: 6
TEC. DESARROLLO DE SISTEMAS DE INFORMACIN- SECCION 1
ELECTIVA II
CARTAGENA 2016.

PRUEBAS DE VALIDACION DE ENTRADA DE DATOS

XSS
XSS es la inyeccin de cdigo JavaScript en aplicaciones web, pginas web y hasta en el
navegador web ya sea en cdigo insertado (script, iframes) en HTML, aprovechando las
variables que se pasan entre pginas usando una URL o robando las cookies.
Ataca principalmente las aplicaciones que procesan datos obtenidos de una entrada sin
ningn tipo de chequeo o validacin.

Tipos de ataques

Las diversas variantes de esta vulnerabilidad pueden dividirse en dos grandes grupos: el
primero se conoce como XSS persistente o directo y el segundo como XSS reflejado o
indirecto.

Directo o persistente. Consiste en invadir cdigo HTML mediante la inclusin de etiquetas


<script> y <frame> en sitios que lo permiten.

Local. Es una de las variantes del XSS directo, uno de sus objetivos consiste en explotar
las vulnerabilidades del mismo cdigo fuente o pgina web. Esas vulnerabilidades son
resultado del uso indebido del DOM (Modelo de Objetos del Documento, es un conjunto
estandarizado de objetos para representar pginas web) con JavaScript, lo cual permite
abrir otra pgina web con cdigo malicioso JavaScript incrustado, afectando el cdigo de
la primera pgina en el sistema local. Cuando el XSS es local, ningn cdigo malicioso es
enviado al servidor. El funcionamiento toma lugar completamente en la mquina del
cliente, pero modifica la pgina proporcionada por el sitio web antes de que sea
interpretada por el navegador para que se comporte como si se realizara la carga
maliciosa en el cliente desde el servidor. Esto significa que la proteccin del lado del
servidor que filtra el cdigo malicioso no funciona en este tipo de vulnerabilidad.

Indirecto o reflejado. Funciona modificando valores que la aplicacin web pasa de una
pgina a otra, sin emplear sesiones. Sucede cuando se enva un mensaje o ruta en una
URL, una cookie o en la cabecera HTTP (pudiendo extenderse al DOM del navegador).

Inyeccin de cdigo SQL


La inyeccin SQL es la infiltracin de cdigo intruso dentro del cdigo SQL de las bases
de datos generalmente usando las entradas de los formularios.
El objetivo es alterar el funcionamiento del programa y lograr que se ejecute el cdigo
"invasor" incrustado.
Es una tcnica poderosa con la que se puede manipular direcciones URL de cualquier
forma, en entradas de bsquedas, formularios o registros de email, para inyectar el
cdigo.

Cmo evitarlo?

Los ataques informticos son muy comunes, por este motivo tenemos que prevenirnos al
mximo de ellos que cada vez se estn extendiendo ms su uso por la facilidad que tiene
de ponerlo en marcha cualquier persona:

1. Usar captchas en los formularios para validar las peticiones de los usuarios

Captcha es la abreviatura en ingles de Prueba de Turing pblica y automtica para


diferenciar mquinas y humanos. Es una prueba para comprobar que quien introduce la
informacin es una persona y no una mquina. Se utilizan para impedir que se pueda
tener acceso a la funcin de un script de forma automtica.

2. Crear limitaciones y reglas en los formularios

En cualquier formulario es necesario usar ciertas reglas para limitar las acciones de
acuerdo a su uso.
3. Impedir la entrada de cdigo maligno escapando los caracteres

Para evitar las inyecciones SQL y ataques XXS es necesario escapar todo lo que pueda
ser introducido en cualquier consulta, reemplazando los caracteres especiales por su
equivalente textual, de tal forma que se interprete todo el contenido de la variable como si
fuera texto. Se conoce como satinizar las entradas.

4. Proteger formularios de XSS

La direccin URL en el atributo action de los formularios, cuando conduce a la misma


pgina donde se ejecuta, puede ser manipulada para inyectar cdigo maligno usando
JavaScript.

XPath
XPath es un lenguaje que permite la bsqueda de informacin en documentos XML por
medio de expresiones especficas para su estructura. Est pensado para optimizar los
tiempos de bsqueda haciendo uso de la organizacin de nodos que poseen los ficheros
XML.
Como cualquier medio para el almacenamiento y bsqueda de datos, es posible
implementarlo en aplicaciones web, de modo que pueden sustituir a los SGBD (sistema
gestor de base de datos) basados en SQL.
XPath Injection es una vulnerabilidad que radica en la modificacin de los parmetros de
bsqueda a la hora de formar una query XPath.
Una inyeccin XPath sucede cuando se inserta cdigo XPath dentro de la sentencia, y
ejecuta el cdigo inyectado dentro del motor de bsqueda XML.Este tipo de
vulnerabilidades basadas en inyecciones (XPath Injection, SQL Injection, LDAP
Injection...) son fallos de seguridad causados por una mala programacin de la aplicacin
que hace la conexin contra el motor de bsqueda, sin importar que la aplicacin sea de
escritorio o web.

Inyeccin de cdigo
Code Injection es el trmino general para el tipo de ataques que tratan de inyectar cdigo
que es interpretado/ejecutado por la aplicacin. Este tipo de ataques explota el manejo
pobre de informacin no confiable. Este tipo de ataques son habitualmente posibles por
no validar apropiadamente las entradas y salidas de datos, por ejemplo:

Caracteres permitidos (expresiones regulares, clases o personalizadas)


Formato de los datos
Cantidad de datos esperada.

Code Injection difiere de Command Injection en que un atacante esta limitado por las
funcionalidades del lenguaje inyectado. Si un atacante es capaz de inyectar cdigo PHP
en la aplicacin y hacer que este sea ejecutado, l solo estar limitado por lo que PHP es
capaz de hacer. Command Injection ( Inyeccin de comandos) consiste en el
aprovechamiento de cdigo existente para ejecutar comandos, normalmente sin el
contexto de la SHELL.

Inyeccin LDAP
LDAP son las siglas de Lightweight Directory Access Protocol (en espaol Protocolo
Ligero de Acceso a Directorios) que hacen referencia a un protocolo a nivel de aplicacin
el cual permite el acceso a un servicio de directorio ordenado y distribuido para buscar
diversa informacin en un entorno de red. LDAP tambin es considerado una base de
datos (aunque su sistema de almacenamiento puede ser diferente) a la que pueden
realizarse consultas.
Un directorio es un conjunto de objetos con atributos organizados en una manera lgica y
jerrquica. El ejemplo ms comn es el directorio telefnico, que consiste en una serie de
nombres (personas u organizaciones) que estn ordenados alfabticamente, con cada
nombre teniendo una direccin y un nmero de telfono adjuntos.
En resumidas cuentas podemos decir que se trata de un protocolo que permite acceder
a un servicio de directorios donde se almacena la informacin, para ser usada
posteriormente, dentro de la red de una corporacin. Podemos imaginar que es como una
llave a las pginas amarillas: dependiendo de cmo est constituido el rbol LDAP
podramos encontrar desde nombres, correos, direcciones, nombres de usuarios, puesto
de trabajo, ordenador asignado, etc. es decir un conjunto de informacin muy interesante
para un posible atacante.

Qu se puede hacer? Realizar una validacin estricta de los datos de entrada o lo que
conocemos como desinfeccin de parmetros del lado del servidor. De nada sirve validar
los datos con JavaScript en estos casos, el atacante utiliza formularios forjados o
simplemente deshabilita el JavaScript en su navegador.

Inyeccin ORM
Es parecida a la SQL, pero en ste caso se usa una inyeccin SQL contra un modelo de
objeto generado de acceso a datos. Desde la perspectiva del atacante, este ataque es
virtualmente idntico a un ataque de inyeccin SQL; no obstante, la vulnerabilidad que
facilita la inyeccin reside en el cdigo generado por la herramienta ORM.

Anda mungkin juga menyukai