Sie sind auf Seite 1von 10

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

FACULTAD DE INFORMÁTICA Y ELECTRÓNICA


ESCUELA DE INGENIERIA EN SISTEMAS

APLICACIÓN DEL ALGORITMO SHA 1 PARA ENCRIPTACIÓN DE CLAVE


EN REGISTRO, IMPLEMENTACIÓN DE CERTIFICADO SSL Y EVITAR EL
ATAQUE SQL INJECTION EN UNA APLICACIÓN WEB

Doménica Falconí, dome.95@hotmail.es


Andrea Cando, andreitac-1995@hotmail.com
Alex Fernando Vinueza Armas, alexvinu@live.com

RESUMEN

En el presente documento abordaremos varias vulnerabilidades a las que puede estar


propensa una aplicación web, con el uso de un algoritmo criptográfico llamado SHA 1
diseñado por la NSA hoy en día la familia del SHA tiene sus sucesores como los SHA 2 y
se espera el SHA 3, un algoritmo usado para la encriptación de claves de registro sucesor
del método MD5 que ya está en desuso, abordaremos también los ataques de SQL
INJECTION, dicho ataques que se centran en explotar la vulnerabilidad en las entradas a la
base de datos, e ingresar al sistema sin haber sido registrado e inyectar código malicioso y
por últimos veremos los certificados SSL que son un archivo pequeño el cual se encarga de
dos funciones específicas, la autentificación y verificación de la persona o empresa que se
puede ver en el candado en la parte superior y el cifrado de datos que busca que solo el
destinatario pueda leer lo que se ha enviado y así evitar que se intercepte dicha información.

INTRODUCCIÓN matemáticos y se están cambiando a


SHA-2, Los ataques SQL Injection
SHA-1 se encarga de la encriptación de la explotan una vulnerabilidad en la
clave de registro de una aplicación para validación de las entradas a la base de
evitar que la información que pudiese ser datos de una aplicación. Una inyección
robada no puede ser entendida por dicho SQL consiste en inyectar un código SQL
atacante, el SSL busca evitar el robo de la invasor dentro de otro código SQL para
información en curso o en tránsito para alterar su funcionamiento normal
que no pueda ser interceptada y llegue a haciendo que se ejecute el código invasor
su destinatario, la INJECTION SQL es un en la base de datos, dicha vulnerabilidad
método que vulnera el registro a la BD e puede ser evitada con la inserción de
ingresa a la misma inyectando un pedazo código php ya establecidos para este
de código indetectable en La aplicación caso, SSL significa "Secure Sockets
para dañar o robar información de la Layer". SSL Definición, Secure Sockets
misma. Layer es un protocolo diseñado para
El algoritmo SHA 1 es un método permitir que las aplicaciones para
criptográfico asimétrico sucesor de SHA 0 transmitir información de ida y de manera
y este sucesor del método MD5 que ya segura hacia atrás. algunas aplicaciones
está en desuso o tapa las vulnerabilidades que están configurados para ejecutarse
de este método, este parte de una SSL incluyen navegadores web como
información de entrada de longitud Internet Explorer y Firefox, los programas
indeterminada y obtiene como respuesta de correo como Outlook, Mozilla
o salida un código SHA-1, el que produce Thunderbird, Mail.app de Apple, y SFTP
un código hash de 160 bits para (Secure File Transfer Protocol)
longitudes máximas de 264 bit aunque programas, etc Estos programas son
SHA-1 ya se está mostrando en desuso ya capaces de recibir de forma automática
que este tiene fallas en sus algoritmos SSL conexiones.
OBJETIVOS
valor de dispersión de
GENERAL
dicha concatenación.
- Evitar el robo de información en
2. A envía a B el valor de
tránsito, el ingreso de código
malicioso a la base de datos y dispersión y el mensaje.
encriptar claves de acceso por un
posible robo de información. 3. B concatena la clave

ESPECIFICOS secreta al mensaje que


recibió y calcula el valor de
- Conocer el funcionamiento y
aplicación del SHA-1 en una dispersión de la
aplicación.
- Evitar el ingreso no autorizado a concatenación.
una base de datos con código en 4. B compara el valor de
la misma.
- Activar y crear los certificados SSL dispersión que obtuvo con
y así evitar la posible intercepción el que le envió A, si éstos
de información en curso.
coinciden, B puede tener
MARCO TEÓRICO
la confianza de que el
FUNCIONES HASH
mensaje no ha sido
Las funciones hash, son funciones modificado.
matemáticas tienen una secuencia de bits  Creación del código MAC
de tamaño fijo llamada valor hash. (Message Authentication Code),

En una función hash unidireccional, permite comprobar que el

conocida también como función resumen, mensaje posea integridad,

es imposible encontrar dos mensajes además de permitir la

originales con el mismo valor hash, autenticación de la persona que

llamado huella digital. envié, siendo que este debe tener


como conocimiento previo la clave
La principal aplicación de los algoritmos
de destinatario.
hash es la creación de códigos de
verificación: SHA1

 Creación del código MIC


Fue un algoritmo creado por NICS en
(Message Integrity Code): nos
1995 SHA-1.
permite verificar si un mensaje ha
Tiene como entrada una longitud máxima
sido, teniendo previamente las
de 264 bits que se dividen en bloques de
claves respectivas.
512 bits, con un resultado de 160 bits.
1. A concatena al mensaje la
clave secreta y calcula el
Este proceso se realiza en 5 pasos, que
son los siguientes:
1. Se debe realizar un relleno al mensaje de
entrada, tal que la longitud de este llegue
a ser igual a log=448 mod 512, aunque no
tenga la longitud debe realizarse el
relleno.
2. Se le añade un bloque de 64 bit haciendo
alusión a la longitud original del mensaje La entrada a cada ronda consta del bloque
sin el relleno. de 512 bits que se esté procesando (Yq) y
3. Existe una memoria temporal MD, de 160 los 160 bits de la memoria MD, cada
bits la cual guarda los resultados bloque de 512 bits actualizará el valor de
intermedios y finales de la función de la memoria temporal. Cada ronda también
dispersión. La MD consta de 5 entradas hace uso de la constante aditiva Kt,
(A, B, C,D,E) de 32 bits con los siguientes donde indica uno de los 80
valores predefinidos pasos a lo largo de las cuatro rondas.
A=67452301
B=EFCDAB89
C=98BADCFE
D=10325476
E= C3D2E1F0
4. Se procesa el mensaje por bloques de 512
bits, cada uno pasa por un módulo que
consta de 4 rondas con 20 pasos cada 5. Luego de todo este proceso, el
tamaño de la salida del bloque
una. Las rondas ocupan una función será de 160 bits.
lógica primitiva diferente (f1, f2, f3 y f4). SSL
"Secure Sockets Layer" es un sistema
diseñado para permitir que las Crear confianza con el cliente
aplicaciones puedan enviar información
encriptada y que de igual manera regrese, Estamos en la era donde la seguridad es
evitando de este modo que pueda ser vulnerable constantemente y los clientes
leída por terceros. Este es un protocolo suelen desconfiar cuando se trata de
comprar. Por lo tanto, resguardar la
que permite asegurar una alta confianza
información de los usuarios será
en el comercio electrónico.
indispensable, sobre todo si es que se van
“SSL implementa un protocolo de tratado a realizar transacciones, ya que el
para establecer una comunicación segura certificado protegerá los datos.
y confiable a nivel de socked (nombre de
máquina más puerto), de forma SSL garantiza la integridad de las
transparente al usuario y a las comunicaciones en las redes mediante
aplicaciones que lo usan. “[1] Certificados Digitales que implican
procesos de encriptación, autenticación y
Función de un certificado ssl
verificación. Es decir, proporciona
“Un Certificado SSL opera como una autenticación de las partes que participan
credencial en la industria electrónica. De en las transacciones en línea y encripta
esta manera, realiza la identificación de un las sesiones de comunicación.
dominio específico y un servidor web. La
Principales usos de SSL
validez de esta credencial depende de la
confianza en la Autoridad de Certificación
que la emitió. “ [2] El principal uso del protocolo SSL, es el de
proteger la información personal utilizada
para el comercio electrónico.

También, es utilizado para proteger la


privacidad de los usuarios de ciertas
plataformas de e-mail y servidores de
correo, como Gmail, evitando que
atacantes informáticos puedan interceptar
información importante de sus usuarios.

Además, es ampliamente utilizado en los


formularios de datos de las páginas web
para proteger los datos de los usuarios y
evitar que sean utilizados para robo de
En general, con tres elementos identidad o fraudes electrónicos.
esenciales: 1) Protocolo de
comunicaciones, 2) Certificado como un
Por qué contratar un Certificado SSL
conjunto de pruebas para establecer la
identidad y 3) Tercero confiable o
En la actualidad, las conexiones seguras
Autoridad de Certificación que da fe sobre por internet ya no solo es parte de las
la legitimidad de las pruebas de identidad. personas que están metidas en este
[3] mundo. Sino que conectarse a internet es
muy fácil para todas las personas, revisar
Seguridad Online
archivos en el ordenador de sobremesa,
El certificado SSL es la tecnología que recibir un mensaje o cualquier otra cosa
ofrece la solución en seguridad online, es nos conecta al mundo virtual. Son
indispensable comprarla si es que vas a millones de usuarios que están
crear una tienda virtual, debido a que conectados todos los días, ya sea por el
garantizas a los clientes que tu web es trabajo o su entretenimiento. Es así que
segura tanto navegar por ella y también cuando la persona decide crear una
comprar con normalidad. página web, y al contratar su servidor
hosting será necesario que brinde una Creamos una clave privada con el
conexión segura a sus usuarios o clientes. siguiente comando, nos pedirá un
password, recordarlo.
Si es que cuentas con una página web o
tienda virtual donde los usuarios van a openssl genrsa -des3 -out server.key
ingresar información personal o 1024
confidencial, es importante contratar un
certificar SSL para que el usuario pueda Explicación
navegar por tu web con toda seguridad,
así también podrás asegurar que tu sitio  openssl -> Establece que vamos a
web es oficial. Contar con un certificado trabajar con OpenSSL.
de este tipo es como la seguridad de un
banco, ingresas tu contraseña, pagas con  genrsa -> Indica que se va a
tu tarjeta y todo sin ningún problema ni generar una clave RSA.
robo de información, es decir que nadie
 -des3 -> Define el tipo de
podrá hackear los datos de las personas
que están en tu web. [4] encriptación (yo usaré AES con un
bloque de 256 bits, pero se
Configurar un certificado SSL en pueden utilizar los siguientes
XAMPP cifrados: -aes128 | -aes192 | -
aes256 | -camellia128 | -
Esta es la forma de configurar un
camellia192 | -camellia256 | -des |
certificado SSL dentro de un entorno local
-des3 | -idea).
de desarrollo, en este caso puntual es
XAMPP V3.2.2 corriendo en Windows 10  -out [nombre del archivo] ->
aunque pueden habilitarse también en Establece donde guardará y el
WAMMP con diferentes direcciones. nombre de salida del archivo que
contiene la private key.
#1: Configurar las variables de entorno
 1024 -> Define el largo en bits de
Click derecho en Equipo > seleccionar
la clave (se puede usar 1024 o
Propiedades y en la ventana que se abre,
2048, si no se define, usa 512 bits
en la columna izquierda encontraremos un
por defecto).
link a Configuración avanzada del sistema

En la ventana que se abre, dentro de la


solapa Opciones avanzadas, hacer click Quitamos la contraseña de la clave
sobre el botón Variables de entorno, se privada y creamos una copia de seguridad
abrirá una nueva ventana. del archivo, nos pedirá la contraseña
ingresada anteriormente.
Allí deberemos agregar una nueva
variable de entorno cuyo nombre debe copy server.key server.key.org
ser: OPENSSL_CONF y su valor la ruta
donde se encuentra el archivo openssl rsa -in server.key.org -out
openssl.cnf, en mi caso es: server.key
C:\xampp\apache\conf\openssl.cnf

Aceptamos y cerramos todas las ventanas Creamos un certificado con la clave


#2: Crear el certificado SSL y su clave generada, este comando pedirá
información para su codificación
Abrir la consola (tecla Win + r) y cambiar
el directorio a la carpeta bin de nuestro openssl req -new -x509 -nodes -sha1 -
Apache. days 365 -key server.key -out server.crt -
config
cd C:\xampp\apache\bin C:\xampp\apache\bin\conf\openssl.cnf
Explicación
 req -> Realiza la petición #4: Configuración en el archivo
para crear un certificado httpd.conf
PKCS#10 (un estándar, ver RFC
Abrir el archivo httpd.conf. Lo podemos
2986).
hacer desde el panel del XAMPP, dentro
 -new -> Genera un nuevo del menú Apache o abrirlo desde el
certificado, en caso de no usarlo directorio
se generaría una clave privada
C:\Xampp\apache\conf\
RSA con la configuración hecha
en el archivo de configuración. Descomentar la línea (borrar ;):
LoadModule ssl_module
 -key [nombre del archivo] ->
modules/mod_ssl.so
Especifica el archivo del cual
vamos a leer la clave privada Descomentar la linea: LoadModule
(local.key), también acepta claves setenvif_module
privadas con el formato de modules/mod_setenvif.so
PKCS#8.
Decomentar la linea: Include
 -config [nombre del archivo] -> conf/extra/httpd-ssl.conf y moverla dentro
Permite una configuración del bloque <IfModule
alternativa. En este caso usamos ssl_module>…</IfModule>
la que viene por defecto en
XAMPP. #5: Configuración en el archivo php.ini

Abrir el archivo php.ini. Lo podemos hacer


 -out [nombre del archivo] ->
desde el panel del XAMPP.
Establece donde guardará y el
nombre de salida del archivo del Quitar el comentario (borrar ;) de la linea
CSR. que dice: extension=php_openssl.dll
#6: Configuración en el archivo httpd-
ssl.conf
# 3. Almacenando los certificados
Abrir el archivo httpd-ssl.conf. Lo
Creamos una carpeta llamada OpenSSL
podemos hacer desde el panel del WAMP,
dentro de nuestra instalación de WAMP,
dentro del menú Apache.
adentro creamos las siguientes
subcarpetas:
Encontrar las directivas para el virtual host
 certs y dejarlas como se muestra muestro
 crl abajo:
 newcerts
 private DocumentRoot "c:/xampp/htdocs"

Copiamos los siguientes archivos de ServerName localhost:443


C:\xampp\apache\bin\ a
C:\xampp\OpenSSL\certs\ ServerAdmin nuestro_mail@mail.com
 server.crt ErrorLog "c:/wamp/logs/ssl_ErrorLog.txt"
 server.key
TransferLog
"c:/wamp/logs/ssl_TransferLog.txt"
Copiamos los siguientes archivos de
C:\xampp\apache\bin\ a Actualizar el valor para SSLCertificateFile:
C:\xampp\OpenSSL\private\
SSLCertificateFile
server.key.org "c:/xampp/OpenSSL/certs/server.crt"
Actualizar el valor para suele ser muy sencilla. Por ejemplo,
SSLCertificateKeyFile: cuando la base de datos forma parte de
un software de código abierto o disponible
SSLCertificateKeyFile públicamente con una instalación
"c:/wamp/OpenSSL/certs/server.key" predefinida, dicha información se
encuentra completamente libre y
# 7. Verificar si está habilitado el SSL utilizable. Esta información podría haber
sido divulgada en proyectos de código
En la consola escribir el siguiente cerrado (incluso si está codificada,
comando, si nos muestra Syntax OK está ofuscada o compilada), o incluso por el
todo correcto, solo restaría reiniciar el propio código mediante la visualización de
Apache. mensajes de error. Otros métodos
incluyen el uso de nombres frecuentes de
httpd –t tablas y columnas. Por ejemplo, un
formulario de inicio de sesión que utiliza
En caso de que tengamos algún error nos una tabla 'usuarios' con los nombres de
dará detalle del mismo y deberemos
columna 'id', 'username', y 'password'.
corregirlo hasta que esté todo correcto.
“Estos ataques se basan principalmente
Hecho esto deberíamos habilitar el
en explotar el código que no ha sido
certificado para lo cual buscamos nuestro
certificado: escrito teniendo en cuenta la seguridad.
Nunca se ha de confiar en ningún tipo de
 en Chrome entramos a entrada, especialmente la que viene del
configuraciones y nos lado del cliente, aun cuando esta venga de
desplazamos hasta un cuadro de selección, un campo oculto
configuraciones avanzadas. o una cookie. El primer ejemplo muestra
 Buscamos administrar cómo una inofensiva consulta puede
HHTPS/SSL y entramos en causar desastres.” (2)
administrar certificados
Se dice que existe o se produjo una
 Ingresamos a entidades de
certificados de raíz e importamos inyección SQL cuando, de alguna manera,
nuestro certificado aceptamos y se inserta o "inyecta" código SQL invasor
listo el certificado estará en verde dentro del código SQL programado, a fin
en el localhost de modificar el funcionamiento normal del
programa y lograr así que se ejecute la
porción de código "invasor" incrustado, en
SQL INJECTION la base de datos.
Una inyección SQL en una técnica en la
que un atacante crea o altera comandos La vulnerabilidad se puede producir
para exponer información que es oculta, automáticamente cuando un programa
sobrescribirla o alterarla, o lo que resulta "arma descuidadamente" una sentencia
aún peor, ejecutar comando que ponen en SQL en tiempo de ejecución, o bien
riesgo el sistema en el equipo que durante la fase de desarrollo, cuando el
hospeda la base de datos. programador ejecuta de forma
desprotegida la sentencia SQL. En
“Esto se logra cuando un atacante toma la cualquier caso, siempre que el
entrada del usuario y la combina con programador necesite y haga uso de
parámetros estáticos para elaborar una parámetros a ingresar por parte del
consulta SQL.” (1) usuario, a efectos de consultar una base
A pesar de que pueda parecer lógico que de datos, dentro de los parámetros es
un atacante debe tener al menos algún donde se puede incorporar el código SQL
conocimiento de arquitecturas de bases intruso. De esa forma, al ejecutarse esa
de datos para poder realizar un ataque consulta por la base de datos, el código
con éxito, la obtención de esta información SQL inyectado también se ejecutará y
podría hacer un sinnúmero de cosas, desarrollada con las medidas de
como, por ejemplo: insertar registros, seguridad adecuadas, esta
modificar o eliminar datos, autorizar consulta resultará en una
accesos e, incluso, ejecutar código condición verdadera y la consulta
malicioso. original arrojará todos los
resultados. Suponiendo que se
Entonces, una Inyección SQL sucede tiene una consulta como la
cuando se inserta o "inyecta" un código siguiente:
SQL "invasor" dentro de otro código SQL
"nativo" para alterar su funcionamiento SELECT * FROM usuarios WHERE
normal, y hacer que se ejecute usuario=’$usuario’ AND
maliciosamente el código "asaltante" en la password=’$password’;
base de datos y su entorno.
 Con la consulta anterior, los
Una vulnerabilidad de tipo SQL Injection parámetros inyectables
puede ser explotada tanto a través del son ‘$usuario’ y ‘$password’. Si se
método GET como del método POST. La aplica la inyección antes
práctica más común es hacerlo a través especificada sobre ambos
del primero, sin (3)embargo, hacerlo a parámetros, la consulta original se
través del método POST puede llegar a transformará en la siguiente:
devolver los mismos resultados. En el
mundo de la seguridad informática SELECT * FROM usuarios WHERE
quienes descubren o investigan usuario=’ OR ‘1’=’1‘ AND password=’ OR
vulnerabilidades suelen hacer scripts que ‘1’=’1‘;
automatiz (4)an la explotación de las  Así mismo, la consulta arrojará
mismas, para el caso de SQL Injection las todos los resultados y por
más comunes son: consecuencia el
 Sqlmap: Tal vez la más famosa, ciberdelincuente conocerá toda la
desarrollada en python por información alojada en esa tabla.
Bernardo Damele y Miroslav Esto se debe a que “1=1” es
Stampar. siempre verdadero. Tal como
dijimos anteriormente, esta es una
 Havij: Desarrollada por la de las inyecciones más clásicas y
empresa ITSecTeam. es fácilmente solucionable.

 SqlNinja: Desarrollada en Perl,


usada para explotar aplicaciones
MEDIDAS A TOMAR PARA EVITAR
web que usan como back-end a
ATAQUES POR INYECCIÓN SQL
Microsoft Sql Server. (3)
Cuando se desarrolla una aplicación, es
¿Qué tipos de ataques existen?
imposible crear una herramienta
 Existen muchos tipos de ataques totalmente segura. La falta de tiempo y la
y se crean nuevos con mucha intervención de varios programadores
frecuencia, entre los más para su desarrollo, son factores que
comunes y clásicos es aquel que juegan en contra de la seguridad. A pesar
permite la validación de una de estos inconvenientes, si tomamos en
condición de consulta como cuenta ciertas medidas de seguridad
verdadera. Esto se logra a través lograremos desarrollar aplicaciones más
del simple: robustas, ajenas a este tipo de problemas.

[‘OR ‘1’=’1] Vamos amostrar algunos consejos para


evitar el ataque por inyección de código
 Con esta simple instrucción, si la SQL en nuestros desarrollos:
sección de código donde se
realiza la consulta no se encuentra
a) Escapar los caracteres ctype_digit() para saber si es un número o
especiales utilizados en las consultas ctype_alpha () para saber si se trata de
SQL una cadena de texto en el caso del
lenguaje PHP.
Al hablar de “escapar caracteres” estamos
haciendo referencia a añadir la barra También es aconsejable comprobar la
invertida “\” delante de las cadenas longitud de los datos para descartar
utilizadas en las consultas SQL para evitar posibles técnicas de inyección SQL, ya
que estas corrompan la consulta. Algunos que si por ejemplo estamos esperando un
de estos caracteres especiales que es nombre, una cadena extremadamente
aconsejable escapar son las comillas larga puede suponer que estén intentando
dobles (“), las comillas simples (‘) o los atacarnos por este método. En el caso de
caracteres \x00 o \x1a ya que son PHP, podemos utilizar la función strlen()
considerados como peligrosos pues para ver el tamaño de la cadena.
pueden ser utilizados durante los ataques.
d) Asignar mínimos privilegios al
Los distintos lenguajes de programación usuario que conectará con la base de
ofrecen mecanismos para lograr escapar datos
estos caracteres. En el caso de PHP
podemos optar por la función El usuario que utilicemos para
mysql_real_scape_string(), que toma conectarnos a la base de datos desde
como parámetro una cadena y la modifica nuestro código debe tener los privilegios
evitando todos los caracteres especiales, justos para realizar las acciones que
devolviéndola totalmente segura para ser necesitemos. No utilizar nunca un usuario
ejecutada dentro de la instrucción SQL. root con acceso a todas las bases de
datos ya que de esta forma estaremos
b) Delimitar los valores de las dando facilidades a los hackers para que
consultas puedan acceder a toda la información.

Aunque el valor de la consulta sea un e) Programar bien


entero, es aconsejable delimitarlo siempre
entre comillas simples. Una instrucción Aunque pueda parecer una tontería, no
SQL del tipo: hay mejor medida para evitar este tipo de
ataques que realizar una buena
SELECT nombre FROM usuarios WHERE programación, poniendo en práctica las
id_user = $id necesidades básicas y el interés para
desarrollar una aplicación totalmente
Será mucho más fácilmente inyectable segura.
que:
Además de las medidas que podemos
SELECT nombre FROM usuarios WHERE tomar a la hora de implementar el código,
id_user = ‘$id’ siempre podemos acudir a auditorías de
Donde $id es un número entero. código para asegurarnos de que no
hemos dejado ningún tipo de puertas
c) Verificar siempre los datos que abiertas, aunque suelen ser procesos
introduce el usuario caros realizados por terceras empresas.
(5)
Si en una consulta estamos a la espera de
recibir un entero, no confiemos en que sea RESULTADOS Y DISCUSIÓN
así, sino que es aconsejable tomar
medidas de seguridad y realizar la Hoy en día la seguridad informática es un
comprobación de que realmente se trata aspecto muy importante al momento de
del tipo de dato que estamos esperando. crear una aplicación web que contenga
Para realizar esto, los lenguajes de información personal de una persona que
programación ofrecen funciones que fuera a utilizar dicha aplicación.
realizan esta acción, como pueden ser
La seguridad viene desde la creación de [2]
la aplicación pues éticamente dicha https://www.certsuperior.com/SSLComoFun
aplicación tendría que tener aplicada un ciona.aspx
método criptográfico como en este caso
SHA1, a la información de relevancia para [3]
que si hubiese un ataque informático la https://www.certsuperior.com/SSLComoFun
información sea imposible de entenderla, ciona.aspx
tomando en cuenta que se pudiese [4]
efectuar un robó en el curso de la https://www.profesionalreview.com/2016/02
información o ataque de hombre en el /24/para-que-sirve-un-certificado-ssl/
medio se debe brindar dicha garantía al
usuario con un certificado SSL, que logra https://support.google.com/adwords/answer
dicha seguridad, y por último y el más /2580401?hl=es-419
conocido una inyección sql que logra
entrar al sistema usando una búsqueda
SQL INJECTION
que siempre será verdadera en usuario o
password, así mismo por ser la más 1. php. [En línea] [Citado el: 28 de 01 de
conocida ya se han tomado las 2016.]
respectivas seguridades y se han creado http://php.net/manual/es/security.databas
códigos php para evitar dicha inyección. e.sql-injection.php. 1.
CONCLUSIONES 2. [En línea] [Citado el: 28 de 01 de 2016.]
https://www.redeszone.net/seguridad-
SHA1 se considera el mejor algoritmo de
informatica/inyeccion-sql-manual-basico/.
esta familia y es el que se aplica en la
4.
mayoría de las aplicaciones de firma
electrónica, sin embargo hoy en día se 3. cristab. [En línea] [Citado el: 27 de 01
está migrando ya a SHA2. de 2016.]
http://www.cristalab.com/tutoriales/como-
Es muy habitual aplicar SHA1 seguido de
funciona-sql-injection-seguro-eres-
RSA para realizar una firma electrónica de
vulnerable-c113268l/. 2.
un documento, o bien el algoritmo DSA
específico para firma electrónica que 4. welivesecurity. [En línea] [Citado el: 27
también utiliza SHA1 internamente. de 01 de 2016.]
http://www.welivesecurity.com/la-
RECOMENDACIONES
es/2013/04/26/funcionamiento-de-una-
inyeccion-sql/. 4.

 En las aplicaciones web es muy 5. pressroom. [En línea] [Citado el: 28 de


recomendable la implementación 01 de 2016.]
de políticas de seguridad misma http://pressroom.hostalia.com/white-
que se expuso en nuestra papers/ataques-inyeccion-sql. 5.
aplicación en PHP.
 Aplicar seguridad para no tener
robo de información Biblioteca Virtual ESPOCH (ebrary)

http://site.ebrary.com/lib/espoch/detail.ac
Referencias tion?docID=10862475&p00=seguridad+inf
ormatica
SSL
[1]
https://www.certstopshop.com/blog/que-
significa-ssl-y-para-que-me-sirve

Das könnte Ihnen auch gefallen