elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Hacking (Moderador: toxeek)
| | |-+  Incinera tu sitio WEB!
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 3 Ir Abajo Respuesta Imprimir
Autor Tema: Incinera tu sitio WEB!  (Leído 16,665 veces)
WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.589


Sin conocimiento no hay espíritu


Ver Perfil WWW
Incinera tu sitio WEB!
« en: 28 Julio 2020, 05:04 am »

Hola a todos!, se me ha ocurrido una buena idea para que todos podamos aprender de seguridad de manera didáctica, real y sin meternos en problemas. La idea es la siguiente:

¿Eres dueño de un sitio WEB?

Haz pasar por el fuego a tu sitio WEB!



Danos la oportunidad de revisar la seguridad de tu sitio entregandonos de manera voluntaria la URL, claramente debes ser el dueño y para asegurarnos de ello debes crear un registro TXT en tu dominio con la palabra "elhacker.net", si lo haces, entonces entre los mismos usuarios del foro le daremos un vistazo a tu sitio web y eso nos permitrá intercambiar ideas y técnicas para aprender mutuamente, y de pasada podrás corregir tus vulnerabilidades antes de que alguien más las encuentre y las aproveche para un ataque real no controlado.


¿Quieres ser el Pentester?

O para los que no conozcan el término: El atacante.



Sólo se pide algo de sentido común, acá la idea no es botar un sitio o hacerle daño, la idea es demostrar una vulnerabilidad, publicarlo en este mismo hilo y demostrar como lo hizo. Asi que:

- No se permiten ataques DOS ni DDOS ni nada que indisponga al sitio WEB.
- No se permite robar información de la base de datos.
- No se deben modificar archivos o datos de la db.
- La vulnerabilidad debe ser comprobable más que teórica.
- Publicar vulnerabilidades reales, nada de que le faltan cabeceras x frame options y basuras similares.
- Solo se debe revisar mientras exista el registro TXT en su dominio.

Cómo revisar si el dominio contiene el registro TXT correcto?: Desde el bash se debe ejecutar:

Código:
$ dig -t txt dominio.com

Si usas windows puedes usar la PowerShell:

Código:
PS> Get-Dns -Name dominio.com -Type TXT


¿Reglas?

Se vale todo, menos afectar la integridad o privacidad del mismo sitio. Esto quiere decir que no solo debemos restringirnos a una revisión web, tambien se vale revisar subdominios, puertos, etc, todo aquello que sirva para poder llegar al sitio WEB en cuestión (si, incluyendo la del proveedor de hosting).


¿Entregables?

Vamos, esto es un foro, el que quiera puede publicar sus hallazgos en un simple post o puede hacer un pdf a modo de informe, todo dependerá de quien lo haga, acá no hay un "esperable" o un "entregable", eso depende de cada uno.

De todas maneras, si se recomienda poder dar posibles soluciones por cada vulnerabilidad que encuentre (dentro de lo posible).




Vamos, esto es bien fácil, si tienes un sitio WEB permítenos que le demos un vistazo, eso es todo y los que lo revisemos podremos aplicar técnicas reales sobre sistemas reales. Muchas veces nos encontramos con CTF que no reflejan la realidad o solo debes estar adivinando cosas, la idea es poder ganar experiencia real en sistemas reales con vulnerabilidades reales.

Alguien se apunta?, solo basta con entregar su URL y agregar el registro TXT, si el dominio no tiene el registro TXT entonces abtenerse de revisarlo porque puede que realmente no sea el dueño del sitio WEB.
« Última modificación: 28 Julio 2020, 05:07 am por WHK » En línea

Drakaris

Desconectado Desconectado

Mensajes: 286


Todo lo que puedas imaginar, lo puedes crear.


Ver Perfil
Re: Incinera tu sitio WEB!
« Respuesta #1 en: 28 Julio 2020, 10:45 am »

Me gusta la idea! He desarrollado mi web hace un tiempo y tengo curiosidad de que vulnerabilidades tengo.

Este sitio web esta hospeado en 260MB la url es https://cleanet.260mb.net
TXT: https://cleanet.260mb.net/hackme.txt
« Última modificación: 28 Julio 2020, 10:51 am por Drakaris » En línea

Lo increible, no es lo que ves, sino como es
kub0x
Enlightenment Seeker
Colaborador
***
Desconectado Desconectado

Mensajes: 1.486


S3C M4NI4C


Ver Perfil
Re: Incinera tu sitio WEB!
« Respuesta #2 en: 28 Julio 2020, 16:44 pm »

Este sitio web esta hospeado en 260MB la url es https://cleanet.260mb.net
TXT: https://cleanet.260mb.net/hackme.txt

Un .txt no es válido, sino que el DNS debe contener la palabra elhacker.net en el registro TXT. Al estar hosteado en 260MB supongo que no podrás cambiar esa información.

Saludos.
En línea

Viejos siempre viejos,
Ellos tienen el poder,
Y la juventud,
¡En el ataúd! Criaturas Al poder.

Visita mi perfil en ResearchGate

Drakaris

Desconectado Desconectado

Mensajes: 286


Todo lo que puedas imaginar, lo puedes crear.


Ver Perfil
Re: Incinera tu sitio WEB!
« Respuesta #3 en: 28 Julio 2020, 18:01 pm »

Un .txt no es válido, sino que el DNS debe contener la palabra elhacker.net en el registro TXT. Al estar hosteado en 260MB supongo que no podrás cambiar esa información.

Saludos.
Ahh! Entiendo... En este caso no puedo porque tendría que tocar el servidor DNS... Y poner la siguiente regla por ejemplo:

cleanet        IN        TXT        elhacker

Tendría que hacer algo así?
En línea

Lo increible, no es lo que ves, sino como es
WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.589


Sin conocimiento no hay espíritu


Ver Perfil WWW
Re: Incinera tu sitio WEB!
« Respuesta #4 en: 28 Julio 2020, 21:19 pm »

Citar
Este sitio web esta hospeado en 260MB la url es https://cleanet.260mb.net
TXT: https://cleanet.260mb.net/hackme.txt

Bien, claramente no podrá crear un registro TXT en su subdominio porque es un hosting por subdominios, asi que no podrá crear el registro. Creo que de todas maneras en estos casos si valdrá un archivo .txt.

El sitio WEB es casi en su totalidad estático y casi no tiene secciones, asi que es muy poco lo que se puede revisar, a demás, es un hosting compartido asi que tampoco se puede hacer mucho a su infraestructura, pero, si tiene un formulario de contacto.

Pude ver dos acciones distintas en el sitio WEB, uno encargado de hacer el envío del mensaje de contacto y otro para cambiar el lenguaje, extrañamente cuando quieres cambiar el lenguaje a un lenguaje inexistente la pagina web se muestra en blanco en ves de arrojar un error o simplemente mostrar un lenguaje por defecto, supongo que efectivamente hay un error pero errors_display está deshabilitado desde php.

El formulario de contacto tiene un problema, actualmente para enviar un correo debes resolver un valor en AES y luego enviarlo a traves de una cookie, muy ingenioso ya que te exije tener habilitado javascript, pero esto no evita bots. La validación del lado de PHP es estática, asi que en la práctica da igual si utilizas el valor de AES del momento o uno que ya haya sido utilizado, el servicio te arroja un estado de "enviado" cada ves que reenvías la misma solicitud utilizando el mismo hash en AES:

Probando sin la cookie:

Código:
ncat --ssl --crlf -v cleanet.260mb.net 443

POST /email.php HTTP/1.1
Host: cleanet.260mb.net
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:78.0) Gecko/20100101 Firefox/78.0
Accept: */*
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Content-Length: 36
Origin: https://cleanet.260mb.net
Connection: Close
Referer: https://cleanet.260mb.net/

asunto=test&mensaje=test&anonimo=on

Respuesta del servidor:

Código:
<html><body><script type="text/javascript" src="/aes.js" >
</script><script>function toNumbers(d){var e=[];
d.replace(/(..)/g,function(d){e.push(parseInt(d,16))});
return e}function toHex(){for(var d=[],d=1==arguments.length&&
arguments[0].constructor==Array?arguments[0]:arguments,e="",
f=0;f<d.length;f++)e+=(16>d[f]?"0":"")+d[f].toString(16);
return e.toLowerCase()}var a=toNumbers("f655ba9d09a112d4968c63579db590b4"),
b=toNumbers("98344c2eee86c3994890592585b49f80"),
c=toNumbers("03b479870acf0ba0ff959ab28fb1dfe9");document.cookie="__test="+toHex(slowAES.decrypt(c,2,a,b))+";
 expires=Thu, 31-Dec-37 23:55:55 GMT; path=/";
 location.href="https://cleanet.260mb.net/email.php?i=1";</script>
<noscript>This site requires javascript to work, please enable
javascript in your browser or use a browser with javascript support</noscript>
</body></html>

Probando con una cookie estática múltiples veces:

Código:
ncat --ssl --crlf -v cleanet.260mb.net 443

POST /email.php HTTP/1.1
Host: cleanet.260mb.net
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:78.0) Gecko/20100101 Firefox/78.0
Accept: */*
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Content-Length: 36
Origin: https://cleanet.260mb.net
Connection: Close
Referer: https://cleanet.260mb.net/
Cookie: __test=17544cb0f7e91786eec69621b893d683;

asunto=test&mensaje=test&anonimo=on


HTTP/1.1 200 OK
Server: nginx
Date: Tue, 28 Jul 2020 19:00:38 GMT
Content-Type: text/html; charset=UTF-8
Transfer-Encoding: chunked
Connection: close
Vary: Accept-Encoding
Cache-Control: max-age=0
Expires: Tue, 28 Jul 2020 19:00:36 GMT

4
sent
0

Ok, este hash de la cookie la he reutilizado varias veces y el servidor me sigue diciendo que el mensaje ha sido enviado, asi que esto puede provocar un abuso del servicio.

No se sabe exactamente si PHP del lado del servidor hace el envío de un correo o almacena los mensajes en un txt, pero si se envían correos a traves de la función mail() entonces hay un problema serio y es que el envío masivo de correos puede provocar que caigas en listas negras o den de baja tu hosting y termines con tu sitio web abajo.

También intenté verificar si el formulario de correos tiene inyección de cabeceras:

Código:
asunto=test%0a%0cReply-To:%20test@demo.com&mensaje=test%0a%0a.%0a&anonimo=on

Ya que mail() de php adjunta las cabeceras de manera plana separadas por saltos de línea \r\n, pero no se si realmente funcionó porque no puedo hacer que me llegue una copia del correo, asi que podrías validar tu mismo, si realiza el filtrado de saltos de línea o no.

También pude ver un directory listing: https://cleanet.260mb.net/lang/ , esto no causa ningún problema, pero si puede dar problemas serios si tienes algún directorio oculto que no esté protegido, por ejemplo, alguna carpeta donde almacenes los mensajes del formulario de contacto o algún plugin de php de terceros que pueda ser llamado de manera directa, como por ejemplo: https://cleanet.260mb.net/plugins/PHPMailer-master/src/

Saludos.
« Última modificación: 28 Julio 2020, 21:25 pm por WHK » En línea

@XSStringManolo
Hacker/Programador
Colaborador
***
Desconectado Desconectado

Mensajes: 2.397


Turn off the red ligth


Ver Perfil WWW
Re: Incinera tu sitio WEB!
« Respuesta #5 en: 29 Julio 2020, 02:35 am »

https://phishingoda.ga/hackme.txt

Le añadí un easter egg por si no tiene vulnerabilidades reales.
En línea

Mi perfil de patrocinadores de GitHub está activo! Puedes patrocinarme para apoyar mi trabajo de código abierto 💖

BloodSharp


Desconectado Desconectado

Mensajes: 801


El Messi-Vegeta :D


Ver Perfil
Re: Incinera tu sitio WEB!
« Respuesta #6 en: 29 Julio 2020, 03:32 am »

Le añadí un easter egg por si no tiene vulnerabilidades reales.

Cita de: Banner
HTTP/1.1 200 OK
Date: Sun, 12 Jul 2020 22:01:11 GMT
Server: Apache/2.4.38 (Debian)
h4x0r: what are you looking for?
Content-Length: 0
Content-Type: text/html; charset=UTF-8

 ;-) :laugh: :xD

Por otro lado el servidor donde está hosteado tiene 6 CVE potenciales del 2019...


B#
« Última modificación: 29 Julio 2020, 03:37 am por BloodSharp » En línea



Drakaris

Desconectado Desconectado

Mensajes: 286


Todo lo que puedas imaginar, lo puedes crear.


Ver Perfil
Re: Incinera tu sitio WEB!
« Respuesta #7 en: 29 Julio 2020, 13:10 pm »

El formulario de contacto tiene un problema, actualmente para enviar un correo debes resolver un valor en AES.
Buenas no entiendo, que es un valor en AES, yo programé el envio de correo gracias a PHPMailer

Cita de: WHK
Ok, este hash de la cookie la he reutilizado varias veces y el servidor me sigue diciendo que el mensaje ha sido enviado, asi que esto puede provocar un abuso del servicio.
Con esto te refieres a que, un cliente puede escribir un mensaje enviarlo, y enviar este mensaje, sin cambiarlo, tantas veces como quiera? O a que te refieres? Y con el mismo hash AES?

Cita de: WHK
También pude ver un directory listing: https://cleanet.260mb.net/lang/ , esto no causa ningún problema, pero si puede dar problemas serios si tienes algún directorio oculto que no esté protegido, por ejemplo, alguna carpeta donde almacenes los mensajes del formulario de contacto o algún plugin de php de terceros que pueda ser llamado de manera directa, como por ejemplo: https://cleanet.260mb.net/plugins/PHPMailer-master/src/
Ok, esto ya lo solucioné, inserté en un archivo .htaccess la siguiente linea:
Código:
Options -Indexes
Así ya cuando accedes a la url https://cleanet.260mb.net/lang/ te arrojará un errro 403
En línea

Lo increible, no es lo que ves, sino como es
@XSStringManolo
Hacker/Programador
Colaborador
***
Desconectado Desconectado

Mensajes: 2.397


Turn off the red ligth


Ver Perfil WWW
Re: Incinera tu sitio WEB!
« Respuesta #8 en: 29 Julio 2020, 13:33 pm »

;-) :laugh: :xD

Por otro lado el servidor donde está hosteado tiene 6 CVE potenciales del 2019...


B#
Cuales? Supongo que lo has mirado con un scanner auto que te avisa de vulnerabilidades de software opcional.
En línea

Mi perfil de patrocinadores de GitHub está activo! Puedes patrocinarme para apoyar mi trabajo de código abierto 💖

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.723


<3


Ver Perfil WWW
Re: Incinera tu sitio WEB!
« Respuesta #9 en: 29 Julio 2020, 15:29 pm »

Buenas no entiendo, que es un valor en AES, yo programé el envio de correo gracias a PHPMailer
Tipo de encryptación.

Con esto te refieres a que, un cliente puede escribir un mensaje enviarlo, y enviar este mensaje, sin cambiarlo, tantas veces como quiera? O a que te refieres? Y con el mismo hash AES?
Se supone que cada petición debe de validar un hash diferente, algo como Tokens CSRF, en cada petición cambia el token y debe de validarse así se evita automatización de peticiones. Corrigeme si estoy mal WHK!
En línea

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
Páginas: [1] 2 3 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Sitio Web
Desarrollo Web
Widesito 5 2,250 Último mensaje 18 Agosto 2013, 13:02 pm
por z3nth10n
Recomendacion de sitio para auditoria de sitio y prevencion
Seguridad
Cronck 0 2,148 Último mensaje 6 Febrero 2014, 17:29 pm
por Cronck
Sitio web con acceso a /cgi-sys/Count.cgi ¿Puede comprometer mi sitio?
Nivel Web
Rienzi 2 4,377 Último mensaje 1 Agosto 2017, 23:33 pm
por Luis Leon B
[Resulto] Sitio cambia de apariencia entrando desde un .php de otro sitio web
Desarrollo Web
Snoosarp 1 2,218 Último mensaje 12 Septiembre 2019, 18:29 pm
por MinusFour
sitio web
Redes
ismaelson 6 2,252 Último mensaje 30 Diciembre 2019, 20:42 pm
por @XSStringManolo
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines