Recomendaciones a la hora de probar la seguridad de un sitio web en producción

Iniciado por Schaiden, 15 Agosto 2019, 23:05 PM

0 Miembros y 1 Visitante están viendo este tema.

Schaiden

Voy a parecer muy molesto, pero realmente molestar no es mi intención, sino aprender. En unos meses leí todos los libros recomendados por Jason Haddix (el de pruebas  de Owasp v4, The web application Hackers Handbook v2, Hacking 101 how to earn money hacking ethically, Mastering Modern Web Application Testing y el de Introduccion a infosec), además de haber leido todos los posts de la página de brutelogic, y muchos artículos de distintos lados en tiempos pasados. Probé varias cosas en mi propio entorno virtualizado, asi que tengo bastante teoría en la cabeza, un poco de práctica con mis VM's, pero muy poca práctica a la hora de testear páginas en producción. El ataque que intenté anteriormente:

https://foro.elhacker.net/dudas_generales/probar_la_seguridad_de_elhackernet_y_reportar_cualquier_falla_esta_bien_visto-t498564.0.html;msg2201596#new

solo se podría probar creando un nuevo thread en el foro. Gracias string Manolo por hacerme notar la estupidez de dar detalles de lo que estaba haciendo dentro del mismo thread... Pero tal vez podría haber inyectado el header en otro post en el que hago alguna pregunta, o algún aporte, asi el ataque no sería tan evidente por otros usuarios. Lo digo porque sino hay una superficie de ataque en la que no se podría testear, y tal vez exista alguna vulnerabilidad en ese lugar. Preferiría pensar que no existen. Por eso me gustaría saber que opinan sobre lo que digo, que me den recomendaciones, o me corrijan si estoy equivocado.

Muchas gracias nuevamente!

@XSStringManolo

Puedes hacer un DoS haciendo este tipo de tests, obtener datos y permisos que no deberías, etc.

Para hacer este tipo de cosas lo normal es preguntarle directamente al dueño del sitio si te permite hacer esos tipos de tests. Algunas páginas y compañías ofrecen recompensas por reporte de bugs importantes, con guidelines para que sepas lo que puedes testear, en que sitios y de que manera. Infórmate en el tema. Como veo que te gusta la lectura hay unos cuantos libros de bug hunting bastantes guay y amenos.

Este te trae varios de estos sitios y plataformas en las que se "subscriben" o participan. Te informa un poco sobre el tema. Igual están un poco desactualizados.
Hands-On Bug Hunting for Penetration Testers

Real-World Bug Hunting: A Field Guide to Web Hacking

No soy muy fan de este tipo de libros para "aprender" pero son bastante orientativos.

Tampoco me interesa el tema de buscar bugs, puedes conocer 200 y estás probando lo más técnico en la página y se te olvida probar algo exageradamente básico. Prefiero hacer cosas más organizadas y concretas. 

MinusFour

Imagínate que estás en tu casa y viene un tipo y te dice:

"Disculpe señor, he estado intentando abrir las ventanas de su casa... nono, no se preocupe, que la herramienta que he utilizado no ha servido para nada, usted está seguro!"

¿Como crees que una persona normal reaccionaría?

Edit: O en tu caso más bien:

"Oiga señor, quería preguntarle, no es alguna inconveniencia que le este aquí dejando unos rayones a sus ventanas? Pero no se preocupe, lo hago por su seguridad, ¿No se siente seguro?"

simorg

@Schaiden

NO toquetees el Foro, si quieres hacer  pruebas hazlas en otra parte.



Segundo aviso.

Schaiden

CitarPara hacer este tipo de cosas lo normal es preguntarle directamente al dueño del sitio si te permite hacer esos tipos de tests.

Perfecto, fue exactamente lo que me faltó hacer en éste caso. Pregunté luego de hacerlo y ese fue mi error. Y no directamente al dueño del sitio, sino a través del foro. Muy mal. Reconozco mi error.

CitarAlgunas páginas y compañías ofrecen recompensas por reporte de bugs importantes, con guidelines para que sepas lo que puedes testear, en que sitios y de que manera. Infórmate en el tema.

Ganar algo de dinero siendo bug bounty hunter es mi objetivo principal, asi que voy a ponerme a leer varios reportes publicados a través de http://h1.nobbd.de/index.php . La mayoría de la gente prioriza el dinero antes del conocimiento. Yo la verdad estuve mucho tiempo leyendo cosas no solo de la parte web, sino de redes, un poquito de reversing, y demás, solo por el placer de entender como se hacen cosas que me parecían de ciencia ficción, y afortunadamente me falta poco para terminar mi carrera en Informática. Pero la situación en mi país está realmente mal, y ya es hora de empezar a usar lo que aprendí para ganar aunque sea algo de dinero, por más que sea poco. Me sentiría muy contento conmigo mismo si puedo encontrar fallas en los programas  de hackerOne o bugcrowd. Se que al principio voy a estar muuuucho tiempo a prueba y error, a prueba y error, pero voy a mantener el foco hasta que me empiece a ir bien.

CitarComo veo que te gusta la lectura hay unos cuantos libros de bug hunting bastantes guay y amenos.

Este te trae varios de estos sitios y plataformas en las que se "subscriben" o participan. Te informa un poco sobre el tema. Igual están un poco desactualizados.
Hands-On Bug Hunting for Penetration Testers

Real-World Bug Hunting: A Field Guide to Web Hacking

Muchas gracias por recomendarme esos books! :D Los voy a tener en cuenta.

CitarPrefiero hacer cosas más organizadas y concretas.  

Me gustaría aprender de tu metedología y tu intuición! Si me podes comentar sobre descubrimientos que hayas hecho, que no formen parte de las vulnerabilidades más comunes, sería algo muy útil para mi. Igual ya me ayudaste bastante, asi que no voy a pretender más nada de vos! xD.

CitarNO toquetees el Foro, si quieres hacer  pruebas hazlas en otra parte.

Respeto completamente tu decisión, no voy a toquetear absolutamente nada por aca. Y valoro las ayudas que me has dado en momentos anteriores, como por ejemplo, los de la fabricación de una cantenna, y demás (que jamás logré hacer que funcionara bien! xD). Pero de todas maneras sigo teniendo la idea, de que una persona malintencionada podría llegar a descubrir alguna falla en el foro y usarla para mal. Espero que los dueños de la página se encarguen de hacer las pruebas de forma controlada, ya que podrían hacerlas dentro de una réplica de la web para no afectar al servidor en producción me imagino.

Muchas gracias por sus consejos y opiniones!

Saludos.

@XSStringManolo

Me refería a que no me dedico al bug hunting ni me voy a dedicar, porque me parece muy random. Puedes tener todos los conocimientos del mundo y no encontrar una inyección en un login por ausumir que ahí frecuetemente se pone especial enfasis en la validación y en cambio estar revisando 30.000 líneas de código 1 por 1 como un enfermo para no encontrar nada que pueda conllevar a algo serio. Por eso prefiero tirar hacia otros lados. Podría formarme para especializarme en ello pero sé como soy y sé que acabaría tragándome cientos de miles de líneas de código en webs, y la presión de no encontrar nada aún me forzaría más porque yo soy así. No gracias.
También porque hay mucha gente con mucha más experiencia y poco nuevo podría aportar. Eso de revisar códigos de gente que programa 10.000 veces mejor no me va mucho. Llámame raro.

A cerca de bugs te hago mi top 3 resumido.

Numero 3. - Constantes que no eran constantes.
La constante tomaba el valor de una variable. La validación se hacía solo a variables tras introducir una acción en uno de los juegos de la plataforma.
Cambiaba la variable, hacia reload cambiando un bool y la constante tomaba el valor de la variable. Cuando hacía alguna accion en alguno de los juegos la variable se restauraba al valor correcto debido a la validación, pero la constante permanecía alterada. Escribí mensajes con nombres de usuarios en las leaderboards de más de 10 juegos de la plataforma.
1. M
2. A
3. N
4. O
5. L
6. O
7. Jebwi
8. Abej
9. Aken
10. Jwjwie

Todos los juegos de la plataforma menos 2 eran vulnerables. No es nada super raro, pero fue mi primer bug serio y en su momento me parecio raro que hiciesen algo así una plataforma seria.

Numero 2. - Las páginas de organismos oficiales y los sqli.
La cantidad de páginas de organismos oficiales con estas vulnerabilidades no es ni medio normal. Sobre todo en intranets.
Lo curioso del asunto no es la vulnerabilidad en sí, si no que cualquiera pensaría que tendrían sus servidores para alojar la inmensa cantidad de páginas. Que serían Linux tochos, con sus firewall, antivirus...
Windows server 2006, eset y con páginas de joyerías, zapaterías, centros comerciales y la página de un organismo del gobierno como si nada. XD La seguridad. Mindblowing.
No es algo puntual.

Numero 1. BEEP BEEP SE QUIEN ERES Y LO QUE HACES.
No me puedo atribuir todo el trabajo, porque es un trabajo conjunto y tampoco puedo dar muchos detalles porque no lo hemos reportado ni pensamos hacerlo y ya se ha "parcheado". Tiene que ver con sound beacons, linkeado de sessiones y cross device tracking. Se aplica a Tor.
Te lo resumiré sencillo, arranca el micro del smartphone y desconecta los speakers y micros del pc xDDD. El/los bugs en concreto no tienen nada que ver, pero es una de sus aplicaciones más interesantes. Tampoco puedo decir mucho más.

Algo común es pensar que las empresas como Google no van a tener un puto bug. Es un error pensar eso. Cuanto más grande es la plataforma, más dificil es de mantener. Eso se aplica para todas las empresas gigantes. Si tienes 10.000 cochinos y 100 trabajadores es más fácil que se escapen que si tienes uno y lo estais vigilando entre 20. xD

Si quieres encontrar bugs a punta pala busca empresas nuevas que estén haciendo un gran deployment o portándose al sector tecnológico sin que esté todo a cargo de grandes expertos del sector.

Como bien dices los bugs que encuentro son por intuición, me suele venir un (y sí......) que suelen resolverse con un ahh no. Porque conocimientos técnicos muy básicos.