PDF de programación - Seguridad y Linux (v3.0)

Imágen de pdf Seguridad y Linux (v3.0)

Seguridad y Linux (v3.0)gráfica de visualizaciones

Publicado el 31 de Octubre del 2019
77 visualizaciones desde el 31 de Octubre del 2019
57,2 KB
39 paginas
Seguridad y Linux

(v3.0)



David Fernández Vaamonde

davidfv@alfa21.com



IV Jornadas sobre el Sistema Operativo Linux

Universidade da Coruña
Facultade de Informática



Guión


Introducción


Seguridad y software libre
Seguridad y distribuciones
Seguridad y software
Seguridad en el operativo
Firewalls
Sistemas de deteccion de intruso
Software de auditorias sobre equipos
Criptografía
Un ejemplo práctico: Seguridad doméstica mínima
Consejos de seguridad en servicios de red y Linux.
Esqueleto de una intrusión.
Linux como asegurador de sistemas heterogeneos.
Grandes proyectos de seguridad en Linux


Introducción


Seguridad informática:


Muy importante a dia de hoy


Aumenta en importancia con la interconexión de los sistemas


Aspecto importante en cualquier implantación y desarrollo
Por tanto también en software libre y Linux


El software libre tiene características que lo hacen especial para la seguridad.



Seguridad y Software Libre (I)


Linux y sus aplicaciones son Software libre:


Han de ser distribuidas con el código


Fuente al alcance de quien quiera


Puede ser modificado libremente


Se distribuyen las modificaciones con la misma licencia (GPL).


Se puede modificar para realizar funciones específicas.


Seguridad y Software libre ( y II )
Derivado de estas dos características:



Acceso al código fuente:


Búsqueda de vulnerabilidades (Auditoría de código)


No hay "troyanos" o "puertas traseras"


Crackers -> Pruebas de caja negra


Evita "security through obscurity"



Seguridad y Software libre ( y III )


Se puede modificar libremente:


Rapida aparición de parches ante fallos.


Mucha gente lo usa, y mucha gente lo puede arreglar


No se dejará de dar soporte


Solución de muchos productos comerciales:


"Service Pack"


Seguridad y distribuciones


Kernel+Paquetes de software+Modos de instalación de todo ello


Paquetes software: .deb, .rpm


Principal canal de difusión de linux


Se encuentran en CDs y pueden ser descargadas de internet


Han de incluir algún tipo de seguridad.


Seguridad y distribuciones ( y II )


Paquetes .deb ( Debian, CorelLinux, Progeny... ):


Firmado con claves PGP (GPG) de los paquetes de código fuente
Futuro firmado con PGP(GPG) de paquetes de binarios.
Sumas MD5 para los ficheros
ISOS firmadas con PGP(GPG)

FTP con actualizaciones de seguridad


http://bugs.debian.org


Informes y seguimiento de fallos

ftp://security.debian.org

Seguridad y distribuciones ( y III )


Paquetes .rpm ( RedHat, Mandrake, SuSe... ):


Firmado de todos los paquetes con PGP(GPG)



--sign, --resign, --addsign

Sumas MD5 de todos los ficheros a manejar
El del primer fichero instalado
El del fichero actual
El de la posible actualización


Informes de todos los fallos en listas de correo y webs



Software y seguridad en Linux
Seguridad en el propio sistema operativo



Sistemas de permisos (ficheros, IPCs)


Sistema de logs y accounting


Mecanismos genéricos de autenticación: PAM


Seguridad en el kernel:


Parches GRSEC
Sistemas de ficheros criptográficos



...

Firewalls


ipfwadm (2.0.X)
ipchains(2.2.X)
iptables(2.4.X)



Filtrado por puerto, direccion, protocolo,flags tcp,mac
Estado temporal de las conexiones: limit
Filtrado por UID y GID del generador de paquetes: owner
Filtrado por estado de las conexiones: state
Filtrado por TOS y TTL
NAT en Origen y Destino
Muy modular y extensible


Firewalls ( y II )


Una carencia en los firewalls linux libres:


Analisis de protocolos


Comienzan a surgir alternativas:


ZORP
Examina protocolos usuales:FTP, HTTP, TELNET...
Gran herramienta junto con iptables.


Sistemas de detección de intrusos


SNORT
Basado en red


LogCheck
Basado en logs


AIDE
Basado en sistema de ficheros



FCHECK, COAST IDS, SHADOW...





Software de auditorías sobre equipos
Nessus
Modelo cliente/servidor
Pasa pruebas de vulnerabilidades (actualizables)
Lenguaje de scripting para programar vulnerabilidades (NASL)

El propio programa es seguro.


Informes en muchos formatos, muchos clientes.

Nmap
Scanner de puertos
Escanear redes de máquinas
Muchos tipos de scaneos


Crack/Jhon the ripper
Ataques con diccionario



Software de auditorías sobre equipos (y II)


Whisker
Escaneo de vulnerabilidades habituales en CGIs



libwhisker (perl) -> Nikto, Formaline...

TIGER


SARA


SAINT



...

Honey Pots


Chroot clásico



User Mode Linux como HoneyPot



Productos "prefabricados"
Tiny Honey Pot
Labrea



IISEmulator

Criptografía


GPG o PGP


Encriptación con llave publica
Firma de ficheros



SSH


Secure Shell
Sesiones interactivas y transmisiones de ficheros seguras
Tuneles encriptados



Criptografía ( y II )



FreeSwan (o IPsec nativo)


Implementación de IPSec

Parche para el kernel

VPN ( Redes Privadas virtuales )



OpenVPN


Sistema servidor de tuneles muy sencillo.




Criptografía ( y III )


Sistemas de ficheros criptográficos


Parches para el kernel


CryptoAPI



PPDD


CFS




Analisis Forense


The Coroners Kit


Lazarus, urm, inode-cat, pcat.



SleuthKit+Autopsy



Un caso práctico


Seguridad mínima o doméstica con Linux


Caso práctico de protección de un ordenador doméstico con Linux

y conectado a internet



Se podría tomar como una metodología sencilla de seguridad.




Un caso práctico (y II)
Pasos a dar:



¿Qué tenemos activo en el sistema?


Examinar /etc/inetd.conf
Usar netstat: netstat -ltu
Usar nmap desde fuera: nmap -sU -P0 maquina
Usar ps: ps aux


Eliminar todo lo superfluo


Comentar en inetd.conf
Desinstalar paquetes que no se usan
Filtrar todo lo posible.




Un caso práctico (y III)


¿Queremos filtrar algo?


Sencillo: tcpwrappers
host.allow, host.deny
Solo servidos por inetd


Más elaborado: firewall (iptables)
Política por defecto (-P) denegar todo.
Realizar aperturas selectivas



Un caso práctico (y IV)


¿Que versiones tenemos?


Ordenador propio:
Lista de paquetes
uname -a


Ordenador externo:
nmap -O -sV maquina



telnet



¡Actualizar a las últimas versiones!

Consejos de seguridad en servicios de red
Consejos generales:



Uso de SSH y comunicaciones encriptadas:


Previene el "sniffing"



Uso de firewalls que limiten los servicios:


Denegación por defecto


Políticas lo más estrictas posibles sin asfixiar.


Uso de servicios actualizados (¡Vital!).


Revisión habitual de logs.


Consejos de seguridad en servicios de red (y II)
Servidor web: Apache



Mayor peligro: Scripts (CGI, PHP...)
Ejecutar como un usuario normal (no root)
Examinar el código con detenimiento:
Prevenir ejecuciones en el sistema
Prevenir inyección SQL
Prevenir accesos a ficheros.


Protección del arbol web.
No situar en el path ficheros de claves.


Uso de encriptación: SSL, Certificados.
No permitir "browsing" (Indexes)
Ejecutarlo en una DMZ


Consejos de seguridad en servicios de red (y III)
Servidor DNS: Bind



Intentar no ejecutarlo como root.

Posible ejecución en un chroot.


No permitir transferencias de zona ("zone-transfer")


Limitar las consultas al servidor ("allow-querys")


Filtrar con firewall.




Consejos de seguridad en servicios de red (y IV)


Servidor de correo: Postfix, Sendmail, Qmail, Exim



Limitar el relay de correo (SPAMSPAMSPAM!)



Limitar tamaños de correo y máximo de conexiones (Evita DoS)





Consejos de seguridad en servicios de red (y V)


Servidor de FTP: (wuftp, proftp)



Intentar correr en un chroot y sin permisos de root.

Limitar ftps anónimo
  • Links de descarga
http://lwp-l.com/pdf16813

Comentarios de: Seguridad y Linux (v3.0) (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad