Universidad Autónoma de Nuevo León Facultad de Ciencias Físico Matemáticas Laboratorio de Seguridad en aplicaciones web Practica 1: Guía de configuración de laboratorio objetivos: Familiarizar al estudiante con ambientes virtualizados que le permiten la instalación de sistemas operativos invitados en este caso una distribución GNU/Linux pensada y diseñada para la auditoría de seguridad y relacionada con la seguridad informática en general: kali. Entregables: - Pantallas de instalación exitosa de kali Requerimientos básicos: Windows XP, Vista, 7: Mac OSX: - 4 GB de RAM - 4GB de RAM - 120 de Disco Duro - 120 de Disco Duro Programas Requeridos: - Virtual Box 4.2.6. 1 Descarga el programa de instalación de Virtual box de la siguiente liga: https://www.virtualbox.org/wiki/Downloads Windows: Para Windows selecciona el botón azul “X86/amd64” para iniciar la descarga También puedes copiar y pegar la siguiente liga en un buscador y se descargara automáticamente el instalador de Windows : http://download.virtualbox.org/virtualbox/4.2.6/VirtualBox-4.2.6-82870-Win.exe Mac OSX: Para Mac OSX selecciona el botón azul “X86/amd64” para iniciar la descarga También puedes copiar y pegar la siguiente liga en un buscador y se descargara automáticamente el instalador de Macbook : Mac: http://download.virtualbox.org/virtualbox/4.2.6/VirtualBox-4.2.6-82870-OSX.dmg 2 Descarga la versión de tu sistema operativo.: Kali Linux Para realizar la descarga del sistema operativo kali selecciona la siguiente liga: http://www.kali.org/downloads/ 3 Instalación de Maquina Virtual Una vez realizado la descarga de Kali, abrir VM y crear una nueva máquina virtual, presione “New” Ingresa el nombre del sistema Operativo que se esta instalando en este caso “ Kali” 4 Selecciona la memoria RAM de la maquina virtual se recomienda 1024 Crea el disco duro virutal seleccionando la opcion “ Create a virtual Hard Drive “ 5 Selecciona el tipo de Disco duro “ VDI (VirtualBox Disk Image” Elige la opcion de almacenamiento dinamico “ Dynamically allocated” 6 Ingresa el tamaño del disco duro el cual se recomienda que sea de “32 GB” al terminar preciona el boton de “Create” Existen 2 tipos de adaptadores de Red “ NAT” y “BRIDGE” que explicaremos a continuación: Adaptador NAT al seleccionar este adaptador de red significa que tu maquina virtual saldrá a Internet a través de tu computadora local. (RECOMENDADO) 7 Adaptador BRIDEGE al seleccionar este adaptador de red significa que tu maquina virtual saldrá a Internet como si fuera otro equipo conectado a la misma red de tu equipo local. Por último presiona el botón de “OK” y la flecha verde “Start” de la parte superior para iniciar la maquina virtual. 8 Para inicial el modo grafico primero debes de iniciar sesión como root para ello en la parte de “ login” ingresa el usuario “ root ” y el password “toor” Para iniciar el modo grafico ingresa “ startx” Una vez instalado kali, procederemos a realizar las actualizaciones requeridas, para ello vamos a utilizar 3 comandos “ apt-get update “ , “ apt-get upgrade “ y “msfupdate” para ello abrimos una terminal ó consola de comando presionando el icono 9 Ejecutamos primero el comando “apt-get update ” Después procedemos a actualizar con el comando “ apt-get upgrade “ 10 Por último actualizamos la consola Metasploit utilizando el comando “msfupdate” Comandos básicos de Linux A continuación mostraremos algunos comando básicos de linux los cuales deberán ser ejecutados para ver la función que cada uno desarrolla. ls: list. listar contenido de directorios. Ejemplos: ls, ls -l, ls -fl, ls --color cp: copy. copiar ficheros/directorios. Ejemplos:cp -rfp directorio /tmp, cp archivo archivo_nuevo rm -fr: remove. borrar ficheros/directorios. Ejemplos: rm -f fichero, rm -rf directorio, rm -i fichero mkdir: make dir. crear directorios. Ejemplos: mkdir directorio rmdir: remove dir. borrar directorios, deben estar vacíos. Ejemplos: rmdir directorio mv : move. renombrar o mover ficheros/directorios. Ejemplos: mv directorio directorio, mv fichero nuevo_nombre, mv fichero a_directorio chmod: cambia los permisos de lectura/escritura/ejecución de ficheros/directorios. Ejemplos: chmod +r fichero, chmod +w directorio, chmod +rw directorio -R, chmod -r 11 fichero file: nos dice de que tipo es un fichero. Ejemplos: file fichero, file * find : Permite encontrar un archivo con el nombre especificado, a partir del directorio especificado. Ejemplos find / -name nombrearchivo. Comandos Para manejo de dispositivos Montar usb, cd, floppy, particiones windows fat32 y ntfs mount: Permite que particiones del sistemas, CD-ROMs, floppys puedan ser leídas en el sistema. Su formato: mount -t <file system(ext2,vfat)> <partición (/dev/hda1,/dev/cdrom)> <punto de lectura "mount point" (/mnt/home/ /mnt/cdrom)>. umount: Desactiva la partición que se indicada, los parámetros que toma este comando son similares a los de mount . free : Estadísticas de uso de Memoria. lsmod : Despliega la información referente a los módulos que están habilitados por el "kernel". mount Permite que particiones del sistemas,CD-ROMs, floppys puedan ser leídas en el sistema. Su formato: mount -t <file system(ext2,vfat)> <partición (/dev/hda1,/dev/cdrom)> <punto de lecutra"mount point" (/mnt/home/ /mnt/cdrom)>. Vea también /etc/fstab . locate: Realza la busqueda de algun programa o archivo situado en alguna direccion. sudo : Ejecuta un comando como usario raiz ("root"), significa "super user do"(Super usuario hacer). Vea el archivo /etc/sudoers/ para configuraciones relacionadas con este comando. umount : Desactiva la partición que se indicada, los parámetros que toma este comando son similares a los de mount . uname -a : Información completa sobre el "Host". uptime : Hora actual, tiempo que lleva el sistema corriendo desde el ultimo "reboot", usuarios conectados al servidor, carga del sistema en los últimos 1,5 y 15 minutos. hostname : El nombre del "Host". En entorno de Red host : Determina la dirección IP de un "Host" , host -a despliega toda la información de DNS. ifconfig : Permite configurar una interfase de Red y ver el "status" de ésta.Esa de la forma ifconfig <interfase> , ejemplo: ifconfig eth0 ifup : Habilita la interfase especificada,ejemplo: ifup eth0 . ifdown : Deshabilita la interfase especificada,ejemplo: ifdown eth0 . 12 nslookup: Busca información en los servidores DNS, ejemplo: nslookupquery=mx osomosis.com , si no se especifican parámetros se entra en modo interactivo netstat -a : Todas la conexiones de Red originadas y recibidas por el "Host" netstat -an | grep 25 : Listar las conexiones de red originadas y recibidas por el "Host", sobre el puerto 25 netstat -r : Muestra la tabla de ruteo "routing table" del sistema netstat -i : Estadísticas de red de cada interfase lsof -n -i:25 : Determinar el programa del sistema operando bajo el puerto 25 nslookup : Busca información en los servidores DNS,ejemplo: nslookup -query=mx osomosis.com , si no se especifican parámetros se entra en modo interactivo ping -s 1016 : Manda paquetes de ping de 1024 bytes (header 8 bytes), mientras que el "default" es 512. Control de Procesos ps -aux : Despliega todos los procesos del sistema, con nombre y tiempo de inicio kill : Es utilizado para mandar señales a los procesos en Linux. kill -HUP <pid> : Señala al proceso con numero <pid>, que vuelva a leer sus archivos de configuración kill -INT <pid> : Señala al proceso con numero <pid>, que sera interrumpido kill -TERM <pid> : Señala al proceso con numero <pid>,que debe de terminar, a diferencia de -KILL , esta opción da la oportunidad al proceso de terminar. kill -STOP <pid> : Señala al proceso con numero <pid>, que pare momentáneamente kill -CONT <pid> : Señala al proceso con numero <pid>, que continué, este comando se utiliza para reanudar un proceso que le fue aplicado -STOP kill -KILL <pid> : Señala al proceso con numero <pid>,que termine de inmediato, el proceso es terminado abruptamente. killall : A diferencia de kill , killall permite mandar un señal al proceso por nombre. killall <nombre del proceso > : Envía la señal -TERM al proceso con el nombre especificado. NOTA:Por "default" la señal que toma kill y killall es -TERM . adduser: añadir usuario de sistema. Ejemplos: adduser pepe, adduser -s /bin/false pepe userdel: liminar usuario de sistema Ejemplos: userdel pepe usermod: modificar usuario de sistema Ejemplos: usermod -s /bin/bash pepe 13 df : disk free. Espacio en disco disponible. Muy util. Ejemplos: df, df -h free: muestra el estado de la memoria RAM y el SWAP. Ejemplos: free ping: herramienta de red para comprobar entre otras cosas si llegamos a unhost remoto. Ejemplos: ping www.ejemplo.com traceroute: herramienta de red que nos muestra el camino que se necesita para llegar a otra maquina. Ejemplos: traceroute www.ejemplo.com 14