Fingerprinting SharePoint
Se anunció ya le semana pasada que, desde Informática64, estabamos trabajando en un libro de Seguridad en SharePoint que saldrá publicado este septiembre. La parte de Pentesting, Fortificación y Publicación Segura nos ha tocado a Silverhack, Juan Luís G. Rambla y a mí, y hemos estado jugando bastante con ello.
Una de las discusiones que hemos tenido ha sido como descubrir un SharePoint desde fuera, que a priori puede no parecerlo, como sucede con la página de Ferrrai que tiene una estética que para nada recuerda a SharePoint.
Sin embargo, tiene características que le delatan, como el uso de directorios _layouts, que vaya en aspx y, por supuesto, que en el código fuente se identifique que el contenedor en los metadatos indique que está hecho con SharePoint.
Figura 1: Código fuente de Ferrari.it
Para descubirlos con Google Hacking se pueden crear diferentes dorks para encontrarlos, conociendo la estructura de ficheros que tienen y las páginas que siempre quedan.
Shodan
Para descubir los SharPoint publicados de una organización, se nos ocurrió que podíamos usar SHODAN con el parámetro net: para acotar las IPs de la organizaicón (como hace la FOCA) y buscar la firma de MicrosoftSharePointTeamServices.
Figura 2: Banner SharePoint con SHODAN
Como se puede ver, ne la firma aparece también la version de la Build. Esto no parece lo más inteligente que se diga, ya que esa firma identifica con exactititud la versión en concreto y el nivel de parcheo. En la imagen es una versión de 12.0.0.4518 que marca la versión RTM sin parchear de WSS 3/ MOSS 2007. Para el libro nos hemos tenido que currar una lista con todas las builds, que esto es muy interesante.
NTLM
Por supuesto, ya que estamos, podríamos descubir, si el parámetro WWW-Autheticate identifica que se ha utilizado el sistema de autenticación basado en NTLM, el dominio contra el que está autenticando ese servidor.
Para ello, basta con que usemos un proxy, como Odysseus o Burp, e intentemos autenticarnos. En la respuesta de error, en el parámetro WWW-Autenticate del Reply, vendrá la información del dominio.
Figura 3: Intercepción de respuesta con Odysseus
Viene en formato Base64, así que basta con decodificarlo y acceder a la info del dominio interno contra el que se está autenticando a los usuarios.
Figura 4: Decodificación del dominio en WWW-Authenticate
Espero que el resultado final de todo lo que incluyamos en el libro de Seguridad en SharePoint que vamos a sacar os guste al final, pero ya os digo que para nosotros está siendo divertido escribirlo.
Saludos Malignos!
Una de las discusiones que hemos tenido ha sido como descubrir un SharePoint desde fuera, que a priori puede no parecerlo, como sucede con la página de Ferrrai que tiene una estética que para nada recuerda a SharePoint.
Sin embargo, tiene características que le delatan, como el uso de directorios _layouts, que vaya en aspx y, por supuesto, que en el código fuente se identifique que el contenedor en los metadatos indique que está hecho con SharePoint.
Figura 1: Código fuente de Ferrari.it
Para descubirlos con Google Hacking se pueden crear diferentes dorks para encontrarlos, conociendo la estructura de ficheros que tienen y las páginas que siempre quedan.
Shodan
Para descubir los SharPoint publicados de una organización, se nos ocurrió que podíamos usar SHODAN con el parámetro net: para acotar las IPs de la organizaicón (como hace la FOCA) y buscar la firma de MicrosoftSharePointTeamServices.
Figura 2: Banner SharePoint con SHODAN
Como se puede ver, ne la firma aparece también la version de la Build. Esto no parece lo más inteligente que se diga, ya que esa firma identifica con exactititud la versión en concreto y el nivel de parcheo. En la imagen es una versión de 12.0.0.4518 que marca la versión RTM sin parchear de WSS 3/ MOSS 2007. Para el libro nos hemos tenido que currar una lista con todas las builds, que esto es muy interesante.
NTLM
Por supuesto, ya que estamos, podríamos descubir, si el parámetro WWW-Autheticate identifica que se ha utilizado el sistema de autenticación basado en NTLM, el dominio contra el que está autenticando ese servidor.
Para ello, basta con que usemos un proxy, como Odysseus o Burp, e intentemos autenticarnos. En la respuesta de error, en el parámetro WWW-Autenticate del Reply, vendrá la información del dominio.
Figura 3: Intercepción de respuesta con Odysseus
Viene en formato Base64, así que basta con decodificarlo y acceder a la info del dominio interno contra el que se está autenticando a los usuarios.
Figura 4: Decodificación del dominio en WWW-Authenticate
Espero que el resultado final de todo lo que incluyamos en el libro de Seguridad en SharePoint que vamos a sacar os guste al final, pero ya os digo que para nosotros está siendo divertido escribirlo.
Saludos Malignos!
6 comentarios:
Tiene buena pinta xDD
Un saludo.
Manolo.
A mí ya sabes que me puedes ir guardando uno ;-).
A ver si con la excusa me pongo a curiosear el SharePoint, que llevo tiempo detrás de hacerlo.
Saludos!
Saldra tambien el libro de Alejandro Ramos sobre pentesting en septiembre ???
Molaría un reto hacking sobre Sharepoint...
quiero uno
Interesante tema... sólo una cosilla, si haces el esfuerzo de medio ocultar la IP en el primer screenshot, para qué dejas la URL o directamente la IP en la segunda imagen?? ;)
JM
Publicar un comentario