miércoles, 15 de julio de 2009

Algunos comandos interesantes de Windows

En esta breve entrada os presento una lista de algunos comandos del S.O windows XP que nos pueden servir para realizar algunas tareas bastante interesantes, como siempre estos comandos son poco eficientes comparados con los comandos base de los S.O linux, pero merece la pena hecharles un vistazo. (Se pueden hacer cositas muy interesantes)

%windir%\hh.exe ntcmds.chm = muestra la ventana de ayuda de comandos de windows.

Comandos de sistema (basico)

mkdir = crear carpetas.
rmdir = borrar carpetas.
dir = listar directorios y archivos.
cd.. = retorceder un directorio.
cd ruta/nombre = ir al directorio nombre, alojado en ruta.
tree = listar directorios y archivos en forma de arbol.
copy = copia archivos.
del = elimina archivos.
rename = renombra un archivo o un directorio.
type = muestra el contenido de un fichero.
move = mueve o cambia un archivo o directorio.
attrib = asigna, modifica o elimina atributos a los archivos.
keyb = establece el idioma del teclado (basic mode)
edit = editor de archivos arcaico de ms-dos.
time = devuelve la hora del pc y permite modificarla.
ver = muestra el numero de version del sistema.
vol = muestra la etiqueta y el numero de serie del disco o volumen en el que estamos (si existen)

Comandos de sistema (avanzado)

fsutil = Administra puntos de repetición, archivos esparcidos, desmonta un volumen o extiende un volumen.
openfiles = Consuelta, muestra o desconecta los archivos abiertos.
format = formatea unidades del sistema o discos extraibles.
perfmon = abre el monitor de rendimiento.
schtasks = Muestra los tareas que se ejecutan a una hora predeterminada.
systeminfo = Muestra información del sistema.
tasklist = muestra los procesos en ejecución.
taskkill = Mata procesos (se usa conjuntamente con tasklist, ej taskkill /F /PID 1914)
tracerpt = Procesa registros de seguimiento de archivos.
assoc = Muestra todas las asociaciones de archivo (assoc.txt muestra las de un txt y assoc.txt= elimina asociacion)
at = Programa comandos al inicio del sistema u a una hora predeterminada.
cacls = Otorga, elimina o modifica permisos de archivo a los usuarios.
chcp = Muestra la tabla de codigos (util si hay que cambiar el idioma de trabajo, chcp 850 = español)
cipher = cifrador de archivos de windows (no recomendado)
comp = Compara dos archivos cualesquiera y nos dice en que se diferencian.
compact = muestra la compresion de archivos u directorios en NTFS, y puede quitar o activar la compresion.
sfc = comprobador de archivos del sistema.
expand = expande archivos comprimidos (puedefuncionar inclusive cuando estos estan dañados, compresion de windows claro)
find = encuentra cadenas de texto dentro de archivos, ej find "hola" archivo.
txtftype = muestra o modifica los tipos de archivos empleados (a diferencia de las asociaciones aki te muestra a que programa se asocia)
gpresult = muestra la configuracion de las directivas de grupo.
gpupdate = actualiza las directivas de grupo.
mmc = abre la consola de configuracion de windows.
mode = muestra o configura los puertos LPT y Com hacia los dispositivos.
exe2bin = convierte archivos exe ejecutables a codigo binario. (util para pasar desapercibido archivos por los escaner de antivirus)
mem = muestra informacion sobre las tareas cargadas en la memoria del sistema.
ntsd = debuggeador de aplicaciones.
recover = recupera archivos de datos de una unidad dañada.
regedit = accede al registro de windows.
reg = agrega, modifica y muestra informacion de las subclaves del registro de windows.
regsvr32 = registra cualquier dll en el sistema, ej regsvr32 nombredll.dll.
runas = permite a un usuario ejecutar programas o comandos con derechos diferentes al inicio de sesion.
set = muestra, establece o quita variables de entorno.
shutdown = apaga, suspende, o reinicia el pc, tambien puede programar estas acciones para una hora concreta.
sort = se encarga de ordenar la informacion. puede usarse conjuntamente con find.
subst = asocia, crea o muestra las unidades virtuales del sistema.

Comandos de conexion

finger = muestra informacion acerca de uno o varios usuarios en un equipo remoto especifico.
getmac = Obtine la mac y la lista de transporte de red.
arp = muestra y modifica las tablas de conversion de IP en direcciones fisicas.
ftp = transfiere archivos entre equipos que tienen el protocolo ftp habilitado (con autorizacion claro)
tftp = protocolo trivial de transferencia de archivos. (suele usarse en unix)
hostname = muestra el nombre del host correspondiente al equipo local.
ipconfig = muestra la configuracion tcp/ip y la renueva (ipconfig /all y ipconfig /renew)ipxroute = muestra y modifica informacion acerca de las tablas de enrutamiento del equipo.
irftp = envia y recibe archivos mediante un vinculo infrarrojos (si tenemos uno claro).
nbtstat = muestra y confira todo lo relacionado con netbios.
netstat = muestra las conexiones tcp activas, los puertos, las tablas y las estadisticas.
tracert = determina la ruta hacia un destino mediante el envio de mensajes ICMP.
nslookup = diagnostico de la infraestructura dns.
pathping = proporciona informacion acerca de la latencia de la red.
ping = comprueba la disponibilidad a nivel IP de otro equipo en nuestra red o fuera de esta.
rasdial = comprueba las conexiones telefonicas, y las ejecuta (a traves del modem).
rexec = ejecuta comandos en un equipo remoto (si este servicio se encuentra habilitado)
rsh = ejecuta comandos en un equipo remoto (si este servicio se encuentra habilitado).
route = muestra o modifica las entradas de la tabla de rutas IP local.
net = proporciona todo lo referente a la conexion de red, iniciar, parar, mandar mensajes...
telnet = permite establecer una conexion entre dos pcs remotos (si esta activo el protocolo telnet claro).
tsshutdn = permite apagar, reiniciar o suspender un terminal server desde un sistema windows.
shadow = permite controlar de forma remota una sesion activa de otro usuario.
mstsc = abre la ventana de conexion a escritorio remoto.
msg = envia un mensaje a un usuario de la red (o fuera de esta si conoces la info adecuada)tsdiscom = desconecta una sesion en un servidor remoto.

miércoles, 22 de octubre de 2008

Ejecutar un programa al inicio de Windows

Pues dependerá de los permisos que tengas sobre las carpetas y archivos, pero si se desea cargar un programa o archivo ejecutable al inicio de windows (NT/XP), solo podremos hacerlo a traves de las siguientes formas:

En las carpetas:

C:\Documents and Settings\nombre_usuario\Menú de Inicio\Programas\Inicio\programa_a_ejecutar C:\Documents and Settings\All User\Menú de Inicio\Programas\Inicio\programa_a_ejecutar C:\Documents and Settings\Default User\Menú de Inicio\Programas\Inicio\programa_a_ejecutar

Como una tarea programada

Configuración-Tareas Programadas

En las claves del Registro:

HKLM\Software\Microsoft\Windows\CurrentVersion\Run HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce HKLM\Software\Microsoft\Windows NT\CurrentVersion\policies\Explorer\Run HKLM\Software\Microsoft\Windows NT\CurrentVersion\AeDebug HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon HKLM\Software\Microsoft\Windows NTCurrentVersion\Image File Execution Options HKLM\System\CurrentControlSet\Services HKEY_CLASSES_ROOT\exefile\shell\open\command

Archivos especiales:

C:\Boot.ini
C:\Winnt\System.ini
C:\winnt\win.ini

lunes, 20 de octubre de 2008

Servidores DNS no censurados:

Aqui os dejo una pequeña lista con los mejores servidores DNS que he podido recopilar, no tienen filtros incorporados y si se encadenan pueden aportarnos un tiempo minimo de navegación anonima (aunque al menos deberemos encadenar 7, con lo que tendremos poca velocidad):

dns2.de.net - 194.246.96.49 (Frankfurt, Germany)
sunic.sunet.se - 192.36.125.2 (Stockholm, Sweden)
master.ns.dns.be - 193.109.126.140 (Leuven, Belgium)
merapi.switch.ch - 130.59.211.10 (Zurich, Switzerland)
prades.cesca.es - 192.94.163.152 (Barcelona, Spain)
michael.vatican.va - 212.77.0.2 (Vatican City, Italy)
dns.inria.fr - 193.51.208.13 (Nice, France)
ns0.ja.net - 128.86.1.20 (London, UK)
nic.aix.gr - 195.130.89.210 (Athens, Greece)
ns.ati.tn - 193.95.66.10 (Tunis, Tunisia)
ns1.relcom.ru - 193.125.152.3 (Moscow, Russia)
trantor.umd.edu - 128.8.10.14 (College Park, MD, USA)
ns1.berkeley.edu - 128.32.136.9 (Berkeley, CA, USA)
merle.cira.ca - 64.26.149.98 (Ottawa, Canada)
ns2.dns.br - 200.19.119.99 (Sao Paulo, Brasil)
ns2.gisc.cl - 200.10.237.14 (Santiago, Chile)
ns.uvg.edu.gt - 168.234.68.2 (Guatemala, Guatemala)
ns1.retina.ar - 200.10.202.3 (Buenos Aires, Argentina)
ns.unam.mx - 132.248.253.1 (Mexico City, Mexico)
ns.wide.ad.jp - 203.178.136.63 (Osaka, Japan)
ns.twnic.net - 192.83.166.11 (Taipei, Taiwan)
ns3.dns.net.nz - 203.97.8.250 (Wellington, New Zealand)
box2.aunic.net - 203.202.150.20 (Melbourne, Australia)
www-proxy.t-online.de:80 (Bonn, Germany)
cair.res.in:80 (Bangalore, India)
esjv.com.hk:80 (Hong Kong)
mail.unisol.com.ar:80 (Argentina)
souththornlieps.wa.edu.au:3128 (Perth, Australia)
proxy.olimpo.com.br:8080 (Rio de Janeiro, Brasil)
203.77.236.3:8080 (Jakarta, Indonesia)

lunes, 19 de mayo de 2008

Configuración de Ufw

Ufw es un pequeño firewall que a sido añadido recientemente en la distribución de Ubuntu 8.04 y que se gestiona desde el terminal de comandos, aunque no viene instalado por defecto y requiere ser activado para que comienze a regular el trafico y los puertos del sistema.
En primer lugar, abrimos un terminal y tecleamos sudo aptitude install ufw para instalarlo:


El siguiente paso consiste en arrancarlo, para ello sudo ufw enable


El siguiente paso consiste en saber como abrir o como cerrar los puertos TCP o UDP de nuestro sistema, para ello; si queremos abrir un puerto xxx tipo tcp escribiremos ufw allow xxx/tcp y si queremos por ejemplo cerrar un puerto xxx tipo udp escribiremos ufw deny xxx/udp.

Y bien, si queremos asegurar aún mas la protección de nuestro equipo, deberemos de trastear un poquito en el archivo de configuración de ufw, para ello, si por ejemplo vamos a evitar que nuestro PC responda a las peticiones ICMP de otro equipo, abrimos un terminal y lanzamos sudo nano /etc/ufw/before.rules



Devemos buscar la sentencia -A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT que está dentro de los icmp codes

Devemos cambiar dicha sentencia colocando # delante de la linea, para evitar que se cumpla.

Por último, guardamos con Ctrl+O y cerramos con Ctrl+X, para después reinciar ufw con sudo /etc/init.d/ufw restart y listo. Nos vemos por los lares...






lunes, 12 de mayo de 2008

Squirrelmail

SquirrelMail es una aplicación webmail creada por Nathan y Luke Ehresman y escrita en PHP. Puede ser instalado en la mayoría de servidores web siempre y cuando éste soporte PHP y el servidor web tenga acceso a un servidor IMAP y a otro SMTP.

SquirrelMail sigue el standard HTML 4.0 para su presentación, haciéndolo compatible con la mayoría de servidores web. SquirrelMail está diseñado para trabajar con plugins, lo cual hace más llevadera la tarea de agregar nuevas características entorno al núcleo de la aplicación.

Licenciada bajo la GNU General Public License, Squirrelmail es software libre. Actualmente está disponible en más de 40 lenguajes.

1. En primer lugar, necesitamos tener un servidor IMAP en el sistema para poder usarlo con squir sudo apt-get install uw-imapd.

Introducimos "s" y aceptamos, con lo que la instalación del servidor IMAP abra concluido con éxcito.

2. Ahora pasaremos a instalar Squirrealmail, desde la consola sudo apt-get install squirrealmail.

3. Para configurar un poco squirrelmail, podemos ejecutar desde la consola un script semi automático programado en perl que nos solucionara la vida, para ello introducimos sudo /etc/squirrelmail/conf.pl

Una vez dentro del script, pulsamos D y seleccionamos nuestro tipo de servidor IMAP, en nuestro caso "uw", y pulsamos cualquier tecla para continuar.

Con esto, ya solo nos faltaria un pequeño ajuste para Apache conozca la ruta de squirrelmail correctamente, para ello nos desplazamos a /var/www y una vez alli introducimos sudo ln -s /usr/share/squirrelmail squirrelmail, con esto ya podemos acceder sin problemas a squirrelmail desde el navegador introduciendo http://localhost/squirrelmail








lunes, 5 de mayo de 2008

Manejando Nessus

0. Nessus es un potente escáner de redes de Software Libre. Consta de dos partes (cliente/servidor) que pueden estar instaladas en las misma máquina por simplicidad (en este post así se expone).

Se debe comentar que si el ataque se hace hacia localhost lo que se consigue es auditar nuestra propia máquina.

Cuando Nesuss finaliza el escaneo genera unos informes muy útiles si se sabe aprovechar e interpretar la información obtenida.

La distribución de Nessus consta de cuatro ficheros básicos: las librerías del programa, las librerías NASL (Nessus Attack Scripting Language), el núcleo de la aplicación y sus plugins; es necesario compilar en este orden cada una de esas partes. Puede que tenga alguna dependencia, así que ojillo.

En primer lugar nos vamos un terminal de consola y escribimos sudo apt-get install nessus, con lo que se inciara la instalación de Nessus Scanner.

1. Dentro del mismo terminal tecleamos sudo nessus-adduser, escribimos un nombre de usuario, seleccionamos un tipo de cifrado, escribimos una contraseña y confirmamos para crear el nuevo usuario.

2. Ahora tenemos que activar el servidor nessus en background, para que carge todos los plugins/ataques y podamos conectarnos desde nessus cliente, para ello tecleamos nessusd -D o nessusd --background, y si todo a ido bien veremos:

3. Ahora basta con escribir sudo nessus en un terminal de consola para ejecutar nessus cliente, una vez arrancado introducimos nuestro usuario y contraseña (creados anteriormente) y pulsamos sobre log in.

Por lo que si todo a ido bien, al presionar sobre la pestaña Plugins veremos algo parecido a esto:

4. Ahora llega el momento de inciar los ataques, seleccionamos la pestaña Target y teclear nuestra dirección objetivo, luego bastara con pulsar sobre Start the scan para que se incie el ataque.

Si todo va bien, veremos algo asi mientras se realiza el ataque:

Tras concluir el ataque se abrira una nueva ventana donde se listara la información recibida, que en este caso pertenece al localhost para realizar la prueba:

Y con esto ya solo nos queda repetir el ataque pero esta vez lo haremos a otro equipo de nuestra red para comprobar que Nessus ataca a todo lo que se conecte a la red...aighhhhht

y aqui va el resultado...



















lunes, 28 de abril de 2008

Usos del Nmap

0. Instalación de Nmap: en primer lugar arrancamosuna consola de comandos y escribimos, sudo apt-get install nmap, introducimos nuestra contraseña de admin y se inciara la instalación.


A continuación sudo apt-get nmapfe (son unos paquetes necesarios para usar nmap en Gnome)


Nmap esta diseñado para funcionar principalmente por consola, tanto en Windows como en Linux, pero esto no quita que existan multiples entornos graficos para su programa, entre ellos Knmap, que instalaremos por consola con: sudo apt-get install knmap.

Ahora podemos acceder a nmap desde “Aplicaciones/Accesorios/Knmap”, con lo que nuestro scanner quedaria así de fashion:

1. Vamos a empezar escaneando puertos a una dirección IP de nuestra red, nmap, tiene múltiples opciones para hacer esto, empezaremos realizando diversos ataques hasta conseguir obtener los puertos abiertos del equipo, empezamos lanzando nmap a pelo.

Aunque nuestro ataque a dado resultado, tendremos que parametrizar nmap si queremos llevar a cabo ataques más complejos. Para que fuincione correctamente estos ataques, deberemos arrancar knmap como root, esto lo podemos hacer mediante un lanzador, con gksu o mediante sudo knmap desde consola. Para ello, nos vamos a una sección libre del escritorio, click derecho, crear lanzador y rellenamos la ventana así, con esto ya tenemos un icono de acceso directo a nuestro escaneador con privilegios de root desde el escitorio.

A pesar de que el entorno de usuario knmap es potente y intuitivo, la mayoría de los usuarios de nmap prefieren usarlo por terminal, por ello continuaremos a traves de terminal de consola.


2. Para averiguar que sistema operativo se esconde detras de una IP, debemos parametrizar nmap con -O, por ejemplo sudo nmap -O 172.26.103.5

3. Para sondear todos los equipos de la red, debemos parametrizar con -sP y utilizar la mascara IP de la red objetivo, por ejemplo sudo nmap -sP 172.26.0.0/17 (como no quiero morirme esperando lo corto manualmente con Ctrl+C)

4. Para detectar que ordenadores de nuestra clase estan encendidos solo tenemos que modificar la dirección de red y la mascara, la parametrización es igual, sudo nmap -sP 172.26.130.0/24

5. Si lo que queremos es detectar si el equipo 172.26.103.20 esta, por ejemplo, jugando al worms, podemos lanzarle un escaner para detectar si sus puertos 17010 y 17012 estan operativos, algo así: sudo nmap -sU -p 1-20000 172.26.103.20

6. Pero si lo que queremos es observar que equipos de nuestra clase se encuentran jugando el worms, tendremos que lanzar algo parecido a esto: sudo nmap -sU -p 17010,17012 172.26.103.1-255

7. Para observar que equipos de la red estan jugando al WOW, debemos lanzar nmap por ejemplo así: nmap -sU -p 3724, 6112 172.26.0.0/17 (dependiendo de los puertos que hayamos habilitado para el WOW).


8. Si queremos comprobar que equipos de nuestra red tienen habilitado un servidor FTP, HTTP o DNS en nuestra red, debemos parametrizar nmap apuntando a los puertos, 21, 80, 53.

FTP:

HTTP:

DNS:

9. Si queremos ver los puertos abiertos que tienen los equipos de nuestra red que esten encendidos, lanzamos nmap -sT 172.26.0.0/24

10. Modo Stealh o Modo oculto, nmap, nos permite escanear una IP sin ser detectado por el sistema victima, para ello podemos hacer uso del parametro -sF, que inciara un escaneo en modo Stealh.