es.comp.hackers PUFes.comp.hackers PUF (Preguntas de Uso Frecuente)
V 0.9.9beta - Ultima actualización: 13 de Septiembre del 2001
Tabla de Contenidos
Sección 1: Administración de las PUF
1.0) Control de Cambios
1.1) ¿Por qué hacer las PUF de es.comp.hackers?
1.2) ¿Qué se cubre en esta lista de PUF?
1.3) ¿Quién es responsable por esta lista de PUF, y cómo se puede contribuir a
la misma?
|1.4) Agradecimientos y contribuciones
1.5) Envío de contribuciones
1.6) Declaración de responsabilidades
1.7) Derechos de copia
1.8) ¿Dónde encontrar las PUF?
1.9) ¿Cómo y dónde postear? Grupos de news adecuados para cada caso
Sección 2: Seguridad General de Sistemas
2.0) ¿Qué es seguridad?
2.1) ¿Cómo se define la seguridad física y lógica?
2.2) ¿Cómo puedo protegerme de los "hackers malintencionados" en forma rápida y
sencilla?
2.3) ¿Qué es hacking?
2.4) ¿Qué es cracking?
2.5) Otras definiciones
2.6) ¿Qué se necesita para ser un hacker?
2.7) ¿Qué es un pirata informático?
Sección 3: Firewalls (Cortafuegos)
3.0) ¿Qué es un firewall?
3.1) ¿Qué firewalls hay disponibles?
3.2) ¿Cómo arranco mi firewall al iniciar el sistema?
|3.3) ¿Cómo configuro mi firewall si no sé nada de redes?
3.4) ¿Cómo puedo probar mi firewall para saber si es seguro?
3.5) Mi firewall da una alarma. ¿Se han metido en mi ordenador?
3.6) Pero es que me están escaneando los puertos continuamente. ¿Para qué lo
hacen?
3.7) ¿Entonces me están atacando?
3.8) ¿Cómo sé si la alarma es debida a un ataque o no?
|3.9) Se ha confirmado mi sospecha y es un ataque. ¿Qué hago?
Sección 4: Antivirus
|4.0) ¿Qué es un virus?
4.1) ¿Hay antivirus para Linux?
4.2) ¿Cuál es la diferencia entre un firewall y un antivirus?
Sección 5: Anti-Troyanos
5.0) ¿Qué es un troyano?
5.1) En el punto 4.2 se menciona que los antivirus detectan solamente algunos
troyanos. ¿Qué pasa con los demás?
5.2) ¿Cuáles son los troyanos/backdoors mas comunes y más peligrosos?
5.3) ¿Cómo se meten usualmente los troyanos en un ordenador?
5.4) ¿Cómo se oculta un archivo dentro de otro?
Sección 6: Software espía (Spyware)
6.0) ¿Qué es el spyware?
6.1) ¿Cómo elimino el spyware?
Sección 7: Servicios
7.0) ¿De qué va eso de los servicios?
7.1) ¿Cómo sé qué servicios estoy corriendo?
7.2) ¿Debo utilizar telnet y FTP?
7.3) ¿Qué alternativa tengo?
7.4) Eso es muy bueno para la consola. ¿Cómo puedo ver remotamente el entorno
gráfico?
Sección 8: Conexión por red
8.0) ¿Cómo puedo ver la IP de otra persona?
8.1) ¿Cómo puedo averiguar recursos compartidos, usuarios y grupos de máquinas
Windows?
Sección 9: Hacking
9.0) ¿Cómo puedo obtener la clave del Administrador en un Windows NT/2000?
|9.1) ¿Cómo puedo violar la seguridad de un servidor NOVELL?
|9.2) ¿Cómo puedo violar la seguridad de un servidor UNIX/Linux?
9.3) ¿Cómo y dónde debe reportarse un incidente serio de seguridad?
Sección 10: Documentación sobre estándares de red
10.0) ¿Qué es un RFC?
Sección 11: Web
11.0) ¿Cómo puedo bajar una web completa para verla offline?
11.1) ¿Cómo puedo postear al grupo desde web?
11.2) ¿Cómo puedo navegar sin que se vea mi IP?
11.3) ¿Dónde consigo una lista de proxies?
|11.4) ¿Cómo puedo saber si un servidor web es Apache, IIS u otro?
Sección 12: Correo electrónico
12.0) ¿Es seguro el correo electrónico?
12.1) ¿Cómo mejoro la seguridad del correo electrónico?
12.2) ¿Cómo puedo enviar un mail anónimo?
12.3) ¿Cómo utilizo telnet para enviar un mail?
|12.4) ¿Cómo puedo jakear hotmail?
Sección 13: Grupos de Noticias
13.0) ¿Dónde consigo una lista de servidores de grupos de noticias que pueda
utilizar?
13.1) ¿Puedo postear utilizando telnet?
Sección 14: Passwords
14.0) ¿Cómo elimino el password de mi documento de Microsoft Office?
14.1) ¿Cómo elimino el password de un PDF?
14.2) ¿Cómo elimino el password de un archivo .zip?
Sección 15: Criptografía
15.0) ¿Qué es la criptografía?
15.1) ¿Qué programas tengo para cifrar mis documentos?
Sección 16: Esteganografía
16.0) ¿Qué es la esteganografía?
16.1) ¿Qué programas tengo para ocultar información?
Sección 17: Aplicaciones más comunes
17.0) ¿Qué es y para qué sirve el Norton Ghost?
Sección 18: Referencias y Bibliografía
18.0) Referencias en Internet
|18.1) Bibliografía
18.2) Breve reseña de arquitecturas y sistemas operativos
Sección 1: Administración de las PUF
1.0) Control de cambios
Los cambios a la presente versión de las PUF se indican con un signo "|" en la
Tabla de Contenidos, delante de las secciones que sufrieron modificaciones o
agregados.
Adicionalmente, en la versión en HTML de las PUF, los cambios aparecen en
negrita en la Tabla de Contenidos.
1.1) ¿Por qué hacer las PUF de es.comp.hackers?
Hay varias preguntas que aparecen varias veces por semana en el grupo, y como un
esfuerzo tendiente a asistir a aquellos que recién se inician en él, así como
para brindar algunos conocimientos básicos comunes a sus miembros, he decidido
armar la siguiente lista de PUF.
Espero que esta lista de PUF no conteste solamente preguntas específicas, sino
que facilite el acceso a todo tipo de información y recursos de hacking y
seguridad para todos los interesados.
1.2) ¿Qué se cubre en esta lista de PUF?
Específicamente hacking y seguridad sobre sistemas Linux y MS Windows.
No se cubren preguntas relacionadas con la instalación de estos sistemas,
excepto donde tengan relevancia en la configuración de los mismos desde el punto
de vista de seguridad.
Se cubren preguntas sobre productos de terceros cuando tengan relevancia en el
grupo.
1.3) ¿Quién es responsable por esta lista de PUF, y cómo se puede contribuir a
la misma?
Si alguien desea responsabilizarse por la lista es bienvenido, yo no tengo el
tiempo suficiente para mantenerla en forma regular.
Las contribuciones son bienvenidas, en particular sugerencias de temas que
cualquiera suponga que deben estar cubiertos.
1.4) Agradecimientos y contribuciones
Esta lista de PUF le debe un agradecimiento en primer lugar a los usuarios de
es.comp.hackers, y a las discusiones que se realizan en el grupo.
Creditos por las FAQ originales: Criptero, Pablo LGZ, Vortice, Madelaine, el
forense, Lasparri, pp1pp, speedfire, nexux0, zer0, sergei, kr0kus, anonymous,
Drizzt... y con posterioridad muchos otros del grupo.
Un agradecimiento especial a Dudaiev por indicarme dónde encontrar las FAQ
originales.
Agradecimientos a Seldon, unikoke, K@te M@te, Coya, Mezoberrazan, Fito.01,
Tracker, T.L., Darkwave, Lokutus, Voix, sergey lopez ruiz, isopreno y
Nekromancer, entre otros.
1.5) Envío de contribuciones
En principio, y hasta que alguien quiera responsabilizarse por la lista de PUF,
las contribuciones deberán hacerse como respuestas al post de la lista en si.
1.6) Declaración de responsabilidades
Esta lista de PUF se provee en forma gratuita, y sin ninguna garantía. No se
acepta ninguna responsabilidad por el mal uso del material contenido en la
lista.
Es muy probable que existan errores en esta lista de PUF, en particular en sus
primeras versiones, y la responsabilidad por la verficación de la información
provista es responsabilidad del usuario final.
1.7) Derechos de copia
Se permite la reproducción electrónica o por cualquier otro medio en cualquier
sistema, en tanto que se reproduzca en su totalidad, sin modificar, y con esta
nota de derechos de copia intacta.
Se permite su uso comercial, sin embargo es preferible que se consulte en
es.comp.hackers sobre este evento antes de su publicación.
1.8) ¿Dónde encontrar las PUF?
Las PUF se postean en forma regular en es.comp.hackers (la intención es
postearlas en forma semanal si no hay cambios importantes) y en las siguientes
webs:
- http://kartrex.i.am
- www.khermetik.org/es_hck/index.html
- http://lecsiumsoft.com
- http://eureka.ya.com/lecsium/tracker/texto/index.htm
- [próximamente más webs]
Las FAQ anteriores pueden encontrarse en:
www.faqs.es.org/faqs/comp/hackers/comp-hackers.txt - Ahí está la FAQ 2000 (0.2)
www.geocities.com/SiliconValley/Lab/7379/faq.htm - Ahí está la antigua, la 0.1
1.9) ¿Cómo y dónde postear? Grupos de news adecuados para cada caso
El grupo de news es.comp.hackers está dedicado al hacking, phreacking y
cracking.
Si quieres hacer pruebas, el grupo indicado es es.pruebas
Si tienes alguna pregunta relacionada con la utilización o el funcionamiento de
los grupos es.* o las news en general, utiliza el grupo es.news.preguntas
Si tienes problemas con MS Windows el grupo adecuado es es.comp.os.ms-windows
Si quieres publicar un anuncio, el grupo indicado es uno de los grupos
es.alt.anuncios
Si deseas vender, comprar o intercambiar, el grupo indicado es
es.alt.anuncios.compra-venta
Si deseas publicar un archivo binario, el lugar indicado es alguno de los grupos
es.alt.binarios
La gente del grupo suele subir los binarios a es.binarios.misc
Puedes consultar un listado completo de los grupos es.* disponibles actualmente
en las páginas de Web de RedIRIS en las siguientes direcciones:
http://ftp://news.rediris.es/infonews/docs/news_config/newsgroups.es
http://news.rediris.es/infonews/es_groups.html
Si no encuentras un grupo cuya temática se ajusta específicamente a la de tu
mensaje, el lugar indicado para publicar tu mensaje es el grupo es.misc
Si pretendes crear un grupo cuya temática no se contempla en ninguno de los
grupos es.* existentes actualmente, plantea su creación en es.news.grupos
Recuerda también que en algunos casos es preferible contestar por correo
electrónico al autor de un artículo en vez de publicar su réplica en las news.
Si haces esto último, recuerda comprobar la dirección de respuesta del autor, ya
que en muchas ocasiones se modifica para evitar el SPAM.
Si decides enviar tu respuesta a las news, asegurate de que los grupos que
figuran en el encabezamiento "Newsgroups:" son los indicados para tu mensaje.
Borra aquellos grupos en los que tu mensaje esté fuera de tema. Si no lo haces
así, se considerará que haces crossposting, que está tan mal visto como el
Off-Topic.
Si decides publicar una respuesta en las news, borra las partes del mensaje
original que no son relevantes, incluye aquellas que sean necesarias para la
comprensión del mensaje y procura no reproducir el mensaje al que esta
contestando en su totalidad. De este modo facilitas la lectura de tu respuesta y
esta consumirá menos recursos en los servidores de news que la almacenen.
Sección 2: Seguridad General de Sistemas
2.0) ¿Qué es seguridad?
Seguridad, en pocas palabras, es asegurar la Confidencialidad, Integridad, y
Disponibilidad de sus sistemas y redes.
La seguridad se divide (groseramente) en seguridad física y seguridad lógica.
2.1) ¿Cómo se define la seguridad física y lógica?
Seguridad física:
Cuando se quiere tener un equipo seguro es importante considerar todos los
aspectos que están involucrados. Uno de ellos y sin duda, uno de los mas
importantes es la seguridad que se brinda en el entorno donde esta ubicado el
equipo.
El punto mas débil que tienen la mayoría de los equipos es su consola. Siempre
se asume que la persona que este ubicada en frente de la consola, es la persona
que administra el equipo o tiene pleno conocimiento del funcionamiento del
mismo. Desde la consola se pueden realizar tareas como:
* Apagar el equipo y dejar sin servicio a los usuarios
* En el caso de Linux reiniciar el equipo en un modo en particular (nivel de
ejecución 1)
* Insertar un diskette dentro del equipo y arrancar el mismo leyendo del
diskette, para acceder con otro sistema operativo
* Acceder a la configuración de hardware del equipo (BIOS)
Todos estos puntos tienen que controlarse y tratar de eliminar todos los
posibles puntos de entrada. Llegado el caso de que un intruso logre estar
personalmente en frente de la consola.
Estos puntos de entrada se pueden cerrar tomando las siguientes precauciones
(algunas aplican a servidores, otras a cualquier ordenador):
* Colocar el equipo en una sala cerrada bajo llave
* Eliminar cualquier periférico que no se utilice con frecuencia (como
diskettera, CDROM, etc.)
* Setear el arranque en la BIOS para permitirlo solamente desde el disco rígido
primario
* Proteger el BIOS del equipo con clave (tomar en cuenta que algunas BIOS
viejas tenían password universal)
* Eliminar puertos seriales y/o paralelos que no se utilicen
* Desconectar teclado, ratón y video si estos no son utilizados
Todos estos puntos son muy importantes, ya que algunos equipos Linux puede ser
reinicializados simplemente apretando Ctrl-Alt-Del y luego inicializados en modo
mantenimiento (donde el sistema no preguntará la clave del súper usuario). Esta
combinación de teclas puede anularse o configurarse para otro uso.
Otro tipo de ataque puede realizarse a través de la diskettera e incluso a
través de los puertos serie y paralelo.
Como siempre existen muchas formas de quebrar la seguridad de un sistema, nunca
se es lo suficiente precavido, pero es importante complicar al máximo la entrada
de un posible intruso.
Debe insistirse una vez mas que si un potencial intruso tiene acceso al hardware
no hay ningún tipo de seguridad lógica inviolable.
Seguridad lógica:
Es la configuración adecuada del sistema para evitar el acceso a los recursos y
configuración del mismo por parte de personas no autorizadas, ya sea a nivel
local o vía red.
Mucha gente considera que seguridad es solamente la seguridad lógica, pero este
concepto es erróneo.
Entre los puntos más importantes a tomar en cuenta para la seguridad lógica
tenemos (algunos aplican principalmente a servidores, otros a cualquier
ordenador):
* utilización de un sistema operativo relativamente seguro (NT, 2000, UNIX,
Linux, etc.)
* ELECCION DE BUENOS PASSWORDS (es el principal)
* activado del protector de pantalla con password cuando el equipo queda
desatendido y hacer logoff antes de retirse del mismo
* utilización de un buen firewall
* utilización de antivirus y detectores de troyanos
* utilización de dispositivos de identificación por biométrica (huellas
dactilares, escaneo de retina, reconocimiento de voz, etc.)
NO EXISTE EL ORDENADOR 100% SEGURO, salvo que se encuentre completamente
aislado, tanto físicamente como vía red. Los ordenadores de la NSA de USA con
nivel de seguridad C2 según estándares, son simples sistemas UNIX en un cuarto
cerrado, sin conexión a red.
2.2) ¿Cómo puedo protegerme de los hackers en forma rápida y sencilla?
En pocas palabras:
1. Instale y mantenga actualizado un buen antivirus.
2. Instale y configure adecuadamente un buen firewall (cortafuegos).
3. Instalar todos los parches de seguridad para su sistema operativo.
4. Cerrar todos los servicios, excepto los imprescindibles. No dejar ninguno que
no se utilice 'por si acaso': pueden ser la puerta de entrada de un intruso.
5. Si accede su ordenador en forma remota, reemplace telnet y FTP por
equivalentes seguros (no existe equivalente seguro de FTP, pero puede utilizarse
scp, uno de los componentes de SSH, cuando deban trasferirse archivos
importantes entre dos ordenadores).
Si accede a su ordenador por medio de telnet, cámbielo por SSH. El motivo es que
los datos, por telnet, van en texto plano (contraseñas incluídas), mientras que
en SSH (secure shell) todos los datos van cifrados.
Haciendo estas cosas, la mayor parte de sus problemas estarán cubiertos.
2.3) ¿Qué es hacking?
Hacking es la búsqueda permanente de conocimientos en todo lo relacionado con
sistemas informáticos, sus mecanismos de seguridad, las vulnerabilidades de los
mismos, la forma de aprovechar estas vulnerabilidades y los mecanismos para
protegerse de aquellos que saben hacerlo.
NOTA: esta es una de las múltiples definiciones del término que pueden
encontrarse en Internet. Consultar el Jargon File, por ejemplo en
www.fwi.uva.nl/~mes/jargon/ o buscar "Jargon File" con cualquier buscador.
2.4) ¿Qué es cracking?
Tiene dos definiciones, según se hable de seguridad informática o de crackeo de
programas.
En el caso de seguridad informática es el permanente intento de violación de
seguridad de los sistemas informáticos, con fines justificados o no.
En el caso de crackeo de programas la definición es la de creador de cracks,
literalmente romper, que son programitas destinados a la desprotección de
programas comerciales para que puedan ser usados sin límite (y gratis
NOTA: estas son algunas de las múltiples definiciones de los término que pueden
encontrarse en Internet. Consultar el Jargon File, por ejemplo en
www.fwi.uva.nl/~mes/jargon/ o buscar "Jargon File" con cualquier buscador.
2.5) Otras definiciones
Wanabies - los que quieren ser, los futuros hackers, aunque por ahora no tienen
ni idea.
Newbies - hackers en camino, considerados 'novatos', pero con amplios
conocimientos ya.
Script kiddies - son los que entran en algún sitio utilizando herramientas
creadas por otros que malamente saben usar y que no saben cómo funcionan.
También se dedican a realizar ataques DoS (Denial of Service), popularmente
conocidos como nukes, a usuarios de IRC.
Lamers - los que se aprovechan del trabajo de los demás en su beneficio, sin
crear nada ellos y sin darles el reconocimiento que merecen. Los lamers son los
más repudiados por toda la comunidad underground. El término deriva de lusers,
que a su vez deriva de looser user (usuario perdedor, literalmente). Hay que
tener en cuenta el especial significado de ganador y perdedor en la cultura
anglosajona: los ganadores son los triunfadores en la vida, los perdedores el
resto.
Luego, también están otros que no son de hack, pero están muy relacionados:
coders, virii makers, etc.
2.6) ¿Qué se necesita para ser un hacker?
Ante todo MUCHAS ganas de aprender.
Un buen conocimiento del idioma inglés ayuda bastante, ya que, desgraciadamente,
es poca la documentación de hacking que ha sido traducida al español.
Es conveniente tener montada una LAN para poder hacer pruebas, como mínimo 2
ordenadores conectados con cable cruzado. Los ordenadores de la LAN deben tener
instalada una variedad de sistemas operativos que dependerán de las pruebas que
deseemos realizar, aunque tomando en cuenta la distribución de los sistemas
operativos a nivel mundial es conveniente que uno de ellos tenga Microsoft
Windows NT 4 + SP6a y otro alguna distribución de Linux o UNIX. A medida que
Microsoft Windows 2000 gane en popularidad será necesario contar con un
ordenador que lo tenga instalado.
Si contamos con ordenadores lo suficiente potentes podemos instalar sistemas
operativos adicionales en máquinas virtuales (por ej. con el programa VMware, de
www.vmware.com).
Como esta pregunta aparece con DEMASIADA frecuencia en el foro, vale una
explicación más detallada.
Imagínate que voy a la consulta del médico, y le digo "Quiero que me enseñes a
ser médico", o me acerco al campeón mundial de karate y le digo "Quiero que me
enseñes en un momento todo el karate que sabes".
¿Crees que todos esos fines de semana que se han pasado muchos estudiando es de
coña?, ¿Que esperas que te digan?, si macho, apréndete estas palabras mágicas, y
ya está.
Si de todas formas quieres que te expliquemos, aquí tienes un guión básico:
1 - Informática básica. Aprende conceptos acerca de cómo funciona un ordenador,
qué es la CPU, sistemas de numeración, álgebra booleana, conceptos de sistemas
operativos.
* Disco duro, particiones, ¿qué es una partición?
* Sistema operativo, ¿qué es?
* Gestión de memoria
* Gestión de acceso al disco
* Planificación de tareas
* Qué es un programa, código fuente, código objeto, compilar, linkar, ejecutable
2 - Aprende Inglés técnico, es muy importante. Métete en una academia si hace
falta.
3 - Aprende a usar bien el ordenador a nivel de usuario.
* Lectores de correo electrónico (y no es broma, hay gente que aunque los usa,
no sabe usarlos), prueba varios, el Eudora, por ejemplo
* Lectores de news, igual
* Varios navegadores, el Explorer, el Netscape, diversas herramientas
* Clientes de IRC, igual
Aprende qué son esas opciones que nunca usas, curiosea en las opciones, quizás
esta fase parezca una tontería, pero no lo es.
4 - Aprende a usar los recursos de Internet, por ejemplo los navegadores, hay
gente que aunque usa un navegador para buscar algo, no lo encuentra, porque en
realidad no sabe que palabras buscar. Con un poco de práctica, se aprende a ir
directamente al grano de lo que se busca.
La inmensa mayoría de las cosas que se preguntan aquí se encuentran en dos
patadas haciendo uso de un buscador. Cuando busques algo pregúntate: ¿Qué
palabras puede contener una página web que contenga el documento o programa que
busco?
Te pongo un ejemplo: Imagínate que alguien entra y pregunta por un firewall
gratuito y alguien le responde que se instale el cortafuegos "Freedom", pero no
dice donde está.
Entonces, el que pregunta, podría preguntar: ¿Y dónde me lo puedo bajar?
Pero en su lugar, lo que podría hacer, es ir a www.google.com y buscar
"Freedom".
Lógica y naturalmente, "Freedom" que significa libertad en inglés, es una
palabra muy corriente, le saldrán miles de páginas web, y no lo encontrará, por
eso es mejor acotar la búsqueda, usando más palabras, por ejemplo: "Freedom
firewall". Y siempre pensando, ¿Qué palabras contendrá la página web que busco?.
5 - Aprende HTML, a desarrollar páginas web, y una vez que sepas, métete con
Java Script, mira los scripts desarrollados por otros para ver como funcionan.
Al aprender Java Script, aprenderás algunos conceptos básicos de la
programación, las estructuras de control, bucles for, if, etc.
6 - Aprende algún lenguaje de programación, podría ser Visual Basic, aunque,
quizá en mi opinión, sería más interesante aprender algún lenguaje orientado a
consola, como Quick Basic. Aunque no lo sepas, probablemente lo tengas
instalado, abre una ventana al DOS y ejecuta QBasic. Una vez que te medio apañes
con QBasic, métete con Visual Basic.
7 - Puedes continuar con Java, Que no se te olvide C y C++. Tambien puedes
meterte con Python y Perl. Recuerda que la forma de aprender a programar no es
empollar los codos, sino programando. Haz tus propios programas, intenta meterte
en proyectos Open Source, quizás puedas aprender algo.
8 - Varios años más tarde, aprende bien acerca de protocolos de Internet, como
funcionan las cosas, Instálate también otros sistemas operativos, como Linux, o
BSD.
9 - A estas alturas, debes estar listo para usar sockets en C o C++, haz algo de
software sobre redes, algún servidor, aunque sea un minichat.
10 - Apúntate a listas de seguridad informática, y busca los tutoriales o libros
en la red que encuentres sobre seguridad informática. Naturalmente, en las
listas de seguridad informática no te va a enseñar sobre el tema, pero poco a
poco irás entrando en ese mundo, recordarás los avisos de vulnerabilidades
nuevas que aparecen y en muchas ocasiones te recordarán a vulnerabilidades
pasadas.
11 - Aunque no es imprescindible saber ensamblador, es conveniente saber al
menos que es, como se organiza un programa por dentro, que es lo que pasa cuando
se convierte en proceso, que es el stack, el head, el .TEXT, el código de
operación, o sea, puede ser divertido usar un emulador de un microentrenador
para prácticas de microprocesadores y aprender algo de ensamblador y hacer
algunas prácticas. No es porque pueda serte útil, si no porque te dá otra visión
más avanzada de lo que realmente hacen los programas, incluso cuando programas
en C, tienes otra visión diferente.
Por ejemplo, ¿sabes que las variables locales se crean en el stack y que por eso
se pierden cuando sales de la función?, si eso te lo dicen sin saber
ensamblador, pues puede que te suene a chino.
12 - Un truquillo para avanzar más rápido, aunque no es imprescindible, puedes
matricularte en la facultad de informática, con eso acortarás algo de tiempo. Si
no tienes nota suficiente, pues también puedes tirar de academias y cursillos.
Estudiando por tu propia cuenta, a veces te puedes atascar, combina los dos
métodos, avanza por tu cuenta y lo que te enseñen.
Con eso ya tienes tarea para rato, vuelve dentro de unos años.
2.7) ¿Qué es un pirata informático?
Por contra de lo que todo el mundo cree, "pirata" no es la traducción literal de
Hacker. En español se denomina "pirata informático" a los que se dedican a la
copia y distribución de software ilegal. Por lo tanto, los piratas informáticos
son aquellos que simplemente pinchan sobre el icono copiar disco, siendo el
programa y la grabadora los que hacen el resto del trabajo.
Sección 3: Firewalls (Cortafuegos)
3.0) ¿Qué es un firewall?
Un firewall es un programa o hardware diseñado para bloquear las conexiones no
deseadas a través de una red (por ejemplo Internet) mientras que permite las
conexiones autorizadas.
3.1) ¿Qué firewalls hay disponibles?
Para sistemas operativos MS Windows hay varias alternativas, dos de las más
comunes son:
ConSeal PC Firewall - es un programa comercial, puede adquirirse en
www.signal9.com
ZoneAlarm - es un programa (freeware para uso personal, shareware para otros
usos) que puede bajarse de la página oficial:
www.zonelabs.com
eSafeDesktop - programa gratuito para uso personal, en español, incluye
firewall, proxy, gestión de usuarios & políticas y antivirus (www.esafe.com).
Es importante destacar que el programa de firewall en si carece de utilidad si
no tiene reglas de firewalling que aplicar. Los programas suelen venir con un
juego de reglas que, sin ser de lo mejor, es mejor que nada.
Para sistemas Linux el mecanismo de firewalling viene incluído en el kernel, y
es necesario configurarlo u obtener reglas de firewalling ya hechas desde
Intenet.
Los mecanismos de configuración han variado con las diferentes versiones del
kernel, y son los siguientes (en cada nuevo kernel se mantuvo compatibilidad con
los mecanismos de las versiones anteriores):
kernels 2.0.x - ipfwadm (IP Firewall Admin)
kernels 2.2.x - ipchains (IP Chains)
kernels 2.4.x - iptables (Net Filter o IP Tables)
Pueden obtenerse reglas prefabricadas de firewalling para Linux del proyecto
Trinux, así como del Trinity OS. Ambos proyectos pueden buscarse en Freshmeat
(www.freshmeat.net).
Para los nuevos kernels 2.4.x el sistema de firewalling es completamente
distinto que para los anteriores. Ahora, es un sistema 'statefull', mientras que
antes era sin estado.
Esto, resumiendo, significa que, mientras los sin estado analizan cada paquete
independientemente, lo que permite colar paquetes si engañas al servidor
haciéndole creer que pertenecen a conexiones en puertos abiertos (esto lo hace
nmap, por ejemplo), mientras que los statefull analizan cada paquete sabiendo a
qué conexión pertenecen, por lo que este tipo de engaño ya no es posible.
iptables no es directamente compatible con ipchains, pero la conversión de
ipchains a iptables no es difícil. Por otra parte los kernels 2.4.x tienen un
módulo para soporte de ipchains que puede activarse durante la compilación, con
el fin de seguir utilizando los scripts de firewalling creados con ipchains.
3.2) ¿Cómo arranco mi firewall al iniciar el sistema?
En sistemas MS Windows crea un acceso directo al firewall en la carpeta Inicio
del Menú de Inicio de Windows, dentro de la carpeta Programas.
En sistemas Linux puedes arrancar el script de firewalling desde el
/etc/rc.d/rc.local, o bien crearle su propio link de arranque en la jerarquía
/etc/rc.d/rcX.d adecuada (X indica el nivel de ejecución).
El nivel de ejecución por defecto viene indicado en el archivo /etc/inittab, en
la línea donde pone 'initdefault', y suele ser 2, 3 ó 5.
En caso de utilizar una conexión telefónica el firewall no debe iniciarse con el
sistema, sino con la conexión a Internet. Para ello, se debe colocar el script
en el directorio /etc/ppp/ip-up/
En los casos de conexión continua, como ser ADSL y cablemódem, debe activarse el
firewall con el inicio del sistema.
3.3) ¿Cómo configuro mi firewall si no sé nada de redes?
Para aquellos que no entienden de redes, una posible estrategia, de máxima
seguridad, para configurar un firewall puede ser permitir sólo lo que quieres.
Ir abriendo aplicaciones una a una, ver qué servicios, protocolos y puertos
necesitan cada una de ellas y permitirlas.
Para que este método sea eficaz, es necesario estar seguro de que todo el flujo
de información hacia el exterior es legítimo, es decir, que tienes el sistema
limpio de troyanos y de spyware. Puedes usar programas shareware The Cleaner
(www.moosoft.com) y freeware como el Ad-aware (www.lavasoft.de).
Windows: Tomando como ejemplo el Zone Alarm
a. En el panel "Security" colocas el nivel de seguridad en Internet en high de
tal manera que solo circule lo permitido y que avise de todo.
b. En el panel "Alerts" activa las dos casillas "Log alerts to a text file" y
"Show the alert popup window" para que te de información sobre su actividad y la
grabe en un archivo log.
Con el botón Log properties --> Log file --> elige con qué periodicidad quieres
que refresque el archivo log. Zone Alarm hace copia de seguridad de los log's
anteriores con el nombre zalogaaaa.mm.dd.txt.
c. En el panel "Lock" activa "Show alert when Internet access is denied"
d. En el panel "Programs" --> advanced --> pestaña "Alerts and funcionality" -->
activa el botón "show alerts when Internet access is denied ", activa "deny
access if permission is ...."
e. En el panel "Programs" --> advanced --> pestaña "Access Permission" -->
activa "Always ask for permission", desactiva "Identify program by full path
name only", desactiva "Allow the program to pass through the lock"
f. Te conectas a Internet y arranca una a una las diferentes aplicaciones que
utilices. Cuando el firewall te muestre la alarma y petición, activa la casilla
"Remember ..." y permite el acceso. Desconecta.
g. Activa el panel "Programs" y tendrás allí todas las aplicaciones que has
lanzado. Para cada una de ellas pulsa "Options" y:
* Asegúrate de que está desactivado "Identify program by full path name only"
* --> Ports --> activa "Allow access ONLY for ...". Ahora permites el acceso a
los puertos que quieras: Add --> y eliges el tipo de servicio (Web, FTP, Mail,
News, etc). Si pulsas "Custom" puedes elegir el protocolo (TCP o UDP) y el
puerto.
* A cada aplicación añádele UDP port 53.
* En la pestaña "access permission" activa "Always allow access" para que no te
pregunte por las comunicacione permitidas.
Ejemplos de servicios, protocolos y puertos permitidos a algunos programas:
- Gestor de news, por ejemplo Agent: News server (TCP 119 ), UDP 53, SMTP TCP
25.
- Gestor de descargas, GetRight: FTP (TCP 21), UDP 53, TCP 80
- Navegador, por ejemplo Netscape: Webs server TCP 80, 8080, 8000, UDP 53,
páginas seguras SSL (TCP 443), FTP (TCP 21)
- Gestor de correo, por ejemplo Netscape Messenger: Mail SMTP (TCP 25), Mail
POP (TCP 110), UDP 53
- Internet Explorer: Webs server TCP 80,8080, 8000, UDP 53
Faltan muchos servicios importantes, así como el filtrado de paquetes ICMP
(entre ellos el ping), pero alcanza para brindar una idea somera sobre el método
de configuración.
Linux:
Existe un programa de Solsoft bastante interesante, con el que se puede
configurar no solo firewalls de todo tipo (ipchains, ip-tables, etc), si no
también las ACL de routers y switches.
En realidad puede ser un poco complicado de usar al principio, pero es una
herramienta bastante potente. Además, la versión para Linux (NP Lite 4.1) es
gratis.
Se puede bajar de www.solsoft.com/products/net_partitioner.html
3.4) ¿Cómo puedo probar mi firewall para saber si es seguro?
Lo ideal es hacer un escaneo de puertos desde otro ordenador. En el caso de
estar probando la seguridad de un ordenador conectado a Internet lo ideal es
hacer el escaneo desde otro ordenador conectado a Internet (no desde la LAN
interna).
Herramientas que ayudan en el escaneo son nmap (la versión de Linux puede
encontrarse en www.insecure.org/nmap, la de Windows NT en
www.eeye.com/html/Databases/Software/nmapnt.html, SAINT (www.wwdsi.com/saint/) y
Nessus (www.nessus.org) entre otras.
Alternativamente, si no se dispone de ninguna de estas herramientas, existen
sites en Internet que permiten realizar el escaneo desde los mismos. Estos son
algunos de ellos:
* www.secure-me.net/scan
* https://grc.com/x/ne.dll?bh0bkyd2
* http://scan.sygatetech.com/
3.5) Mi firewall da una alarma. ¿Se han metido en mi ordenador?
Ante todo no hay que dejarse llevar por el pánico. Cuando el cortafuegos avisa
que estamos siendo "atacados" no significa que nos hayan metido un troyano (BO,
Sub7 y compañía) ni mucho menos que alguien se haya introducido en nuestro
sistema.
Ese aviso significa simplemente que el presunto ataque a sido bloqueado con
éxito, ya que si dicho ataque hubiese tenido éxito, el cortafuegos no diría ni
mu.
3.6) Pero es que me están escaneando los puertos continuamente. ¿Para qué lo
hacen?
Normalmente esos escaneos sirven para saber que "puertas" están abiertas para
poder introducirse por ellas en nuestro sistema. Tambien son usados para buscar
troyanos a la escucha que esten instalados en nuestro ordenador.
3.7) ¿Entonces me están atacando?
Ante todo hay que dejar bien claro que no todos los "ataques" de los que nos
avisa el cortafuegos lo son en realidad. Existen servicios y programas que
pueden hacer saltar la alarma. Algunos de los ejemplos más conocidos son los
programas de Microsoft, Word, Visual C++, etc. Todos estos programas intentan
crear una conexión con los servidores del tío Bill (y solo los dioses y Gates
saben por qué). Tambien los servicios tipo "messenger" (MS, Yahoo, AOL, etc.),
clientes de ICQ/IRC, chequeos de actividad por parte del ISP e incluso el
chequeo del buzón de correo electrónico suelen provocar la alarma, dependiendo
de que firewall se utilice y de las reglas que hayan sido creadas y/o
(des)activadas. Cualquier programa o servicio para el que no se haya creado una
regla específica, provocará un aviso de ataque tipo BO, Sub7, Netbus, etc.
dependiendo del puerto que intente usar dicho programa o servicio.
3.8) ¿Cómo sé si la alarma es debida a un ataque o no?
Existen varios factores a tener en cuenta:
a) Los escaneos proceden siempre de la misma IP o de la misma "subred".
b) Con "netstat" nos es posible averiguar: qué conexiones o servicios tenemos
abiertos, qué puertos son utilizados por estos y cuales son las direcciones IP
de dichas conexiones. Como alternativa se puede usar el programa para Windows
"TCPView" (http://www.sysinternals.com/ntw2k/utilities.shtml). Estas
informaciones nos ayudarán a determinar si estamos siendo atacados.
c) El nombre del host y el puerto utilizado dicen bastante a la hora de
descartar posibilidades para determinar si se trata de un ataque o de algo más
inofensivo.
Pongamos un par de ejemplos:
msgr-ns16.msgr.hotmail.com
En este caso está claro que nuestro Messenger intenta chequear nuestro correo en
Hotmail.com.
pepito-dialup-7.nuestro-isp.es
pepito-dialin-7.nuestro-isp.es
Aquí existe un chequeo de actividad en la conexión por parte de nuestro
proveedor para mantenerla en el caso de haber actividad o cortarla.
3.9) Se ha confirmado mi sospecha y es un ataque. ¿Qué hago?
Si el ataque procede de la misma IP resp. subred y ademas es constante, la forma
mas elegante y menos complicada de acabar con dicho ataque es la siguiente:
En www.ripe.net o www.nic.com se puede averiguar (usando "whois")a quien
pertenece esa IP. Normalmente sera un ISP. Entre toda la informacion que
obtenemos, se encuentra una direccion de e-mail para contactar con el ISP. Se le
envia un mensaje explicandole la situacion. Recomendable seria tambien enviarles
una copia del log de la FW, donde este reflejado cuando y con que frecuencia a
tenido lugar dicho ataque. Despues se encargara el ISP de llamar al orden a
nuestro "aspirante a hacker".
Si el problema es realmente grave, se pueden seguir los lineamientos del punto
9.3 de las presentes PUF.
Sección 4: Antivirus
4.0) ¿Qué es un virus?
Un virus es un organismo viviente que tiene la habilidad de infectar células
sanas y replicarse utilizando los recursos de la célula.
Un virus informático es un código que tiene la habilidad de infectar ordenadores
sanos y replicarse desde los mismos, por la similitud en el comportamiento se
los llamó virus.
Un virus puede o no contener carga destructiva, hubo virus que luego de infectar
un ordenador se limitaban a mostrar un mensaje pacifista y luego se
auto-eliminaban. Sin embargo es muchísimo mayor la cantidad de virus que SI
tienen carga destructiva.
La destrucción causada por un virus puede ser desde muy sencilla hasta
prácticamente imposible de reparar, según las acciones que realice el código.
Tomando en cuenta el peor caso posible, es vital tener siempre un antivirus
actualizado en el ordenador.
Tipos de Virus (esta lista puede no ser excluyente)
Virus de arranque:
Se ejecutan al iniciar el sistema. Suelen estar en el MBR o en el sector de
arranque.
Companion-Virus:
Tienen el mismo nombre de otros ficheros ejecutables (p.ej. msinm.exe) solo que
tienen la terminación ".com" en vez de ".exe". Debido a un vieja regla de DOS,
se ejecutan primero los ficheros ".com".
Virus de ficheros:
Infectan programas (*.exe), de forma que al ejecutar dicho programa, se ejecuta
tambien el virus.
Virus de sistema de ficheros:
Destruyen las particiones FAT.
Virus de macro:
Virus creados con un leguaje de macros (p.ej VBA).
Virus polimórficos:
Son aquellos que hacen copias de si mismos, cambiando su código, para dificultar
su detección.
Retrovirus:
Estan programados para atacar programas antivirus.
Virus stealth:
Estos virus se camuflan como ficheros de sistema y son muy dificiles de
detectar.
Puedes encontrar más datos en las FAQ de es.comp.virus
4.1) ¿Hay antivirus para Linux?
Si bien los virus para Linux no son tan abundantes como en otros sistemas
operativos, siendo mucho más frecuentes los Internet worms (programas que se
limitan a autorreplicarse, pero esto puede deberse en parte a la menor cantidad
de ordenadores con Linux, de modo que es de esperarse que a futuro existan más.
Por otra parte un potencial virus de Linux, por la misma estructura del sistema
operativo, sólo sería dañino si se activara con la cuenta de administrador
(root), y ese es uno de los tantos motivos por los cuales dicha cuenta debe
usarse solamente cuando SE NECESITE hacer administración al sistema.
En los sistemas Linux son más habituales los troyanos, que suelen ser del tipo
rootkit (kit de herramientas para ser 'root').
Para información sobre eliminación de rootkits puede consultarse
www.chkrootkit.org
Cabe mencionar que hay antivirus que corren sobre Linux, pero detectan virus de
Windows. Sirven cuando utilizamos un servidor Linux corriendo Samba como
fileserver o printserver de una red de estaciones de trabajo Windows, para
proteger a estas últimas.
Asimismo existen antivirus para servidores de correo, que se encargan de
eliminar los virus que llegan por este medio, y que podrían afectar a las
estaciones de trabajo MS Windows.
4.2) ¿Cuál es la diferencia entre un firewall y un antivirus?
El firewall solamente te protege contra intrusiones a través de la red.
El antivirus solamente te protege contra los virus y algunos troyanos.
Sección 5: Anti-Troyanos
5.0) ¿Qué es un troyano?
Es un programa que parece ser legítimo, pero en realidad oculta código maligno
(malware) normalmente destinado a facilitar la entrada de un atacante, o
asegurar su retorno: bien abriendo las puertas para ello, bien ocultando
información al legítimo usuario para impedir la detección de la entrada y/o
cambios efectuados en los programas legítimos de la máquina.
Un ejemplo de troyano sería un 'netstat' que ocultara un puerto abierto, en el
que podría estar a la escucha otro troyano, denominado en este caso backdoor.
Puedes encontrar más información sobre troyanos en
http://members.nbci.com/zonealex/puertos.htm y
www.simovits.com/trojans/trojans.html
Otra web, con capturas de pantallas de algunos troyanos, es
www.globalframe.f2s.com
5.1) En el punto 4.2 se menciona que los antivirus detectan solamente algunos
troyanos. ¿Qué pasa con los demás?
Algunos troyanos no son detectados por los antivirus, por diferentes motivos
(que las casas de antivirus expliquen los mismos).
Afortunadamente existen programas que son específicamente para eliminar troyanos
(y no se ocupan de los virus). El más conocido es el programa "The Cleaner",
shareware que puede obtenerse de www.moosoft.com
5.2) ¿Cuáles son los troyanos/backdoors mas comunes y más peligrosos?
Los backdoors o puertar traseras son software que abre un puerto a la escucha a
escondidas del legítimo propietario de la máquina que lo ejecuta, con la
intención de facilitar la entrada a un hipotético atacante.
Estos backdoors necesitan haber sido ejecutados por primera vez en el sistema,
para ejecuciones posteriores ya toman las medidas adecuadas que las aseguren,
dependiendo del sistema. En Windows 9x se añaden a la clave del registro
adecuada, por ejemplo en las claves ejecutables en:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Current Version\Run
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Current Version\RunOnce
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Current Version\RunEx
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Current Version\RunServices
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Current
Version\RunServicesOnce
entre otras.
Esta primera ejecución puede llegar de dos formas: por un atacante que haya
conseguido control total sobre el sistema e instale el backdoor para facilitar
su regreso, o involuntariamente por el propio usuario, por error o al creer que
se trataba de otro programa.
La parte que se instala en el ordenador de la víctima se llama servidor, y el
acceso se logra mediante el cliente.
De mención histórica son el Netbus y BackOriffice (www.netbus.org y
www.cultdeadcow.com), los padres de los troyanos actuales. Ambos funcionaban
solamente en sistemas MS Windows 9x.
Desde la aparición de Netbus 2.x y BackOriffice 2000 (BO2K) su campo de acción
se extendió a sistemas MS Windows NT y 2000.
La última generación de troyanos incluye el SubSeven y SubZero, dos poderosas
herramientas que permiten control total del ordenador remoto. Pueden encontrarse
troyanos en la página (en inglés) de Archivo de Troyanos de TL Security
(www.tlsecurity.net/amt.htm)
En los sistemas Linux lo más común es el lanzamiento de un netcat en un puerto
alto para permitir el acceso a una consola remota sin autenticación o a un back
telnet.
5.3) ¿Cómo se meten usualmente los troyanos en un ordenador?
Normalmente el troyano está adosado a un archivo ejecutable, y la infección con
el troyano depende de que un usuario, ignorante de la existencia del troyano,
ejecute dicho archivo.
Los archivos ejecutables con un troyano dentro pueden provenir prácticamente de
cualquier origen: un archivo enviado por email, un archivo bajado de una página
web, etc.
5.4) ¿Cómo se oculta un archivo dentro de otro?
Aquí cabe destacar que existen dos posibilidades bastante diferentes:
a) Que se desee incluir un archivo ejecutable dentro de otro (el caso típico con
los troyanos). Esto puede hacerse con el programa eLiTeWrap
(www.holodeck.f9.co.uk/elitewrap/index.html).
b) Si lo que se desea es ocultar un archivo (por ejemplo un texto con un
mensaje) dentro de un archivo inconspicuo (por ejemplo una imagen .gif), puede
utilizarse el programa Steganos II de Centurion Soft (www.centurionsoft.com).
Sección 6: Software espía (Spyware)
6.0) ¿Qué es el spyware?
Son programas que además de su función obvia, instalan componentes que capturan
datos de nuestro ordenador (por ejemplo las páginas que visitamos) y envían
dichos datos al proveedor del programa.
Usualmente la utilidad del spyware para dicho proveedor es hacer un estudio de
mercado entre sus clientes, ya sea para uso propio o para vender esta
información a quien pueda estar interesado.
Otra posibilidad (¿Windows XP?) es informar al proveedor del software sobre los
ordenadores donde el mismo está instalado, principalmente para controlar la
piratería.
6.1) ¿Cómo elimino el spyware?
Existe un excelente programa freeware llamado AdAware de Lavasoft
(www.lavasoft.de) que hace una buena tarea eliminando el spyware.
Cabe destacar que en ocasiones (por ejemplo el Go!Zilla) el programa principal
deja de funcionar luego de eliminado el componente de spyware.
Existe información acerca de que el firewall Zone Alarm contiene componentes de
spyware, así como diversos programas de Microsoft.
Sección 7: Servicios
7.0) ¿De qué va eso de los servicios?
Los servicios son los que nuestro ordenador brinda siempre que estemos corriendo
algún tipo de servidor (FTP, web, etc.).
Algunos de los servicios son usualmente considerados más seguros que otros, pero
al margen de esto cabe destacar que los servicios son la principal puerta de
entrada a un ordenador por parte de los hackers.
De esto se deduce que es mejor no correr ningún servicio si realmente no se lo
necesita. Lo mejor es adoptar una política de "denegar todo" por defecto, y
activar solamente aquellos servicios que se vayan a utilizar.
Usualmente se puede usar tanto el número de servicio como el nombre. El flag
'-n' del netstat es para mostrarlos en forma numérica.
La lista que utiliza windows para ver el nombre-número asociado está en
C:\WINDOWS\Services, y en linux está en /etc/services
Ambas listas de puertos están obsoletas, la lista actualizada se encuentra en el
RFC-1700.
7.1) ¿Cómo sé qué servicios estoy corriendo?
En sistemas MS Windows la salida del comando "netstat -a" nos indicará aquellos
servicios que tengan un puerto abierto y estén a la escucha (LISTEN) o tengan
una conexión establecida (ESTABLISHED).
Usualmente un sistema MS Windows en su configuración estándar y sin correr
ningún server solamente debiera tener a la escucha los puertos de NetBIOS (137,
138 y 139). Si el sistema es Windows NT puede estar a la escucha el puerto 135
también.
Si queremos ver todos los puertos en formato numérico podemos utilizar "netstat
-an".
7.2) ¿Debo utilizar telnet y FTP?
NO.
Todo lo que se envía por telnet o FTP viaja por la red sin ningún tipo de
cifrado.
Obviamente esto no es un problema cuando se usa el FTP para bajar archivos de
Internet, pero puede ser potencialmente peligroso en otros casos.
Cuando el usuario "pepe", cuyo password es "perro" intenta un acceso mediante
telnet o FTP con autenticación a otro ordenador, por la red viajan las palabras
"pepe" y "perro" en forma clara y legible.
Existe el riesgo potencial de que alguien, munido de un sniffer, obtenga esos
datos de la red y los utilice para otros fines.
7.3) ¿Qué alternativa tengo?
Una buena alternativa es SSH (Secure SHell), disponible para Linux y MS Windows
en www.ssh.org
Otro cliente SSH para Windows llamado PuTTY está disponible en:
www.chiark.greenend.org.uk/~sgtatham/putty/
7.4) Eso es muy bueno para la consola. ¿Cómo puedo ver remotamente el entorno
gráfico?
Con algún programa que permita administración remota de entorno gráfico, tal
como el PCAnywhere (www.symantec.com)
Existe una excelente alternativa, que además es gratuita y multiplataforma
(Win/Linux/Mac), llamada Virtual Network Computing (VNC), que puede encontrarse
en www.uk.research.att.com/vnc/
Por cuestiones de seguridad es altamente aconsejable combinar VNC con SSH según
se explica en las FAQ del VNC.
Sección 8: Conexión por red
8.0) ¿Cómo puedo ver la IP de otra persona?
O bien se la preguntas, él o ella tendrá que poner 'ipconfig' (Windows NT) o
'winipcfg' (Windows 9x/ME) en una pantalla MSDOS o bien cuando te envíe un
mensaje miras en las propiedades y veras la IP, por medio de messenger o ICQ
cuando le estés o te esté enviando un fichero, vas a MSDOS y escribes 'netstat
-an'
En Linux el comando ipconfig es ifconfig, sirve para configurar las interfaces
de red, pero si se invoca sin parámetros permite ver la IP. El netstat tiene la
misma sintaxis, se recomiendo invocarlo con 'netstat -a -tu'.
8.1) ¿Cómo puedo averiguar recursos compartidos, usuarios y grupos de máquinas
Windows?
Ante todo aclaro que para que esto sea posible debe poder establecerse tráfico
de red a los puertos NetBIOS (137-139) de la máquina remota, si están bloqueados
(por ejemplo mediante un firewall) o desactivados no es posible.
La enumeración de carpetas e impresoras compartidas puede hacerse con el comando
net, utilizando la sintaxis:
net view \\maquina
Puedes obtener ayuda sobre el comando net con:
net help
Y más ayuda sobre el uso de un comando en particular con:
net help comando
Por ejemplo 'net help view'.
En aquellos casos donde al intentar enumerar recursos compartidos os informe que
no estáis autorizados a hacerlo, no está todo perdido. Windows NT y Windows 2000
por defecto permiten establecer una conexión anónima con el siguiente comando:
net use \\maquina\IPC$
o
net use \\maquina\IPC$ "" /user:""
Luego de esto podéis intentar nuevamente con el 'net view \\maquina'
Otras herramientas para enumerar recursos compartidos son DumpSec
(www.somarsoft.com), Legion (www.splitsecond.nu), NAT (NetBIOS Auditing Tool,
pueden encontrarse versiones para Linux y para Windows en
www.ussrback.com/NT/scanners/index.html) entre otras.
El comportamiento por defecto de permitir conexión anónima puede cambiarse en
Windows NT con SP3 o superior y en Windows 2000, para ello es necesario crear
una clave en la Registry (consultar por 'Null Session' en la Microsoft Knowledge
Base).
La enumeración de usuarios y grupos usualmente requiere que hayáis establecido
una conexión anónima como se indica más arriba.
El método más sencillo es utilizar el comando nbtstat de la siguiente forma:
nbtstat -a nombre_maquina
o
nbtstat -A IP_maquina
Que os mostrará una información similar a la siguiente:
C:\nbtstat -A 204.16.2.8
NetBIOS Remote Machine Name Table
Name Type Status
-----------------------------------------------------------
ALEPH <20> UNIQUE Registered
TESTER <00> UNIQUE Registered
GOONIES <00> GROUP Registered
TECNICO <03> UNIQUE Registered
LUIS <1D> UNIQUE Registered
ADMINISTRATOR <03> UNIQUE Registered
..__MSBROWSE__.. <01> GROUP Registered
MAC Address = 00-C0-4F-86-80-05
El número hexadecimal entre <> es el que os permitirá conocer los nombres de
usuarios en uso en ese momento, los <03> son usuarios (en el ejemplo
ADMINISTRATOR y TECNICO).
Para más información sobre el significado de estos valores hexadecimales podéis
consultar el libro Using Samba, que puede comprarse, o bajarse en formato PDF y
consultarse online en www.oreilly.com
DumpSec, ya mencionado, también permite enumerar usuarios y grupos.
Dos excelentes herramientas para enumerar usuarios en sistemas Windows NT y
Windows 2000 son sid2user y user2sid (www.chem.msu.su:8080/~rudnyi/NT/sid.txt)
que funcionan siempre que pueda establecer tráfico NetBIOS, no siendo necesario
establecer una conexión anónima.
Con user2sid obtenéis primero el identificador (SID) de la máquina:
C:\user2sid \\192.168.202.33 "domain users"
S-1-5-21-8915387-1645822062-1819828000-513
Number of subauthorities is 5
Domain is WINDOWSNT
Length of SID in memory is 28 bytes
Type of SIS is SidTypeGroup
El SID es el número S-1-5-21-8915387-1645822062-1819828000-513
Ahora bien, podéis utilizar ese número, sin el S-1 y los guines separadores,
para enumerar uno a uno todos los usuarios de la máquina remota:
C:\sid2user \\192.168.202.33 5 21 8915387 1645822062 18198280005 500
Name is admin
Domain is WINDOWSNT
Type of SID is SidTypeUser
Lo único que tenéis que hacer es omitir el S-1, los guiones, y colocar al final
(separado por un espacio) el identificador de usuario (RID), en el ejemplo 500,
que corresponde al Administrator.
Los RID a probar son los siguientes:
500 - Administrator
501 - Guest
1000, 1001, 1002, etc. - Usuarios
Esta herramienta funciona aún cuando las cuentas se hayan renombrado (el RID 500
es el Administrator, aún cuando lo hayan renombrado a Pepe, y de esta forma os
enteráis del nombre que se está utilizando).
Sección 9: Hacking
9.0) ¿Cómo puedo obtener la clave del Administrador en un Windows NT/2000?
Ante todo aclaremos que no hay recetas mágicas.
Dado que lo usual es que no se tiene acceso a los DC, lo ideal es utilizar un
sniffer para capturar los hashes de los passwords de los usuarios directamente
desde la red, para luego hacer un proceso de crackeo off-line.
Un reconocido crackeador de passwords de Windows es el programa L0phtcrack
(www.l0pth.com), que no solamente permite hacer el proceso de crackeo, sino que
además incorpora un sniffer dentro del mismo paquete.
En caso de tener acceso a los DC, puede intentarse el uso del programa pwdump2
(www.webspan.net/~tas/pwdump2/), que inserta su código dentro de un programa en
RAM con privilegios administrativos, y realiza un vuelco de la SAM, en forma de
texto, a la pantalla. Luego este archivo puede utilizarse conjuntamente con el
L0pthcrack para crackear los passwords
Todo lo antedicho funcionará sobre Windows NT, y sobre Windows 2000 solamente
sobre aquellas cuentas que NO se encuentren almacenadas en AD.
9.1) ¿Cómo pueden violar la seguridad de mi servidor NOVELL?
Existe un FAQ (en inglés) al respecto en www.nmrc.org/faqs/netware/index.html
Adicionalmente tenemos el siguiente texto:
BOLETIN N° 9 Forma de Crackear los Password en un servidor Netware
Existen varias formas de lograrlo, por defecto se asume que la opción de
Intruder Detection está Off, también que la opción unencryted password está
habilitada y por último que existe la posibilidad de plantar un programa
Password Catcher.....
La funcionalidad de Intruder Detection On es proteger el servidor contra los
ataques de los programas Sniffers...los cuales pueden ser introducidos vía ftp,
telnet o en servidores www o a través de un e-mail al Webmaster del
Intranetware....
Novell ha facilitado a los administradores de red formas para controlar estos
ataques...Las últimas versiones del programa LOGIN:EXE encriptan los paswords
antes de transmitirlos por el medio (cableado), el administrador debe asegurarse
en tener las últimas actualizaciones de dicho programa. En versiones anteriores
de shell tal como NEXT (para mantener compatibilidad con viejas estaciones de
trabajo) se debe colocar la siguiente instrucción en la cónsola o en el archivo
AUTOEXEC.NCF:
SET ALLOW UNENCRYPTED PASSWORDS=ON
Por defecto está Off después que se realiza la instalación.
Si el Craker tiene acceso remoto a la consola puede resetear los passwords con
los siguientes NLM:
MODULO NLM Cuenta Netware version(s) supported
------------ ----------------- ----------------------------
SETSPASS.NLM SUPERVISOR 3.x
SETSPWD.NLM SUPERVISOR 3.x, 4.x y 5
SETPWD.NLM cualquiera 3.x, 4.x y 5
Se puede plantar un programa password catcher o un lector Keystroke para obtener
los passwords cuando los usuarios hagan login a la red. El programa LOGIN.EXE
está localizado en SYS:LOGIN y normalmente está protegido contra los accesos no
autorizados. El sitio más apropiado para que los Crackers coloquen uno de éstos
programas de captura de password es en una estación de trabajo con el atributo
Hidden habilitado (puede ser de forma remota). La desventaja para el
administrador es que Netware ni se enterará de la existencia de ese programa.
Existe una ubicación aún mejor para el Cracker, que puede ser una máquina de
acceso común, tal como PcAnywhere utilizada para acceso remoto. En muchas
instalaciones se permite que PcAnywhere tenga acceso a las demás máquinas
clientes de la red y solo confiando en las caraterísticas de seguridad ofrecidas
por Netware.
3-Crackear con el SETPWD.NLM
Vía RCONSOLE, se pueden cambiar los password en SYS:SYSTEM de la siguiente
forma:
Para Netware 3.1X
LOAD [SYS:SYSTEM]SETPWD [username] [newpassword]
Para Netware 4.XX y 5
LOAD [SYS:SYSTEM]SETPWD [username] [newpassword]
Si el servidor tiene replicación, entonces el Cracker tendrá acceso a todos los
servidores.
Tomado de: Anti Online y New Order magazines.
Probado en: Laboratorio de AAIAA C.A.
9.2) ¿Cómo pueden violar la seguridad de mi servidor UNIX/Linux?
Si descontamos el caso de un ID de usuario conocido que tenga su password nulo,
igual al user ID, o la palabra 'password', necesitaremos hacer una investigación
preliminar.
Lo primero sería colectar cuanta información sea posible sobre el sitio en
cuestión. Podemos consultar catálogos para obtener direcciones de email, páginas
web, grupos de noticias, la base de datos que contenga las direcciones IP
asignadas a ese sistema (ARIN, RIPE, APNIC), el registro de dominio (InterNIC),
etc.
Luego puede hacerse un escaneo de los puertos para conocer los servicios
disponibles e intentar averiguar el tipo y versión de los mismos. Por ejemplo,
si está corriendo un servidor web en el puerto 80, podemos averiguar su versión
de la siguiente forma:
$ telnet dirección_IP 80
HEAD / HTTP/1.0
{presionar ENTER un par de veces}
Entre los headers de la respuesta tendremos el tipo (Apache, IIS, etc.) y la
versión (por ej. IIS 4.0), salvo que el servidor esté configurado para no
brindar esta información (lo cual es una excelente idea, hay que consultar la
información del servidor para aprender cómo se configura este comportamiento).
De forma similar, utilizando telnet o netcat, podremos informarnos sobre los
distintos servicios disponibles.
Conociendo el tipo y versión de los servicios, podremos buscar xploits en alguno
de los sites mencionados en el punto 18.0, hacer pruebas del xploit en nuestra
LAN de pruebas, y una vez conocidos los detalles aplicarlo al site destino.
Si tenemos acceso mediante login local como usuarios comunes, el mecanismo es
similar pero aplicando xploits locales, que son más abundantes.
Dado que cada sistema estará configurado de manera diferente, con diferentes
versiones de los servicios configuradas de variadas formas,