Conpot (ICS/SCADA Honeypot)

Scada_std_animEl estudio realizado por los investigadores en seguridad en una de sus facetas se base en el basarse en los resultados arrojados por un HoneyPot.

Existen HomeyPots para diferentes escenarios, simulando SSH, SNMP, un servicio HTTP vulnerable etc..

El de hoy es algo especial, ya que se trata de un HoneyPot que simula ser un servicio ICS/SCADA. Ha habido varios incidentes relacionados con los Scada, por no decir que hay algunos de los que se encuentran expuestos en Internet.

¿Incidentes relacionados con Scada?

Pues por ejemplo: “En junio de 2010, Irán sufrió un severo ataque a parte de infraestructura crítica, principalmente a sus reactores nucleares, a través de un virus denominado Stuxnet, que contaminó el software denominado SCADA  (Supervisores de Control y de Adquisición de Datos) utilizada por aquel país, vía un USB que fue introducido a las computadoras por uno de los trabajadores.”

Igual que para los servicios SNMP o servicios con passwords vulnerables hay infraestructuras maliciosas que se encargan de ir escaneando nodos de red enteros, en busca de servicios de este tipo, identificándolos por ejemplo por e banner de la aplicación o por ciertas respuestas en llamadas a ciertos puertos.

Haremos la instalación de Conpot bajo Debian, así que primero instalamos las dependencias:

aptitude install git libsmi2ldbl smistrip libxslt1-dev python-dev libevent-dev python-pip

Ahora bajamos Conpot con el cliente de GIT:

git clone https://github.com/glastopf/conpot

Para instalar todas las dependencias y poder usarlo, ya que tenemos Python Pip instalado hacemos:

pip install -r requeriments.txt

Esto irá instalando todas las dependencias, una detrás de la otra.

Lo único que nos falta es ir al fichero de configuración y adaptarlo a nuestras necesidades.


(15:25 [email protected] conpot) > cat conpot.cfg

[modbus]

enabled = True

host = 0.0.0.0

port = 502

 

[s7]

enabled = True

host = 0.0.0.0

port = 102

 

[snmp]

enabled = True

host = 0.0.0.0

port = 161

 

[http]

enabled = True

host = 0.0.0.0

port = 80

 

[sqlite]

enabled = False

 

[syslog]

enabled = False

device = /dev/log

host = localhost

port = 514

facility = local0

socket = dev        ; udp (sends to host:port), dev (sends to device)

 

[hpfriends]

enabled = False

host = hpfriends.honeycloud.net

port = 20000

ident = 3Ykf9Znv

secret = 4nFRhpm44QkG9cvD

channels = ["conpot.events", ]

 

[fetch_public_ip]

enabled = True

url = http://api-sth01.exip.org/?call=ip

Después de configurarlo, solo nos queda arrancar Conpot

<pre>2013-04-12 16:09:25,620 Added slave with id 1.
2013-04-12 16:09:25,621 Added block a to slave 1. (type=1, start=1, size=128)
2013-04-12 16:09:25,622 Setting value at addr 1 to [random.randint(0,1) for b in range(0,128)].
2013-04-12 16:09:25,623 Added block d to slave 2. (type=3, start=40001, size=8)
2013-04-12 16:09:25,623 Conpot initialized using the S7-200 template.
2013-04-12 16:09:25,623 Serving on: ('0.0.0.0', 502)
2013-04-12 16:09:27,141 New connection from 127.0.0.1:61493. (b763654f-c9d8-45ae-b35a-824dfc220911)
2013-04-12 16:09:27,141 Modbus traffic from 127.0.0.1: {'request_pdu': '0100010008', 'function_code': 1, 'slave_id': 1, 'response_pdu': '010132'} (b763654f-c9d8-45ae-b35a-824dfc220911)
2013-04-12 16:09:27,142 Modbus traffic from 127.0.0.1: {'request_pdu': '0f0001000801ff', 'function_code': 15, 'slave_id': 1, 'response_pdu': '0f00010008'} (b763654f-c9d8-45ae-b35a-824dfc220911)
2013-04-12 16:09:27,143 Modbus traffic from 127.0.0.1: {'request_pdu': '0100010008', 'function_code': 1, 'slave_id': 1, 'response_pdu': '0101ff'} (b763654f-c9d8-45ae-b35a-824dfc220911)
2013-04-12 16:09:27,144 Client disconnected. (b763654f-c9d8-45ae-b35a-824dfc220911)</pre>

Os animo a que lo podáis probar y compartáis los resultados conHpfeeds


Si te ha gustado el post, compartelo y ayudanos a crecer.

Unete a nuestra Fanpage Siguenos en Twitter

Autor: Seifreed

Formado en un equipo de lucha contra el fraude. He trabajado implementando la protección y prevención del fraude en varios clientes dentro del sector bancario nacional e internacioal. Mi trabajo consiste en encontrar soluciones a los problemas actuales y futuros de las entidades financieras respecto al código malicioso y el fraude. Especialidades como el análisis de malware, análisis forense, ingeniería inversa o tareas de hacking ético, forman parte de mis tareas diarias. Soy ponente ien eventos nacionales (No cON Name, Owasp, Navaja Negra) e internacionales (DraonJAR CON - Colombia). Soy profesor asociado en La Salle enseñando el curso MPWAR (Master in High Performance Web Programming) y el máster de ciberseguridad de La Salle (MCS. Master in Cybersecurity) Miembro de asociaciones y grupos de research como la HoneyNet Project, Owasp, SySsec etc.. También soy el organizador de las conferencias Hack&Beers en Barcelona

Compartir este Artículo
  • Roberto Blanco

    Que tal, siguiendo las instrucciones he instalado conpot, sin embargo, al utilizar escaners no me permite escribir o leer registros del plc :/.

Siguenos!

O Puedes Subscribete

ANTES DE

SALIRTE ...

NO TE

ARREPENTIRÁS

!Gracias¡

NO OLVIDES NUESTRAS REDES SOCIALES