Port Knocking WEB
By: Date: marzo 28, 2009 Categories: Consultoria y Manuales,Hackers, Tools y Retos

Este articulo será de especial interés para sitios que han sido doseados constantemente como remoteexecution, elhacker.net, incluso lo que le ocurria a diosdelared

Me han dicho que han escrito un articulo explicando como han deseado la cueva, el articulo lo pueden encontrar aqui

http://mbytesecurity.com/tecnicas-blackhat-denial-of-service/

sinceramente, salvo que fuera un niño de 6 años, me daría una pena terrible usar los métodos que ahí plantean y peor aun llamarlos blackhat, obviamente ninguno de esos métodos sirve para tirar la cueva, son muy básicos, sin embargo al leer la parte del Port Knocking, se escucho interesante, como una forma de evitar un DoS, podría ser pero… primero hay que recordar que para que sirve realmente el Port knocking. Por cierto, El no ha desarrollado nada similar a lo que estoy planteado en este articulo, en el suyo dice que tiene Port knocking en el WEB, sin embargo al hacer pruebas, se ve que es falso, su puerto 80 está abierto todo el tiempo, ha de decir eso, por medio a que lo Doseen.

Port knocking

Es un mecanismo de autenticación para abrir puertos bloqueados por el firewall, un uso común seria abrir el puerto para el escritorio remoto de Windows o el SSH para los tipos Unix. Ese es su uso, nada de anti DoS, abrir un puerto que esta cerrado, punto.

Sin embargo como matizar un tipo Port knocking en el WEB, esta curiosidad se me ocurrió después de leer el articulo anteriormente citado, pues si tomamos literal la forma de usarse el Port knocking el puerto 80 deberia estar cerrado. Sin embargo es el puerto default para recibir peticiones WEB, como ¿cerrar algo que tiene que estar abierto para posteriomente reabrirlo?

La respuesta es que no se puede cerrar, obvio tiene que estar abierto, sin embargo bajo el principio de Port knocking en Linux se puede combinar el concepto, haciendo que responda un servicio web en primer lugar y luego otro, ambos desde el mismo puerto 80

¿Y como he hecho esto?

Pues en GNU/Linux ha sido muy fácil, como siempre en cuestiones de red, cualquier cosa es posible en estos sistemas operativos.

Primero he declarado una IP interna, bien podría ser 192.168.0.0 o 10.10.10.x, para este caso he usado la ip 10.10.10.1 y he configurado a apache para que responda al puerto 85, solo si la conexión es en la ip 10.10.10.1

Los que sepan de redes, sabran que ya desde aquí ese puerto no podría ser alcanzado desde internet, y es en ese puerto donde hostearemos el servicio real del web, como foros o cualquier otro.

Luego, ya que el Port knocking tiene que ser realizado con la ayuda del navegador, en un caso “normal” de uso seria a base de telnets, para este caso solo usaremos el navegador para que sea lo más transparente posible.

En el apache también se abrirá el puerto 250 y 251, estos para mi configuración, los demás pueden abrir los puertos que quieran.

Se escriben archivos html con tags que vayan redirigiéndose en la secuencia del Port knocking, una vez alcanzada la secuencia dentro del sistema operativo se lanza un iptables reenlazando a la ip y el puerto interno 10.10.10.1:85 al puerto externo 80, para que entonces desde el internet ya se pueda alcanzar el sitio.

Requerimientos

Para realizar esta configuración se requiere descargar el knockd
http://www.zeroflux.org/proj/knock/files/knock-0.5.tar.gz

Zonas editadas del httpd.conf del apache

 

# Listen:
Allows you to bind Apache to specific IP addresses and/or

# ports,
instead of the default. See also the <VirtualHost>

#
directive.

#

# Change
this to Listen on specific IP addresses as shown below to

# prevent
Apache from glomming onto all bound IP addresses (0.0.0.0)

#

#Listen 12.34.56.78:80

 

Listen 10.10.10.1:85

Listen 80

Listen 850

Listen 851

 

Regla nat requerida en esta configuración

iptables -t
nat -A PREROUTING -s %IP% -p tcp –dport 80
 
-j DNAT –to-destination 10.10.10.1:85

 

%IP% es una variable que contiene la IP, esta
variable la provee
el knockd

 

Configuración del  knockd.conf

 

[options]

       
logfile = /var/log/knockd.log

 

[AbrirlaCueva]

       
sequence    = 80,850,851

       
seq_timeout = 10

       
start_command = /sbin/iptables -t nat
-A PREROUTING -s %IP% -p tcp –dport 80 
-j DNAT –to-destination 10.10.10.1:85

       
cmd_timeout= 300

       
stop_command = /sbin/iptables -t nat -D
PREROUTING -s %IP% -p tcp –dport 80  -j
DNAT –to-destination 10.10.10.1:85

       
tcpflags    = syn

 

** el cmd_timeout = 300 segundos, son 5 minutos,
después de
que transcurran otro iptables cerrara el Port Knocking

 

contenido de los archivos html desde el servicio
web  antes del port knocking

 

index.html

<META
HTTP-EQUIV=”refresh” CONTENT=”0;
url=https://www.lastdragon.net:850/segundo.html”>

Segundo.html

<META HTTP-EQUIV=”refresh” CONTENT=”0;
url=https://www.lastdragon.net:851/tercero.html”>

Tercero.html

<META HTTP-EQUIV=”refresh” CONTENT=”1;
url=https://www.lastdragon.net/inicio.php”>

** inicio.php ya sera un archivo servido por el
servicio en
el puerto 85 de la ip 10.10.10.1.

Comprobación.

En el video se hacen pruebas, por ejemplo si conocemos un archivo, no deberíamos poder jalarlo si el port knoking esta cerrado. El archivo solo puede ser jalado cuando, el port nocking se ha realizado.

)

13 thoughts on “Port Knocking WEB

  1. Mozilla Firefox 3.0.5 Windows Vista

    gracias tu si eres brother con este articulo por fin pudimos evitar un dos donde hacian consultas salvajes al mysql inventa mas cosas y deberias comercializar tus ideas realmente funcionan podrias ganar mucho dinero

  2. Mozilla Firefox 3.0.5 Windows Vista

    david que paro me acabas de hacer con este articulo le arreglaste la vida a nuestro sysadmin gracias sigue asi poniendo el nombre de mexico alto como hacker mexicano

  3. Mozilla Firefox 3.0.5 Windows Vista

    Gracias por este documento nos ayudo mucho en nuestro trabajo
    lastdragon una molestia en nuestra oficina usamos un servidor de archivos en linux y un consultor quiere actualizarlo al nuevo EXT4 usted piensa que valga la pena ahi tenemos mucha informacion y codes
    usamos linux pero no somos consultores solo programadores de paginas web por eso su opinion es valiosa para nosotros

  4. Mozilla Firefox 3.0.5 Windows Vista

    12 años atras fuiste ponente de un diplomado en linux en la falcultad de ingenieria mis compañeros decian que eras un hacker y yo lo creo esto que escribiste lo demuestra adaptaste un concepto y lo haces funcionar de otra forma el concepto de hacker que investiga y hace que las cosas trabajen de forma diferente o mejor te queda al 100% tu eres hacker en el termino no prostituido de la palabra

  5. Mozilla Firefox 24.0 Windows 7

    No pues la verdad esta pagina de la cueva en dos o tres ocasiones ya se doseo, que no diga que no por ahi incluso vi imagenes de un grupo que publico fotos donde su pagina no se veia, no se que puedas decir a eso. e incluso creo que tus comentarios fueron que habias bajado el server pero pues creo que no te queda presumir que tu pagina no se ha doseado ya que si ha pasado y ha quedado inhabilitada ..

  6. Mozilla 11.0 Windows 7

    Y le tienen que creer a un Anon, aja….. eres tan lammer que confundes DDoS con Hackear… hasta mi perro puede dosear apretando un botón con su nariz. yo tengo un perro hacker… lamo de 3.5 pesos

Responder a anonfile Cancelar respuesta

Tu dirección de correo electrónico no será publicada.