Capitulos de este wiki
  1. 1 Introducción y conceptos previos
  2. 2 Sobre la seguridad
  3. 3 Sobre las redes
  4. 4 Seguridad física de los sistemas
  5. 5 Protección del hardware
  6. 6 Protección de los datos
  7. 7 Radiaciones electromagnéticas
  8. 8 Administradores, usuarios y personal
  9. 9 Ataques potenciales
  10. 10 Qué hacer ante estos problemas
  11. 11 El atacante interno
  12. 12 El sistema de ficheros
  13. 13 Sistemas de ficheros
  14. 14 Permisos de un archivo
  15. 15 Los bits SUID, SGID y sticky
  16. 16 Atributos de un archivo
  17. 17 Listas de control de acceso: ACLs
  18. 18 Recuperación de datos
  19. 19 Almacenamiento seguro
  20. 20 Programas seguros, inseguros y nocivos
  21. 21 La base fiable de cómputo
  22. 22 Errores en los programas
  23. 23 Fauna y otras amenazas
  24. 24 Programación segura
  25. 25 Auditoría del sistema
  26. 26 El sistema de log en Unix
  27. 27 El demonio syslogd
  28. 28 Algunos archivos de log
  29. 29 Logs remotos
  30. 30 Registros físicos
  31. 31 Copias de seguridad
  32. 32 Dispositivos de almacenamiento
  33. 33 Algunas órdenes para realizar copias de seguridad
  34. 34 Políticas de copias de seguridad
  35. 35 Autenticación de usuarios
  36. 36 Sistemas basados en algo conocido: contraseñas
  37. 37 Sistemas basados en algo poseído: tarjetas inteligentes
  38. 38 Sistemas de autenticación biométrica
  39. 39 Autenticación de usuarios en Unix: autenticación clasi
  40. 40 Autenticación de usuarios en Unix: mejora de la seguridad (II)
  41. 41 Pam
  42. 42 Solaris
  43. 43 Seguridad física en SPARC
  44. 44 Servicios de red
  45. 45 Usuarios y accesos al sistema
  46. 46 El sistema de parcheado
  47. 47 Extensiones de la seguridad
  48. 48 El subsistema de red
  49. 49 Parametros del núcleo
  50. 50 Linux
  51. 51 Seguridad física en x86
  52. 52 Usuarios y accesos al sistema
  53. 53 El sistema de parcheado
  54. 54 El subsistema de red
  55. 55 El núcleo de Linux
  56. 56 Aix
  57. 57 Seguridad física en RS/6000
  58. 58 Servicios de red
  59. 59 Usuarios y accesos al sistema (I)
  60. 60 Usuarios y accesos al sistema (II)
  61. 61 El sistema de log
  62. 62 El sistema de parcheado
  63. 63 Extensiones de la seguridad: filtros IP
  64. 64 El subsistema de red
  65. 65 Hp-ux
  66. 66 Seguridad física en PA-RISC
  67. 67 Usuarios y accesos al sistema
  68. 68 El sistema de parcheado
  69. 69 Extensiones de la seguridad
  70. 70 El subsistema de red
  71. 71 El núcleo de HP-UX
  72. 72 Seguridad de la subred: el sistema de red
  73. 73 Algunos ficheros importantes
  74. 74 Algunas órdenes importantes
  75. 75 Servicios
  76. 76 Algunos servicios y protocolos
  77. 77 Servicios basicos de red
  78. 78 El servicio FTP
  79. 79 El servicio TELNET
  80. 80 El servicio SMTP
  81. 81 Servidores WWW
  82. 82 Los servicios r-
  83. 83 XWindow
  84. 84 Cortafuegos: Conceptos teóricos
  85. 85 Características de diseño
  86. 86 Componentes de un cortafuegos
  87. 87 Arquitecturas de cortafuegos
  88. 88 Firewall-1
  89. 89 Ipfwadm/ipchains/iptables
  90. 90 IPFilter
  91. 91 PIX Firewall (I)
  92. 92 PIX Firewall (II)
  93. 93 Escaneos de puertos
  94. 94 Spoofing
  95. 95 Negaciones de servicio
  96. 96 Interceptación
  97. 97 Ataques a aplicaciones
  98. 98 Sistemas de detección de intrusos
  99. 99 Clasificación de los IDSes
  100. 100 Requisitos de un IDS
  101. 101 IDSes basados en maquina
  102. 102 IDSes basados en red
  103. 103 Detección de anomalías
  104. 104 Detección de usos indebidos
  105. 105 Implementación real de un IDS (I)
  106. 106 Implementación real de un IDS (II)
  107. 107 Algunas reflexiones
  108. 108 Kerberos
  109. 109 Arquitectura de Kerberos
  110. 110 Autenticación
  111. 111 Problemas de Kerberos
  112. 112 Criptología
  113. 113 Criptosistemas
  114. 114 Clasificación de los criptosistemas
  115. 115 Criptografía clasica
  116. 116 Un criptosistema de clave secreta: DES
  117. 117 Criptosistemas de clave pública
  118. 118 Funciones resumen
  119. 119 Esteganografía
  120. 120 Algunas herramientas de seguridad
  121. 121 Titan (I)
  122. 122 Titan (II)
  123. 123 TCP Wrappers
  124. 124 Ssh
  125. 125 Tripwire
  126. 126 Nessus
  127. 127 Crack
  128. 128 Gestión de la seguridad
  129. 129 Políticas de seguridad
  130. 130 Analisis de riesgos
  131. 131 Estrategias de respuesta
  132. 132 Outsourcing
  133. 133 El "Área de Seguridad"
  134. 134 Apéndice 1: Seguridad basica para administradores (I)
  135. 135 Apéndice 1: Seguridad basica para administradores (II)
  136. 136 Apéndice 2: Normativa (I)
  137. 137 Apéndice 2: Normativa (II)
  138. 138 Apéndice 2: Normativa (III)
  139. 139 Apéndice 2: Normativa (IV)
  140. 140 Recursos de interés en INet
  141. 141 Glosario de términos anglosajones
  142. 142 Conclusiones
  143. 143 Bibliografía (I)
  144. 144 Bibliografía (II)
  145. 145 Bibliografía (III)
  146. 146 Bibliografía (IV)
  147. 147 Bibliografía (V)

Seguridad en Unix y redes - Negaciones de servicio

95 - Negaciones de servicio

[editar]
Tutorial creado por Antonio Villalón Huerta. Extraido de: http://es.tldp.org/Manuales-LuCAS/doc-unixsec/unixsec-html/
28 de Febrero de 2006
Las negaciones de servicio (conocidas como DoS, Denial of Service) son ataques dirigidos contra un recurso informático (generalmente una máquina o una red, pero también podría tratarse de una simple impresora o una terminal) con el objetivo de degradar total o parcialmente los servicios prestados por ese recurso a sus usuarios legítimos; constituyen en muchos casos uno de los ataques más sencillos y contundentes contra todo tipo de servicios, y en entornos donde la disponibilidad es valorada por encima de otros parámetros de la seguridad global puede convertirse en un serio problema, ya que un pirata puede interrumpir constantemente un servicio sin necesidad de grandes conocimientos o recursos, utilizando simplemente sencillos programas y un módem y un PC caseros.
Las negaciones de servicio más habituales suelen consistir en la inhabilitación total de un determinado servicio o de un sistema completo, bien porque ha sido realmente bloqueado por el atacante o bien porque está tan degradado que es incapaz de ofrecer un servicio a sus usuarios. En la mayor parte de sistemas, un usuario con acceso shell no tendría muchas dificultades en causar una negación de servicio que tirara abajo la máquina o la ralentizara enormemente; esto no tiene porqué ser - y de hecho en muchos casos no lo es - un ataque intencionado, sino que puede deberse a un simple error de programación. Por ejemplo, pensemos en el siguiente shellscript (funciona en Linux):
luisa:~# cat /usr/local/bin/lanzador #!/bin/sh ps -ef|grep calcula|grep -v grep 2>&1 >/dev/null if [ $? -eq 1 ]; then /usr/local/bin/calcula & fi luisa:~#

Como podemos ver, este script comprueba si un determinado programa está lanzado en la máquina, y si no lo está lo lanza él; algo completamente inofensivo a primera vista, y planificado habitualmente en muchos sistemas para que se ejecute - por ejemplo, cada cinco minutos - desde crond. Sin embargo, nos podemos parar a pensar qué sucedería bajo algunas circunstancias anormales: >y si en el arranque de la máquina, por el motivo que sea, no se ha montado correctamente el directorio /proc/? Si esto sucede, la orden `ps' generará un error, la condición se cumplirá siempre, y cada cinco minutos se lanzará una copia de calcula; si este programa consume mucha CPU, al poco tiempo tendremos un elevado número de copias que cargarán enormemente el sistema hasta hacerlo inutilizable. Un ejemplo perfecto de negación de servicio.
Por fortuna, como ya hemos visto en capítulos anteriores, todos los sistemas Unix ofrecen mecanismos para evitar que un usuario normal pueda tirar abajo una máquina de esta forma; incluso si no los ofrecieran, en la mayor parte de los casos el responsable podría ser disciplinado fuera del sistema operativo, por otros medios, como dijo Dennis Ritchie. El problema real no es que usuarios legítimos de un entorno causen, intencionada o inintencionadamente, negaciones de servicio: el mayor problema es que esas negaciones sean causadas de forma remota por piratas ajenos por completo a nuestra organización, capaces de tumbar un servidor de millones de pesetas con sencillos programas, sin dejar ningún rastro y lo peor, sin ser muchas veces conscientes del daño que están haciendo.
Estos ataques remotos de negación de servicio son considerados negativos incluso por muchos de los propios piratas - especialmente los más experimentados -, ya que realmente no suelen demostrar nada positivo de quien los lanza (si es que algún ataque demuestra algo positivo de alguien, lo cual sería muy discutible...): generalmente se trata de un script-kiddie ejecutando un programa que ni ha hecho, ni entiende, ni será capaz de entender. En la mayor parte de los casos la negación de servicio tiene éxito porque el objetivo utiliza versiones no actualizadas de demonios (si se para un servicio concreto) o del propio núcleo del sistema operativo, si se detiene o degrada por completo la máquina. Para evitar esto, la norma a seguir es evidente: mantener siempre actualizados nuestros sistemas, tanto en lo referente al nivel de parcheado o versiones del núcleo, como en lo referente a programas críticos encargados de ofrecer un determinado servicio (demonios, por norma general: sendmail, httpd, pop3d...).
De un tiempo a esta parte - en concreto, desde 1999 - se ha popularizado mucho el término `negación de servicio distribuida' (Distributed Denial of Service, DDoS): en este ataque un pirata compromete en primer lugar un determinado número de máquinas y, en un determinado momento, hace que todas ellas ataquen masiva y simultaneamente al objetivo u objetivos reales enviándoles diferentes tipos de paquetes; por muy grandes que sean los recursos de la víctima, el gran número de tramas que reciben hará que tarde o temprano dichos recursos sean incapaces de ofrecer un servicio, con lo que el ataque habrá sido exitoso. Si en lugar de cientos o miles de equipos atacando a la vez lo hiciera uno sólo las posibilidades de éxito serían casi inexistentes, pero es justamente el elevado número de `pequeños' atacantes lo que hace muy difícil evitar este tipo de negaciones de servicio.
Según el CERT ([HW01]) los ataques de negación de servicio distribuidos más habituales consisten en el envío de un gran número de paquetes a un determinado objetivo por parte de múltiples hosts, lo que se conoce como packet flooding (en función del tipo de paquetes utilizados se habla de ping flood, de SYN flood...). Defenderse de este tipo de ataques es difícil: en primer lugar, uno piensa en bloquear de alguna forma (probablemente en un cortafuegos o en un router) todo el tráfico proveniente de los atacantes; pero >qué sucede cuando tenemos miles de ordenadores atacando desde un gran número de redes diferentes? >Los bloqueamos uno a uno? Esto supondría un gran esfuerzo que difícilmente ayudaría, ya que lo más probable es que en el tiempo que nos cueste bloquear el tráfico de una determinada máquina, dos o tres nuevas nos comiencen a atacar. Entonces, >bloqueamos todo el tráfico dirigido hacia el objetivo? Si hacemos esto, estamos justamente ayudando al atacante, ya que somos nosotros mismos los que causamos una negación en el servicio a los usuarios legítimos de nuestro sistema...
Como vemos, la defensa ante una negación de servicio distribuida no es inmediata; en cualquier caso, podemos tomar ciertas medidas preventivas que nos ayudarán a limitar el alcance de uno de estos ataques (y en general de las negaciones de servicio remotas, distribuidas o no). De entrada, un correcto filtrado del tráfico dirigido a nuestras máquinas es vital para garantizar nuestra seguridad: no hay que responder a pings externos a nuestra red, es necesario activar el antispoofing en nuestros cortafuegos y en los elementos de electrónica de red que lo permitan, etc. Establecer correctamente límites a la utilización de nuestros recursos, como ya hemos visto, es también una importante medida preventiva; es posible limitar el ancho de banda dedicado a una determinada aplicación o a un protocolo, de forma que las utilizaciones por encima del margen son negadas. También podemos limitar los recursos del sistema (CPU, memoria, disco...) que puede consumir en global una determinada aplicación servidora (por ejemplo, un demonio sirviendo páginas web), además de restringir sus recursos por cliente simultáneo (en base, por ejemplo, a la dirección origen de ese cliente).
A pesar de las dificultades con las que nos podemos encontrar a la hora de prevenir ataques de negación de servicio, una serie de medidas sencillas pueden ayudarnos de forma relativa en esa tarea; las negaciones de servicio son por desgracia cada día más frecuentes, y ninguna organización está a salvo de las mismas. Especialmente en los ataques distribuidos, la seguridad de cualquier usuario conectado a Internet (aunque sea con un sencillo PC y un módem) es un eslabón importante en la seguridad global de la red, ya que esos usuarios se convierten muchas veces sin saberlo en satélites que colaboran en un ataque masivo contra organizaciones de cualquier tipo. Cuanto más difícil se lo pongamos cada uno de nosotros a los piratas, mucho mejor para todos.
[editar]

11 opiniones

ff

fff
Configurar Unix

Hola buen articulo, actualmente tengo un problema parecido, en un servidor UNIX (AIX 5.3) tengo unstalado Oracle 10g con algunas bases de datos funcionando, por otro lado tengo un servidor Linux Suse 10 como servidor de Correo, ¿Como hago para configurar las alertas de Oracle y me puedan llegar a mi correo electronico si el suse esta configurado para perir autenticacion y Oracle no tiene esa opcion?¿Es necesario abrir puertos en Suse? ¿tengo que instalar el servicio SMTP en UNIX? ojalá alguien pudiera orientarme, de ANTEMANO MIL GRACIAS. Saludos
Copiar una imagen.

Hola amigos!! yo trabajo con el software unix y necesito como copiar unas imagenes de ese sofware por que estoy trabajando con unos programs. Y no se como copiarlo y tenerlo en un pendrive o tenerlo en pc norma de window. Espero sus respuestas!!.
Unix para todos.

Hola , les dejo una web para analizar y disfrutar * solounix argentina * está diseñado para todas aquellas personas que conozcan de plataformas unix o quieran aprender de unix el sistema operativo por excelencia. Podes bajar manuales de distintos sistemas operativos unix. Recorda que para gozar de este recurso debes registrate. Como usuario registrado podes disfrutar de una cuenta shell gratis
para que puedas probar comandos de unix.
Bueno.

Es informativo pero carece de aspectos puntuales, por ejemplo en el apartado referente al tipo de amenazas: (a) interrupción, (b) interceptación, (c) modificación y (d) fabricación. Enesencia es bueno.
1 2 3 | siguiente >

Tutoriales relacionados con 'Seguridad en Unix y redes'

A lo largo de este trabajo se va a intentar hacer un repaso de los... Más »
Esta guía no es un documento general de seguridad. Esta guía está específicamente orientada a... Más »
Documento con fundamentos teóricos de control de accesos en redes telemáticas; se tratan temas como... Más »
En muchos foros y cosas similares he visto muchas consultas sobre cómo montar servidores de... Más »
Debian es el nombre de una organización dedicada al desarrollo y mantenimiento de sistemas operativos... Más »

Autor y licencia de 'Seguridad en Unix y redes'


Tutorial de Antonio Villalón Huerta. Extraido de: http://es.tldp.org/Manuales-LuCAS/doc-unixsec/unixsec-html/ CopyLeft
Licencia GNU Free Documentation License: http://www.gnu.org/copyleft/
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.