Estas aquiContenido / Bombas y bombos
Bombas y bombos
Ayer sábado, un usuario de Kriptópolis decidió hacer uso de su legítimo derecho a enviar una nota a los foros, tratando de informar sobre un hecho que le había parecido curioso e intentando recabar más información sobre el mismo.
Aunque su planteamiento no era técnicamente correcto, eso es siempre de esperar en una nota remitida por un usuario a un foro, donde su autor se expresa como su leal saber y entender le permite. Por tanto di curso a la nota, sin imaginar -eso sí- que iba a resultar lo más leído y comentado en Kriptópolis (y con bastante éxito también fuera de aquí) durante todo el fin de semana.
Hasta ahí todo bien. Lo que no resulta de recibo es que algunos comentarios hayan resultado tan prepotentes y chulescos (tranquilos, los más insultantes ni siquiera han visto la luz), primero contra el autor y luego contra el propio sitio, por el intolerable delito de dar cabida y pábulo al post de este usuario...
Entonces, ¿qué se supone que hay que hacer? ¿Cerrar el paso a la nota original, hurtando así la información y el debate al 84% de los lectores que aseguran no conocer el tema? ¿O tal vez editar la nota original para convertirla en un artículo, cambiando las expresiones originales por las del propio editor?
Estoy harto de repetirlo, pero no me importa hacerlo una vez más. Kriptópolis no es un sitio para expertos en seguridad (aunque éstos también sean bienvenidos, sobre todo cuando pretenden ayudar). Su fundador y editor no es un "hacker", ni siquiera un experto en seguridad; es un usuario común, un aficionado a la criptografía y la seguridad que se propuso crear un sitio donde los usuarios comunes como él no fueran despreciados ni vilipendiados por los autoproclamados "gurús" de la seguridad. Donde preguntar no fuera delito. Donde querer saber fuera lo único importante.
A lo largo de estos once años de pequeña historia del sitio he visto nacer (y también morir, y no precisamente de éxito) decenas de sitios sobre seguridad creados por "hackers" y presuntos "gurús" con el único objeto aparente de satisfacer sus egos a base de despreciar a quien no sabe. Si Kriptópolis les ha sobrevivido a casi todos por algo será. No me corresponde a mí explicar el éxito de un sitio creado por un experto en nada y perpetuo aprendiz de todo, pero desde luego pienso seguir dedicando mis fuerzas y escasas habilidades a que los usuarios comunes y corrientes no se sientan vilipendiados ni insultados por el único hecho de querer saber. Lo siento, pero es que tampoco sé hacer mucho más.
Y para predicar con el ejemplo, aparco aquí mi proverbial e incontenible verborrea y en lo que sigue trataré de ayudar a entender y abordar las "bombas fork" a otros usuarios comunes como yo (algo que -por cierto- muchos "expertos" aún no se han molestado en intentar).
Las bombas fork para torpes (como yo)
En primer lugar, y como algunos acertadamente han señalado, una bomba fork no es una bomba lógica, ni tampoco un fallo del kernel, ni mucho menos se trata de algo "liberado por uno de los programadores del kernel". Tampoco es en sí mismo una vulnerabilidad (aunque sí pueda convertirse en alguna rara ocasión en un problema). De hecho en la inmensa mayoría de los casos no tiene ninguna importancia, y no pasa de ser una curiosidad. Ni siquiera cabe -en mi opinión- echar la culpa de su existencia a los responsables de tal o cual sistema operativo o distribución.
Supongamos que utilizas Linux. Cierra todo lo que estés haciendo (es muy probable que tengas que reiniciar el equipo), arranca un terminal y teclea el siguiente "comando":
:(){ :|:& };:En bastantes distribuciones Linux se desencadenará tal avalancha de procesos que el sistema acabará colgándose. ¿Decepcionado, no? Tu Linux tumbado por un solo "comando", sin necesidad siquiera de ser root.
Afortunadamente, si lo piensas bien el asunto no hará ganar a Linux un concurso de popularidad, pero tampoco es grave. En primer lugar, cualquier usuario de una máquina de escritorio puede encontrar una forma de tumbarla (sí, también en Windows ;) pero hay que ser un poco estúpido (o estar experimentando, como nosotros ahora) para "suicidarse" así. No obstante, si los resultados de la prueba no te han resultado agradables, puedes hacer algo para que no te vuelva a ocurrir.
Busca y abre el fichero /etc/security/limits.conf de tu distribución. Al menos en Arch viene perfectamente documentado, conteniendo explicaciones detalladas (en inglés, sorry) sobre cómo adaptarlo a tus necesidades. Como puedes ver, las posibilidades de configurar tu máquina en este sentido son bastante amplias. Pero al grano: ¿qué hay que cambiar y cómo? Yo tenía en marcha un monitor del sistema (Gkrellm) cuando efectué el test, y pude ver que los procesos superaban ya los 4.000 cuando el sistema se colgó. Por tanto, cabe deducir que cualquier cifra que impida que los procesos en marcha alcancen los cuatro mil resultará segura. Sin embargo he ido mucho más lejos: si en mi trabajo normal tengo unos cien procesos en marcha, con un tope como 1.000 (y también con mucho menos) creo que estoy más que seguro frente a una avalancha que acabe con el sistema. Por tanto, añado al fichero en cuestión la siguiente línea:
* hard nproc 1000
Cierro el fichero y vuelvo a probar el test (yo antes reinicié, pero no creo que sea necesario). Perfecto: la cuenta de procesos sube hasta 1000 y para. Tecleo un Ctrl-D y compruebo que tengo el control total. En definitiva; ya soy inmune a una bomba fork... lo cual no es una gran cosa, porque lo único que he hecho ha sido protegerme... ¡contra mí mismo!
El asunto puede pintar peor si en vez de un ordenador de escritorio que sólo utilizo yo, se trata de un servidor o un sistema multiusuario. En ese caso un usuario local (no root) también podría echarlo abajo... a no ser que el administrador hubiera tomado antes las medidas oportunas, que es lo que debe hacer. No cometeré el atrevimiento de decirle a todo un señor administrador cómo debe configurar su sistema, por más que me conste que muchos de los que desempeñan esa función no tiene la menor idea al respecto. Para estos últimos sólo una pista: ningún usuario local debería ser capaz de ejecutar una bomba fork desde su terminal, y usted dispone de medios para crear un perfil seguro por defecto para sus usuarios.
Si disponemos de abundante tiempo que no sabemos a qué dedicar, podemos comenzar ahora una interminble discusión sobre qué distribuciones (o sistemas) vienen mejor o peor configuradas por defecto frente a bombas fork. Pero como el tiempo no nos sobra a ninguno baste decir que al usuario normal de un desktop todo esto le resulta indiferente, si bien arriba le hemos explicado cómo prevenirse "contra sí mismo" ;).
Ahora sí es el momento para complementar, mejorar o rebatir las palabras del ignorante que esto suscribe.




Hola Admin:
Esta todo claro, los puntos sobre las ies, jeje, yo toy contigo, que empece a leer kriptopolis en el 99, despues os vi cerrados mucho tiempo, y mucho os eche de menos, y ahora se agradece que hayais vuelto, y como no, con ese caracter divulgativo que tan bien sabeis hacer.
Un saludo de un lector agradecido
... capicaídos, sí ;)
El cierre de protesta contra la LSSI (2001) no duró mucho, pero lo cierto es que después el sitio entró en una fase bastante deslucida y triste durante un par de años.
Incluso algunos anunciaron -gozosos- su desaparición definitiva, pero ya ves que se equivocaron.
Muchas gracias y un saludo.
eso iba a decir yo que el sitio nunca estuvo cerrado completamente, un poco off durante un tiempo, pero siempre ahi...
kriptopolis siempre ha sido para mi un sitio a emular... sobre todo la aptitud del admin
Comparto plenamente lo dicho arriba. En cuanto al tema de bombas fork no puedo opinar mucho dado que mis conocimientos en ese aspecto son limitados, pero sobre lo anteriormente citado, el jefe tiene razón. Tanto yo como imagino que muchos de los que frecuentamos esta página lo hacemos con el ánimo de aprender. Si lo supieramos todo -como decía un profesor amigo mío- no estaríamos aquí, sino en la NASA lanzando cohetes.
Yo no lo sabia... para la gente que dice que esto es un tema viejo... bueno con el perdón de ellos, yo no lo sabia... y es necesario que alguien lo dijera... ahora ya lo se y lo tomare muy en cuenta.
Adelante Kriptopolis con la información.
Llevo alrededor de un año leyendo su web y esta declaración de principios me tranquiliza. Soy nuevo en estos temas y mi única intención es aprender, como no existe un "único" manual sobre seguridad ahora estoy seguro de que Kritopolis es un buen comienzo.
Salu2 de otro lector agradecido.
Estoy visitando este sitio desde que lo descubrí en el año 2000, si mal no recuerdo la fecha. Me apenó mucho el cierre a causa de la LSSI y creo que fue una buena decisión abrir de nuevo Kriptópolis.
Nunca envié ninguna nota porque este sitio tiene un nivel muy alto para mí. Empecé a usar ordenadores en el año 1999, sin Internet, y sólo conocía el sistema operativo Windows 98 porque era el que venía instalado cuando compré el PC. En esa época ni sabía lo que era un sistema operativo.
Ahora estoy usando exclusivamente GNU/Linux Debian. Casi todo lo que sé (muy poco) acerca de seguridad lo aprendí mientras leía artículos en Kriptópolis. También he descubierto sitios muy buenos siguiendo los enlaces asociados a los artículos publicados en Kriptópolis.
Estoy usando Bastille y tengo controlado el consumo de procesos, pero hoy es la primera noticia que tengo acerca de la existencia de las bombas fork.
Siempre que visito Kriptópolis aprendo cosas nuevas.
Como ven tengo un conocimiento muy escaso en informática y en todas las materias. Si usted no hubiese publicado ese artículo yo sería ahora aun más ignorante desconociendo el asunto de las bombas fork.
Gracias y saludos.
Esta frase basta para que me sienta satisfecho.
Aunque llevo muchos años leyendo esta Web nunca había escrito ningún comentario. Pero esta ocasión lo merece tanto por la declaración de principios como por el artículo.
Continúa como hasta ahora.
No queda más remedio que reinventarse a diario, así que mañana ya seré otro. Y este sitio también. Nadie tiene más razón que los que afirman que "Kriptópolis ya no es lo que era".
Lo llaman vivir. Y para algunos significa lo mismo que aprender.