Showing posts with label linux. Show all posts
Showing posts with label linux. Show all posts

Thursday, December 22, 2016

Curso de Linux Basico

Curso de Linux Basico




Curso de LINUX Básico...
El curso cubre conocimientos básicos que un usuario necesita para instalar, configurar y administrar un servidor con el sistema operativo Linux. Los conocimientos impartidos son teórico-práctico basado en escenarios reales para instalar, configurar y administrar un servidor con GNU/Linux, Distribución CentOS 6.5.

Inicio: Sábado 2 de Abril
Horario: 8 AM - 1 PM
Duración: 30 Horas
Información: info@area51.ec
Teléfono: 0992481822
Dirección: Victor Emilio Estrada 602 y las Monjas 2do piso
Guayaquil-Ecuador
Cupos Limitados.
https://www.facebook.com/events/1569509146703750/

Pagos:
Super Anticipado: $150 USD (Febrero 25 - Marzo 6)
Anticipado: $180 USD (Marzo 7 - Marzo 27)
Regular: $200 USD (A partir Marzo 28)
Dirigido a:
• Profesionales, estudiantes y técnicos vinculados a las áreas de tecnología informática, redes de computadoras, bases de datos y telecomunicaciones.
• Administradores de redes de computadoras en general, y específicamente quienes tienen a su cargo un servidor Linux.
Información del curso:

Requisitos del participante:
• Conocimientos generales en administración de sistemas operativos máquina de escritorio.
• Deseable, pero no imprescindible, conocimiento de algún lenguaje de programación.
Objetivos:
Proporcionar conocimientos teórico-prácticos para el desarrollo de habilidades que incluyen:
Conocer conceptos de software libre, GNU y GPL.
Conocer sobre los requisitos y características del sistema operativo Linux, así como su aplicación en el mercado.
Instalar sistema operativo Linux.
Configurar el arranque y apagado del sistema.
Conocer el manejo de un sistema operativo Linux.
Seguridad Hardening aplicado al sistema operativo.
Administrar usuarios.
Administrar sistemas de archivos.
Administrar procesos, en línea de comando, búsquedas y asignaciones de permiso a archivos y aplicaciones.
PROGRAMA DETALLADO

I. Introducción al Software Libre.
1.1 Qué es GNU/Linux.
1.2 Historia.
1.3 Distribuciones.
1.4 Características.
1.5 Licenciamiento.
1.6 Aplicación de Linux en el Mercado.
II. Linux Instalación y Configuración.
2.1 El diseño del disco duro.
2.2 Instalar un gestor de arranque.
2.3 Configuración de Red.
2.4 Rutas de soporte vía consola
2.5 Esquemas de seguridad.
2.5 Estructura de redes lan
2.6 Diseños de topologías con escalabilidad.
2.7 Diseño con DMZ.
III. Arquitectura del Sistema.
3.1 Determinando y Configurando el hardware.
3.2 Arranque del sistema.
3.3 Cambiar los niveles de ejecución e inicio y apagado del sistema.
3.4 Asegurando el inittab
3.5 Modos de recuperación
IV. Comandos Básicos
4.1 Trabajando con la línea de comando.
4.2 Gestión básica de archivos.
4.3 Buscando archivos de sistema y ubicando archivos en la ruta correcta.
4.4 Flujos de texto utilizando filtros.
4.5 Operación básica de archivos usando VI.
4.6 Gestión de Usuarios.
4.7 Administrar los permisos de archivos y propiedad.
4.8 Crear y cambiar enlaces duros y simbólicos.
V. Aplicaciones Gráficas
5.1 Webmin.
5.2 Instalación de Aplicaciones RPM
5.3 Instalación de Aplicaciones .tar, .gzip.
5.4 Apache httpd
5.5 Vsftpd
5.6 Respaldos y restauración
VI. Seguridad
6.1 enmascaramiento de la red
6.2 Proxy server
6.3 Escenarios de proxy en la red
6.4 Vulnerabilidades
6.5 Firewall básico con iptables

Available link for download

Read more »

Thursday, November 3, 2016

Instalación de Kali Linux desde una memoria USB

Instalación de Kali Linux desde una memoria USB






  • Instalando Kali Linux 


El arranque y la instalación de Kali desde una memoria USB es nuestro método preferido y es la manera más rápida de correrlo. Para hacer esto, primero tenemos que crear la imagen ISO de Kali en una unidad de USB. Si a usted le gustaría añadir persistencia a la memoria USB de Kali Linux, por favor lea el documento completo antes de proceder a crear su imagen.

Preparativos para la copia USB

  1. Descarga Kali linux.
  2. En Windows, descargar Win32 Disk Imager.
  3. No se necesita software especial si usa Linux como su sistema operativo.
  4. Una memoria USB (con por lo menos 2GB de capacidad).

Procedimiento para la instalación de Kali Linux desde una memoria USB

Creando una imagen de Kali en Windows

  1. Conecte su memoria USB en el puerto USB de Windows. Inicie el software Disk Imager Win32.
  2. Elija el archivo ISO de Kali Linux con el que creará la imagen y verifique que la unidad USB que será sobrescriba es la correcta.
  3. kali-usb-install-windows
  4. Una vez que la imagen haya sido creada, expulsar de forma segura la unidad USB desde la máquina Windows. Ahora puede utilizar la memoria USB para arrancar Kali Linux.

Creando una imagen de Kali en Linux

La creación de una memoria USB desde la cual pueda arrancar Kali Linux en un entorno de Linux es fácil. Una vez que haya descargado el archivo ISO de Kali, puede utilizar dd para copiarlo a la memoria USB:
ADVERTENCIA. Aunque el proceso de creación de imágenes de Kali en una memoria USB es muy fácil, usted puede fácilmente destruir particiones arbitrarias con dd si usted no entiende lo que está haciendo. Queda advertido.
  1. Conecte el dispositivo USB al puerto USB de su ordenador Linux.
  2. Compruebe que la ruta de su dispositivo de almacenamiento USB con dmesg.
  3. Proceda (con cuidado) a crear la imagen de Kali Linux en el dispositivo USB:
    dd if=kali.iso of=/dev/sdb
Eso es todo, de verdad! Ahora puede arrancar en un entorno Kali Live / Instalador usando el dispositivo USB. 

Agregando persistencia a su memoria USB de Kali Linux



La adición de persistencia (la capacidad de guardar archivos y los cambios a través de arranques en directo) a su imagen de Kali Linux puede ser muy útil en ciertas situaciones. Para agregar persistencia a su memoria USB de Kali Linux, siga estos pasos.En este ejemplo, asumimos nuestra unidad USB es /dev/sdb. Si desea agregar la persistencia, usted necesitará un dispositivo USB más grande que el que encontrarás en nuestros requisitos anteriores.
  1. Cree la imagen de Kali Linux en su memoria USB como se ha explicado anteriormente, utilizando el “Método de Linux” y dd.
  2. Cree y formatee una partición adicional en la memoria USB. En nuestro ejemplo, podemos utilizar gparted invocando:
    gparted /dev/sdb
  3. Su esquema de particionamiento actual debe ser similar a este: usb-persistence-basic-partitioning
  4. Proceda a formatear la nueva partición para ser utilizada para la persistencia. En nuestro ejemplo, hemos utilizado todo el espacio disponible restante. Asegúrese de que la etiqueta de volumen de la partición recién creada sea la de la persistencia, y dele formato utilizando el sistema de archivos ext4.
    usb-persistence-creating-partition
  5. Una vez que el proceso se haya completado, monte su partición persistente USB utilizando los siguientes comandos:
    mkdir /mnt/usb
    mount /dev/sdb2 /mnt/usb
    echo "/ union" >> /mnt/usb/persistence.conf
    umount /mnt/usb
  6. Conecte la memoria USB en el equipo que desea arrancar. Asegúrese de que su BIOS arrancará desde el dispositivo USB. Cuando la pantalla de arranque de Linux Kali aparezca, seleccione “boot en vivo” en el menú (no presione enter), y presione el botón de tabulación. Esto le permitirá editar los parámetros de arranque. Agregue la palabra “persistence” al final de la línea de parámetro de arranque cada vez que quiera montar su almacenamiento permanente.
    usb-persistence
 via

http://docs.kali.org/installation/kali-linux-live-usb-install

Available link for download

Read more »

Tuesday, October 18, 2016

Command injection en ImageMagick Actualiza todos tus servers GNU Linux o te podrían hackear con una imagen

Command injection en ImageMagick Actualiza todos tus servers GNU Linux o te podrían hackear con una imagen


Ha salido a la luz un conjunto de vulnerabilidades que afectan a ImageMagick. Dicho así, puede no decirnos mucho, pero ImageMagick es una de las aplicaciones más utilizadas para la conversión y recorte de imágenes en los servidores de Internet. ImageMagick permite la manipulación y procesado de imágenes en cualquier sitio web. Por defecto, viene instalado en sistemas como Ubuntu, o incluso Kali Linux 2.0.

Figura 1: Command Injection en ImageMagick.

Múltiples vulnerabilidades han afectado al software. Una de las descubiertas puede hacer que se pueda ejecutar código remoto. ¿Cómo? Al enviar una imagen al servidor, y éste vaya a procesarla o convertirla, un error en dicho proceso provoca que se ejecute el código embebido en el fichero. De este modo, se estima que miles de servidores expuestos en Internet son vulnerables a día de hoy.

Además, según se ha explicado el exploit para esta vulnerabilidad está siendo utilizado por algunos usuarios de manera pública, por lo que el riesgo es muy grande. El CVSS de dicha vulnerabilidad es de 10, ya que permite la ejecución de código remoto, sin necesidad de ninguna condición más. A continuación se enumeran todas las vulnerabilidades publicadas:
• CVE-2016-3714. No se filtran caracteres correctamente y potencialmente se puede ejecutar código remoto.
• CVE-2016-3715. Permite borrar archivos en el contexto del servidor.
• CVE-2016-3716. Permite mover archivos.
• CVE-2016-3717. Permite la lectura de ficheros locales.
• CVE-2016-3718. Este es un SSRF, con el que se pueden realizar peticiones HTTP o FTP.
El peligro real

¿Es realmente peligroso? ImageMagick dispone de diversos forks y una serie de plugins, por lo que a priori no se puede saber el número exactos de servidores en Internet que pueden ser vulnerables a esto. Se estima que el número es bastante alto, ya que el software es muy utilizado por los desarrolladores y administradores. La recomendación es clara: hay que actualizar en cuanto se pueda y no esperar más, ya que el nivel de exposición es muy alto.

Para que la ejecución remota tenga éxito se necesita, en primer lugar, subir un archivo a un servidor. Éste solicitará dicha imagen y al procesarla con una versión vulnerable de ImageMagick podría ocurrir algo no deseado por parte del propietario del servidor. Una ejecución de código remoto es la vulnerabilidad más crítica que se puede tener, ya que afecta a confidencialidad, integridad y disponibilidad. Es cierto, que la criticidad dependerá de los permisos del usuario con los que ImageMagick se ejecute.

Sea como sea, en el mejor caso desde el punto de vista del hardening de servidores Linux, solo se podría ejecutar acciones no privilegiadas, que no es poco. En el peor de los casos, se puede disponer de un usuario con el mayor privilegio. Además, siempre está la opción de encadenar una escalada de privilegios con algún otro exploit para GNU/Linux una vez conseguida la ejecución de comandos, así que el nivel de criticidad está bien justificado.

PoC: Ejemplificando la vulnerabilidad

En esta prueba de concepto vamos a utilizar el software ImageMagick disponible, entre otros, en Kali Linux 2.0. En primer lugar, crearemos un archivo denominado poc.jpg y en su interior meteremos el código del payload malicioso, que será del tipo:
push graphic-context
viewbox 0 0 640 480
fill url(https://example.com/image.jpg"|ls "-la)
pop graphic-context
Si nos fijamos en la línea fill ‘url(https://example.com/image.jpg”|ls “-la)’ encontramos la inyección del comando y su potencial ejecución. Cuando ImageMagick procesa el fichero creado, en este caso p.jpg se provoca la ejecución de comandos, en este caso se ejecuta la instrucción ls –la. Al igual que se ejecuta un listado de directorios se podría ejecutar código arbitrario, o no tan arbitrario, como por ejemplo una shell o una Meterpreter de Metasploit.

Figura 2: Ejecución de comandos al usar el comando convert que utiliza ImageMagick

Con el módulo generate_payload_base64 se genera un texto en base64 que representa un binario encodeado. En este ejemplo utilizaremos una Meterpreter en base64. El módulo se queda a la espera con el handler preparado para recibir las conexiones. Es una de las formas similares a la explotación de un Command Injection.

Figura 3: Generando el payload en Metasploit

El fichero JPG tendrá el campo fill con este estilo. El esquema es el siguiente:
• En primer lugar se vuelca en base64 a un fichero dentro del contexto del servidor, echo [shellcode base64] > /tmp/text
• Después, se debe volcar a binario utilizando el base64 –d, cat /tmp/text | base64 –d > /tmp/binary2.
• Ejecutar, revisar permisos y si no hay utilizar chmod.
Figura 4: Fichero malicioso con payload generado

Al ejecutar el fichero en el servidor dónde está ImageMagick se produce la “magia”. Obtenemos una sesión de Meterpreter.

Figura 5: Obtenida sesión remota en la máquina de la víctima

El peligro está ahí fuera. Los administradores se enfrentan a una amenaza, la cual debe ser parcheada rápidamente. Ya hay exploits públicos que, como está prueba de concepto, se aprovechan de lo que esté expuesto y sea vulnerable.

Autor: Pablo González Pérez (@pablogonzalezpe)
Escritor de los libros "Metasploit para Pentesters", "Ethical Hacking" y “Pentesting con Powershell”

Available link for download

Read more »

Tuesday, August 30, 2016

Lynis Auditar y fortificar servidores GNU Linux

Lynis Auditar y fortificar servidores GNU Linux


Hace unas semanas hablaba sobre una herramienta que permite identificar si faltan paquetes de actualización en sistemas con Microsoft Windows. Este tipo de herramientas, como la citada Windows Exploit Suggester, pueden ayudar, y mucho, en la comprobación del nivel de actualización de nuestros servidores y equipos cliente en la empresa. Además, esta herramienta  en concreto era capaz de darnos información sobre exploits públicos disponibles, e incluso nos informaba de la existencia de algún módulo de Metasploit disponible que se aprovechara de la falta de un paquete de actualización.

Figura 1: Lynis, audita y fortificar servidores GNU/Linux

Hoy vamos a hablar de otra herramienta que sirve para auditar sistemas, en este caso fortificar GNU/Linux. La herramienta se denomina Lynis y permite realizar auditoria de seguridad y fortificación de los sistemas basados en Unix. Lynis realiza un escaneo profundo sobre el sistema en el que se lanza, aunque juntándola con SSH podríamos lanzarla de forma sencilla en otros servidores de la organización. El objetivo de Lynis es detectar fallos de seguridad y errores de configuración o debilidades en el propio sistema. Estos resultados se utilizarán para fortificar a posteriori el sistema. El reporte que proporciona la herramienta ayudará a la toma de decisiones que habrá que tomar para la fortificación o hardening de los servidores GNU/Linux.

La herramienta también escanea de forma general el sistema detectando la falta de software actualizado o la existencia de paquetes de software vulnerables y los errores de configuración en la máquina. Lynis es utilizado por el blue team de una empresa, para mejorar las defensas de los servidores. Además, la herramienta proporciona una forma automatizada de auditar el servidor en modo caja blanca, realizar o llevar a cabo test de compliance, cumplimiento de PCI-DSS, HIPAA, etcétera, y detectar vulnerabilidades conocidas y debilidades.

¿Qué es lo que podemos sacar?

Descargarse Lynis es sencillo, podemos bajarlo de Github con la instrucción git clone https://github.com/CISOfy/lynis.git. Tal y como se puede ver en la imagen se obtienen diversos archivos, pero su ejecución es rápida y sencilla ./lynis –help.

Figura 2: Estructura de ficheros de Lynis

Lynis ofrece multitud de opciones para ser ejecutado. Una de las que llaman la atención es la posibilidad de auditar un dockerfile, es decir, un contenedor que tiene todas las dependencias de una aplicación en un formato estandarizado. Su ejecución en modo audit es sencilla. Debemos ejecutar la instrucción ./lynis audit system y la herramienta comenzará a realizar diferentes tests. Cada test está implementado en un plugin, los cuales pueden ser enumerados en la carpeta plugins, una vez descargado Lynis versión Enterprise.

Figura 3: Lanzamiento de auditoría de un servidor

Por cada tramo de evaluación que hace la herramienta, ésta se detendrá para que podamos evaluar lo que se nos presenta en pantalla. Lanzando Lynis sobre una Kali Linux 2.0 lo primero que se nos proporciona es información sobre el sistema operativo. El uso de los plugins puede ser muy interesante, ya que se añade más información, aunque para ello debamos utilizar la versión Enterprise.

Lynis lanzará pruebas sobre los siguientes elementos y nos irá mostrando por pantalla los resultados parciales que va detectando:
• Boot y servicios.
• Evaluación de la configuración del kernel.
• Comprobación de memoria y procesos.
• Configuración de las políticas de usuarios, grupos y métodos de autenticación.
• Shells.
• Evaluación del sistema de archivos.
• Almacenamiento.
• Ports & Packages.
• Networking.
• Configuración del software: servidor web, SSH, SNMP, motores de base de datos, PHP, configuración del logging de la máquina, etcétera.
• Evaluación de los valores que fortifican el kernel.
• Por último, resultados.
Figura 4: Resultados de auditoría del kernel de un Kali Linux 2.0

En la siguiente imagen vemos cómo se lanza una serie de pruebas sobre los elementos de boot y los servicios y la herramienta nos proporciona rápidamente los resultados. Se detecta, por ejemplo, que el GRUB no está protegido con contraseña, por lo que cualquier usuario con acceso físico a la máquina podría editarlo y conseguir una shell como root de forma sencilla.

Figura 5: Resultados de auditoría del boot y los servicios

En la siguiente imagen se puede ver los test que se pasan a la política y configuración de usuarios, grupos y los métodos de autenticación. El color amarillo nos indica qué hay cosas que son mejorables, y serán tomadas en cuenta por Lynis en el reporte final, dónde nos entregarán una puntuación y nos recopilarán todos los fallos que deben ser resueltos.

Figura 6: Resultados de auditoría de usuarios, grupos y sistemas de autenticación

Por último, se presentan los resultados y la evaluación mediante un número que indica el nivel de fortificación de la máquina.

Figura 7: Resumen sumario de la auditoría

Además, se hace un recopilatorio de los tests realizados y los plugins habilitados. Además, la herramienta nos realiza una serie de sugerencias para mejorar el hardening de la máquina, lo cual es realmente interesante.

Figura 8: Recomendaciones extras de fortificación

Lynis es una herramienta muy útil para hacer hardening de los sistemas GNU/Linux y para poder evaluar su nivel de seguridad actual. Cómo mencioné anteriormente, es una herramienta con la que deben contar todos los Blue Teams para poder tomar decisiones con las que se mejore la seguridad de la empresa.

Autor: Pablo González Pérez (@pablogonzalezpe)
Escritor de los libros "Metasploit para Pentesters", "Ethical Hacking" y “Pentesting con Powershell”

Available link for download

Read more »