RootedCon CTF writeup nivel 11

Reto 11

Ya que obtuvimos una IP en el anterior reto, lo primero es hacer un escaneo a ver que hay detrás:

Tras buscar información en Google vemos que se trata de un sistema SCADA:

——————–

Technical description for port 502:

Port 502 is a serial communications protocol also functioning as a programmable logic controller. It has become a de facto standard communications protocol in the information technology industry. Port 502 is now the most popular and most accessible way of networking industrial electronic devices. The port permits the communication between devices connected to the same network. For instance, a system that can measure humidity and temperature can be programmed to communicate the results to a computer. Port 502 is commonly used as a supervisory computer with a remote terminal unit (RTU) to supervisory control and data acquisition (SCADA) systems.

——————–

Según el puerto que está usando, parece que funciona usando el protocolo ModBus (http://es.wikipedia.org/wiki/Modbus). Tras buscar más información en Google di con un script (publicado en una DefCon) que, usando falsos positivos, es capaz de identificar los dispositivos que hay detrás:

http://code.google.com/p/modscan/

Esto nos indica que hay un único dispositivo cuyo SID es 20.

Tras probar, sin éxito, varias librerías de perl y python así como algunos clientes para Linux, intentando conectar con ModBus, al final me funcionó el SimpleModBusTCP (para Windows): http://www.simplymodbus.ca/download.htm

Escribimos la IP del reto y, como Slave ID ponemos 20.

Tras realizar varias pruebas conseguí obtener el resultado que se ve arriba:

>>> 00 02 00 00 00 06 14 01 00 00 00 0A

< 02 00 00 00 00 0D 14 01 43 4F 4E 47 52 41 54 55 4C 41

Que si pasamos de Hex a ASCII obtenemos esto:

#����

##CONGRATULA

Tras darle varias vueltas, al final resultó que en el campo No of regs indicas el número de bytes que deseas recibir. Así que lo incrementé a 50 y obtuve:

#����(##CONGRATULATIONS YOU FINISHED, THE PAS

Ya estamos más cerca!

Probé con 55 pero daba error así que bajé a 53:

Y ya se pudo leer la palabra completa:

#����8##CONGRATULATIONS YOU FINISHED, THE PASSWORD IS LIBERTY

La solución para pasar el reto es: LIBERTY


4 comentarios

Deja un comentario