Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Area
de Publicaciones, 2015
1 recurso en lnea (XI, 211 p)
Indice. En la port.: RIASC, Universidad de Leon, INCIBE. Bibliograf..
Textos en espanol e ingles. Ttulo tomado de la portada del PDF
ISBN 978-84-9773-742-5
1. Informatica-Seguridad-Medidas-Investigacion-Congresos. 2. InternetSeguridad-Medidad-Investigacion-Congresos. 3. Proteccion de la informacion
c
Universidad
de Leon
Area de Publicaciones
c
RIASC,
Universidad de Leon INCIBE
Esta permitida la descarga y la reproduccion total o parcial de esta obra y
y su difusion siempre y cuando sea para uso personal o academico.
Los derechos de autor de cada contribucion individual corresponden a sus autores.
ISBN: 978-84-9773-742-5
JNIC2015
Prefacio
Las Jornadas Nacionales de Investigacion en Ciberseguridad nacen este ano 2015 en el seno de los
grupos de trabajo fomentados por el Instituto Nacional de Ciberseguridad INCIBE que es tambien
co-organizador del evento junto con el Instituto de Ciencias Aplicadas a la Ciberseguridad (Research
Institute of Applied Sciences in Cybersecurity, RIASC) de la Universidad de Leon.
Se ha hecho un gran esfuerzo por parte de todos los integrantes de los grupos de trabajo para
que la primera edicion tenga lugar este mismo ano. Tambien nacen con vocacion de continuidad y
con el objetivo claro de fomentar un lugar de encuentro estable en Espana para los investigadores en
ciberseguridad.
Finalmente se tiene un completo programa con diez sesiones que abarcan los siguientes temas:
Primera sesion: Vulnerabilidades, malware y exploits 1
Segunda sesion: Artculos cortos - Vulnerabilidades, Malware y exploits
Tercera sesion: Seguridad, ataques y contramedidas
Cuarta sesion: Seguridad en redes
Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
Sexta sesion: Vulnerabilidades, malware y exploits 2
Septima sesion: Privacidad, Criptografa y autentificacion
Octava Sesion: Temas relacionados con la ciberseguridad
Novena sesion: Ciberseguridad en Industria
Decima sesion: Innovacion docente en ciberseguridad
Las sesiones de las Jornadas se celebran en la Real Colegiata de San Isidoro, en Leon, los das 14, 15
y 16 de septiembre. Esperamos sinceramente que estos das sean productivos para todos los asistentes.
Leon, 11 de septiembre de 2015
El Comite Editorial
Miguel V. Carriegos
JNIC2015
Comite ejecutivo
Gilles Barthe
Jose Bernabeu Auban
Miguel V. Carriegos
Luis Castillo
Antonio Fernandez-Anta
Pablo Garca Bringas
Pedro Garca-Teodoro
Angel
Gomez de Agreda
Santos Gonzalez
Javier Lopez
Mario Piattini
Antonio Ramos
Raul Riesco Granadinos
Jose Mara Sierra Camara
Miquel Soriano
Carmela Troncoso
Vctor A. Villagra
ii
JNIC2015
Comite organizador
General Chair
Javier Alonso
Universidad de Leon
Program Chairs
Migue V. Carriegos
Ramon Angel
Fernandez Daz
Universidad de Leon
Universidad de Leon
Financial Chair
Adriana Suarez Corona
Universidad de Leon
Workshop Chair
Pedro Garca-Teodoro
Universidad de Granada
Universidad de Murcia
Publication Chairs
Juan Felipe Garca Sierra
Jorge Lorenzana Tamargo
Universidad de Leon
Universidad de Leon
Publicity Chairs
Paolo Casari
Igor Santos
Universidad de Leon
Universidad de Leon
Web Master
Sara Isabel Gonzalez
Jorge Lorenzana Tamargo
Universidad de Leon
Universidad de Leon
iii
JNIC2015
Comite de programa
chair: Miguel V. Carriegos
Alvaro
Botas
Juan Caballero
Pino Caballero Gil
Jordi Castell`a-Roca
Josep Domingo-Ferrer
Jose-Luis Ferrer-Gomila
Dario Fiore
David G. Rosado
Juan F. Garca
Luis Javier Garca Villalba
Pedro Garca-Teodoro
Mara Isabel Gonzalez Vasco
Juan Hernandez-Serrano
Boris Kopf
Olga Leon
Javier Lopez
Gabriel Lopez Millan
Andres Marn Lopez
Angel
Martn del Rey
Gregorio Martnez Perez
David Megas
Alfonso Munoz
Guillermo Navarro
Jorge Ramio
Sergi Robles
Ricardo J. Rodrguez
Antonio Ruiz Martnez
Manuel Sanchez Rubio
Ana Lucila Sandoval Orozco
Igor Santos
Juan Tapiador
Juan Tena
Salvador Trujillo
Juan Vera Del Campo
Alexandre Viejo
Universidad de Leon
Universidad de Leon
Universidad de Malaga
Universidad de Malaga
Universidad de Leon
Universidad de Leon
Universidad de Alicante
Universidad de Mondragon
Universidad Carlos III de Madrid
Centro Universitario de la Defensa
Universidad de Leon
IMDEA Software Institute
Universidad de La Laguna
Universitat Rovira i Virgili
Universitat Rovira i Virgili
Universidad de las Islas Baleares
IMDEA Software Institute
Universidad de Castilla-La Mancha
Universidad de Leon
Universidad Complutense de Madrid
Universidad de Granada
Universidad Rey Juan Carlos
Universitat Polit`ecnica de Catalunya
IMDEA Software Institute
Universitat Polit`ecnica de Catalunya
Universidad de Malaga
Universidad de Murcia
Universidad Carlos III de Madrid
Universidad de Salamanca
Universidad de Murcia
Universitat Oberta de Catalunya
Criptored, Universidad Politecnica de Madrid
Universidad Autonoma de Barcelona
Universidad Politecnica de Madrid
Universidad Autonoma de Barcelona
Universidad de Leon
Universidad de Murcia
Universidad de Alcala
Universidad Complutense de Madrid
DeustoTech, Universidad de Deusto
Universidad Carlos III de Madrid
Universidad de Valladolid
IKERLAN Research Centre
Universitat Polit`ecnica de Catalunya
Universitat Rovira i Virgili
iv
JNIC2015
Vctor A. Villagra
Antonio Zamora Gomez
Urko Zurutuza
JNIC2015
Revisores adicionales
Carles Angles
Vicenc Creus
Eduardo Fidalgo Fernandez
Francisco Martn-Fernandez
Jose Luis Montero
Ana Nieto
vi
JNIC2015
Contenidos
Primera sesi
on: Vulnerabilidades, malware y exploits 1
Propagacion del malware: nuevos modelos para nuevos escenarios . . . . . . .
A. Martn del Rey, A. Hern
andez Encinas, J. Martn Vaquero, A.
Queiruga Dios and G. Rodrguez S
anchez
Sistema de Deteccion de Intrusos aplicando Seleccion Negativa en
Perfiles de Usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cesar Guevara, Matilde Santos and Victoria L
opez
Segunda sesi
on: Artculos cortos: Vulnerabilidades, Malware y
exploits
The Attack of the Clones: A Study of the Impact of Shared Code on
Vulnerability Patching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Antonio Nappa, Richard Johnson, Leyla Bilge, Juan Caballero and Tudor Dumitras
14
16
18
20
22
24
Tercera sesi
on: Seguridad, ataques y contramedidas
Sistema Inmunitario Adaptativo para la mitigacion de ataques de
Denegacion de Servicio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Jorge Maestre Vidal, Ana Lucila Sandoval Orozco and Luis Javier
Garca Villalba
La utilizacion de herramientas de monitorizacion de usuarios como base
para el perfilado de identidades en fuentes abiertas: OSRFramework . . . . .
Yaiza Rubio and Felix Brezo
vii
26
32
JNIC2015
39
45
Cuarta sesi
on: Seguridad en redes
Security via Underwater Acoustic Networks: the Concept and Results
of the RACUN Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Paolo Casari, Joerg Kalwa, Michele Zorzi, Stefano Nasta, Sabrina
Schreiber, Roald Otnes, Paul van Walree, Michael Goetz, Arwid Komu
lainen, Bernt Nilsson, Jan Nilsson, Tommy Oberg,
Ivor Nissen, Henrik
Strandberg, Henry Dol, Geert Leus and Francesco Pacini
Sistema visual de monitorizacion de seguridad de flujos de red industriales
Mikel Iturbe, I
naki Garitano, Urko Zurutuza and Roberto Uribeetxeberria
Correlacion de alertas en la deteccion de malware en redes basada en
anomalas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Jorge Maestre Vidal, Ana Lucila Sandoval Orozco and Luis Javier
Garca Villalba
51
59
67
Quinta sesi
on: Artculos cortos: Seguridad en Redes, ataques,
contramedidas y criptografa
Rational Protection Against Timing Attacks . . . . . . . . . . . . . . . . . . . . . . . . .
Goran Doychev and Boris K
opf
72
viii
76
78
80
JNIC2015
82
84
86
88
90
Sexta sesi
on: Vulnerabilidades, malware y exploits 2
Deteccion de funciones inseguras en repositorios de software libre . . . . . . .
Alfonso Mu
noz Mu
noz and Pablo Gonz
alez Perez
Ingeniera inversa: metodos utilizados y analisis de tecnicas para la
proteccion de software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Alberto Garca Moro and Vctor A. Villagr
a Gonz`
alez
92
99
Angel
J. Varela Vaca and Rafael M. Gasca
ix
JNIC2015
JNIC2015
Angel
Martn del Rey, Ascensi
on Hern
andez Encinas, Jes
us Martn
Vaquero, Araceli Queiruga Dios and Gerardo Rodrguez S
anchez
Graduate studies in Cyber-Security: A proposal . . . . . . . . . . . . . . . . . . . . . . . 195
Juan F. Garca, Javier Alonso and Miguel V. Carriegos
Una apuesta por la educacion en ciberseguridad desde el ambito
universitario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
Andres Caro
Una propuesta para la ense
nanza de la Ciberseguridad en el Grado de
Ingeniera Informatica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
Jose Antonio G
omez Hern
andez
xi
JNIC2015
malware. Estos
nos proporcionar
an herramientas muy u
tiles a la hora no s
olo de entender el comportamiento del
malware en su propagaci
on, sino tambien en la simulaci
on de posibles medidas de control (que ayuden a tomar
decisiones para contener la epidemia).
En la literatura cientfica se pueden encontrar muchos
modelos propuestos cuya finalidad es tratar de simular la
propagaci
on de malware, ya sea sobre redes de ordenadores o sobre redes de dispositivos m
oviles (vease, por ejemplo [4], [5], [6]). La inmensa mayora de los mismos son
modelos deterministas basados en sistemas de ecuaciones
diferenciales ordinarias ([7], [8]). Se trata de modelos p
uramente te
oricos de manera que, en casi todos los casos, su
objetivo es el estudio cualitativo del sistema de ecuaciones
diferenciales que rige la din
amica. Debido a su naturaleza
presentan tres importantes inconvenientes [9]:
(1) No tienen en cuenta las interacciones locales entre los
distintos dispositivos de la red.
(2) Suponen que los dispositivos se encuentran homogeneamente conectados y distribuidos.
(3) No tienen en cuenta las caractersticas individuales de
cada uno de los dispositivos.
En el nuevo escenario que se vislumbra (y que se puso de manifiesto al principio de esta secci
on), es necesario
tener en cuenta todos estos condicionantes ya que existen m
ultiples tipos de dispositivos conectados, cada uno
de ellos con unos roles y caractersticas muy especficas
que deben ser tenidas en cuenta a la hora de dise
nar un
modelo epidemiol
ogico eficiente. Ello se puede conseguir si
se utiliza un paradigma diferente: el de los modelos individuales. En ellos, se considera un conjunto de entidades
individuales que representar
an a los actores involucrados
en el fen
omeno de la propagaci
on del malware, se definen
sus relaciones y especificaciones en relaci
on al codigo malicioso, y se construyen las reglas de transici
on entre los
distintos estados. Los resultados que se obtienen muestran
tanto la evoluci
on individual de cada uno de los dispositivos como la evoluci
on global del sistema.
El objetivo de este trabajo es poner de manifiesto la
necesidad de la b
usqueda de nuevos modelos para hacer
frente a los nuevos escenarios planteados. Para ello se propondr
a y estudiar
a un modelo determinista basado en un
sistema de ecuaciones diferenciales ordinarias, y posteriormente se introducir
a el correspondiente modelo individual.
El resto del trabajo se organiza como sigue: en la seccion
2 se hace una breve introducci
on a los modelos individuales; el modelo determinista y su contrapartida individual
se introducen y estudian en la secci
on 3, y finalmente las
n
I. Introduccio
El gran desarrollo cientfico y tecnologico de los u
ltimos
a
nos ha dado lugar a nuevos paradigmas como la Internet
de las Cosas, el BYOD, las SmartCities, la telemedicina,
los medios de transporte inteligentes, las viviendas inteligentes, etc. Estos conceptos estan a
un dando sus primeros
pasos y, aunque actualmente su nivel de implantaci
on no
es muy alto, seran los pilares sobre los que se cimente nuestra futura sociedad. En este sentido, no parece arriesgado
decir que en ella la conectividad sera global, de manera
que la mayor parte de los aspectos de nuestra vida los
podremos controlar de manera remota.
Los instrumentos tecnologicos gracias a los cuales este
nuevo escenario ser
a una realidad no son solo las computadoras sino tambien los dispositivos moviles (tabletas,
telefonos inteligentes,...), los dispositivos wereables, los
electrodomesticos inteligentes, etc.
Desafortunadamente este idlico paraso tecnol
ogico no
se encuentra exento de amenazas. Sin duda, la m
as importante es la debida a la accion del codigo malicioso (tambien conocido como malware, su acronimo en Ingles).
Los costes que ocasiona tanto economicos como sociales e
incluso polticos son cuantiosos, con lo que la lucha contra
el mismo supone uno de los grandes retos de la Ciberseguridad.
Esta lucha se lleva a cabo en diferentes frentes: desde la concienciacion del usuario para que adopte medidas
de seguridad oportunas hasta la adopcion e implantaci
on
de polticas de seguridad adecuadas en los distintos organismos y compa
nas, pasando por el desarrollo de software antivirus por parte de las empresas especializadas.
Adem
as la comunidad cientfica ha prestado especial atenci
on al dise
no de metodos y algoritmos para detectar la
presencia de malware en los distintos dispositivos ([1], [2],
[3]). Aunque esta es una lnea de actuacion fundamental, hemos de considerar tambien como actuaci
on complementaria el desarrollo de modelos matematicos que nos
permitan simular el comportamiento de una epidemia de
JNIC2015
Se pueden integrar datos de distinta naturaleza, de manera que es posible ejemplificar y probar hip
otesis.
Por otra parte, entre las desventajas de utilizar estos
modelos podemos mostrar las siguientes:
Son sensibles a peque
nas variaciones de las condiciones
iniciales de las reglas de transici
on.
Dependiendo de la complejidad del fen
onemo que se
quiera simular, es posible que haya que calcular un gran
n
umero de simulaciones para obtener los patrones generales de comportamiento.
n de los modelos
III. Descripcio
Los dos modelos matem
aticos propuestos en este trabajo para estudiar y simular la propagaci
on del malware son
modelos compartimentales de manera que los dispositivos
se dividen en los siguientes cuatro tipos:
(1) Dispositivos susceptibles: aquellos que no han sido infectados pero que pueden serlo en un futuro.
(2) Dispositivos infectados: aquellos que han sido infectados por el malware y que son capaces de transmitirlo. Se
dividen a su vez en:
(i) Dispositivos portadores: aquellos que han sido infectados pero no sufren da
nos ya que su sistema operativo es
distinto del atacado por el malware.
(ii) Dispositivos infecciosos: dispositivos infectados cuyo
sistema operativo es el blanco de los ataques del c
odigo
malicioso.
(3) Dispositivos recuperados: aquellos dispositivos susceptibles que han sido vacunados(dotados de las medidas
de seguridad adecuadas para que no sean infectados por el
malware), o aquellos dispositivos infectados (portadores o
infecciosos) en los que se ha detectado el malware y se ha
eliminado con exito.
En estos modelos supondremos que el proceso de limpieza al que se ven sometidos los dispositivos infectados
en los que se ha detectado el malware les dota de una inmunidad temporal; lo mismo les ocurrir
a a los dispositivos
susceptibles en los que se han instalado contramedidas.
Consecuentemente, los dispositivos recuperados vuelven
al estado de susceptibilidad al malware pasado un cierto
periodo de tiempo. Adem
as, como la velocidad de propagaci
on del malware es muy alta, podemos suponer que la
poblaci
on de dispositivos se mantiene constante a lo largo
del tiempo. Esto es:
N = S (t) + P (t) + I (t) + R (t) ,
(1)
donde N es el n
umero total de individuos de la poblacion,
y S (t) , P (t) , I (t) y R (t) son el n
umero de dispositivos
susceptibles, portadores, infectados y recuperados, respectivamente, en el instante de tiempo t.
A. El modelo global
A.1 El sistema de EDOs que rige la din
amica
Como hemos comentado anteriormente, el modelo que
desarrollaremos ser
a un modelo compartimental SPIRS
(vease la Figura 1).
JNIC2015
a (1 )
"*+,-.*+$")
v
!!"#$%&'($")
$%&'($")
a
#/0$##1*"*")
y eliminado con exito, b (P (t) + I (t)), y dispositivos susceptibles vacunados: vS (t) y los dispositivos que pierden
la inmunidad, R (t).
b
$$#!%$+-.*")
b
A.2 Determinaci
on de los par
ametros
Los par
ametros involucrados en las ecuaciones que gobiernan la din
amica del sistema son el coeficiente de transmisi
on a, el coeficiente de vacunaci
on v, el coeficiente de
perdida de inmunidad , la fracci
on de la poblaci
on con
el mismo sistema operativo que el atacado por el malware
, y el coeficiente de recuperaci
on b. En lo que sigue describiremos c
omo podemos determinar de manera te
orica
cada uno de esos par
ametros.
El coeficiente de transmisi
on a. La propagaci
on del
malware se produce a traves de contactos infecciosos (contactos adecuados y efectivos) entre el dispositivo susceptible y el infectado. Observese que un contacto entre dos
dispositivos es adecuado cuando el mismo puede conducir
a la transmisi
on del c
odigo malicioso; asimismo, un contacto adecuado es efectivo (y, por lo tanto, ser
a un contacto
infeccioso) cuando ha dado lugar a un contagio explcito. En la situaci
on que tratamos de simular los contactos
adecuados se realizar
an mediante el envo de informacion
a traves del correo electr
onico, y dichos contactos seran
infecciosos cuando el especimen del c
odigo malicioso vaya
adjunto en los mismos.
Se denomina coeficiente de contacto k al n
umero de contactos adecuados que tiene un dispositivo con el resto de
dispositivos en cada instante de tiempo. Usualmente el
coeficiente de contacto depende del n
umero total de dispositivos N , con lo que k = k (N ) = N , donde representa el promedio de contactos entre dos dispositivos de
la red en cada instante de tiempo. Si q es la probabilidad
de que un contacto adecuado acabe en contagio, entonces
qN representa el n
umero de contactos efectivos de cada
dispositivo con el resto de la poblaci
on en cada instante
de tiempo. Consecuentemente
La din
amica del modelo viene regida por el siguiente
sistema de ecuaciones diferenciales ordinarias:
S 0 (t) = aS (t) (I (t) + P (t)) vS (t) + R (t) , (2)
P 0 (t) = a (1 ) S (t) (I (t) + P (t)) bP (t) , (3)
I 0 (t) = aS (t) (I (t) + P (t)) bI (t) ,
(4)
R0 (t) = b (P (t) + I (t)) + vS (t) R (t) ,
(5)
con las siguientes condiciones iniciales:
S (0) = S0 , P (0) = P0 , I (0) = I0 ,
R (0) = N S0 P0 I0 ,
S (t) 0, P (t) 0, I (t) 0, R (t) 0.
(6)
(7)
(8)
Adem
as los parametros que intervienen en el mismo son
los siguientes: el coeficiente de transmisi
on del malware a,
el coeficiente de vacunaci
on v, el coeficiente de perdida de
inmunidad , la fraccion de la poblacion con el mismo
sistema operativo que el atacado por el malware, y el coeficiente de recuperaci
on de los infectados b. Observese que
0 a, v, , , b 1.
La ecuacion (2) nos indica que la variacion del n
umero
de dispositivos susceptibles es igual a la diferencia entre
los dispositivos recuperados que han perdido la inmunidad, R (t), y los dispositivos que han dejado de ser
susceptibles. Estos u
ltimos son la suma de los dispositivos
susceptibles que se infectan en cada instante de tiempo
(que es el producto entre los dispositivos susceptibles y
los dispositivos infectados: aS (t) I (t) -incidencia-) y los
dispositivos susceptibles en los que se instalan medidas de
seguridad en cada instante de tiempo: vS (t).
La ecuacion (3) refleja que la variacion del n
umero de
dispositivos portadores es igual a la diferencia entre los
nuevos dispositivos susceptibles -con sistema operativo
distinto al atacado por el malware- que se han infectado,
a (1 ) S (t) (I (t) + P (t))), y aquellos dispositivos portadores en los que se ha detectado y eliminado el malware
(pasan a ser recuperados): bP (t).
La evolucion del n
umero de dispositivos infecciosos viene dada por la ecuacion (4) de manera que su variaci
on es
la diferencia entre los nuevos dispositivos susceptibles que
se han infectado -y que poseen el mismo sistema operativo que el atacado por el malware-, aS (t) (I (t) + P (t)),
y los dispositivos infecciosos que se han recuperado, bI (t).
La ecuacion (5) indica que la variacion del n
umero de
dispositivos recuperados es la diferencia entre los dispositivos que se recuperan (dispositivos tanto portadores como infecciosos en los que el malware ha sido detectado
a=q
N
k (N )
=q
= q .
N
N
(9)
El coeficiente de vacunaci
on v. Los dispositivos susceptibles pueden adquirir inmunidad temporal si en ellos
se instalan parches u otro tipo de programas informaticos anti-malware. En este sentido v = , donde
representar
a la fracci
on de la poblaci
on susceptible que es
vacunada en cada instante de tiempo y 0 1 sera el
coeficiente de exito que tiene la vacunaci
on.
El coeficiente de p
erdida de inmunidad . El periodo de inmunidad, TI , es el periodo de tiempo comprendido
entre el instante en el que se elimina el malware del dispositivo y el instante en el que dicho dispositivo vuelve
a ser susceptible. Un sencillo c
alculo empleando tecnicas
estadsticas nos muestra que = T1I .
El coeficiente de recuperaci
on b. Como hemos comentado anteriormente, la recuperaci
on de un dispositivo
infectado depende de dos factores: la detecci
on del c
odigo
malicioso y la eliminaci
on con exito del mismo (una vez
detectado). Entonces si d es la probabilidad de detectar el
JNIC2015
dada por:
S1
I1
R1
que ser
a el punto de equilibrio endemico. Observese que
esta u
ltima soluci
on tiene sentido si b (v + ) aN < 0,
es decir, si la poblaci
on es superior a un cierto umbral:
A.3 El n
umero reproductivo basico
b (v + )
.
(14)
a
Adem
as se demuestra
que elpunto de equilibrio libre de
vN
N
, 0, 0, +v
es local y asint
oticamente
infecci
on E0 = +v
estable si y s
olo si R0 < 1, mientras que el punto de equilibrio endemico E1 = (S1 , P1 , I1 , R1 ) dado por (11)-(13)
es local y asint
oticamente estable si R0 > 1 (recuerdese
que este punto existe si = b ( + v) aN < 0).
En la Figura 2 se puede observar la evoluci
on de los
distintos tipos de ordenadores cuando a = 0,000138 ( =
1
1
1
72 , q = 0,01), v = 0,005 ( = 100 , = 0,5), = 48 ,
1
b = 0,0375 (d = 24
, e = 0,9) y = 0,6. El tiempo se mide en horas, S (0) = 100, P (0) = 1, I (0) =
1, R (0) = 0 y se simulan las primeras 150 horas a partir de la aparici
on de los primeros infectados. En este caso R0 0,304659 < 1 y consecuentemente no se producir
a epidemia. El punto de equilibrio libre de infecci
on es
N>
El n
umero reproductivo basico R0 es uno de los par
ametros de mayor importancia en el estudio de la propagaci
on
del c
odigo malicioso ya que su valor numerico indicar
a si
la presencia de un cierto especimen en una red se va a
convertir en una epidemia (el n
umero de dispositivos infectados crecera) o no. El n
umero reproductivo b
asico se
puede definir como el n
umero de dispositivos infectados directamente por un u
nico dispositivo infectado (paciente
cero) en una red de dispositivos enteramente susceptible.
Seg
un esto, si R0 > 1 el n
umero de dispositivos infectados crecera (y se producira una epidemia), mientras que
si R0 < 1 no se producira ninguna propagaci
on del c
odigo
malicioso. Si utilizamos el metodo NG (vease [14]) para calcular el n
umero reproductivo basico, obtenemos que
dicho valor viene dado por:
R0 =
aN
.
b ( + v)
b
(1 ) (b (v + ) aN )
, P1 =
(11)
a
a ( + b)
(b (v + ) aN )
=
,
(12)
a ( + b)
b (aN b + v)
=
,
(13)
a ( + b)
=
(10)
,)-./*-().+
&""
%"
!"#$%&'()*%#
+,-'./,-%#
$"
012%$$(,#,#
#"
3%$"&%-./,#
!"
'()*+
!"
#"
$"
%"
&""
&!"
&#"
Fig. 2. Evoluci
on de los distintos compartimentos cuando R0 < 1.
JNIC2015
-'./0(.&'/)
decir, supondremos que hasta un cierto instante de tiempo, Tprof [i], no se habr
an implementado dichas medidas
en el dispositivo, y a partir de dicho instante de tiempo
s se instalar
an. Si 0 1 es la probabilidad de exito
que tiene la vacunaci
on, entonces se verifica que:
1, con probabilidad si t Tprof [i]
v[i, t] =
(17)
0, en otro caso
#"""
,""
!"#$%&'()*%#
+,-'./,-%#
+""
012%$$(,#,#
*""
3%$"&%-./,#
$""
%&'()
!"
#""
#!"
$""
El coeficiente de p
erdida de inmunidad [i]: nos
indica si el agente i-esimo pierde la inmunidad que le han
conferido las medidas profil
acticas o no. Depender
a del periodo de inmunidad, Tinm [i] del dispositivo. De esta manera se tendr
a que:
1, si t Tinm [i]
[i] =
(18)
0, en otro caso
Fig. 3. Evoluci
on de los distintos compartimentos cuando R0 > 1.
El coeficiente de recuperaci
on b[i, t]: al igual que en
el caso global, la recuperaci
on de un dispositivo (agente)
infectado depende de dos factores: la detecci
on del c
odigo malicioso y la eliminaci
on con exito del mismo (una
vez detectado). As supongamos que d[i, t] es la probabilidad de detectar el malware en el agente i-esimo en cada
instante de tiempo t (observese que depende del tiempo
puesto que en el influye si hay implementados metodos de
detecci
on en el dispositivo en el instante de tiempo considerado y de su eficacia); y e[i] es la probabilidad de que
sea eliminado con exito, se tendr
a que:
1, con probabilidad d[i, t] e[i]
b[i, t] =
(19)
0, con probabilidad 1 d[i, t] e[i]
si j vec[i, t]
si j vec[i, t]
0, 0 si j
/ vec[i, t]
(15)
Consecuentemente se verificara que:
_
a[i, t] =
a[i, j, t].
(16)
0, en otro caso
(21)
Observese que un factor clave en el modelo individual es
la correcta determinaci
on de los par
ametros involucrados
en el mismo. Se consideran coeficientes, periodos temporales y probabilidades particulares en cada dispositivo, los
cuales depender
an del tipo y del rol que jueguen dentro
del proceso infeccioso y de las caractersticas particulares
del malware.
jvec[i,t]
El coeficiente de vacunaci
on v[i, t]: este coeficiente
nos indica si el agente i-esimo tiene implementadas medidas profilacticas en el instante de tiempo t que le hagan
inmune a la accion del malware (y por lo tanto, que pase
a ser recuperado). Este parametro depende del tiempo, es
JNIC2015
(22)
(23)
Transicion de susceptible a recuperado: El agente i-esimo que es susceptible en el instante de tiempo t, pasa a
ser recuperado en el instante de tiempo t + 1 cuando
a[i, t] = 0 AND v[i, t] = 1.
(24)
Agradecimientos
Este trabajo ha sido parcialmente subvencionado por
el Ministerio de Economa y Competitividad (Espa
na) y
por los fondos europeos FEDER con el proyecto TIN201455325-C2-2-R.
Referencias
[1] Y. Ding, X. Yuan, K. Tang, X. Xiao, Y. Zhang, A fast malware detection algorithm based on objective-oriented association
mining, Comput. Secur., vol. 39, pp. 315324, 2013.
[2] P. Wang, Y.-S. Wang, Malware behavioural detection and vaccine development by using a support vector model, J. Comput.
Syst. Sci., vol. 81, no. 6, pp. 1012-1026, 2015.
[3] C. C. Zou, W. Gong, D. Towsley, L. Gao, The Monitoring and
Early Detection of Internet Worms, IEEE ACM T. Network.,
vol. 13, no. 5, pp. 961-974, 2005.
[4] A. Dadlani, M.S. Kumar, K. Kim, K. Sohraby, Stability and
Immunization Analysis of a Malware Spread Model Over ScaleFree Networks, IEEE Commun. Lett., vol. 18, no. 11, pp. 19071910, 2014.
[5] S. Wen, W. Zhou, J. Zhang, Y. Xiang, W.L. Zhou, W.J. Jia, et
al, Modeling and Analysis on the Propagation Dynamics of Modern Email Malware, IEEE Trans. Dependable Secur. Comput.,
vol. 11, no. 4, pp. 361-374, 2014.
[6] C. C. Zou, W. Gong, D. Towsley, Code Red Worm Propagation
Modeling and Analysis, Proc. 9th ACM Conference on Computer and Communication Security (CCS02), p.138-147, Nov.
18-22, Washington DC, USA, 2002.
[7] S. Peng, Y. Shui, A. Yang, Smarphone Malware and Its Propagation Modeling: A survey, IEEE Commun. Surv. Tutor., vol.
16, no. 2, pp. 925-941, 2014.
[8] L.X. Yang, X. Yang, The impact of nonlinear infection rate on
the spread of computer virus, Nonlinear Dyn., 2015, to appear,
doi: 10.1007/s11071-015-2140-z
[9] Martn del Rey, A., Mathematical modeling of the propagation
of malware: a review, Secur. Commun. Netw., 2015, to appear,
doi: 10.1002/sec.1186.
[10] T.T. Allen, Introduction to Discrete Event Simulation and
Agent-based Modeling. London: Springer-Verlag, 2011.
[11] S. Wolfram, A New Kind of Science. Champaign, IL: Wolfram
Media, 2002.
[12] S.F. Railsback, V. Grimm, Agent-Based and Individual-Based
Modeling. Princeton, NJ: Princeton University Press, 2012.
./+0(+/1/2(+
-"""
,"""
%"""
#"""
!"
#"
$"
%"
&"
!"#$%&'()*%#
+,-%$'./0#
'()*+
Fig. 4.Evoluci
on global de susceptibles e infectados en el modelo
individual.
IV. Conclusiones
En este trabajo se ha puesto de manifiesto que el paradigma en el que se basan la mayor parte de los modelos
matem
aticos propuestos hasta la fecha para simular la propagaci
on de malware, debe cambiar para hacer frente al
nuevo escenario de conectividad total al que se aproxima
nuestra sociedad.
JNIC2015
JNIC2015
como Arboles
de Decisi
on, Redes Neuronales, Algoritmos Geneticos, Support Vector Machines, Sistemas Inmunes Artificiales entre otras [2]. Los IDS tambien utilizan tecnicas y modelos estadsticos con el prop
osito de
automatizar completamente la detecci
on de ataques maliciosos distinguiendo del uso normal de los sistemas. Las
m
as utilizadas son Redes Bayesianas, Cadenas de Markov,
etc.
En este trabajo se presenta una propuesta de investigaci
on en torno a la seguridad inform
atica, y m
as especficamente en el
area de los sistemas de detecci
on de
intrusos (IDS) basados en anomalas de comportamiento
de usuarios. El sistema propuesto utiliza la tecnica de
Sistemas Inmunes artificiales aplicando el algoritmo de
selecci
on negativa, adem
as, un algoritmo de b
usqueda
de secuencias en forma local llamado Knuth-Morris-Pratt
(KMP).
El artculo est
a organizado de la siguiente forma: en la
Secci
on 2 se detalla trabajos realizados anteriormente presentado sus fortalezas y compar
andolos con nuestra propuesta. En la Secci
on 3 se detalla el objetivo de la investigaci
on y la aportaci
on cientfica, adem
as se presenta los
materiales y metodos utilizados para la construcci
on del
IDS. Posteriormente, en la Sesi
on 4 se presentan desarrollo
del algoritmo. En las sessi
on 5 se presentan los resultados
del sistema propuesto. Finalmente, en la Secci
on 6 se pre-
JNIC2015
de anomalas en red.
Este trabajo propone la aplicaci
on de un sistema inmune con selecci
on negativa en las tareas que ejecutan los
usuarios dentro de un sistema inform
atico, donde, a partir del hist
orico de estas ejecuciones se genera un perfil de
uso normal el cual permite identificar anomalas con resultados
optimos y con un coste computacional bajo. En
las siguientes secciones se presentar
a las aportaciones de
la propuesta y adem
as todo el proceso de modelado de la
soluci
on para un IDS.
todos y Materiales
III. Me
A. Objetivo y aportaciones de la Investigaci
on
El objetivo principal de la investigaci
on es desarrollar
un algoritmo din
amico y eficiente el cual pueda identificar
el comportamiento an
omalo de un usuario o agente que
realice tareas intrusivas en un sistema informatico. Por
otra parte las aportaciones de la investigaci
on al estudio
de IDS son:
Utilizaci
on de datos reales de usuarios de un sistema
inform
atico real para el desarrollo del modelo de datos y
el algoritmo de detecci
on.
Aplicaci
on de un nuevo modelo de datos que represente
el comportamiento de los usuario de forma eficiente.
Aplicaci
on del algoritmo de selecci
on negativa de un sistema inmune artificial al modelo de datos para la identificaci
on de comportamientos an
omalos de los usuarios.
Aplicaci
on del algoritmo KMP para la identificaci
on de
comportamientos an
omalos en nuevas secuencias de tareas.
Desarrollar una nueva forma de detecci
on de intrusos
din
amica y eficiente dirigido a sistemas inform
aticos.
En la siguiente secci
on se describen los metodos y materiales utilizados para el desarrollo del algoritmo.
B. Metodos
En esta secci
on se presentan los algoritmos aplicados
en el presente trabajo. Los algoritmos utilizados son Algoritmo de selecci
on negativa (NSA)y Algoritmo Knuth
Morris Pratt (KMP).
B.1 Sistema Inmune Artificial con Selecci
on Negativa
El algoritmo de selecci
on negativa define el self mediante la construcci
on de modelos de comportamiento normales de un sistema monitorizado. Este proceso genera
un n
umero finito de patrones aleatorios que se comparan
a cada modelo especfico de self como lo presenta [11].
B.2 Algoritmo de Knuth Morris Pratt
El objetivo principal de este problema es encontrar una
cadena dentro otra cadena. En un patr
on P para cada
posici
on i, spi(p) se dice que es la longitud del sufijo mas
largo de P[1; 2i], que coincide con el prefijo P. Es similar a navegar dentro de la cadena y que realiza sus comparaciones de izquierda a derecha. Tambien calcula los
desplazamientos m
aximos posibles de izquierda a derecha
para el patr
on P, [18].
JNIC2015
C. Materiales
Los datos con los que se ha realizado este trabajo fueron
proporcionados de un sistema real del gobierno de la
Rep
ublica de Ecuador. La informacion es confidencial y
por esta razon los datos se han codificado para proteger la
integridad de su informacion. El conjunto de datos se ha
recolectado mediante la captura de las tareas ejecutadas
por los usuarios en un perodo considerable de tiempo.
Estos datos constan de diez conjuntos diferentes de informaci
on sobre la ejecucion de las tareas de los usuarios.
Esta informacion esta agrupada tanto por usuarios y por
sesiones de usuario como se describe mas adelante. El conjunto de datos constan del perodo de 2011 a 2013 y son
15.571 registros de sesiones 5312 de registros de sesiones
an
omalas. La informacion que contienen todo el comportamiento normal de cada usuario de inicio de sesi
on del
sistema y las ejecuciones de tareas las cuales no tienen
un tama
no definido. El problema principal es distinguir
entre comportamiento normal y comportamiento anormal
porque las tareas ejecutadas por los usuarios depende de
la carga de trabajo, asignaciones o diferentes factores.
El sistema contiene siete tablas principales en la base
de datos (T b1 , T b2 , ..., T b7 ) y esta base de datos es posible
ejecutar las cuatro operaciones sql que son Insertar, Modificar, Eliminar y Buscar. La estructura de datos de una
sesi
on est
a conformada por un login (acceso al sistema) y
una o varias tareas ejecutadas en forma secuencial. Las
tareas estan codificadas con 28 tareas genericas m
as el
inicio de sesion. Cada tarea tiene un codigo T m
as un
n
umero para identificar cada tarea. El comportamiento de
cada usuario es dinamico y diferente de otro usuario. El
conjunto de tareas se define como T = {T1 , T2 , T3 , ..., Tm }
donde m es el n
umero de la tarea y el conjunto de posibles tareas ejecutadas por el usuario U se define como
T U = {T1 , T2 , T3 , ..., Tn } donde n es el n
umero de tareas ejecutadas. El conjunto de posibles sesiones se define
como S = {S1 , S2 , S3 , ..., Sn } donde Sn Hs. Todas
las sesiones grabadas del mismo usuario forman la base
de datos historica de ese usuario, estas sesiones se llama
Sesiones pasivas (HsU ),y una nueva sesion de usuario se
llama Sesi
on Activa AsU . Esta estructura no tiene tama
no
fijo como se muestra en la figura 1.
Para identificar las tareas ejecutadas por el usuario se
ha propuesto un modelo de datos en el cual se identifican
las tareas T mas ejecutadas y se crea una tabla que defina
si existe esa tarea en el sesion realizada S. En este trabajo
se ha comprobado que cada uno de los usuarios no realizan m
as de 13 tareas de las 28 existentes para su comportamiento normal. Por esta razon se ha tomado ese valor
como m
aximo de tareas ejecutadas para este nuevo modelo. El modelo de datos identifica si existe una o varias tareas T en una sesion S y asigna un valor de 1 al casillero
correspondiente de cada tarea y caso contrario 0 al no
existir dicha tarea. El modelo de datos esta presentado en
la tabla 1.
Si en el caso de existiese un n
umero mayor o menor de
tareas al establecido el modelo de datos es adaptable al
comportamiento de cada uno de los usuarios.
10
T2
0
1
1
1
1
1
0
1
1
0
1
1
0
1
1
1
1
T3
0
1
1
0
1
0
0
0
0
0
0
1
0
1
0
0
0
T4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
T5
0
1
1
1
1
1
0
0
1
0
1
1
0
1
1
1
1
T7
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
T9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
T11
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
T12
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
1
T14
0
0
1
1
0
0
0
0
0
1
0
0
1
1
0
1
0
T16
0
1
1
1
1
1
1
0
0
1
1
1
0
1
1
0
0
T20
0
1
1
0
0
0
0
0
1
0
0
1
0
1
1
1
0
T21
0
1
1
1
1
1
0
1
0
1
0
1
0
1
1
1
1
TABLA I
Modelo de datos propuesto
n de
IV. Desarrollo del Algoritmo de Deteccio
Intrusos
Sobre el algoritmo de detecci
on de intrusos el cual se
basa en la nueva estructura de datos presentada anteriormente, adem
as en el algoritmo de selecci
on negativa y el
algoritmo KMP que fue descrito en los apartados anteriores. La detecci
on de tareas anormales podra resumir en
los siguientes pasos:
Paso 1. Generaci
on de secuencias anormales: En esta
secci
on utiliza el algoritmo de selecci
on negativa y KMP
para generar secuencias an
omalas utilizando el conjunto
de datos del modelo propuesto.
Paso 2. Detecci
on de Intrusos en Secuencias Activas:
Finalmente en este paso se identifica si la secuencia activa
AsU es an
omala o no utilizando el conjunto de datos resultante en el paso 1. De esta manera identificar de una
forma eficiente y din
amica si es intrusiva o normal.
A. Paso 1. Generaci
on de secuencias anormales
En este paso lo que se propone utilizar un sistema inmune artificial aplicando el algoritmo de selecci
on nega-
JNIC2015
Fig. 3.
Esquema de implementaci
on del IDS en el sistema inform
atico
En la siguiente secci
on se presentan los resultados de la
propuesta de forma detallada.
V. Resultados
11
En esta secci
on se presentan los resultados de las pruebas de detecci
on del IDS en fase incial, ya que para obtener
resultados definitivos es necesario tener pruebas m
as extensas para tener cifras definitivas. Para estas pruebas
se utiliza la informaci
on diez usuarios de un sistema inform
atico real.Durante el presente estudio se evidencio
muchas caractersticas que hacian de la propuesta tener
resultados de detecci
on eficiente, una de estas es el modelo
de datos y la aplicaci
on de selecci
on negativa del comportamiento normal de cada uno de los usuarios.
Los resultados de las pruebas de la aplicaci
on del algoritmo IDS muestran la tasa de clasificado correctamente
(CC), tasa clasificado incorrectamente (IC). Tambien presenta la detecci
on tiempo promedio (segundos) para cada
usuario del estudio. Por otro lado se presentan valores de
Verdaderos positivos (TP), Verdaderos negativos (TN),
Falsos positivos (FP), Falsos negativos (FN). Para valorar el desempe
no adecuado del IDS es necesario presentar
JNIC2015
CC
1943
1833
2049
2563
1909
2057
2116
2080
2218
1973
IC CC % IC % Tiempo Promedio
26
98.68
1.32
0.03
8 99.565 0.435
0.012
24 98.842 1.158
0.016
15 99.418 0.582
0.028
29 98.504 1.496
0.064
7 99.661 0.339
0.045
6 99.717 0.283
0.049
8 99.617 0.383
0.087
9 99.596 0.404
0.063
10 99.496 0.504
0.067
Media 99.3096 0.6904
0.0461
tante eficientes para pruebas iniciales con una tasa clasificado correctamente alta y podemos ver que la precisi
on de
99,31%, la tasa de detecci
on de 98,29%, y la tasa de falsas
alarmas son inferiores al 2%, lo que significa que la detecci
on tiene identificaci
on aceptable. El coste computacional es uno de el factor m
as importante a considerar,
tanto en el entrenamiento del algoritmo y en el proceso de
la detecci
on del comportamiento del usuario, como presenta la figura 4 y 5.
TABLA II
Resultados de IDS propuesto en clasificado correctamente
(CC), clasificado incorrectamente (CC).
Usr
1
2
3
4
5
6
7
8
9
10
TP FP FN
689 25
1
468
4
4
456 13 11
549
4 11
347
2 27
393
4
3
571
1
5
504
3
5
582
2
7
674
5
5
TN
1254
1365
1593
2014
1562
1664
1545
1576
1636
1299
Media
% PR
98.68%
99.57%
98.84%
99.42%
98.50%
99.66%
99.72%
99.62%
99.60%
99.50%
99.31%
% DR
99.86%
99.15%
97.64%
98.04%
92.78%
99.24%
99.13%
99.02%
98.81%
99.26%
98.29%
% FA
1.95%
0.29%
0.81%
0.20%
0.13%
0.24%
0.06%
0.19%
0.12%
0.38%
0.44%
TABLA III
n, Tasa
Resultados del IDS propuesto en valores de Precisio
n y Tasa de Falsas Alarmas.
de Deteccio
Dicho desempe
no del IDS en una estaci
on de trabajo es
bajo lo que es un punto a favor a la propuesta. El tiempo
promedio para detectar relativamente mnimo ya que con
solo registros de 2 a
nos facilita que la la rapidez de la
detecci
on pero no se puede obtener un perfil totalmente
eficiente. El costo del entranemiento no es un factor de
riesgo porque el entrenamiento se realiza solo una vez en
perodos semanales o mensuales lo que hace al sistema se
pueda adaptar al comportamiento del usuario.
12
JNIC2015
Heady, Richard, et al. The architecture of a network level intrusion detection system. Department of Computer Science, College of Engineering, University of New Mexico, 1990.
[2] Scarfone, Karen, and Peter Mell. Guide to intrusion detection and prevention systems (idps). NIST special publication
800.2007 (2007): 94.
[3] Bace, Rebecca, and Peter Mell. NIST special publication on
intrusion detection systems. BOOZ-ALLEN AND HAMILTON
INC MCLEAN VA, 2001.
[4] Stavroulakis, Peter, and Mark Stamp, eds. Handbook of information and communication security. Springer Science & Business Media, 2010.
[5] Debar, Herv
e, Marc Dacier, and Andreas Wespi. Towards a
taxonomy of intrusion-detection systems. Computer Networks
31.8 (1999): 805-822.
[6] Debar, Herv
e, Marc Dacier, and Andreas Wespi. A revised taxonomy for intrusion-detection systems. Annales des telecommunications. Vol. 55. No. 7-8. Springer-Verlag, 2000.
[7] Kumar, Vipin, Jaideep Srivastava, and Aleksandar Lazarevic,
eds. Managing cyber threats: issues, approaches, and challenges. Vol. 5. Springer Science & Business Media, 2006.
[8] Murali, Adithyavairavan, and Madhav Rao. A survey on intrusion detection approaches. Information and Communication
Technologies, 2005. ICICT 2005. First International Conference
on. IEEE, 2005.
[9] DasGupta, Dipankar. An overview of artificial immune systems
and their applications. Springer Berlin Heidelberg, 1999.
[10] Kephart, Jeffrey O., et al. Biologically inspired defenses
against computer viruses. IJCAI (1). 1995.
[11] Kim, Jungwon, and Peter J. Bentley. Towards an artificial immune system for network intrusion detection: An investigation
of clonal selection with a negative selection operator. Evolutionary Computation, 2001. Proceedings of the 2001 Congress
on. Vol. 2. IEEE, 2001.
13
JNIC2015
Software Institute
Research Labs
Symantec
University
Universidad
antonio.nappa@imdea.org, rbjohns8@cs.umd.edu,
leylya yumer@symantec.com, juan.caballero@imdea.org, tdumitra@umiacs.umd.edu
The full version of this paper appears at the proceeedings at 36th IEEE Symposium on Security and Privacy
AbstractVulnerabilities in client applications (e.g., browsers,
multimedia players, document readers and editors) are often exploited in spear phishing attacks and are difficult to characterize
using network vulnerability scanners. Analyzing their lifecycle
is challenging because it requires observing the deployment
of patches on hosts around the world. Using data collected
over 5 years on 8.4 million hosts, available through Symantecs
WINE platform, we present the first systematic study of patch
deployment in client-side vulnerabilities.
We analyze the patch deployment process of 1,593 vulnerabilities from 10 popular client applications, and we identify
several new threats presented by multiple installations of the
same program and by shared libraries distributed with several
applications. We find that the median fraction of vulnerable
hosts patched when exploits are released is at most 14%. While
patching starts within 7 days before or after disclosure for 77% of
the vulnerabilities, the median time to patch half of the vulnerable
hosts is 45 days. For the 80 vulnerabilities in our dataset that
affect code shared by two applications, the time between patch
releases in the different applications is up to 118 days (with
a median of 11 days). We demonstrate two novel attacks that
enable exploitation by invoking old versions of applications that
are used infrequently, but remain installed. Finally, we show that
the patching rate is affected by user-specific and applicationspecific factors; for example, hosts belonging to security analysts
and applications with an automated updating mechanism have
significantly lower median times to patch.
I. E XTENDED A BSTRACT
In recent years, considerable efforts have been devoted
to reducing the impact of software vulnerabilities, including
efforts to speed up the creation of patches in response to
vulnerability disclosures [1]. However, vulnerability exploits
remain an important vector for malware delivery [2], [3]. Prior
measurements of patch deployment [4][7] have focused on
server-side vulnerabilities. Thus, the lifecycle of vulnerabilities in client-side applications, such as browsers, document
editors and readers, or media players, is not well understood.
Such client-side vulnerabilities represent an important security
threat, as they are widespread (e.g., typical Windows users are
exposed to 297 vulnerabilities in a year [8]), and they are often
exploited using spear-phishing as part of targeted attacks [9]
[11].
14
JNIC2015
R EFERENCES
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
II. C ONCLUSION
We investigate the patch deployment process for 1,593
vulnerabilities from 10 client-side applications. We analyze
field data collected on 8.4 million hosts over an observation
period of 5 years, made available through the WINE platform
from Symantec. We show two attacks made possible by the fact
that multiple versions of the same program may be installed
on the system or that the same library may be distributed
with different software. We find that the median fraction of
vulnerable hosts patched when exploits are released is at most
14%. For most vulnerabilities, patching starts around the disclosure date, but the patch mechanism has an important impact
on the rate of patch deployment. For example, applications
updated automatically have a median time-to-patch 1.5 times
lower than applications that require the user to apply patches
[15]
[16]
[17]
[18]
[19]
[20]
[21]
15
JNIC2015
Ricardo J. Rodrguez
Paper accepted in the 11th International Workshop on RFID Security (RFIDsec), 2015. A live
demo was performed relaying a payment transaction from New York to Madrid in real-time.
AbstractNear Field Communication (NFC) is a short-range
contactless communication standard recently emerging as cashless payment technology. However, NFC has been proved vulnerable to several threats, such as eavesdropping, data modification,
and relay attacks. A relay attack forwards the entire wireless
communication, thus communicating over larger distances. In
this paper, we review and discuss feasibility limitations when performing these attacks in Googles Android OS. We also perform
an in-depth review of the Android implementation of the NFC
stack. We show an experiment proving its feasibility using off-theshelf NFC-enabled Android devices (i.e., no custom firmware nor
root required). Thus, Android NFC-capable malicious software
might appear before long to virtually pickpocket contactless
payment cards within its proximity.
I. I NTRODUCTION
Near Field Communication (NFC) is a bidirectional shortrange (up to 10 cm) contactless communication technology
based on the ISO-14443 [1] and the Sony FeLiCa [2] Radio
Frequency Identification (RFID) standards. It operates in the
13.56 MHz spectrum and supports data transfer rates of 106,
216, and 424 kbps.
NFC defines three operation modes: peer-to-peer,
read/write, and card-emulation mode. In peer-to-peer mode,
two NFC devices communicate directly with each other.
This mode is commonly used to exchange business cards,
or credentials for establishing a network link. Read/write
mode allows an NFC device to communicate with an NFC
tag. Finally, card-emulation mode enables an NFC device
to behave as a contactless smartcard, thus allowing to
communicate with an NFC reader/writer.
Nowadays, NFC technology is widely used in a disparity
of applications, from ticketing, staff identification, or physical
access control, to cashless payment. In fact, the contactless
payment sector seems the one where NFC has generated more
interest, accordingly to market studies [3], [4]. As Fischer
envisioned in 2009 [5], the confluence of NFC with smart
phones can be the reason behind this fact since NFC is a way
to bring cards to the mobile [6].
To date, almost 300 different smart phones are (or will be
soon) available at the market [7]. Most of them are based on
Googles Android OS (or Android for short), while other OS
such as Apples iOS, BlackBerry OS, or Windows Phone OS
are less representative. For instance, Apple has just started to
16
JNIC2015
In brief, wide-scale botnet of Android devices running malicious applications continuously seeking contactless payment
cards can lead to several problematic situations. For instance,
consider a malware that once it detects a card within its
proximity, it iteratively communicates with it sending incorrect
PIN until it blocks. Similarly, instead of blocking the card the
malware can try to guess the cardholders PIN using a similar
technique as [17], which may lead to a very large scale fraud.
ACKNOWLEDGMENTS
This work was partially supported by the University of Leon
under contract X43.
R EFERENCES
17
JNIC2015
C ARONTE:
The full version of this paper will appear in the Proceedings of the 2015 ACM SIGSAC Conference on
Computer and Communications Security.
Abstract
Anonymity networks as Tor are a critical privacy-enabling technology.
Tors hidden services provide both client and server anonymity. This paper presents C ARONTE, a tool to automatically identify location leaks in
hidden services, i.e., sensitive information served by the hidden service
that discloses the servers IP address. C ARONTE implements a novel approach that does not rely on flaws on the Tor protocol and assumes an
open-world, i.e., it does not require a list of candidate servers known in
advance. We apply C ARONTE to 1,974 hidden services, fully recovering
the IP address of 101 (5%) of them.
I. E XTENDED ABSTRACT
A. Motivation
The increasing surveillance of communications have made
anonymity networks a critical privacy-enabling technology.
Tor [1] is arguably the most popular anonymity network. It provides both sender anonymity and recipient anonymity for hidden services. Hidden services protect the location (i.e., IP address) of the server hosting the hidden service. In addition, they
further protect against network-level eavesdropping by providing encryption all the way from the client to the hidden service.
This includes the communication between the last Tor relay and
the hidden service, even when the application traffic is not encrypted.
Hidden services are used among others for storing whistleblowing documents that corporations or governments may
want to censor and for hosting political dissident blogs. They
are also abused for running malware command-and-control
servers [24] and for hosting black markets selling any kind
of goods including drugs and guns. Thus, censors and lawenforcement agencies have great interest in deanonymizing
hidden services, i.e., finding the hidden servers IP address.
Once the IP address is revealed, the hidden service can be taken
down, its content seized, and their owners identified and possibly arrested.
There have been some notorious takedowns of hidden services by law enforcement. In July 2013, law enforcement identified the location of the Silk Road marketplace, where products such as cocaine, heroin, LSD, and counterfeit currencies
were traded [5]. The service was taken down, its records captured, $25 million in Bitcoin seized (and later auctioned), and
the sites administrator and at least a dozen of the top sellers arrested [6]. After the Silk Road takedown other similar hidden
services took its place. In November 2014, an international
law-enforcement operation codenamed Onymous, took down
over 400 hidden services including the Silk Road 2.0, Cloud
18
JNIC2015
content and configuration. C ARONTE implements a novel approach to deanonymize hidden services that does not rely on
flaws on the Tor protocol and assumes an open-world, i.e., it
does not assume a short list of candidate servers is known in advance. Instead, it implements novel techniques to identify candidate servers from the content and configuration of a hidden
service, which enable moving from an open-world to a closedworld.
Using C ARONTE we perform the first measurement study
on the prevalence of location leaks in hidden services. Out
of 1,974 live HTTP hidden services, C ARONTE successfully deanonymizes the location of 5% of them. Of the
deanonymized hidden services 21% are running on Tor relays.
The remaining 79% could not be deanonymzed in a closeworld.
D. Evaluation
[5]
B IBLIOGRAPHY
[1]
[2]
[3]
[4]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
[16]
[17]
[18]
19
1 Roger Dingledine and Nick Mathewson and Paul Syverson, Tor: The
Second-generation Onion Router, Proceedings of the 13th USENIX Security Symposium, 2004.
N. Hopper, Short Paper: Challenges in Protecting Tor Hidden Services
from Botnet Abuse, Proceedings of the 18thInternational Conference on
Financial Cryptography and Data Security, 2014.
Kaffeine, Guess who is back again, Cryptowall, http:
//malware.dontneedcoffee.com/2015/01/guess-whosback-again-cryptowall-30.html, January 2015.
D. H. Lipman, Mailing list post: [tor-talk] vwfws4obovm2cydl.onion?,
https://lists.torproject.org/pipermail/tortalk/2012-June/024565.html, June 2012.
Nicolas Christin, Traveling the Silk Road: A measurement analysis of a
large anonymous online marketplace, Proceedings of the 22nd international conference on World Wide Web, pp. 213224, 2013.
Kim Zetter, Wired: How the Feds Took Down the Silk Road
Drug Wonderland, http://www.wired.com/2013/11/silkroad/, November 2013.
Andy Greenberg, Wired: Global Web Crackdown Arrests 17, Seizes
Hundreds Of Dark Net Domains, http://www.wired.com/
2014/11/operation-onymous-dark-web-arrests/,
November 2014.
Tor Project, Tor and the Silk Road takedown, https://blog.
torproject.org/blog/tor-and-silk-road-takedown,
October 2013.
Tor Project, Thoughts and Concerns about Operation Onymous,
https://blog.torproject.org/blog/thoughts-andconcerns-about-operation-onymous, November 2014.
Lasse verlier and Paul Syverson, Locating Hidden Servers, Proceedings of the IEEE Symposium on Security and Privacy, 2006.
Alex Biryukov and Ivan Pustogarov and Ralf-Philipp Weinmann, Trawling for Tor Hidden Services: Detection, Measurement, Deanonymization, Proceedings of the IEEE Symposium on Security and Privacy,
2013.
Steven J. Murdoch, Hot or Not: Revealing Hidden Services by Their
Clock Skew, Proceedings of the 13th ACM Conference on Computer
and Communications Security, 2006.
Sebastian Zander and Steven J. Murdoch, An Improved Clock-skew
Measurement Technique for Revealing Hidden Services, Proceedings
of the 17th USENIX Security Symposium, 2008.
Alex Biryukov and Ivan Pustogarov and Fabrice Thill and Ralf-Philipp
Weinmann, Content and Popularity Analysis of Tor Hidden Services,
Proceedings of the First International Workshop on Big Data Analytics
for Security, June 2014.
Adrian Crenshaw, Darknets and hidden servers: Identifying the true
IP/network identity of I2P service hosts, Black Hat DC, 2011.
Robert Graham,
Reading the Silk Road configuration,
http://blog.erratasec.com/2014/10/reading-silkroad-configuration.html, October 2014.
Bryan Krebs, Silk Road Lawyers Poke Holes in FBIs Story,
http://krebsonsecurity.com/2014/10/silk-roadlawyers-poke-holes-in-fbis-story/, October 2014.
Nik Cubrilovic, Large Number of Tor Hidden Sites Seized by the FBI
in Operation Onymous were Clone or Scam Sites, https://www.
nikcub.com/posts/onymous-part1/, November 2014.
JNIC2015
Departamento
W ORK IN PROGRESS
El diseno que proponemos ofrece ciertas caractersticas que garantizan la robustez de la defensa
independientemente de la implementacion. Primero,
no se usa ningun dato pasado al programa para la
deteccion de los ataques, ya que el modo en que
se realizan los ataques es mediante estos datos y su
comprobacion o manipulacion podran ser origen de
una vulnerabilidad que permita atacar la defensa en
lugar de al programa. En su lugar, lo que se controla
y almacena son los estados del procesador (concre-
20
JNIC2015
Base (s)
Pin Null
PROPID
perlbench
484.3575
1.8491x
1.8532x
bzip2
763.5413
1.1887x
2.0960x
gcc
473.0578
1.5895x
4.1527x
gobmk
460.8152
1.4497x
4.1330x
hmmer
706.0565
1.1325x
1.1325x
sjeng
634.9261
1.4741x
1.4725x
libquantum
222.4177
1.2951x
1.2829x
h264ref
713.5450
1.8465x
1.8434x
omnetpp
515.4308
1.2059x
1.2063x
astar
534.0191
1.1124x
1.1307x
Xalan
344.2357
1.3941x
11.7568x
specrand
0.4091
6.2298x
6.2928x
1.8140x
3.1961x
Tabla I
S OBRECARGA INTRODUCIDA POR P IN Y PROPID.
21
JNIC2015
n
I. Introduccio
Apache es un servidor web ampliamente conocido y actualmente sigue siendo el mas utilizado [1]. Desafortunadamente, esto hace que sea tambien uno de los m
as
atacados. Tanto Apache como el resto de servidores de
red deben ser a la vez robustos y rapidos. Es por ello que
en general solo se utilicen tecnicas de protecci
on con una
sobrecarga muy baja.
Uno de los vectores mas conocidos y utilizados por los
atacantes contin
ua siendo el clasico desbordamiento de
pila. Existen tecnicas de proteccion como el NX (NoneXecutable), SSP (Stack Smashing Protector) o Address
Space Layout Randomization (ASLR) que reducen en gran
medida el exito de los atacantes. Desgraciadamente, todava existen ataques que logran circunvalar estas protecciones. Un ejemplo es el reciente ataque llamado Offset2lib, el cual bypasea todas estas tecnicas de protecci
on.
Este ataque, en su version mas rapida y peligrosa, utiliza
un ataque de fuerza bruta conocido como byte-for-byte [2]
para derrotar al SSP, lograndolo en menos de un segundo.
En este papel se presenta un breve resumen de la tecnica
RenewSSP y como esta se puede utilizar en el servidor
Apache de dos formas diferentes: de forma transparente
sin modificar el binario de Apache (mediante la carga de
una librera previa, LD PRELOAD), y por otra parte, modificando los fuentes.
II. RenewSSP
RenewSSP [3] es una modificacion de la tecnica de protecci
on Stack Smashing Protector (SSP) la cual elimina
los ataques de fuerza bruta contra el canario de pila. La
tecnica consiste en renovar el valor del canario de un proFinanciado por la Universitat Polit`
ecnica de Val`
encia 2014-4186.
22
JNIC2015
que incrustar
a el c
odigo de las funciones make child()
y child main() en una sola funci
on. Por otra parte,
dado que la funci
on child main() termina llamando a
clean child exit(), se garantiza que no se vuelve a
la funciona llamadora con lo que el RenewSSP se puede
aplicar de manera transparente. Observese que aunque
solo una condici
on es necesaria, se cumplen las dos.
B. RenewSSP modificando Apache
+++
void renewSSP() {
unsigned long rnd = 0;
getrandom(&rnd, sizeof(rnd)-1, 0);
THREAD SET STACK GUARD(rnd);
}
static int make_child(...) {
if ((pid = fork()) == -1) {
...
}
if (!pid) {
...
renewSSP();
child_main();
}
}
23
[1] (2015,
January)
Netcraft.
[Online].
Available: http://news.netcraft.com/archives/2015/01/15/january2015-web-server-survey.html
[2] A. pi3 Zabrocki, Scraps of notes on remote stack
overflow exploitation, November 2010. [Online]. Available:
http://www.phrack.org/issues.html?issue=67&id=13#article
[3] (2014,
April)
RenewSSP.
[Online].
Available:
http://renewssp.com
[4] H. Marco-Gisbert and I. Ripoll, Preventing brute force attacks
against stack canary protection on networking servers, in 12th
International Symposium on Network Computing and Applications, August 2013, pp. 243250.
JNIC2015
n
I. Introduccio
En la practica es imposible dise
nar e implementar un
sistema libre de fallos. Esto nos obliga a a
nadir mecanismos de tolerancia a fallos en aquellos sistemas utilizados en tareas sensibles (sistemas de alta integridad, infraestructuras crticas, manejo de datos confidenciales o
privados, etc.).
La tolerancia a fallos se basa en la redundancia. Un caso
particular son los sistemas TMR (Triple Modular Redundancy), donde el mismo dispositivo es replicado tres veces
y configurado de forma que los tres dispositivos operen en
paralelo junto con un votador/comparador que valida las
salidas. El objetivo de un TRM es el de tolerar los fallos derivados de los errores (errores fsicos o l
ogicos). La
tecnica TMR se aplica en casi todos los ambitos de los sistemas hardware, desde simples celdas de memoria hasta
procesadores completos, como por ejemplo la serie Leon*FT (empleado por la ESA en las misiones espaciales).
Desgraciadamente, una solucion tan sencilla, potente y
flexible no es aplicable directamente al software ya que
este no se estropea con el uso. Por otra parte, puesto
que el software debe ser determinista, esto es, varias ejecuciones del mismo programa deben dar los mismos resultado, la replicacion exacta del software a
nade poca o
ninguna mejora a la seguridad/fiabilidad del mismo.
En [1] Avizienis et al. propusieron la tecnica de programaci
on N-version, en la cual varios equipos de desarrolladores escriben de forma independiente varias aplicaciones a partir de una u
nica especificacion. Posteriormente, se ejecutaran los programas simultaneamente y se
compararan las salidas. Desafortunadamente, los resultados no fueron todo lo buenos que caba esperar. Por una
Financiado por la Universitat Polit`
ecnica de Val`
encia 2014-4186.
24
libs
Syscall
translator
Host OS
(a)Platform
CPU
emulator
Source code
Crosscompiler
suite 1
...
Crosscompiler
suite N
Variant 1
libs
...
Variant N
libs
Syscall
translator
CPU 1
emulator
...
Syscall
translator
Virtualizer
Syscall interceptor
Host OS
CPU N
emulator
Virtualizer
Startup
Policy
Syscalls
V. Conclusiones
Syscalls
(b)User-mode
las llamadas al sistema, donde se comprueba la equivalencia de las ejecuciones y se aplica la poltica de seguridad.
Se ha desarrollado una prueba de concepto en Linux,
consistente en un proceso monitor que intercepta las llamadas al sistema de las variantes mediante los servicios
de ptrace(). La figura 2 muestra un esbozo de la arquitectura N-variant DRITAE desarrollada.
Guest
applicaon
(variant)
Usermode
virtualizer
Oline
compilar un u
nico programa para muchos sistemas diferentes sin necesidad de adaptar el codigo. Como resultado se disponen de varios ejecutables en formato ELF
para distintas arquitecturas, siendo estos sem
anticamente
equivalentes.
La segunda parte de la tecnica consiste en ejecutar eficientemente estos programas. Para ello se emplea la emulaci
on a nivel de proceso usando Qemu (Qemu usermode).
Qemu dispone de dos formas de emulacion: 1) system
mode y 2) usermode. En la primera como muestra la
Fig. 1(a), se emula tanto el procesador (juego de instrucciones) como el hardware asociado a una plataforma fsica
(ROM, buses, perifericos,...). La emulacion usermode consiste en emular el procesador y traducir las llamadas al sistema . La Fig. 1(b) esboza esta forma de emaulaci
on; por
ejemplo un ejecutable ARM para Linux puede ejecutarse
en un Linux x86 puesto que los servicios ofrecidos por el
sistema operativo son compatibles.
Online
JNIC2015
en la mayora de las t
ecnicas de diversificaci
on.
25
La diversificaci
on de software requiere de potencia adicional de c
omputo, bien utilizando m
as procesadores o
bien ejecutando de forma concurrente cada una de las
variantes. Por suerte, la evoluci
on de la tecnologa de
los microprocesadores ha jugado a favor de soluciones Nvariant (m
ultiples cores, aumento de memoria, ...). Por
otra parte, gracias a las nuevas funcionalidades recientemente a
nadidas al n
ucleo de Linux, es posible simplificar
y optimizar substancialmente la sobrecarga del monitor.
Como resultado, podemos afirmar que es pr
actico construir un sistema monitor N-variant capaz de bloquear
muchos de los futuros ataques, especialmente aquellos que
se valen de la peligrosa ejecuci
on de c
odigo remota.
Una vez se disponga de un monitor generico, ser
a posible securizar cualquier aplicaci
on de forma completamente
autom
atica.
Referencias
[1] A. Avizienis, The n-version approach to fault-tolerant software, IEEE Transactions on Software Engineering, vol. 11, pp.
14911501, 1985.
[2] M. R. Lyu, Software fault tolerance. John Wiley & Sons, Inc.,
1995.
[3] B. Cox, D. Evans, A. Filipi, J. Rowanhill, W. Hu, J. Davidson,
J. Knight, A. Nguyen-Tuong, and J. Hiser, N-variant systems:
a secretless framework for security through diversity, in
Proceedings of the 15th conference on USENIX Security
Symposium - Volume 15, ser. USENIX-SS06. Berkeley,
CA, USA: USENIX Association, 2006. [Online]. Available:
http://dl.acm.org/citation.cfm?id=1267336.1267344
[4] B. Akhgar and H. R. Arabnia, Eds., Emerging trends in ICT
security. Elsevier Inc, Dic 2013, ch. 21, pp. 335357.
JNIC2015
n
I. Introduccio
El importante aumento de los ataques de Denegaci
on
de Servicio (DoS) observado en los u
ltimos a
nos ha puesto
sobre aviso a las principales organizaciones para la ciberseguridad. Seg
un informa la Agencia Europea de Seguridad
de las Redes y de la Informacion (ENISA) [1], desde el
a
no 2013 su capacidad de inundacion de redes ha experimentado un crecimiento promedio del 70% respecto al
del a
no 2013. La mayor parte de los ataques DoS identificados se han basado en la inundacion por medio de la
inyecci
on de un gran volumen de trafico, cuyo nivel de
congesti
on mas alto ha superado un 240% al observado en
2013 (agotando un ancho de banda de 325 Gbps). Esto es
debido principalmente a la mejora de su capacidad de reflexi
on, la sofisticacion de las botnets a partir de las cuales
son ejecutados, su cada vez menor dependencia de ellas,
la eficacia de los nuevos metodos para la evasi
on de sistemas de deteccion y el crecimiento de las estrategias de
ocultaci
on de su rastro. En consecuencia, la comunidad
investigadora se ha volcado en el estudio de esta amenaza y
el desarrollo de contramedidas [2]. Sin embargo, y dado el
continuo crecimiento de estas intrusiones, es evidente que
todava esta muy por detras de los atacantes. Este hecho
lleva a la necesidad de plantear enfoques innovadores, que
sean capaces de abrir futuras lneas de trabajo, abarcando
las principales carencias de la bibliografa.
De entre estas soluciones destacan los Sistemas Inmunitarios Artificiales (AIS). Los AIS son aproximaciones a
problemas de computacion inspirados en los principios y
procesos, involucrados en las defensas biologicas de los organismos vertebrados. Su implementacion habitualmente
26
ofrece un compromiso entre los beneficios obtenidos al detectar y mitigar el ataque, frente a la mera adopci
on de
estrategias preventivas. Esto hace que su aplicaci
on resulte especialmente eficaz en el
area de la seguridad de la
informaci
on, tanto en la detecci
on de malware [3] como
en la defensa frente a ataques de denegaci
on de servicio
[4]. Con esta motivaci
on, en este paper se propone una
estrategia para la mitigaci
on de ataques DoS de origen
dristribuido (DDoS) basados en inundaci
on. Para ello se
introduce el despliegue de una red de sensores que integra
un AIS inspirado en los mecanismos de defensa biol
ogicos
de los seres humanos. A diferencia de propuestas similares, no se han aplicado metodos convencionales de reconocimiento de patrones bioinspirados. En su lugar se
propone una combinaci
on de las estrategias de detecion
de DDoS basadas en el estudio de variaciones en la entropa y la construcci
on de umbrales predictivos, con la
adaptaci
on de las reacciones inmunitarias biologicas. De
este modo es posible la aplicaci
on en tiempo real de contramedidas, y la elaboraci
on de una memoria inmunitaria.
El resto del artculo est
a estructurado de la siguiente
manera: en la secci
on 2 se describen los trabajos relacionados con la denegaci
on de servicio, el sistema inmunitario
humano, y sistemas artificiales inmunitarios. En la seccion
3 se propone un AIS para la mitigaci
on de ataques DDoS.
En la secci
on 4 se describe la experimentaci
on realizada y
se discuten sus resultados. Finalmente, en la secci
on 5 se
presentan las conclusiones.
II. Trabajos relacionados
A. Denegaci
on de Servicio
En [2] se recopilan las principales tendencias de la defensa frente amenazas de denegaci
on de servicio, y son
agrupadas considerando diferentes ejes de clasificaci
on.
Uno de los m
as recurrentes es su manera de actuar. En
base a esto, los esquemas defensivos son divididos en tres
categoras: detecci
on, mitigaci
on e identificaci
on del origen.
La detecci
on de los ataques de denegaci
on de servicio a menudo desencadena el resto de tareas defensivas.
Con este fin, en los u
ltimos a
nos ha sido propuesta una
gran cantidad de estrategias, como modelos de Markov
JNIC2015
[5], matrices de correlacion [6], teora del Caos [7], modelos predictivos y CUSUM sobre series temporales [8], visualizaci
on [9] o logica difusa [10]. Uno de los metodos
de mayor proyeccion en la actualidad es el an
alisis basado
en la observacion de variaciones en la entropa del tr
afico.
En [11] se demuestra que ofrece mejor precisi
on que las
otras tecnicas al procesar datos procedentes de redes con
caractersticas muy heterogeneas, tal y como sucede en
las redes actuales. En [12] se recopilan diferentes aproximaciones relacionadas con la aplicacion de la entropa en
este tipo de problemas y se discuten posibles metodos de
evasi
on.
Las propuestas para la mitigacion de los ataques de
denegaci
on de servicio tienen como objetivo la reducci
on
total o parcial del da
no causado por la intrusi
on. De
entre los temas de mayor candencia destacan el uso de
puzles para el reconocimiento de usuarios no humanos
[13], trampas y se
nuelos [14], ampliacion del ancho de
banda, filtrado y protocolos de seguridad [15]. Los tres
u
ltimos tambien pueden ser desplegados como herramientas de accion preventiva. Por otro lado, la identificaci
on
del origen trata de desenmascarar la ruta que ha seguido
el ataque con el fin de llegar hasta su autor. Es una labor
que en los u
ltimos a
nos ha ganado complejidad, dado el
crecimiento de los metodos de ocultacion de rastros. En
[16] se discute este problema, se recopila una gran cantidad de aproximaciones actuales, y se introduce un nuevo
esquema de seguimiento uniforme. En [17] se estudia la
influencia de las caractersticas de la topologa de la red
en la eficacia de las estrategias de marcados de paquetes.
B. El Sistema Inmunitario Humano
Las distintas especies han desarrollado m
ultiples mecanismos inmunitarios, destacando entre ellos, y por su nivel
de sofisticacion, los de las especies vertebradas. Dichos
sistemas constan de muchos tipos de protenas, celulas,
organos y tejidos, los cuales se relacionan en una red elab
orada y dinamica. Como parte de esta respuesta inmunitaria mas compleja, el sistema inmunitario humano se
adapta con el tiempo para reconocer antgenos especficos
de manera mas eficaz. A este proceso de adaptaci
on se
le llama inmunidad adaptativa. A los mecanismos de defensa no adquiridos se les llama inmunidad innata, y habitualmente constituyen su primera lnea de defensa. En
la inmunidad innata cada agente es capaz de reconocer
y eliminar diferentes tipos de antgenos. Las reacciones
inmunitarias innatas son de rechazo, y se llevan a cabo
por barreras externas fsicas como la piel o mucosas, y de
elementos defensivos internos, como fagocitos o celulas asesinas naturales NK (del ingles Natural Killers). Carecen
de memoria inmunitaria, y u
nicamente es efectiva contra
pat
ogenos conocidos a priori.
Por otro lado, la inmunidad adaptativa presenta especificidad, es decir, tras aprender a rechazar un antgeno,
el conocimiento adquirido permite reaccionar con mayor
contundencia contra el. Las celulas mas importantes de
este proceso son los linfocitos y las celulas presentadoras.
Existe dos tipos de reacciones inmunitarias adaptativas:
humorales y celulares. En ambas participan agentes en-
27
JNIC2015
28
JNIC2015
N3
DA
DH
DA
N5
DA
DA
DH
DA
N5
DA
N5
U Sup(t) = p0 + K
N3
DA
donde Bt es la estimaci
on base en t, Tt es la estimaci
on de
la tendencia y St la estimaci
on del factor estacional. Los
par
ametros , y est
an comprendidos en el intervalo
0 < , , < 1, y permiten ajustar el alisado. El valor
estimado corresponde con Ht+1 = Bt + Tt + St , ya que se
ha aplicado su versi
on aditiva. El intervalo de prediccion
se calcula por el metodo habitual en este tipo de sistemas,
y es limitado por los siguientes umbrales:
(b)Ataque depu
es de balanceo.
S
DH
St = (Ht Bt ) + (1 )Btn
N3
(a)Ataque original.
DA
U inf (t) = p0 K
N3
DA
DA
DH
DA
N5
DA
(c)Intercepci
on del ataque. (d)Respuesta adaptativa.
Fig. 1
Ejemplo de comportamiento del AIS ante un ataque DDoS.
C. Detecci
on de ataques basados en inundaci
on
El an
alisis del volumen de trafico es llevado a cabo a partir de las variaciones en su entrop
a, y a las cotas estableci1
1
das mediante umbrales de prediccion. La entropa es una
medida de variacion para variables cualitativas, definida
como el grado de impredicibilidad de su comportamiento.
Sea la variable X cualitativa con el conjunto de valores
finito x1 , x2 , , xn de probabilidades p1 , p2 , , pn , la
entropa de X se define como:
H(X) =
n
X
i=1
pi loga
n
X
1
pi loga pi
=
pi
i=1
(1)
(2)
(3)
29
(4)
var(Et )
(5)
var(Et )
(6)
V olactual
)
V olprevio
(7)
JNIC2015
0.8
0.8
0.6
0.6
TPR H
TPR A
FPR H
FPR A
0.4
0.2
0
0.4
0.2
0
Fig. 2
n la localizacio
n de los agentes.
Eficacia en funcio
Fig. 4
n la congestio
n de la red.
Eficacia en funcio
1
0.8
TPR H
TPR A
0.8
0.6
0.6
0.4
0.4
0.2
0.2
TPR H
TPR A
FPR H
FPR A
Resp. Innata
Resp. Adaptativa
10 20 30 40 50 60 70 80 90 100
Fig. 5
n la longitud del ataque
Eficacia de la propuesta en funcio
Fig. 3
n la potencia del ataque.
Eficacia en funcio
A. Localizaci
on de sensores
En Fig. 2 se muestra la importancia de la ubicaci
on
de los sensores DH y DA activados a la hora de reconocer con exito la amenaza. El eje Y indican la tasa de
acierto TPR(True Positive Rare) o la tasa de falsos positivos FPR(False Positive Rate), y el eje Y el porcentaje
del recorrido en que se ubica el detector. Cuando los DH
reconocen las amenazas por primera vez, el TPR promedio
es de 0.85 y el FPR es 0.072. No obstante, se observa como
cerca de los extremos la tasa de acierto se aproxima al
100%, mientras que en los puntos equidistantes disminuye
hasta el 70%. Esto es debido a que el ataque tiende a distribuirse, concentrandose en un menor n
umero de canales
al llegar a los extremos. Al activarse la inmunidad adaptativa, el TPR promedio aumenta un 7%, siendo igual a
0.92. La mayor mejora se observa en las distancias intermedias, donde su peor valor es de 0.82, mejorando un 12%.
La implementacion de inmunidad adaptativa apenas tiene
impacto en la FPR. Su valor promedio en DH es de 0.071
y asciende a 0.077 en DA , es decir, solo empeora un 0.6%.
Adem
as depende muy poco de la ubicacion del sensor.
congesti
on total. Esta ha sido ponderada en funci
on del
porcentaje del ancho de banda de la vctima que es capaz de congestionar, independientemente del volumen de
tr
afico legtimo. Cuando el ataque es de potencia mayor
a 0.5, en ambos casos el TPR es pr
acticamente 1. Sin
embargo en el resto de casos se observa una importante
mejora al iniciarse la reacci
on adaptativa. Su incremento
m
as alto es del 26.5% cuando la potencia vara entre el 0.3
y el 0.4.
C. Congesti
on de la red
En Fig. 4 se muestra la capacidad de detecci
on en
funci
on del volumen de tr
afico legtimo que circula por
las redes. Cuando hay poco tr
afico, la estrategia propuesta resulta muy precisa. Los ataques resultan mucho
m
as visibles. Sin embargo cuando la congesti
on es alta,
especialmente a partir del 0.7, la tasa de acierto disminuye, y la tasa de falsos positivos aumenta. La activacion
de la reacci
on adaptativa suaviza este problema. Consigue
incrementar hasta un 13.7% el TPR en el caso de mayor
desnivel (congesti
on entre 0.6 y 0.7) y disminuir el FPR
hasta un 11.4% (congesti
on entre 0.9 y 1).
B. Capacidad de inundaci
on
Otro aspecto a considerar es la repercusion de las caractersticas de la red y los ataques. En Fig. 3 se observa la precision del sistema en funcion de la potencia
del ataque, siendo 0 el estado de no congesti
on, y 1 el de
30
JNIC2015
[3]
[4]
[5]
[6]
[7]
[8]
[9]
31
JNIC2015
I. INTRODUCCIN
32
JNIC2015
33
JNIC2015
Ventajas
- Bsqueda avanzada sobre
miles de perfiles
Inconvenientes
- Importante capacidad de
almacenamiento
- Tiempo requerido para
enumeration
- Seguimiento de la actividad
realizar un ciclo completo de
del perfil hacia atrs
monitorizacin
- Cliente ligero
- Sin posibilidad de hacer
- Almacenaje requerido
Usufy
seguimiento previo a la
limitado
investigacin
- Resultados inmediatos
User
34
JNIC2015
35
JNIC2015
36
JNIC2015
37
JNIC2015
VII. CONCLUSIONES
Las unidades de inteligencia necesitan herramientas que les
permitan identificar de forma automatizada la creacin de
ciertos usuarios en plataformas de internet de cara a poder
atribuir una accin que, o bien ha tenido lugar en la red, o bien
ha tenido ramificaciones que derivan en ella. Sin embargo, la
ausencia de soluciones que permitan satisfacer este tipo de
requerimientos de informacin es un problema de cara a
resolver cuestiones asociadas a la atribucin.
Por este motivo, las herramientas necesitan ser modulares
para poder integrar sin demasiado esfuerzo y con suficiente
flexibilidad nuevas fuentes de inters de cara a una
monitorizacin automtica de lo que est ocurriendo en foros y
plataformas sobre los que se tiene un inters concreto. Dadas
estas necesidades, se ha diseado una herramienta de software
libre que permite identificar usuarios y perfiles acordes a unos
requisitos previos en diferentes tipos de sitios de internet
permitiendo a los analistas la creacin de nuevos wrappers en
lapsos de tiempo lo ms reducidos posibles.
AGRADECIMIENTOS
Agradecemos a los miembros de las Fuerzas y Cuerpos de
Seguridad del Estado, a Thiber, The Cybersecurity Think Tank,
a ISACA y a otras personas que a ttulo personal han facilitado
recomendaciones y comentarios, colaborando en la maduracin
y desarrollo de este proyecto.
REFERENCIAS
[1]
[2]
[3]
[4]
[5]
[6]
38
JNIC2015
I.
INTRODUCTION
39
JNIC2015
RELATED WORKS
ARCHITECTURE
40
1.
2.
JNIC2015
3.
A. Topology
The generic topology of a multi-layer neural network is
represented in Fig. 2. Neural Networks always have an input
layer and an output layer with one or more neurons per layer.
In this figure, the input layer has five neurons, taking into
account the bias neuron and the output layer has one neuron.
The subsection B explains the input layer for our goal. The
output layer has one neuron to represent response efficiency.
Furthermore, the number of hidden layers and neurons should
be chosen considering the total number of neurons, the
generalization error and the overfitting, as explained below.
The relationship between number of parameters and patterns
must be within 10% or 20% so that we need enough patterns
for generalization. Therefore, we must take into account this
relationship to select the number of neurons in the hidden layer
(or several hidden layers):
-
faster
than
using
an
41
JNIC2015
C. Transfer function
A sigmoid function will be used as activation function and
thus to determine the level of success of the inferred response.
Specifically, we use bipolar functions to achieve faster
stabilization error.
We will prove two sigmoid functions:
-
2
1
1 + !!
(3)
! !!
! + !!
(4)
D. Stop condition
Stop condition is determined from Mean Square Error
(MSE):
=
(!"# !" )!
(6)
!" = ! !
(7)
(5)
!
!!!
ResponseEfficiency =
!"##$%%&'#()*
!"#$%&'()*'+#,
(8)
(9)
42
JNIC2015
VIII.
VALIDATION
ACKNOWLEDGMENT
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
[16]
[17]
43
Symantec Corp., Internet Security Threat Report, Vol. 17, Abril 2012.
Anderson, James. Computer Security Threat Monitoring and
Surveillance. Washing, PA, James P. Anderson Co. 1980.
H. J. Mattord. Principles of Information Security Course Technology.
2008. ISBN 9781423901778: 290-301.
Ali Aydin M, Halim Zaim A, Gkhan Ceylan K. A hybrid intrusion
detection system design for computer network security. Comput Elect
Eng, 2009; 35(3):51726.
Stakhanova N, Basu S, Wong J. A taxonomy of intrusion response
system. Int J Inform Comput Secur. 2007; 1(1/2):16984
J. E. Lpez de Vergara, E. Vzquez, A. Martin, S. Dubus, M. N.
Lepareux. Use of ontologies for the definition of alerts and policies in
a network security platform, Journal of Networks, Vol. 4, Issue 8
(2009) pp. 720-733
I. Horrocks, P.F. Patel-Schneider, H. Boley, S. Tabet, B. Grosof, M.
Dean, SWRL: A semantic web rule language combining OWL and
RuleML. W3C Member Submission, 21, 2004.
H. Debar, D. Curry, B. Feinstein. The Intrusion Detection Message
Exchange Format (IDMEF). IETF Request for Comments 4765, 2007
J.E. Lpez de Vergara, V.A.Villagr, J.I. Asensio, J. Berrocal.
Ontology-based network management: study cases and lessons
learned. J Network Syst Manage 2009; 17(3):23454.
D. L. McGuinness, F. van Harmelen. OWL Web Ontology Language
Overview. W3C Recommendation 2004
Hu, Xunlei Rose, and Eric Atwell. "A survey of machine learning
approaches to analysis of large corpora." Proceedings of the Workshop
on Shallow Processing of Large Corpora, Lancaster University, UK.
2003.
Ling-xi Peng, Dong-qing Xie, Ying Gao, Wen-bin Chen, Fu-fang Li,
Wu Wen. An Inmune-inspired Adaptative Automated Intrusion
Response System. International Journal of Computational Intelligence
Systems, 2012, 5:5, 808-815
Alireza Shameli-Sendi, Julien Desfossez, Michel Dagenais, Masoume
Jabbarifar. A Retroactive- Burst Framework for Automated Intrusion
Response System, Journal of Computer Networks and
Communications, Volume 2013.
Justina, Aderonke, and Adesina Simon. A credible cost-sensitive model
for intrusion response selection. In Computational Aspects of Social
Networks (CASoN), 2012 Fourth International Conference on, pp. 222227. IEEE, 2012.
Z. Mahmood, C. Agrawal, S. S. Hasan, S. Zenab, Intrusion Detection
in Cloud Computing environment using Neural Network. International
Journal of Research in Computer Engineering & Electronics, 2012. 1(1),
19-22.
[20] R. S. Naoum, Abid, N. A., Z. N. Al-Sultani, An Enhanced
Resilient Backpropagation Artificial Neural Network for Intrusion
Detection System. IJCSNS, 2012. 12(3), 11.
V. Mateos, V.A. Villagr, F. Romero. Ontologies-Based Automated
Intrusion Response System. Computacional Intelligence in Security
for information Systems 2010. Volume 85/2010. 2010:99/106
JNIC2015
[18]
[19]
[20]
[21]
[22]
44
JNIC2015
n
I. Introduccio
La finalidad de este trabajo es el estudio de las campa
nas de spam actuales para su posterior an
alisis. Esto
puede servir para detectar nuevas campa
nas de phishing
o malware, as como los patrones usados para tal prop
osito, permitiendo posteriormente su estudio.
Actualmente existen dos aproximaciones para el estudio de las campa
nas de spam mediante spam traps. Una
primera aproximacion consiste en la creacion de diversas
cuentas de correo en diferentes dominios, esperando correos de spam para capturarlos, pudiendo existir dos vertientes de esta aproximacion:
Spam traps puras: en este caso las cuentas de correo se crean explcitamente para la captura de spam,
de forma que la direccion se pueda obtener por utilizar nombres comunes (i.e. pedroperez@email.com, josegarcia@email.com...). Estas cuentas no deber
an ser filtradas, ni deberan enviar correos o recibirlos, de modo que
todo lo que llegue a ellas solo sera spam, producido por la
inferencia del nombre de la cuenta para el envo de spam.
Spam traps recicladas: consiste en utilizar cuentas de correo que ya han sido usadas para envo y recibo de correos
electr
onicos o que han podido ser filtradas en Internet,
como ocurre con muchas cuentas filtradas en p
aginas de
pastes como la conocida PasteBin.
En este trabajo se ha optado por una segunda aproximaci
on basada en honeypots habilitados como servidores
SMTP. Para la captura de spam se han desplegado varias
spam honeypots en la nube y de esta forma poder comprobar la viabilidad del proyecto. Una spam honeypot no
deja de ser un tipo de honeypot que tiene como finalidad
la captura de spam.
Por un lado tendremos Shiva [1] como servidor de correo
SMTP abierto para recibir y analizar mensajes, junto con
Shiva se ha desplegado un sistema de detecci
on de intrusiones SNORT [2] para detectar escaneos y ataques. Como
panel de control y centralizacion de datos se ha utilizado
Modern Honey Network [3]. Ademas para almacenar los
datos obtenidos de correos spam se ha optado por el uso
de una base de datos MySQL.
45
obtenida de http://threatstream.github.io/mhn/
JNIC2015
Posteriormente se modifica el archivo sshd config cambiando el puerto por defecto e impidiendo la autenticacion
con contrase
nas:
1
2
C. Especificaci
on de Servidores
sshkeygen t r s a
sshcopyi d i . s s h / i d r s a . pub root@X .X.X.X
Port 2222
P a s s w o r d A u t h e n t i c a t i o n no
B. MHN Server
Aunque MHN es un software que actualmente se encuentra en fase beta, la instalaci
on no supone ning
un problema. Utilizando el script install.sh del proyecto instalaremos todo lo necesario y si todo es ejecutado de forma
correcta se tendr
a la aplicaci
on operativa.
D. Coste
Cada servidor alojado en Digital Ocean tiene un coste de 5$. En las pruebas realizadas estos servidores han
funcionado perfectamente. Se han desplegado 3 spam honeypots y el servidor MHN en Digital Ocean.
La base de datos MySQL se encuentra alojada en Amazon Web Services, siendo de tipo RDS Free Usage Tier [8].
46
C. Snort
Instalar Snort en los servidores es un proceso sin complicaciones gracias a MHN. Desde la secci
on de deploy
podr
a seleccionarse Snort, lo que generar
a un comando
como este:
JNIC2015
sudo s u p e r v i s o r c t l r e s t a r t s n o r t
1
2
[ receiver ]
l i s t e n p o r t : 25
Sensor: Se otorga un nombre al servidor para poder distinguirlo del resto de spam honeypots. En la base de datos
centralizada quedar
a registrado con este nombre.
sensorname : r h a e g a l
r e l a y : True
D. MySQL Server
La arquitectura planteada consta de un servidor
MySQL donde se volcara la informacion relativa al Spam
capturado. Para que los datos sean introducidos en el servidor MySQL sera imprescindible crear las bases de datos
que necesita Shiva. Su creacion se puede realizar sin problemas gracias a dos scripts .sql que proporciona Shiva.
[ receiver ]
l i s t e n h o s t : X.X.X.X
s c h e d u l e r t i m e : 120
1
2
[ database ]
l o c a l d b : True
E. Shiva
La instalacion de Shiva no supone un proceso complicado. Existe un script llamado install.sh que permitir
a
instalar los componentenes necesarios. Antes de ejecutar
este script es necesario instalar una serie de paquetes:
1
2
u s e r : userExample
password : 1234 Example
1
2
3
4
. / s e t u p e x i m 4 . sh
cd s h i v a R e c e i v e r /
source bin / a c t i v a t e
cd r e c e i v e r /
lamson s t a r t
5
1
6
7
8
9
47
cd s h i v a A n a l y z e r /
source bin / a c t i v a t e
cd a n a l y z e r /
lamson s t a r t
JNIC2015
f i n d . t y p e f p r i n t d e l e t e
3
4
5
6
7
8
9
10
11
12
A. HoneyMap
13
MHN despliega un mapa donde es posible ver los ataques. Gracias a esto se consigue tener una monitorizaci
on
en tiempo real de los ataques recibidos, ya que Snort est
a
monitorizando las conexiones.
En nuestro caso el mapa es totalmente accesible desde
http://46.101.24.221:3000/.
B. MySQL Server
La consulta de los datos podra realizarse desde cualquier dispositivo con alg
un gestor para bases de datos,
como pueden ser MySQL Workbench, HeidiSQL o desde
consola, mediante autenticacion a la base de datos remota.
En la base de datos temporal se almacenar
an los datos
relativos a:
Archivos adjuntos
Enlaces del mensaje
Spam honeypot del que proceden los datos
La base de datos temporal tambien cuenta con una tabla
con datos pertenecientes al spam detectado, con un identificador y el fuzzy hash (basado en ssdeep), que identificar
a
el mensaje seg
un el contenido del mismo entre otros datos.
En la base de datos principal los datos que m
as interes
suscitan para su estudio seran:
Archivos adjuntos
Direcciones IP
Spam honeypot del que proceden los datos
Direcciones de correo de los destinatarios
Direcci
on de correo que enva estos correos
Mensaje enviado
C. MHN API
MHN mantiene una base de datos MongoDB donde se
almacenan los ataques detectados por Snort. Esta base de
datos es accesible a traves de una API REST.
Se pueden hacer peticiones para saber las IPs que m
as
han atacado en las u
ltimas X horas:
1
Se ha comprobado que debido al uso intensivo del servidor de correo el volumen de archivos generado en la carpeta /queue/new de Shiva se dispara.
Este problema se materializa en la necesidad de limpiar
peri
odicamente esta carpeta ya que, aunque tengamos espacio en disco, podemos llegar a quedarnos sin inodes.
Situ
andonos en la ruta anteriormente mencionada podremos eliminar los archivos de la cola mediante el comando:
1
X.X.X.X/ a p i / t o p a t t a c k e r s /? a p i k e y=KEY&
h o u r s a g o=X
48
14
data : [
{
i d : 55 b217db3018557366476ca9 ,
d e s t i n a t i o n i p : X.X.X.X ,
d e s t i n a t i o n p o r t : 25 ,
honeypot : s n o r t ,
i d e n t i f i e r : b6376a8c 308b11e5a1b5
04015 f 2 2 c 4 0 1 ,
p r o t o c o l : TCP ,
source ip : 111.243.57.232 ,
s o u r c e p o r t : 1915 ,
timestamp : 20150724T10
:47:53.978000
},
Tambien es posible consultar estos datos desde la interfaz web que proporciona MHN. Desde el panel web sera
posible ver una enumeraci
on de los ataques y payloads
mostr
andose los pases de origen de los ataques y sus IPs,
los puertos utilizados para realizar el ataque o el patron
de ataque que se detecta a traves del IDS.
lisis de Datos Obtenidos
VI. Ana
Tras la instalaci
on de los servidores se ha podido comprobar que, en un plazo menor a 48 horas de tener en funcionamiento los mismos, se han empezado a enviar mensajes de spam desde IPs provenientes de Taiwan. Este caso
tan r
apido se dio en un servidor y sorprendio que esta
m
aquina se localizara tan r
apido, sin haber sido detectado por Shodan [11] en esos momentos.
Sin embargo, si se piensa en las nuevas herramientas
que existen para el escaneo de puertos como Zmap [12]
o Masscan [13], es factible encontrar r
apidamente nuevos
servidores con puertos abiertos. Estos nuevos esc
aneres
pueden mandar 10 millones de paquetes por segundo, pudiendo escanear todo el rango de direcciones IPv4 en 5
minutos.
Semanas despues las otras dos spam honeypots empezaron a ser usadas por los mismos Taiwaneses, lo que implica
la constante monitorizaci
on de Internet por parte de este
grupo, o al menos de servidores con el puerto 25 abierto.
Este grupo, tras comprobar que el servidor SMTP funciona, inicia agresivas campa
nas de spam teniendo como
objetivo cuentas de correo con dominio localizado en Taiwan en su mayor parte.
En un mes se han detectado 32.800.820 intentos de envo
de spam. No todas las peticiones de envo de correo se
envan finalmente con objeto de no saturar al servidor.
Se han enviado 34.797 correos, lo que supone un 010 %
del total.
El email m
as enviado ha sido uno cuyo contenido es
c
odigo HTML con los hipervnculos mostrados en Fig. 3.
JNIC2015
TABLA I
Dominios de correo a los que fue enviado Spam.
49
VII. Conclusiones
Tras haber probado varias configuraciones y arquitecturas para el estudio de la captaci
on de Spam finalmente se
lleg
o a la soluci
on presentada en la investigacion por ser
la que mejor datos ha proporcionado.
Nuestra finalidad a la hora de realizar esta investigaci
on era comprobar la viabilidad de usar servicios en la
nube para recolectar Spam. Esto ha demostrado ser posible, lo cual ha llevado a desarrollar una metodologa y
arquitectura para llevarlo a cabo.
Ya que se siguen obteniendo datos, nuestra idea es ampliar la red y empezar a recolectar m
as informaci
on. La
informaci
on presentada en este trabajo es muy limitada ya
que supone s
olo un mes de obtenci
on de informaci
on y solamente 3 spam honeypots. La idea es ampliar el n
umero
de spam honeypots e incluir la aproximaci
on de la creaci
on de cuentas de correo, dispuestas para recibir spam
y as tener un entorno m
as completo en el que basar el
an
alisis.
A su vez, el an
alisis de los datos ha abierto un abanico de posibilidades de cara al futuro, pudiendose llegar a
JNIC2015
[8]
[9]
[10]
[11]
[12]
[13]
Rahul Binjve (2015). Spam Honeypot with Intelligent Virtual Analyzer (Shiva). Disponible en: https://github.com/
shiva-spampot/shiva
Martin Roesch (2015). Snort NIDS. Disponible en: https://
www.snort.org/
ThreatStream (2015). Modern Honey Network. Disponible en:
https://github.com/threatstream/mhn
ThreatStream (2014). Snort hpfeeds, collector for shipping
snort alerts using hpfeeds. Disponible en: https://github.com/
threatstream/snort_hpfeeds
Mark Schloesser (2015). Hpfeeds, Honeynet Project generic authenticated datafeed protocol. Disponible en: https://github.
com/rep/hpfeeds
Florian Weingarten(2013). Web application which visualizes a
live stream of GPS locations on a SVG world map. Disponible
en: https://github.com/fw42/honeymap
Digital
Ocean
Guide
(2014).
How
To
Migrate
Droplets
Using
Snapshots.
Disponible
en:
https:
//www.digitalocean.com/community/tutorials/
how-to-migrate-droplets-using-snapshots
Amazon(n.d). Capa gratuita de Amazon RDS. Disponible en:
http://aws.amazon.com/es/rds/free/
Digital Ocean Guide (2013). How To Protect SSH
With
Two-Factor
Authentication.
Disponible
en:
https://www.digitalocean.com/community/tutorials/
how-to-protect-ssh-with-two-factor-authentication
Emerging Threats (2015). Snort Open Rules 2.9.0. Disponible
en: http://rules.emergingthreats.net/open/snort-2.9.0/
John Matherly (2015). First search engine for Internetconnected devices(Shodan) Disponible en: https://www.
shodan.io/
University of Michigan (2015). Open-source network scanner
(Zmap) Disponible en: https://zmap.io/
Robert David Graham (2015). MASSCAN: Mass IP port scanner. Disponible en: https://github.com/robertdavidgraham/
masscan
50
JNIC2015
Paul van Walree, Michael Goetz, Arwid Komulainen, Bernt Nilsson, Jan Nilsson, Tommy Oberg,
Ivor Nissen, Henrik Strandberg, Henry Dol, Geert Leus, Francesco Pacini
? Corresponding
I. T HE RACUN P ROJECT
Many navies across Europe see effectively networked underwater communications as an enabling technology to make
progress in security-related and tactical scenarios encompassing at-sea environments. The RACUN project answers this
need via the design of rapidly deployable underwater networks
of autonomous sensors and underwater vehicles (AUVs). A
consortium of partners from five European nations developed
and demonstrated the capability to establish a robust underwater multi-purpose acoustic network with moving and stationary
nodes, as well as its operational value in tactical scenarios.
Paolo Casari (corresponding author) is with IMDEA Networks Institute,
Spain, and with Consorzio Futuro in Ricerca (CFR), Italy. Joerg Kalwa is
with ATLAS Elektronik (ATLAS), Germany. Michele Zorzi is with CFR,
Italy. Stefano Nasta is with Centro di Supporto e Sperimentazione Navale
(CSSN), Italy. Sabrina Schreiber is with L-3 Communications ELAC Nautik
(ELAC), Germany, Roald Otnes and Paul van Walree are with the Norwegian
Defence Research Establishment (FFI). Michael Goetz is with Fraunhofer
Institute for Communication Information Processing and Ergonomics (FKIE).
51
JNIC2015
Figure 1. The hardware employed in the RACUN projects Sea Trial 3 (ST3). (a) NILUS nodes (FFI, Norway); (b) gateway buoy (ELAC, Germany); (c)
moored nodes (SAAB, Sweden); (d) SeaCat AUV (ATLAS, Germany); and (e) NEREUS node (FWG, Germany).
52
JNIC2015
RACUN sea trial (see also Section V). The other schemes
(Section III-B and Section III-C) could be incorporated only in
the more versatile architecture of the SAAB modems, limiting
the maximum network size to three nodes when using these
schemes, due to hardware availability reasons.
A. Filtered Multi-Tone (FMT)
A multi-carrier format named Filtered Multi-Tone (FMT)
was designed by WTD71/FWG as a part of the Transient
UnderWater Communication System (TUWACS) project [6],
and adapted to the requirements of RACUN. The main idea
behind FMT is to transmit only one symbol, so that the scheme
becomes robust to inter-symbol-interference. In RACUN, 128
bits per symbol were transmitted. The real-time detection of
FMT symbols is achieved via two subsequent synchronization
steps and iterative turbo decoding of both pilots and data [7].
During the RACUN sea trials, FMT was implemented in the
hardware of all nodes and achieved a data rate of 340 bps.
B. Single-Carrier Turbo Equalization (SCTE)
FOI designed a single-carrier modulation scheme, stemming
from the need to exploit the rich multipath of the underwater
channel without feedback from the receiver and employing
turbo equalization to compensate for signal distortions [8].
Training sequences are used to obtain estimates of the channel
impulse response. The main Doppler shift is eliminated via
resampling. After that, the channel estimate is completed with
additional details using the decoded symbols as reference. In
RACUN, a 4-QAM format was employed at a data rate of
1.4 kbps, reduced to 624 bps due to limitations in the RACUN
bitstream format.
C. OFDMR
TNO and TUD contributed two modulations to the RACUN
project, a wideband single-carrier modulation scheme employing a multi-scale multi-lag (MSML) method with adaptive
turbo-equalization [9], and a multiband OFDM method [10],
adapted to RACUNs higher data-rate requirements via a different turbo-coding algorithm. During the RACUN sea trials,
two configurations of the resulting OFDMR method (where the
R stands for RACUN) were used for two different message
lengths and data rates, namely OFDMR1 (256 bits, 205 bps)
and OFDMR2 (128 bits, 120 bps).
D. Structure of channel sounding and benchmarking operations
A comprehensive set of physical-layer simulations was
carried out based on in-situ channel measurements. At an early
stage of the project (Sea Trial 1), the time-varying impulse
response was measured at relevant locations and for various
ranges. These measurements have been collected in a channel
archive that reveals a formidable diversity of propagation
conditions [11]. A channel-replay simulator [12], driven by
the archived channels, was used to benchmark the RACUN
modulation schemes. Replay is a realistic, ultra-wideband
53
JNIC2015
Figure 2. PER lookup tables for FMT, SCTE and OFDMR2. (top pane) Relationship between PER and noise. (bottom panes) Checkerboards reporting PER
in case of collisions, as a function of the signal-to-interference ratio (SIR) and of the overlap between the desired and colliding packets.
channel simulation technique that includes all signal distortions introduced by the waveguide. The benchmark results
were compiled as lookup tables (LUTs) containing packet
error rate (PER) estimates as a function of signal-to-noise ratio
(SNR), for all available modulation schemes and channels.
Fig. 2 (top pane) illustrates the LUT for FMT, SCTE and
OFDMR2 signals. The PER is plotted as a function of SNR,
for a channel measured over 3 nautical miles (nmi) in the
Gulf of La Spezia. The LUTs used in the network simulations
consist of such data for a variety of measured distances. One
important difference between the curves in Fig. 2 (top pane)
is that the PER of SCTE and OFDMR2 does not drop to zero
at high SNR for this channel. This is frequently observed in
underwater acoustic communications, where the performance
of modulation schemes may be limited by multipath and
Doppler effects, rather than noise.
Simulations were also performed to assess the impact of
collisions, which occur when two modem signals overlap
at a receiving modem. LUTs were compiled with the PER
as a function of the signal-to-interference ratio (SIR) and
the degree of overlap. Fig. 2 (bottom panes) illustrates the
collision LUT for FMT, SCTE and OFDMR2, where it is
shown, for example, that SCTE is slightly more robust to lower
values of the SIR than FMT, but fails the correct reception of a
signal for a broader range of overlap ratios. Similar arguments
apply to OFDMR2, which however presents a slightly lower
PER for SIR values between 10 and 0 dB, for an overlap up
to 50%.
A. GUWMANET
B. Dflood
54
JNIC2015
Figure 3. Connectivity map used in pre-trial simulations for the final RACUN demonstration trial (left), and example of connectivity map actually experienced
during the trial (right), where asymmetric links are indicated by one line for each direction between two nodes. The thickness and shade of each link are
proportional to its robustness. For an explanation of the node names, refer to Fig. 4.
candidates for sea trial testing, with GUWMANET achieving better performance in particular when the FMT physical
layer was used. This was partly because GUWMANET was
designed for FMT and could send each 128-bit packet as
one FMT burst. Conversely, to get room for the required
header information, Dflood had to send each packet as two
FMT bursts with some seconds of silence in between. With
other physical layers, such fragmentation was not required for
Dflood and the performance of Dflood and GUWMANET was
closer, except that GUWMANET showed better scalability
with increasing network size.
Prior to the final RACUN sea trial (Sea Trial 3, ST3),
network simulations were performed using the planned geometrical layout. Lookup tables based on measurements in the
same environment two years before resulted in a connectivity
map as shown in Fig. 3 (left), in which simulated end-toend (E2E) packet delivery ratios close to 100% could be
achieved with both GUWMANET and Dflood when the traffic
load was moderate. However, the link performances actually
experienced in the final trial were much worse even though the
distances were shorter than in simulations, as shown in Fig. 3
(right), where the discrepancy is mostly due to the empirical
SNR modelling.
V. S EA T RIAL 3: D EMONSTRATION D ETAILS AND
R ESULTS
The RACUN projects final sea trial (ST3) took place
in May 2014 and had the objective to demonstrate realtime capabilities of the network to manage ISR and MCM
scenarios at sea, to test specific network features, and to
collect experimental data for understanding the performance
of physical-layer schemes and network protocols.
A. Experiment area, support assets and deployment setup
The Italian Navy (ITN) selected a trial area near the Italian
coast of approx. 1010 nmi2 , with minimum water depth
20 m, close to the Italian Naval Base of La Spezia. The nodes
were deployed in the area shown in Fig. 4. The inter-node
distances are in the range of 563 m to 8610 m.
55
JNIC2015
Figure 4. The RACUN ST3 area, off La Spezia, Italy (left); zoom on the deployment area, with deployment locations (right). In the node names, the first
letter represents the nation providing the hardware (G = Germany, N = Norway, S = Sweden), the second letter the node type (B = Bottom node, G = Gateway
buoy, S = ship node, R = passive recorder, W = Waverider buoy), whereas the number is a unique identifier.
up to 5 nmi; mobile nodes cruising at up to 8 knots; allweather operational conditions. The main data packet class
employed in ST3 contains 128 bits, which must be delivered
with a success rate of 90% within a maximum E2E delay
of 5 minutes. These constraints reflect the importance of the
information conveyed by the packets, and accommodate some
time for retransmissions if required.
In ST3, the capabilities of the underwater network were
demonstrated via the reproduction of ISR and MCM scenarios.
The ATLAS AUV was used as a mobile communication node;
in the ISR scenario, the AUV took over the role of an intruder
that crossed the network and induced detection reports to be
sent by the bottom nodes and forwarded to the ships; during
the MCM scenario, the AUV was used as mine hunter using its
side-scan sonar. Both scenarios were repeated with both the
GUWMANET and the Dflood network protocols to collect
comparable results for the final evaluation. At the beginning
of each scenario, the network was initialized with a GUWAL
message followed by a broadcast status request, both sent
by one of the ships. After this, the AUV was commanded
to start its mission, depending on the respective scenario.
During these missions, events like intruder or mine detections
were collected at the ship. Additionally, the bottom nodes
sent out periodic status messages and the AUV communicated
its position roughly every five minutes. After one hour, the
mission was completed and the AUV surfaced back.
The configuration and results related to the tactical ISR
and MCM scenario demonstrations are summarized in Table I.
The results confirm that both scenarios could be successfully
demonstrated to the ST3 observers and national defense representatives with both the GUWMANET and Dflood network
protocols, despite the often adverse sea trial conditions that
even led to some equipment damage. The network operated in
a fully ad hoc manner without predefined routes, and encompassed static, mobile as well as surface nodes. GUWMANET
achieved a packet delivery ratio (PDR) of about 90% and
Dflood of about 70% with an average E2E delay well below 5
minutes, albeit at an average intra-node distance below 5 nmi.
56
JNIC2015
TABLE I
C ONFIGURATION AND RESULTS OBTAINED FOR THE ISR AND MCM SCENARIOS AT RACUN S FINAL DEMONSTRATION DURING S EA T RIAL 3 (ST3).
Configuration
ISR scenario
Protocol
Bottom nodes
Ship nodes
AUV
Gateway buoy
Sea state
GUWMANET
6
2
1 (damaged
during the test)
1
3
MCM scenario
Dflood
4
2
GUWMANET
6
2
Dflood
4
2
1 (surfaced)
1 (damaged during
the recovery)
34
N/A
N/A
N/A
N/A
12
563 m 8610 m
40 m 80 m
90 minutes
Results
Scenario
ISR GUWMANET
14/05/2014 (8:30-10:00)
ISR Dflood
14/05/2014 (10:30-12:00)
MCM GUWMANET
15.05.2014 (10:30-12:00)
MCM Dflood
15.05.2014 (8:30-10:00)
Number of nodes
PDR
E2E Delay
Energy consumption
per node
11
89.24%
81.92 s
17.43 J
68.15%
121.06 s
20.79 J
90.32%
58.21 s
13.72 J
70.18%
107.34 s
29.79 J
57
R EFERENCES
[1] R. Otnes and P. van Walree, Validation of replay-based underwater
acoustic communication channel simulation, IEEE J. Ocean. Eng.,
vol. 38, no. 4, pp. 689700, Oct. 2013.
[2] C. Tapparello, P. Casari, G. Toso, I. Calabrese, R. Otnes, P. van
Walree, M. Goetz, I. Nissen, and M. Zorzi, Performance evaluation of
forwarding protocols for the RACUN network, in Proc. ACM WUWNet,
Kaohsiung, Taiwan, Nov. 2013.
[3] P. Casari et al., Open-source suites for the underwater networking community: WOSS and DESERT Underwater, IEEE Network, special issue
on Open Source for Networking: Development and Experimentation,
vol. 28, no. 5, pp. 3846, Sep. 2014.
[4] I. Nissen and M. Goetz, Generic underwater application language
(GUWAL) specification of tactical instant messaging in underwater networks, WTD71/FWG, Kiel, Germany, Tech. Rep. WTD710070/2012 FR, Dec. 2012.
JNIC2015
[10] G. Leus and P. van Walree, Multiband OFDM for covert acoustic
communications, IEEE J. Sel. Areas Commun., vol. 26, no. 9, pp. 1662
1673, Dec. 2008.
[11] P. van Walree, Propagation and scattering effects in underwater acoustic
communication channels, IEEE J. Ocean. Eng., vol. 38, no. 4, pp. 614
631, Oct. 2013.
[12] R. Otnes, P. van Walree, H. Buen, and H. Song, Underwater acoustic
network simulation with lookup tables from physical-layer replay, IEEE
J. Ocean. Eng., 2015, accepted.
[13] M. Goetz and I. Nissen, GUWMANET multicast routing in underwater acoustic networks, in Proc. MCC, Gdansk, Poland, Oct. 2012.
[14] R. Otnes and S. Haavik, Duplicate reduction with adaptive backoff
for a flooding-based underwater network protocol, in Proc. MTS/IEEE
OCEANS, Bergen, Norway, Jun. 2013.
58
JNIC2015
n
I. Introduccio
Los Sistemas de Control Industrial (SCIs) son el conjunto de elementos especializados que monitorizan y controlan procesos fsicos [1]. Como tal, son los responsables
de controlar y automatizar una gran variedad de procesos,
tanto en diferentes sectores industriales o en Infraestructuras Crticas (ICs) [2], generalmente en entornos conectados conocidos como redes industriales. El Consejo de la
Uni
on Europea [3] define los ICs como el elemento, sistema o parte de este (. . . ) que es esencial para el mantenimiento de funciones sociales vitales, la salud, la integridad
fsica, la seguridad, y el bienestar social y econ
omico de
la poblacion y cuya perturbacion o destrucci
on afectara
gravemente a un Estado miembro al no poder mantener
esas funciones;. Ejemplos de infraestructuras crticas incluyen la generacion y transporte de energa, el suministro
de agua, sistemas de transporte o plantas de fabricaci
on
crticas.
Tradicionalmente, las redes industriales han formado
entornos aislados, con protocolos de red, software y hardware propietarios. Sin embargo, los SCIs han ido evolucionando hacia la utilizacion de sistemas de software y red
est
andares, y hoy en da las redes industriales comparten
importantes similitudes con redes de computadoras tradicionales y estan cada vez mas conectadas a ellas. Esto
significa que el aislamiento tradicional en el cual las redes
industriales se han basado para su proteccion ya no es tal;
las redes industriales no estan tan aisladas. Por ello, la
superficie de ataque a estas redes ha aumentado.
Los incidentes de seguridad relacionados con redes industriales han mostrado el gran impacto que puede lle-
59
JNIC2015
dustriales.
El resto del artculo esta organizado de la siguiente
manera: la seccion II presenta diferentes detectores de
anomalas que utilizan informacion de flujo, junto con una
introducci
on a los diagramas de cuerdas y su uso en el
campo de la seguridad de redes. La seccion III analiza la
estructura del sistema de monitorizacion, as como su funcionamiento. La seccion IV muestra las pruebas realizadas
al sistema con datos de trafico industrial real. Por u
ltimo,
la secci
on V extrae unas conclusiones finales e identifica
unas posibles vas de trabajo futuro.
II. Trabajos relacionados
A. Detecci
on de anomalas de flujo en redes industriales
Barbosa et al. [9] demostraron que el uso de listas
blancas es un metodo efectivo para detectar anomalas
de flujo en redes industriales. Ha habido diferentes sistemas de deteccion de intrusiones para redes industriales
que se han valido de informacion de flujo para detectar
anomalas: Garitano et al. [11] utilizan la informaci
on
de flujo contenida en forma de reglas de Snort para alertar sobre conexiones anomalas. Hoeve [12] extrae la informaci
on de flujo de red y sus patrones, para detectar
anomalas que quedan fuera de los patrones en tr
afico de
control cifrado. SPEAR [13] utiliza la informaci
on de la
topologa de red e informacion de flujo introducida a mano
para detectar anomalas de flujo mediante la creaci
on de
reglas para Snort.
Sin embargo, ninguna de las propuestas se
naladas presenta los resultados de la deteccion ni el estado de la red
de manera visual.
B. Diagramas de cuerdas
Los diagramas de cuerdas, tambien conocidos como diagramas Circos, son diagramas circulares que representan las interrelaciones entre diferentes entidades. Aunque
originalmente fueron dise
nadas para ser utilizadas en
gen
omica [14], el uso de los diagramas de cuerdas se ha
extendido a diferentes campos.
Las entidades visualizadas estan ordenadas de manera
circular. Cada entidad ocupa una longitud de arco diferente en funcion del peso que tiene en relacion al resto de
entidades.
Las cuerdas son uniones que conectan las diferentes entidades que forman el crculo. Cada cuerda une generalmente dos entidades diferentes, y la anchura de la cuerda
en cada borde indica la naturaleza de la uni
on. Si uno
de los bordes de la cuerda tiene una mayor anchura, la
entidad de ese lado tiene una posicion mas dominante.
Por ejemplo, en el caso de que una cuerda represente
una relacion mercantil entre dos estados, el estado con
la cuerda mas ancha en su base enva mas bienes hacia el
estado con la anchura mas peque
na que viceversa.
En el campo de la ciberseguridad, los diagramas de cuerdas se han utilizado en diferentes tipos de sistemas de visualizaci
on, pero su uso no esta tan extendido como otros
tipos de diagramas.
Mazel et al. [15] utilizan diagramas de cuerdas para
realizar una comparativa visual de diferentes sistemas de
60
detecci
on de anomalas y su rendimiento.
El trabajo de Layton et al. [16] representa las relaciones
entre grupos de p
aginas webs de phishing mediante diagramas de cuerdas.
OCEANS [17] utiliza diagramas de cuerdas para representar flujos de redes entre diferentes subredes. Sin embargo, es una soluci
on orientada a redes tradicionales de
ordenadores y se limita a mostrar los flujos de red existentes, pero sin mostrar la informaci
on de flujos de hosts
individuales ni resaltar las anomalas.
De momento, no hay ejemplos de sistema de visualizaci
on de flujos orientado a la seguridad para redes industriales, menos a
un utilizando diagramas de cuerdas. Sin
embargo, se est
an haciendo varios avances para mejorar
la monitorizaci
on visual de procesos industriales [18].
n del sistema
III. Descripcio
La figura 1 muestra el flujo de trabajo del sistema de
monitorizaci
on y visualizaci
on presentado.
En primer lugar, dispositivos de red con capacidad de
registrar flujos de red envan paquetes con la informacion
de flujo a un recolector de flujos que almacena luego
estos en un servidor de flujos. El envo se puede realizar
desde diferentes redes industriales, permitiendo la monitorizaci
on central de las redes industriales.
Una vez empezada la recolecci
on de flujos, mediante
una consulta al servidor de flujos se crea las polticas de
whitelisitng con los primeros flujos recogidos de la red. A
esta fase la hemos llamado la fase de aprendizaje. Una
vez que las polticas se han creado y se siguen registrando
nuevos flujos de red, se realizan consultas adicionales al
servidor de flujos para obtener los u
ltimos resultados y
luego los compara con las polticas establecidas en las listas blancas para detectar si los flujos nuevos son legtimos
o no, etiquetando cada flujo como legtimo o ilegtimo.
Esta fase es la fase de detecci
on. Finalmente, una vez los
flujos est
an etiquetados, el sistema crea una serie de diagramas de cuerdas para representar los resultados. Mientras que la fase de aprendizaje ocurre una u
nica vez por
red monitorizada, las fases de detecci
on y visualizaci
on se
repiten peri
odicamente en el tiempo.
A. Fase de aprendizaje
En esta fase, se crea una lista blanca de flujos a partir de los primeros flujos detectados en una red industrial
en un periodo de tiempo determinado. La duraci
on adecuada del periodo de tiempo depende del tipo de proceso
que controla la red. En procesos por lotes cortos, la duraci
on necesaria para recoger todos los flujos importantes
es menor que en procesos m
as largos o contnuos, ya que
los ciclos de la red ser
an tambien m
as cortos.
La lista blanca es generada en formato CSV, de este
modo, un operador humano puede a
nadir flujos de red que
considere oportunos, o borrar los flujos de red registrados
que deben ser consideraros an
omalos.
En las listas blancas, se guarda la siguiente informacion
por cada flujo: direcci
on IP origen, direcci
on IP destino,
puerto del servidor, tipo de protocolo IP y el n
umero paquetes de red un intervalo de tiempo dado. No se tiene en
JNIC2015
Redes
Industriales
Recolectores
de flujos
Servidor
de flujos
Flujos
etiquetados
Flujos de
red
Diagramas
de cuerdas
Paquetes
de flujo
Fase de deteccin
Datos de flujos
Fase de
visualizacin
Paquetes
de flujo
En lnea
Fase de aprendizaje
Fuera de lnea
Listas blancas
61
JNIC2015
62
JNIC2015
Fig. 3: Representaci
on de un flujo de red an
omalo.
Switch 2
Switch 1
Gateway
negro (ver figura 7). Ademas este tipo de flujos son los
u
nicos en los que se utiliza la informacion de la lista blanca
para representarlos, ya que en los datos recogidos no hay
datos que impliquen a esos flujos.
n en una red industrial
IV. Applicacio
Esta seccion prueba la solucion presentada anteriormente con datos reales de una red industrial.
63
A. Red de prueba
Realizar pruebas de seguridad en una red industrial real
y en marcha puede ocasionar consecuencias inesperadas,
como fallos en el funcionamiento de la red o situaciones
potencialmente peligrosas [19]. Adem
as de momento, no
hay ningun conjunto de datos est
andar con datos reales
de flujo de una red industrial con varios dispositivos. Por
ello, se ha duplicado la red de control de una instalacion
industrial real para realizar las pruebas en un entorno de
laboratorio. La red original es la red de control de una
lnea de pintado de coches de una planta de fabricaci
on.
La figura 4 muestra la topologa de red de la red de
prueba. Los switches son los dispositivos de red que envan
los paquetes de flujo a los recolectores. En esta red se
JNIC2015
B. Implementaci
on del sistema
Como se ha comentado, los flujos en el sistema de
prueba son NetFlow version 5. Los switches mandan los
paquetes de flujo de red a agentes de Logstash2 que, actuando como recolector de flujos, los recibe, los analiza y
despues los indexa en un cluster de ElasticSearch3 . Este
enfoque permite el uso de sistema de monitorizaci
on a
gran escala y permite que las consultas se puedan realizar
de manera rapida. El sistema de visualizaci
on que forma
los diagramas de cuerdas ha sido desarrollado utilizando
la librera D3 [20].
Fig. 5: Visualizaci
on de un ataque de denegaci
on de servicio.
Por u
ltimo, consideramos el caso donde un dispositivo
tiene problemas de conectividad y no es capaz de comunicarse con la red y, por lo tanto, de enviar o recibir paquetes. Para la realizaci
on de esta prueba, se ha desconectado
fsicamente el Servidor 1 de la red.
La figura 7 muestra como los flujos del dispositivo cado
han sido etiquetados como ausentes, y como tal, te
nidos
de negro. Para poder visualizar los datos de los flujos
implicados, se han utilizado los datos registrados en la
lista blanca.
C. Anomalas de red
2 https://github.com/elastic/logstash
3 https://github.com/elastic/elasticsearch
64
JNIC2015
A. Trabajos futuros
La informaci
on relativa a los puertos y protocolos es
utilizada para la detecci
on de anomalas, pero en la visualizaci
on no muestra la informaci
on relativa a ellas. La
inclusi
on de estas caractersticas aumentara la cantidad
de informaci
on que el operador recibe de manera visual,
pero tambien aumenta el riesgo de complicar las visualizaciones demasiado, hasta el punto de no poder cumplir
su cometido.
Las listas blancas se crean al principio de la recoleccion
de flujos y no son directamente editables desde la interfaz visual. Sin embargo, es interesante ofrecer al usuario
esta opci
on de editar las listas blancas para poder permitir flujos marcados como ilegtimos si el operador puede
determinar su legitimidad y no ha sido detectado en la
fase de aprendizaje.
Referencias
[3]
[4]
[5]
[6]
[7]
[8]
65
[10]
[11]
[12]
[13]
[14]
[15]
A. C
ardenas, S. Amin, and S. Sastry, Research Challenges for
the Security of Control Systems., in HotSec, 2008.
K. Stouffer, J. Falco, and K. Scarfone, Guide to Industrial
Control Systems (ICS) Security, Special publication 800-82,
tech. rep., National Institute of Standards and Technology,
June 2011.
Consejo de la Uni
on Europea, Directiva 2008/114/CE del
Consejo de 8 de diciembre de 2008 sobre la identificaci
on y designaci
on de infraestructuras crticas europeas y la evaluaci
on
de la necesidad de mejorar su protecci
on, Diario Oficial de la
Uni
on Europea, vol. L345, pp. 7582, Diciembre 2008.
B. Miller and D. Rowe, A survey of SCADA and Critical Infrastructure incidents, in Proceedings of the 1st Annual conference on Research in information technology, pp. 5156, ACM,
2012.
N. Falliere, L. O. Murchu, and E. Chien, W32.Stuxnet
dossier, White paper, Symantec Corp., Security Response,
2011.
McAfee, Global Energy Cyberattacks: Night Dragon (white
paper), tech. rep., McAfee, 2011.
D. Hentunen and A. Tikkanen, Havex Hunts For ICS/SCADA
Systems, June 2014. [Online]. Available: http://www.fsecure.com/weblog/archives/00002718.html (Retrieved: 201507-26).
M. Cheminod, L. Durante, and A. Valenzano, Review of Security Issues in Industrial Networks, IEEE Transactions on
Industrial Informatics, vol. 9, no. 1, pp. 277293, 2013.
R. R. R. Barbosa, R. Sadre, and A. Pras, Flow Whitelisting
in SCADA Networks, International Journal of Critical Infrastructure Protection, vol. 6, no. 3, pp. 150158, 2013.
M. Herrero Collantes and A. L
opez Padilla, Protocolos y Seguridad de red en infraestructuras SCI, tech. rep., INCIBE:
Instituto Nacional de Ciberseguridad, Mayo 2015.
I. Garitano, M. Iturbe, I. Arenaza-Nu
no, R. Uribeetxeberria,
and U. Zurutuza, Sistema de Detecci
on de Anomalas para
protocolos propietarios de Control Industrial, in XIII Spanish Meeting on Cryptology and Information Security (RECSI
2014), (Alicante, Spain), pp. 315320, University of Alicante,
Sep 2014.
M. Hoeve, Detecting Intrusions in Encrypted Control Traffic,
in Proceedings of the First ACM Workshop on Smart Energy
Grid Security, SEGS 13, (New York, NY, USA), pp. 2328,
ACM, 2013.
B. Genge, D. A. Rusu, and P. Haller, A connection patternbased approach to detect network traffic anomalies in critical
infrastructures, in Proceedings of the Seventh European Workshop on System Security, (Amsterdam, Netherlands), ACM,
2014.
M. Krzywinski, J. Schein, I. Birol, J. Connors, R. Gascoyne,
D. Horsman, S. J. Jones, and M. A. Marra, Circos: an information aesthetic for comparative genomics, Genome Research,
vol. 19, no. 9, pp. 16391645, 2009.
J. Mazel, R. Fontugne, and K. Fukuda, Visual comparison of
network anomaly detectors with chord diagrams, in Proceed-
JNIC2015
[16]
[17]
[18]
[19]
[20]
ings of the 29th Annual ACM Symposium on Applied Computing, pp. 473480, ACM, 2014.
R. Layton, P. Watters, and R. Dazeley, Unsupervised authorship analysis of phishing webpages, in Communications and
Information Technologies (ISCIT), 2012 International Symposium on, pp. 11041109, IEEE, 2012.
S. Chen, C. Guo, X. Yuan, F. Merkle, H. Schaefer, and T. Ertl,
OCEANS: online collaborative explorative analysis on network
security, in Proceedings of the Eleventh Workshop on Visualization for Cyber Security, pp. 18, ACM, 2014.
T. Tack, A. Maier, and O. Niggemann, On Visual Analytics
in Plant Monitoring, in Informatics in Control, Automation
and Robotics, pp. 1933, Springer, 2014.
D. Duggan, M. Berg, J. Dillinger, and J. Stamp, Penetration
testing of industrial control systems, Tech. Rep. SAND20052846P, Sandia National Laboratories, March 2005.
M. Bostock, V. Ogievetsky, and J. Heer, D3 data-driven documents, Visualization and Computer Graphics, IEEE Transactions on, vol. 17, no. 12, pp. 23012309, 2011.
66
JNIC2015
n
I. Introduccio
En los u
ltimos a
nos el malware ha experimentado un
importante crecimiento. Seg
un la Agencia Europea de
Seguridad de las Redes y de la Informacion (ENISA), el
software malicioso se ha convertido en la principal amenaza para las tecnologas de la informacion actuales [1].
Esto es debido a que cada vez mas usuarios se apoyan
en estos servicios para llevar a cabo actividades de especial sensibilidad, como comercio electronico o accesos
a informacion confidencial. Ademas el malware es mucho m
as sofisticado, habiendo adquirido mayor capacidad
de propagacion, infeccion y elusion de mecanismos defensivos. En consecuencia, asegurar la eficacia de los sistemas
de detecci
on convencionales a menudo requiere de su complementacion por medio de otras herramientas, de entre
las que destacan los sistemas de correlacion de alertas.
Los sistemas de correlacion de alertas facilitan la gesti
on
de las alertas emitidas por los sistemas de detecci
on de
intrusiones, mejorando as la decision de las contramedidas
a aplicar [2]. En la u
ltima decada se ha publicado una
gran cantidad de propuestas al respecto. Pero a pesar de
ser un problema ampliamente estudiado, la mayor parte
de los esfuerzos realizados abordan soluciones de
ambito
general, que a menudo son inefectivos en casos de uso
reales. Algunas de las principales causas de este problema
se enumeran en [3], destacando el crecimiento del volumen
de informacion a tratar, la gestion de una mayor cantidad
de alertas o su heterogeneidad.
La propuesta realizada se centra en el problema de la
correlaci
on de alertas en sistemas de detecci
on de intrusiones basados en el analisis estadstico de la carga u
til
67
del tr
afico que circula por una red, en busca de contenidos
an
omalos. Su elaboraci
on ha sido motivada por la necesidad de complementar la herramienta de detecci
on APAP
desarrollada por nuestro grupo de investigaci
on [4]. En
base a esto se propone un marco para correlacionar incidencias, adaptado a sensores de caractersticas similares.
La propuesta gestiona las alertas en un esquema multinivel, que permite su an
alisis individual y en grupos. Su
eficacia ha sido demostrada en un caso de uso real, con
tr
afico de la Universidad Complutense de Madrid (UCM).
El resto del artculo est
a estructurado de la siguiente
manera: en la secci
on 2 se describen los trabajos relacionados. En la secci
on 3 se propone un marco para correlacionar sus alertas. En la secci
on 4 se describe el escenario
de evaluaci
on. En la secci
on 5 se discuten los resultados
obtenidos. Finalmente, en la secci
on 6 se presentan las
conclusiones.
II. Trabajos Relacionados
Recientemente se han publicado diferentes estados del
arte relacionados con la gesti
on de las alertas emitidas
por sistemas de detecci
on de intrusiones. Algunos de ellos ofrecen una visi
on general, como es el caso de [2],
[3]. Sin embargo otros hacen hincapie en aspectos mas
especficos, como en la colaboraci
on entre sensores [5], o
la reducci
on de su tasa de falsos positivos [6]. A lo largo
de la bibliografa, los sistemas de correlaci
on de alertas
han sido agrupados de manera muy similar a la propuesta
en [2], donde su eje de clasificaci
on est
a determinado por
los metodos de correlaci
on. En base a este criterio se distinguen tres grandes grupos: estrategias basadas en similitud, metodos secuenciales o casos.
La correlaci
on basada en similitud habitualmente se
centra en la agrupaci
on y reducci
on de las alertas emitidas. Para ello se tienen en cuenta diferentes atributos
o caractersticas, que abarcan desde las direcciones IP y
puertos relacionados con la intrusi
on, hasta la frecuencia
de aparici
on de ciertos patrones en su contenido. En [7]
se observa un claro ejemplo, donde adem
as de estos atributos, son considerados otros rasgos, como su protocolo o
prioridad de tratamiento. En [8] se aplican caractersticas
parecidas al tratamiento de eventos de redes m
oviles. La
JNIC2015
correlaci
on basada en similitud a menudo tambien tiene
en consideracion las relaciones espacio-temporales de las
incidencias. Un ejemplo de ello se encuentra [9], donde
a partir de estas caractersticas es posible inferir el escenario del ataque. Otras propuestas toman como referencia
atributos propios del sistema de deteccion. Este es el caso
de [10], donde la correlacion se realiza a partir de una
versi
on comprimida del conjunto de muestras que ha participado en el entrenamiento del sensor.
El an
alisis secuencial de alertas tiene en cuenta las relaciones de causalidad de los incidentes, y se basa en el estudio de sus precondiciones y postcondiciones. Se definen
como precondiciones al conjunto de requisitos necesarios
para desencadenar una amenaza. Las postcondiciones son
las consecuencias de su ejecucion. En [11] se muestra un
claro ejemplo de esta metodologa, donde mediante el enlace de prerrequisitos y postcondiciones de diferentes alertas, es posible la construccion de escenarios de ataques.
En [12] esto se lleva a cabo mediante la elaboraci
on de matrices de correlacion causal. Otra representaci
on com
un
son los grafos. En [13] se profundiza en esta tendencia,
y se propone la aplicacion de grafos de incidencias generalizados basados en las relaciones de dependencia entre alertas. La construccion del escenario del ataque a
menudo involucra la aplicacion de diferentes estrategias,
como sucede en [14] mediante el uso de gram
aticas, o en
[15] con algoritmos de minera de datos, haciendo especial
hincapie en la logica difusa.
Los metodos basados en casos se fundamentan en bases
del conocimiento, denominadas en este contexto como
bases de casos. Por lo tanto, dependen de algoritmos
encargados de reconocer los patrones especficos de comportamiento representados en ellas. Un ejemplo de ello
se observa en [16], donde los escenarios de ataques que
integran la base de casos son construidos a partir de agrupaciones de incidencias. La propuesta infiere futuras amenazas, lo que permite actualizar la base del conocimiento
con nuevas intrusiones. En [17] se introduce una aproximaci
on similar, centrada en la actualizacion autom
atica
de grafos de dependencias. En [18] se aplican algoritmos
de agrupamiento para clasificar las incidencias en funci
on
de la base de casos, con el fin de priorizar su tratamiento.
n de Alertas
III. Marco para la Correlacio
El marco propuesto para la gestion de incidencias se
adapta a las particularidades de las herramientas de detecci
on de malware basadas en anomalas. En consecuencia, han sido consideradas las siguientes asunciones:
Los sensores a complementar presentan arquitectura centralizada. Existen pocas contribuciones que
planteen esquemas colaborativos. Adem
as, el an
alisis
centralizado predomina en las publicaciones de mayor
relevancia.
Los sensores analizan el tr
afico paquete a paquete. El
modelado de la red se basa en el estudio de su carga
u
til, por ser el campo que contiene el codigo malicioso.
Las peculiaridades de los sensores determinan las caractersticas que permiten establecer los modelos de uso.
A partir de las caracter
sticas de la carga u
til y del
68
JNIC2015
Entorno Monitorizado
NIDS
C. Diagn
ostico por Naturaleza
Alertas
Sistema de correlacin
DA
DA
Paquetes
DNSimple
{distancia, naturaleza}
DNMltiple
Trazas
{amenaza}
Fig. 1
n de alertas.
Arquitectura del sistema de correlacio
B. Diagn
ostico por Anomala
El componente DA correlaciona las alertas a partir de
un proceso de agrupamiento asociado a los resultados del
entrenamiento del sistema de deteccion de intrusiones. Sea
D = {d1 , , dn }, tal que 0 < n el conjunto de trazas
de tr
afico procesadas por el sensor en su entrenamiento,
donde A = {a1 , , am } son sus muestras con contenido
maliciosos y L = {lm+1 , , ln } sus muestras legtimas,
tal que 0 < m < n.
DA opera en dos etapas: definicion de grupos y agrupamiento. En la fase de definicion de grupos se establecen
las posibles clasificaciones que realiza. Tiene lugar durante el entrenamiento de los sensores, donde a partir de
L se genera una representacion del modo de uso habitual
del entorno protegido, cuyas caractersticas m
as representativas son M L = {ml1 , , mlp } tal que 0 < p. En la
definici
on de grupos participa el modelo M L, y en ocasiones el conjunto A; esto u
ltimo dependera de su n
umero
de clases.
En el caso de considerar u
nicamente muestras legtimas,
es decir si |A| es poco representativo, los grupos se construyen en funcion de la distancia de las observaciones respecto a los umbrales que determinan si seran etiquetadas
como an
omalas o legtimas. Sin embargo, cuando |A| es
representativa, sus muestras tambien pueden tomar parte
del proceso de decision de grupos. A diferencia del caso
anterior, en esta situacion los algoritmos de agrupamiento
s
olo consideran las distancias de las muestras maliciosas
respecto del umbral de decision. Se trata de un esquema
habitualmente mas preciso, ya que las alertas emitidas por
los sensores siempre superan dichos margenes. De este
modo, y a diferencia del primer caso, los valores centrales
de los grupos siempre los superan.
69
JNIC2015
A. Colecci
on de Muestras
Para la evaluacion del sistema se ha empleado una
colecci
on de capturas de trafico etiquetadas por el Centro de Procesamiento de Datos (CPD) de la Universidad
Complutense de Madrid, tomadas a lo largo del a
no 2011
en la subred de la facultad de informatica.
Las posibles alertas han sido divididas en 16 categoras:
troyano, escalada de privilegios, c
odigo ejecutable, denegaci
on de servicio, software privativo, enumeraci
on I, enumeraci
on II, virus, exploit, software privativo espa, acci
on
de control remoto, software privativo con accesos no au-
70
0,00380625
0,01358725
JNIC2015 0,00567021
0,11796354
0,00380625
0,163631
0,01358725
0,137609
0,00567021
60,0%
0,247923
0,11796354
Legtimo
50,2%
0,163631
50,0%
45,5%0,0000975
Malicioso
43,8%
0,00015
0,137609
40,0%
0,09660625
0,247923
30,0%
0,00344625
0,0000975
20,0%
15,4%
0,00626275
0,00015
14,8%
12,6%
10,4%
0,09660625
10,0%
4,3%
0,00026
0,00344625
0,0%
0,002509
0,00626275
Muy Bajo
Bajo
Medio
Alto
Muy Alto
0,004394
0,00026
Fig. 2
0
n basada en anomalas.
Resultados
en correlacio
0,002509
0,004394
Total
0,80010975
0
Troyano
Esc. privilegios
Cd. ejecutable
Total
DoS
Sfw. privativo
Troyano
Enumeracin I
Esc. privilegios
Enumeracin II
Cd. ejecutable
Virus
DoS
Exploit
Sfw. privativo
Sfw. Priv./spy I
Enumeracin I
Control remoto
Enumeracin II
Swr priv. restrict.
Virus
Swr. acc. no aut.
Exploit
Spyware I
Sfw. Priv./spy I
Spyware II
Control remoto
Agradecimientos
Los autores agradecen el apoyo brindado por el Programa de Financiaci
on de Grupos de Investigaci
on UCM
validados de la Universidad Complutense de Madrid Banco Santander.
Referencias
[1]
[2]
[3]
0,381%
1,359%
0,567%
[4]
0,80010975
11,796%
16,363%
13,761%
0,381%
1,359%
0,567%
0,010%
0,015%
[5]
24,792%
11,796%
16,363%
9,661% 13,761%
0,345%
24,792%
0,626%
0,010%
0,026%
0,015%
0,251%
9,661%
0,439%
0,345%
Swr priv. restrict.
0,626%
Swr. acc. no aut.
0,026%
Fig. 3
Spyware I
0,251%
Distribucin
Acierto
en primera
opcin
n de
n de
Distribuci
correlacio
alertas
por
naturaleza.
0,439%
Spyware IIo
Botnet
0,91%
Ofuscado
0,14%
Gusano
1,6%
Driver by
Botnet
Adware
Ofuscado
Spyware
Gusano
Virus
Driver by
Troyano
Adware
0,91%
1,6%
0,24%
0,73%
Virus
0,24%
Troyano
0,73%
[8]
89,10%
[9]
94,40%
83,70%
89,10%
73,10% 91,20%
71,30% 94,40%
83,10%
83,70%
94,50%
91,20%
23,18%
30%
43,2%
23,18%
30%
43,2%
Spyware
[7]
73,10%
Distribucin
0,14%
[6]
[10]
[11]
71,30%
83,10%
94,50%
[12]
Fig. 4
n de correlacio
n de secuencias.
Distribucio
[13]
VI. Conclusiones
[14]
71
[15]
[16]
[17]
[18]
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
Goran Doychev
Boris Kopf
AbstractTiming attacks can effectively recover cryptographic keys. Defensive protections such as constant-time implementations introduce performance penalties. Hence, a balance is
needed between performance and security against timing attacks.
We propose a systematic approach for choosing a protection,
on the example of discrete-log-based cryptosystems. The chosen
protection is an equilibrium in a game-theoretic model. To enable
the equilibrium computation, we derive novel bounds on the
key-recovery probability, as a function of the applied protection
and attack strategies of timing adversaries. We demonstrate our
approach on libgcrypts ElGamal implementation, determining
situations where the optimal protection is either a leaky or
constant-time implementation.
I.
Motivation
72
A. Game-Theoretic Solution
On a technical level, we identify the optimal countermeasure configuration as an equilibrium of a two-stage (Stackelberg) game between two rational players: an adversary and
a defender. The adversary strives to maximize the probability
of key recovery, by distributing bounded resources between
timing measurements and computational search for the key.
The defender strives to minimize the cost of protection, while
maintaining a certain security level given in terms of an upper
bound on the probability of adversary success. The defenders
means to achieve this are the choice of the key length and the
configuration of the countermeasure.
B. Bounds on Probability of Key Recovery
At the heart of the equilibrium computation are novel
bounds for the probability of key recovery in the presence
of side-channel information. We derive these bounds in the
generic group model and under the assumption that the cryptosystem is based on discrete logarithms and protected against
timing attacks by an idealized form of input blinding.
Our starting point is an existing upper bound for the amount
of information contained in n timing measurements, when the
execution time is discretized [7]. The technical challenge we
face is to turn this bound into a guarantee against an adversary
that can mount a combined timing/algebraic attack. We identify
unpredictability entropy [3] as a suitable tool for this task. In
particular, unpredictability entropy satisfies a chain rule [8],
which limits the extent to which bounded leakage can decrease
the hardness of a computational problem. We then cast Shoups
lower bound for computing discrete logs in generic groups [9]
in terms of the unpredictability entropy w.r.t. an adversary
who can perform m group operations. Finally, we connect the
leakage bound with the bound for the discrete log to obtain
the desired bound (in terms of n and m) for combined side
channel/algebraic adversaries.
III.
Case Study
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
The variation in the cost of the two-bucket implementations is explained in the following. When increasing the
key deployment time, the adversary has more opportunities
to make timing measurements, which leads to an increased
timing leak; as the defender requires a fixed level of security,
he compensates for this higher leak by increasing the key size,
which leads to an increase in cost. As shown in Figure 1,
for longer key deployment times (over 120 days), the cost
of increased key may supersede the cost of a constant-time
implementation. In contrast, as shown in Figure 2, for a
scenario with a bigger reference key size and a lower access
rate, a leaky implementation provides a cheaper protection than
a constant-time implementation even for key deployment times
of over 10 years.
1.15
# instructions 108
1.1
1.05
1
0.95
0.9
0.85
0.8
constant time
2 buckets
0.75
0.7
1
14
30
60
120
180
240
IV.
7
6.5
# instructions 108
Summary of Contributions
References
5.5
5
[1]
4.5
4
3.5
3
1 year
[2]
constant time
2 buckets
4 year
7 years
10 years
[3]
13 years
[4]
[5]
[6]
[7]
[8]
[9]
73
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
1
ing shared should be short, due to the fact that this file is
directly pointing to all the members of the botnet, exposing them to known detection systems [3] [4].
These two rules imply that, during the first phase of
a botnet resource sharing, a high level of popularity is
expected and after that all the bots will stop sharing the
botnet resource in a short period of time.
Resource-based Botnet Detection: Architecture and Operation
The architecture of our proposal for a resource-based
botnet detection system is shown in Fig. 1. The data
from a resource monitoring system for Mainline network
is feeded into our system, where the three typical stages
are considered:
Preprocessing
Both the training and detection processes require a previous common stage to preprocess the data given by the
resources monitoring system. We obtain nr , which represents a low pass filtering of the time series evolution of
the number of peers sharing r.
Training
First, a normality model is built to represent the sharing evolution of legitimate resources in the monitored P2P
network. As we are interested in identifying those resources that exhibit a high fall in the number of peers
that share them and present a reduce sharing duration,
we extract the fall threshold and the sharing duration of
the system.
Detection
Once the model is obtained, every resource shared in the
P2P network is analyzed, in order to determine potential
deviations with respect to the expected behavior. In such
a case, an alarm is triggered indicating the detection of
a malicious, botnet resource. The core of the detection
system corresponds to the module of abnormal fall and
duration detection.
I. Experimental Evaluation
In order to make the training, we collect the evolution
of 34,075 resources in the Mainline network and we select 14,869 of them which are corroborated as legitimate.
Additionally, 42,000 synthetic bot resources following our
74
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
2
100
TPR (%)
80
60
40
=1.2; =3.7
20
0
0
x 10
res1
res2
res3
nr(k)
4
3
2
1
0
0
10
20
k (hours)
30
40
Acknowledgments
This work has been partially supported by Spanish Government through project TIN2014-60346-R.
Referencias
model based on popularity and short-life time are generated. The existence of both legitimate and botnet resources allows to obtain a ROC curve representing the
performance of our detection system (see Fig. 2). We obtain this ROC by varying and which are the factor to
calculate the fall threshold, Fth , and the duration threshold, Dth .
From these results, we select a value of equal to 1.2
and a value of equal to 3.7, which obtain false positive
rates equal to zero, in order to minimize the number of
alarms while being sure about the malicious nature of the
events detected.
[1] R. A. Rodrguez-G
omez, G. Maci
a-Fern
andez, P. GarcaTeodoro, M. Steiner, and D. Balzarotti, Resource monitoring
for the detection of parasite {P2P} botnets, Computer Networks, vol. 70, no. 0, pp. 302 311, 2014.
[2] M. A. Rajab, J. Zarfoss, F. Monrose, and A. Terzis, My botnet
is bigger than yours (maybe, better than yours): why size estimates remain challenging, in Proceedings of the first conference
on First Workshop on Hot Topics in Understanding Botnets.
USENIX Association, 2007.
[3] S. Shin, Z. Xu, and G. Gu, EFFORT: Efficient and Effective Bot Malware Detection, in Proceedings of the 31th Annual IEEE Conference on Computer Communications (INFOCOM12), 2012.
[4] J. Zhang, R. Perdisci, W. Lee, U. Sarfraz, and X. Luo, Detecting stealthy P2P botnets using statistical traffic fingerprints, in
Dependable Systems & Networks (DSN), 2011 IEEE/IFIP 41st
International Conference on. IEEE, 2011, pp. 121132.
75
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
I.
76
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
of the model and interact with it. This is achieved through the
use of a graph visualization class that receives as an input the
nodes and edges of the model, and presents them on a screen.
This visualization is using the library JGraphX [2] to display
the graph.
An example of the representation of one sample graph for
the model [1] is provided in Fig. 3.
In our simulator a given attack graph model can provide a
The first issue that have emerged from this work is related
with the innate difficulties while comparing different attack
graph models. This is mostly due to the lack of a common
structure or even a similar approach to the problem. There are
several attempts to create a standard way to manage this
problem, but each one has some issues at a certain point.
As a matter of example, and based on our design and
implementation experience with different models existing in
the simulator, there is a scale for the risk management (i.e.,
low, medium, high) but it is not mandatory or even
recommended. The same happens inside the network analysis:
how it should be defined the probability of a service being
really compromised? Which should be the target: services,
machines or both? And, what happens if the system is
distributed or virtualized and then including different tenants?
In fact, as part of this effort, it has been also faced the
problem that even taking two models with the same basic
assumptions (e.g., same graph structure: services as nodes,
exploits as edges, countermeasures as nodes and evidences as
attributes), the outputs of these models can be different.
This is leading to the identification of a major issue when
considering the comparison between different attack graph
models, which is the lack of a standard normalized way to
approach the problem, including specially the way to provide
the input to the model and the way the model is describing its
outputs.
IV. CONCLUSION
This paper describes a first attempt towards the creation of a
simulator willing to help with the definition of new attack
graph models. A first version of this simulator has been created
and several models have been already implemented using it.
Moreover, a first comparison between different existing
proposals has been performed. As future work, we are planning
to include new implementations of attack graph models and
improve the current definition of the common interfaces, as
well as providing general access to researchers to the
simulator, so it can be used to design novel approaches.
ACKNOWLEDGEMENTS
This work has been partially funded with the support from
the Spanish MICINN (project DHARMA, Dynamic
Heterogeneous Threats Risk Management and Assessment,
with code TIN2014-59023-C2-1-R) and the European
Commission (FEDER/ERDF).
77
REFERENCES
[1]
[2]
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
I. INTRODUCCI ON
El concepto Smart Grid engloba los procesos de
supervision y control del sistema electrico, soportados por las
tecnologas de comunicacion e informacion. Se trata, pues, de
aplicaciones que requieren prestaciones en tiempo real con un
alto grado de fiabilidad y seguridad. El estandar IEC 61850
Power Utility Automation [1] define los servicios y requisitos
para las comunicaciones que tienen lugar en las subestaciones
electricas. La utilizacion de tecnologas SDN para la gestion
de tales entornos crticos permite beneficiarse del concepto de
programabilidad de la red. En las redes basadas en SDN el
plano de control esta desacoplado del de datos y la inteligencia
de red esta logicamente centralizada, aportando una vision
global de la red con el objetivo de establecer las condiciones
adecuadas en la misma.
En el presente trabajo se extraen los aspectos de
ciberseguridad abordados en el artculo previo [2], en el cual
el paradigma SDN es empleado para implementar prestaciones
tales como filtrado de trafico, balanceo de carga o calidad de
servicio en sistemas basados en el estandar IEC 61850.
II. ARQUITECTURA SDN
La arquitectura propuesta constituye un Network Operating
System (NOS), basado en tecnologas estandarizadas, que
sirve como punto comun de configuracion de polticas
seguridad y calidad de servicio. El NOS puede dividirse en
tres bloques funcionales:
Control: mediante el protocolo OpenFlow [3] un
controlador puede decidir el encaminamiento de los diferentes
flujos que llegan a un switch. Para lo cual, anade entradas
en las tablas de encaminamiento del switch, definidas a
traves de diferentes campos (puerto de entrada y cabeceras
de paquetes), prioridades e instrucciones asociadas a cada
flujo de entrada. En concreto, ha sido utilizado el controlador
Floodlight [4].
78
Filtrado de
trfico
Balanceo
de carga
Calidad de
Servicio
Tunelado
Topology Service
Load Balancing
Link Discovery
Firewall
Forwarding
Device manager
Monitor
Aislamiento
Ports
Packet sampling
Queues
Counters
Tunnels
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
RED LGICA
HMI
MAC.C
VLAN.Z
HTTP
RED LGICA
SAMPLE VALUE
SV
MU
MAC.B
VLAN.X
RED LGICA
GOOSE
GOOSE
IED Y
GOOSE
IED X
MAC.A
VLAN.Y
RED LGICA
GOOSE
MAC.A
VLAN.X
INFRAESTRUCTURA
FSICA
79
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
1
80
and Technology en sus versiones de 2012 y 2013, organizados por la Visual Analytics Community.
Centrandonos en las caractersticas especficas de la deteccion de anomalas en red, para el empleo eficiente de un
sistema SIEM, as como para poder extender su estrategia
de seguridad a distintos entornos de redes (p.ej. redes corporativas, redes inalambricas, redes celulares) y modelos
de negocio actuales (p.ej. la nube, Bring Your Own Device), podemos establecer los siguientes retos principales:
1. Fusion efectiva de distintas fuentes de informacion, que
incluye la parametrizacion o parsing de los datos capturados por los sensores.
2. Mantenimiento de una alta capacidad de deteccion de
anomalas evitando la tpica tendencia a presentar un alto
n
umero de falsos positivos.
3. Capacidad de analisis de grandes cantidades de datos
a altas velocidades.
4. Reduccion del volumen de trafico asociado a la seguridad ante el elevado volumen de trafico generado entre sensores y SIEM.
5. Combinacion de fuentes de informacion de seguridad
asociada a sistemas finales (alarmas de antivirus, registros
de aplicaciones y SO, cortafuegos de dispositivos, etc.)
con los sensores de la red (cortafuegos de red, sniffers de
trafico, IDS, etc.).
En este contexto, las tecnicas basadas en el analisis
estadstico multivariante para el analisis exploratorio de
datos o EDA (del ingles Exploratory Data Analysis) [6] y
el control estadstico de procesos o SPC (del ingles Statistical Process Control) [7] pueden resultar extremadamente
u
tiles. Si bien la capacidad de deteccion de anomalas del
analisis multivariante es bien conocida en el area de monitorizacion de procesos industriales [8], [9], su aplicacion
en seguridad en redes, aunque existente [10], es mas limitada y presenta un menor desarrollo. Es precisamente
en este marco que los autores han llevado a cabo algunos
desarrollos de deteccion de anomalas en redes basados
en tecnicas multivariantes, los cuales han evidenciado una
alta potencialidad [11].
tesis y Objetivos
II. VERITAS: Hipo
La metodologa desarrollada en [11] ofrece una solucion
prometedora para los tres primeros retos de los sis-
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
2
81
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
I.
INTRODUCTION
the integration with the cloud platform and the MAS. Finally,
last section contains the conclusions.
II. CLOUD-BASED SECURITY SERVICES
Under the frame of DoyFe.es project, a set of services has
been developed in order to guarantee the authentication,
integrity and non-repudiation, but also other open issues such
as availability, confidentiality and change control. To do so,
three main services have been created:
Transmission and signed backup of emails. An active
inbox model is used to facilitate the usability of the
system. The process is very easy, because the end-user
sends the email normally and only has to put in copy a
special email of the platform (doyfe@doyfe.es). The
processing includes the signing, timestamped and the
storage of the email data (content, dates, addresses,
headers, attachments, images, etc.).
Transmission and signed backup of web content. The
process of tracking (signing and storage) of web content
is more complex because the web pages usually include
related contents (i.e. images, style sheets, scripts, etc.).
So, it is needed not only to process the main content, but
also al related content and all exchanges of request and
responses.
Sign of photographs. The process of tracking
photographs is different because it is not only necessary
to sign the taken photography by a mobile phone, but also
geolocalize it. A second photography with the frontal
camera is taken in order to know who is the person that
takes the photography. To do so, the user has to install a
specific APP. In this case they are signed into the mobile
phone. To do so, it is necessary to exchange information
between the cloud platform and the phone about the
security certificate because the photograph is signed on
the smartphone.
http://www.doyfe.es/
82
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
Evidence
Organization
Global
Supervisor
Signing
Manager
Service
Organization
Notary
Certificate
Manager
Digital
Repository
(FSS&OSS)
Service
Monitor
Service
Manager
External Layer
DoyFE
Front-end
Web Browser
(in-a-browser)
Global
Manager
Signing y
timestamping
Certification
authority
Local
Manager
Resource
Organization
Mobile
Application
Hardware
Manager
SaaS
iMap Control
Local
Monitor
MAS
Files
IV. CONCLUSIONS
Documents
PaaS
Environment
Are Storage
Network
MAS
Adaptive
Algorithms
Load
balancing
Documental
database
Security
Virtualization Layer
Physical Layer
Environment
Internal Layer
[3]
[4]
[5]
83
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
1
Abstract We introduce the notion of Asymmetric Programmable Hash Functions (APHFs), which adapts Programmable Hash Functions, introduced by Hofheinz and
Kiltz at Crypto 2008. We show that APHFs are surprisingly powerful objects. Using them we indeed obtain:
(1) the first linearly-homomorphic signature (in the standard model) whose public key is sub-linear in both the
dataset size and the dimension of the signed vectors; (2)
short signatures (in the standard model) whose public key
is shorter than those by Hofheinz-Jager-Kiltz from Asiacrypt 2011, and essentially the same as those by Yamada,
Hannoka, Kunihiro, (CT-RSA 2012).
I. Introduction
Programmable Hash Functions (PHFs) were introduced
by Hofheinz and Kiltz [1] as an information theoretic
tool to mimic the behavior of a random oracle in finite groups. In a nutshell, a PHF H is an efficiently computable function that maps suitable inputs (e.g., binary
strings) into a group G, and can be generated in two different, indistinguishable, ways. In the standard modality, H hashes inputs X into group elements H(X) G.
When generated in trapdoor mode, a trapdoor allows one
to express every output in terms of two (user-specified) elements g, h G, i.e., one can compute two integers aX , bX
such that H(X) = g aX hbX . Finally, H is programmable in
the sense that it is possible to program the behavior of H
so that its outputs contain (or not) g with a certain probability. More precisely, H is said (m, n)-programmable if for
all disjoint sets of inputs {X1 , . . . , Xm } and {Z1 , . . . , Zn },
the joint probability that i, aXi = 0 and j, aZj 6= 0 is
significant (e.g., 1/poly()). Programmability turns out
to be particularly useful in several security proofs. For
instance, consider a security proof where a signature on
H(X) can be simulated as long as aX = 0 (i.e., g does not
appear) while a forgery on H(Z) can be successfully used
if aZ 6= 0 (i.e., g does appear). Then one could rely on an
(m, 1)-programmability of H to hope that all the queried
messages X1 , . . . , Xm are simulatable, i.e., i, aXi = 0,
while the forgery message Z is not, i.e., aZ 6= 0. PHFs
essentially provide a nice abstraction of the so-called partitioning technique used in many cryptographic proofs.
II. Our Contribution
Asymmetric Programmable Hash Functions. We
introduce the notion of asymmetric programmable hash
This is an extended abstract based on an earlier article which
c IACR 2015.
appears in the proceedings of CRYPTO 2015,
84
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
2
85
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
platon.kotzias@imdea.org, srdjan.matic@unimi.it,
richard.rivera@imdea.org, juan.caballero@imdea.org
The full version of this paper will appear in the Proceedings of the 2015 ACM SIGSAC Conference on Computer and
Communications Security.
AbstractCode signing is a solution to verify the integrity
of software and its publishers identity, but it can be abused
by malware to look benign. This work performs a systematic
analysis of Windows Authenticode code signing abuse, evaluating
the effectiveness of existing defenses by certification authorities.
We build an infrastructure that automatically analyzes signed
malware, classifies it into operations, and produces a blacklist of
malicious certificates. We evaluate it on 350 K malware samples
from 2006-2015.
Our analysis shows the constant increase of signed malware
over time and that CA defenses such as identity checks and
revocation are not currently effective. Up to 97% of the signed
malware uses CA-issued certificates and only 15% of those
certificates are revoked. Our generated blacklist is 9x larger than
current ones. We analyze the code signing infrastructure of the
largest operations and show how they evolve over time, using
multiple identities and leveraging the lack of CA synchronization
to move from one CA to another. We also identify a design issue
in Authenticode where timestamped signed malware successfully
validates even after the revocation of their code signing certificate.
We propose hard revocations as a solution.
I. I NTRODUCTION
Malicious software (i.e., malware) is software that most
users will not want to install consciously on their computers. It
includes clearly malicious software (e.g., trojans, ransomware,
keyloggers) as well as potentially unwanted programs (PUP)
such as adware and spyware. Publishers of malicious software
are always looking for ways to make their code look benign
in order to convince the user to install it and avoid detection.
One such way is code signing, where the software is distributed
with a digital signature which, if valid, certifies the integrity
of the software and the identity of the publisher. Signed code
looks more benign and is often assigned higher reputation by
security products, e.g., reputation engines [7]. In Windows,
properly signed application code avoids scary warnings when
a user executes it and is assigned higher reputation when
downloaded through Internet Explorer. Furthermore, kernelmode code is required to be signed. Aware of these benefits
attackers are increasingly leveraging signed code for their
goals, e.g., for launching notorious targeted attacks [2][4].
To sign Windows-based malware, publishers need to obtain
a valid code signing certificate from a Certification Authority
(CA). This should pose a barrier for malicious software, since
86
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
87
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
I.
INTRODUCCIN
88
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
[13]
[14]
89
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
1
I. I NTRODUCTION
Group key establishment protocols are a fundamental cryptographic building block allowing n 2 participants to agree
upon a common secret key. It is usually assumed that these participants hold both long-term secrets, which are typically used
for authentication and ephemeral secrets, which are sessionspecific randomly generated values that provide enough entropy for the key to be indistinguishable from random in some
sense. Different security models have tried to capture accordingly the effect of leaking long-term keys, ephemeral keys or
values related to them ([2], [9], [10]). In this paper we adapt
the two-party model from [1] to the group setting, arguing why
our model is strictly stronger than previously proposed ones.
For the certificateless case we propose a security model for
the group setting, based on the two-party model from [13] and
compare it to the previous proposal from [15].
II. S TRONG SECURITY FOR GROUP KEY EXCHANGE
We sketch here our augmented security model which is a
modification of the model of Bohli et al [6], which in turns
builds in previous models [3], [4], [5], [11]. Our model differs
from previous ones in that it treats separately the session state
(state) and the session ephemeral keys (rand) from a given session, following the rationale from [7].
At this, users are modeled as probabilistic polynomial time
(ppt) Turing machines. Each user U U may execute a polynomial number of protocol instances in parallel. To refer to
instance si of a user Ui U we use the notation si i (i N).
Protocol instances. A single instance si i can be taken for
a process executed by Ui . To each instance we assign seven
variables , informally described next :
s
usedi i indicates whether this instance is or has been used for
a protocol run;
s
statei i keeps the internal state of the Turing machine that
executes the protocol;
s
randi i keeps the session-specific atomic secret values
typically values generated uniformly at random which will
be referred to as ephemeral keys. More precisely, these are any
90
JNIC2015 Quinta sesion: Artculos cortos - Seguridad en Redes, ataques, contramedidas y criptografa
2
[1] F. Bergsma and T. Jager and J. Schwenk, One-Round Key Exchange with
Strong Security: An Efficient and Generic Construction in the Standard
Model, Public-Key Cryptography PKC 2015, Lecture Notes in Computer Science, vol. 9020, 2015 pp.477494.
III. C ERTIFICATELESS GROUP KEY EXCHANGE
[2] E. Bresson and M. Manulis, Securing Group Key Exchange Against
Strong Corruptions and Key Registration Attacks, in Int. J. Appl. CrypWhen protocols are based on certificateless public key cryptol.,vol. 1,n. 2, 2008, pp.91107.
tography, the long-term key is comprised of two distinguished [3] M. Bellare and P. Rogaway, Entity Authentication and Key Distribution,
in Advances in CryptologyCRYPTO 93, Lecture Notes in Computer
values. The security model we propose, based on [13], is as
Science, Vol 773, 1993, pp. 232249.
above except for the following:
[4] M. Bellare and P. Rogaway, Provably Secure Session Key Distribution
Adversarial capabilities. Now, we include oracles modelling
The Three Party Case, in Proceedings of the 27th Annual ACM Symposium on Theory of Computing, STOC95, ACM Press, 1995, 5766.
the leakage of the long-term keys separately. Thus, the oracle
[5]
M. Bellare, D. Pointcheval and P. Rogaway, Authenticated Key Exchange
Corrupt is replaced by the following oracles:
Secure Against Dictionary Attacks, in Advances in Cryptology EU RevealIDBasedSecret(Ui ) Returns the ID-based long term
ROCRYPT00, Lecture Notes in Computer Science, Vol 1807, 2000, pp.
139155.
key hold by Ui .
[6] J.M. Bohli, M.I. Gonzalez Vasco and R. Steinwandt, Secure Group Key
RevealSecretValue(Ui ) Yields the long term secret value
Stablishment Revisited, International Journal of Information Security,
generated by Ui corresponding to its certificateless public key.
2007, vol. 6, n. 4, pp. 243254.
[7]
C. Cremers, Session-state Reveal is stronger than Ephemeral Key Reveal:
Moreover, to consider the corruption of the key generation
Attacking the NAXOS Authenticated Key Exchange Protocol, in Applied
center we also include the following oracle:
Cryptography and Network Security. Springer Berlin Heidelberg, 2009.
pp. 2033.
RevealMasterKey Returns the master secret key.
The adversary is also allowed to replace certificateless public [8] C. Cremers and M. Feltz, Beyond eCK: perfect forward secrecy under actor compromise and ephemeral-key reveal, in Designs, Codes and Crypkeys, which we model as follows:
tography, vol. 74, n. 1, 2015, pp. 183218.
[9]
M. C. Gorantla and C. Boyd and J.M. Gonzalez Nieto, Modeling Key
ReplacePublicKey(Ui , pk) This replaces users certificateCompromise Impersonation Attacks on Group Key Exchange Protocols,
less public key by pk chosen by the adversary. This new public
in Public Key Cryptography PKC 2009, Lecture Notes in Computer Scikey will be used for future communication and computations.
ence, vol. 5443, 2009, pp. 105123.
Freshness. We require a certificateless key establishment [10] M. C. Gorantla and C. Boyd and J.M. Gonzalez Nieto and M. Manulis,
Generic One Round Group Key Exchange in the Standard Model, in Inscheme to be secure as long as each party involved in a sesformation, Security and Cryptology ICISC 2009, Lecture Notes in Comsion has at least one uncompromised secret. To define freshputer Science, vol. 5984, 2010, pp. 115.
ness in this setting we divide the queries regarding the secrets [11] J. Katz and M. Yung, Scalable Protocols for Authenticated Group Key
Exchange in Advances in Cryptology CRYPTO03, Lecture Notes in
into three types:
Computer Science, Vol 2729, 2003, pp. 110125.
queries on the ID-based part of the scheme: RevealMasterKey [12] B. LaMacchia and K. Lauter and A. Mityagin, Stronger Security of
Authenticated Key Exchange, in Provable SecurityProvSec07, Lecture
and RevealIDBasedSecret.
Notes in Computer Science, vol. 4784, 2007, pp. 116.
queries on the public key part of the scheme: RevealSecretValue[13] G. Lippold and C. Boyd and J. M. Gonzalez Nieto, Strongly Secure
Certificateless Key Agreement, in Pairing-Based CryptographyPairing
and ReplacePublicKey.
2009, Lecture Notes in Computer Sciences, vol. 5671 , 2009, pp. 206
queries on the keys of a particular session: RevealRand.
230.
For a session to be fresh in this setting, the last two condi- [14] C. Swanson and D. Jao, A Study of Two-Party Certificateless Authenticated Key-Agreement Protocols, in Progress in Cryptology
tions in the freshness definition above are replaced by:
sj
INDOCRYPT 2009, Lecture Notes in Computer Sciences, 2009, pp. 57
s
If i i and j are partnered and A called queries on both
71.
sj
the ID-based part and the public key part of j , then any mes- [15] J. Teng and C. Wu, A provable authenticated certificateless group key
agreement with constant rounds, in Journal of Communications and Nets
s
sage sent to si i on behalf of j j must indeed come from j j
works, vol 14, n. 1, 2012, pp. 104110.
si
intended to i .
[16] J. Zhao, G. Gu and M.C. Gorantla, Stronger Security Model of Group
sj
si
Key Agreement, in Proceedings of the 6th ACM Symposium on Informa no session U partnered with U has been asked all three
j
i
tion, Computer and Communications Security. ACM, 2011. pp. 435440.
91
JNIC2015
I.
92
JNIC2015
93
JNIC2015
Deteccin de vulnerabilidades
3.
4.
5.
6.
94
JNIC2015
IV. ANALIZANDO
FUNCIONES
INSEGURAS
DETECTADAS EN REPOSITORIOS UBUNTU
En este apartado se destacan los resultados obtenidos al
procesar y analizar una serie de funciones potencialmente
inseguras, no recomendadas, procesando 45.153 paquetes de
los repositorios configurados en Ubuntu 14.10 (otras funciones
estn en proceso de estudio).
-
Funcin strcpy.
Funcin sprintf.
- La funcin strcpy()
Esta funcin permite realizar una copia de un buffer a otro. Esta
situacin provoca que si el buffer de origen es mayor que el
buffer de destino se desemboque un desbordamiento del buffer
destino. La explotacin de este tipo de vulnerabilidades puede
provocar la ejecucin de cdigo arbitrario por parte de un
usuario malicioso.
- La funcin sprintf()
Esta funcin permite imprimir de manera formateada un buffer.
Si el buffer de destino es menor que el de origen se provocar
un desbordamiento de buffer.
En algunas situaciones el uso inapropiado de las funciones
anteriores puede provocar que otras funciones desemboquen en
situaciones de riesgo para el usuario dando lugar a otras
vulnerabilidades como puede ser la denominada Use After
Free.
95
Funcin scanf
JNIC2015
Funcin gets
char s[8];
printf(Introduce tu nombre, por favor: );
gets(s);
En el caso de que la variable s reciba un tamao de octetos
superior al buffer que tiene reservado, en este ejemplo 8 octetos,
se producir un desbordamiento. En funcin de dnde y cmo
se ejecute este ejemplo se podra o no ejecutar cdigo arbitrario.
V. DETECTANDO APLICACIONES VULNERABLES
EN UBUNTU
En el apartado anterior se ha dejado de manifiesto que la
presencia de funciones no recomendadas es, por desgracia, ms
habitual de lo deseable. No obstante, que una funcin sea
potencialmente insegura no implica necesariamente que el
software que la contenga tenga una vulnerabilidad que pueda
ser explotada, quizs validaciones previas contrarrestan los
posibles inconvenientes de usar dicha funciones. Por este
motivo, en este apartado, dentro de esta investigacin en curso,
se va analizar si entre ese enorme nmero de funciones no
recomendables puede detectarse alguna que facilite la
explotacin. En nuestra investigacin, entendemos por
explotacin alguna vulnerabilidad que afecte al funcionamiento
habitual del programa, por ejemplo, denegacin de servicio, o
ejecucin de cdigo arbitrario.
En este artculo se centran los esfuerzos en la funcin no
recomendable strcpy, su uso es masivo con 899.500 llamadas,
y la posibilidad de detectar fallos tan tpicos como buffer
overflow. De hecho, existen algunas casusticas del uso de la
funcin strcpy que podra, si no existen validaciones
adicionales, establecer un vector de ataque para cualquier
usuario con conocimientos mnimos de explotacin de
vulnerabilidades. Por ejemplo, se pueden observar 13.880
funciones strcpy que reciben como parmetro argv[], es
decir se introduce el parmetro desde teclado a la funcin
strcpy, estas funciones se concentran en 2.923 paquetes, o 1347
96
JNIC2015
flasm
bibcursed
dnsmasq -> dhcp_release
bwbasic
acedb-other-belvu
abcmidi-yaps
97
VI. CONCLUSIONES
Esta investigacin presenta la plataforma diseada e
implementada para el anlisis del cdigo fuente de los paquetes
software presente en repositorios Linux. En este artculo se
analizan los detalles centrando el uso de la plataforma en los
repositorios configurados por defecto en Ubuntu 14.10, una de
las distribuciones de usuarios ms difundida.
Se demuestra la facilidad para detectar funciones
potencialmente inseguras, en el estado actual las funciones ms
sencillas y tpicas. De todas las funciones detectadas, por
cuestin de tiempo, se centran los esfuerzos en una de ellas,
strcpy, y se intenta analizar si son vulnerables centrndonos en
un tipo de explotacin concreta (la ms popular), los ataques
por buffer overflow.
Nuestra investigacin destaca que sin recurrir a procedimientos
de anlisis complejos es posible demostrar que hasta las
cuestiones ms sencillas de codificacin segura no son
analizadas mnimamente por la comunidad Ubuntu. Se
demuestra que existen actualmente aplicaciones que facilitan
introducir fallos de seguridad al sistema operativo por defecto
(los fallos de seguridad sern realmente explotados en funcin
de las contramedidas que se establezcan en cada sistema
operativo). El escenario ms bsico sera fallos de negacin de
servicio y el ms grave, si se puede aprovechar el buffer
overflow, ejecucin de cdigo.
Actualmente se est trabajando en analizar y probar, uno a uno,
los paquetes sospechosos, documentando y registrando (CVE,
OSVDB, etc.) los hallazgos mediante una poltica de
responsable disclosure que facilite a la comunidad Ubuntu
mejorar la calidad del software desarrollado. Del mismo modo
se est verificando si los fallos descubiertos se mantienen y
consumen, por reutilizacin de cdigo, en otros sistemas
operativos Unix/Linux. De momento, y en el caso particular del
sistema operativo Ubuntu, no se ha detectado ninguna
herramienta que permita ejecucin de cdigo arbitrario evitado
la configuracin por defecto de mitigacin de Ubuntu (DEP
Data Execution Prevention).
JNIC2015
REFERENCIAS
[1]
[2]
[3]
Shellshock bug.
https://en.wikipedia.org/wiki/Shellshock_%28software_bug%29
98
JNIC2015
software.
Por otro lado, est el tipo de interfaz, encargado de conocer
la estructura y el comportamiento de las interfaces que forman
el sistema, sabiendo qu acciones bsicas realiza cada interfaz
manteniendo la lgica interna del programa.
Y por ltimo, destaca el tipo de ingeniera inversa de datos,
que se aplica sobre la parte de cdigo que contiene las bases de
datos para reconocer su estructura y cmo se organizan los
datos en el programa. El proceso de ingeniera inversa [2] se
puede ver en la Fig 2.
I. INTRODUCCIN
La ingeniera inversa [1] estudia un producto, terminado o
con cierto grado de completitud, con el fin de obtener detalles
acerca de su diseo y/o funcionamiento, al contrario que el
proceso clsico de ingeniera o ingeniera directa.
Por tanto, es un proceso que funciona hacia atrs, pudiendo
analizar software y productos electrnicos sobre todo, aunque
tambin se puede utilizar como herramienta de anlisis sobre
cualquier otro producto de ingeniera.
Hay que destacar que en el proceso de ingeniera inversa el
sistema o producto analizado no debe cambiar, sino que se
produce informacin acerca de su funcionalidad.
99
JNIC2015
II. TCNICAS
A la hora de desbloquear un programa, se puede optar por
parchear el cdigo, de forma que no se haga la comprobacin
pertinente de la clave, o conseguir una clave vlida que se
verifique en el programa. En este captulo se van a ver estas
tcnicas [1], aunque hay muchas ms.
A. Parches
Una de las tcnicas ms utilizadas para superar la proteccin
de algunos programas es el uso de parches de cdigo. Su
principal objetivo es cambiar el cdigo del programa para
variar su flujo natural de ejecucin, con el fin de que ciertas
comprobaciones u operaciones no se lleven a cabo.
La manera de llevar a cabo un parche es el cambio de
instrucciones del cdigo original. La forma ms habitual de
hacerlo es utilizar un depurador como OllyDbg. Sin entrar en
mucho detalle, ya que se ver el depurador en el prximo
captulo, es un tipo de software que permite controlar la
ejecucin del programa objetivo, viendo las instrucciones que
se ejecutan y el estado de las principales variables.
Los cambios que se suelen llevar a cabo son modificaciones,
antes o despus de comparaciones o test que se hacen en el
programa original o variaciones de los tipos de saltos a
subrutinas (o insertando otros nuevos) que se dan en el cdigo.
Los mtodos frecuentes para saber en qu lugar aplicar estos
cambios es mediante la bsqueda de cadenas que puedan ser la
clave o la comprobacin de APIs que ofrecen las bibliotecas,
operaciones que suelen ser las encargadas de verificaciones.
Estos cambios que se hacen son permanentes y se mantendrn
siempre que se ejecute el programa.
Otra opcin para realizar cambios pasajeros en los
programas es mediante el uso de Loaders, programas que
cargan ejecutables en memoria para poder realizar cambios en
ejecucin, volviendo el programa al estado original al finalizar
la ejecucin.
B. Obtencin De Clave
Como se ha mencionado antes, en numerosas ocasiones los
programas que se adquieren en el mercado estn protegidos
con una clave de uso que hay que introducir al iniciar el
programa, ya sea al principio de su uso o despus de un
perodo de tiempo si este tiene una versin de prueba.
En algunas situaciones, esta solicitud de clave se puede
parchear. Por ejemplo, las versiones con un perodo de prueba
suelen utilizar ciertas APIs de chequeo del sistema como son
GetLocalTime o GetSystemTime, entre otras. Con ellas se
llevan a cabo las comprobaciones de cunto tiempo lleva el
usuario utilizando el programa y ver si se ha cumplido ya el
tiempo de prueba del mismo. Buscando en el cdigo estas
APIs, es posible cambiar el flujo para que no se haga la
comprobacin o para que se haga de forma incorrecta.
Sin embargo, esto no siempre es posible, es muy complicado
o simplemente se quiere obtener la clave o serial para no tener
que parchear el programa, que en el futuro puede tener algn
problema. Por todo ello, en muchas ocasiones se estudia el
cdigo del programa mediante un depurador como OllyDbg
para hallar la clave o serial. Esto es un nmero o texto (una
cadena) que es idntico para todos los usuarios y que
normalmente tiene que ir embebido en el propio cdigo.
Para encontrarlo, lo normal es buscar en el cdigo las
cadenas con patrones que pueden ser una clave del producto. Si
hay muchas cadenas (algo que ocurre con bastante asiduidad)
lo que se hace es ir avanzando en el programa con el depurador
para ver qu cadena es la que finalmente se compara al valor
que introduce el usuario y qu operaciones se hacen sobre ella.
C. Elaboracin De Generador De Claves
En la seccin anterior, el programa tena una nica clave,
igual para todos los usuarios. En este caso, el problema es que
la clave para cada uno de los usuarios es distinta o hay multitud
de claves vlidas, existiendo un algoritmo de claves que se
encarga de verificarlas en el programa. Por lo tanto, es posible
crear un generador de claves o keygen mediante un algoritmo
que fabrique claves correctas.
Para conseguir crear este algoritmo que pueda generar claves
vlidas hay que realizar un estudio de ingeniera inversa puro,
para ver cmo se va comprobando y testando el nmero o
cadena de texto de registro introducido en el programa. Hay
una gran variedad de algoritmos utilizados para generar claves,
cuya complejidad es diferente en cada caso, dependiendo del
nmero de operaciones.
Los algoritmos que se aplican pueden ser totalmente
independientes del usuario, como por ejemplo utilizar nmeros
que sean mltiplos de otro o que mantengan cualquier otro tipo
de relacin entre ellos, mientras que hay otros algoritmos que
utilizan algn dato especfico de cada usuario como parte del
clculo del nmero o cadena de registro, como puede ser el
nombre de este usuario o algn dato nico, como el nmero de
identificacin.
III. HERRAMIENTAS
Para llevar a cabo las tcnicas anteriores, en todas se tiene
algo en comn: es necesario conocer el cdigo del programa
porque hay que estudiarlo.
Sin embargo, los programas que se intentan desproteger son
programas de los que solo se tiene un ejecutable compilado y
listo para funcionar, por lo que no se tiene acceso al cdigo de
forma directa.
Debido a ello, entran en juego las herramientas de ingeniera
inversa [3], que ayudan a obtener y estudiar el cdigo de estos
ejecutables compilados.
Hay diferentes herramientas que se pueden utilizar en el
campo de la ingeniera inversa, algunas muy especficas, como
las herramientas CASE [4] o herramientas de insercin de
fallos, y otras ms generales, como los desensambladores.
Para el caso de obtencin de claves para desbloquear
programas, hay dos herramientas que marcan la diferencia
respecto a las dems y que son las ms usadas para este tema:
el desensamblador y el depurador. A continuacin se van a
estudiar estas dos herramientas fundamentales.
A. Desensamblador
Como su propio nombre indica, los desensambladores son
herramientas destinadas a convertir cdigo mquina en
lenguaje ensamblador, un lenguaje legible para analizar, y as
revelar las instrucciones que son usadas en el cdigo del
programa. Este cdigo mquina es especfico para cada
arquitectura de hardware.
Cualquier desensamblador debe hacer ciertas suposiciones a
fin de presentar el cdigo que se intenta desensamblar de
100
JNIC2015
101
JNIC2015
102
JNIC2015
103
JNIC2015
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
104
JNIC2015
I. I NTRODUCCI ON
El analisis y deteccion de software malicioso (malware) es
un a rea de investigacion muy activa, especialmente en el caso
de la plataforma Android, donde, debido a la abundancia de
dispositivos y aplicaciones disponibles, existe un gran numero
de aproximaciones y tecnicas descritas en la bibliografa.
De un modo general se diferencian dos grandes aproximaciones a la hora de enfrentar el problema del analisis de
malware [5]. En primer lugar estan las tecnicas basadas en el
analisis estatico de determinadas caractersticas de la propia
aplicacion bajo estudio, bien en forma de codigo ejecutable o
de su codigo fuente original. En el otro gran grupo estan las
tecnicas de analisis dinamico, o basado en el comportamiento,
que extraen informacion mediante la monitorizacion de la
aplicacion y su contexto, durante su ejecucion en un entorno
controlado. Por otra parte, en cuanto a la deteccion de malware
propiamente dicha, tambien hay dos grandes familias de
metodos. Los metodos basados en firmas emplean una base de
datos con muestras especficas de malware conocido a modo
de firmas identificativa. Los metodos heursticos o basados
en anomalas, emplean un modelo, normalmente construido
mediante tecnicas estadstica y/o de aprendizaje automatico,
capaz de definir y diferenciar el comportamiento benigno y
aislarlo del malicioso.
La propuesta de marco de analisis y deteccion de malware
en la que estamos trabajando puede englobarse en este segundo
tipo, aunque presenta ciertas caractersticas que la aproximan
a los metodos basados en firmas. Nuestro sistema emplea un
esquema de razonamiento y aprendizaje basado en la analoga,
denominado Razonamiento Basado en Casos [6]. Sobre esta
base conformamos un marco donde se pueden integrar de
forma conveniente diversas tecnicas de analisis, tanto estaticas
como dinamicas, que usa este esquema de razonamiento por
105
JNIC2015
Recuperacion de informacion
106
JNIC2015
Adicionalmente, se incluye a modo de muestra un analizador mixto que hace uso de la API publica del servicio
VirtusTotal [3]. Este analizador cuantifica el nivel de
peligrosidad de la muestra a partir de los resultados
devueltos por esta API y caracteriza la muestra de cara
a su indexacion tomando nota los antivirus que declaran
a la muestra como malware y el tipo de malware que
le vinculan. Idealmente, este analizador sera el u ltimo
recurso en caso de que el ciclo CBR iterativo no llegara a
alcanzar un decision concluyente, dado que la invocacion
remota de la API de VirusTotal lo hace muy costoso.
IV.
para Android desarrollado. El trabajo realizado hasta el momento ha sido fundamentalmente de desarrollo y validacion
de la herramienta, no habiendose realizado aun pruebas de
rendimiento exhaustivas sobre colecciones de aplicaciones
Android de referencia. Tampoco se ha realizado un ajuste
de parametros (numero maximo de casos similares a considerar, esquema de ponderacion a utilizar en Lucene [tf-idf vs.
BM25], analizadores semilla con los que inicializar el ciclo
CBR, etc), ni su comparacion con otras propuestas en el campo
del analisis de malware en Android.
En el proceso de validacion ha hecho uso de la coleccion
de muestras de malware Android recopiladas por el equipo del
Android Malware Genome Project) [8], junto con un conjunto
de alrededor de 180 muestras de aplicaciones legtimas recopiladas por los autores. Las pruebas se han centrado en comprobar el efecto de los distintos analizadores en la categorizacion
de las muestras, pero no son suficientemente exhaustivas, ni
comparables con los resultados de otros sistemas, dado que el
conjunto de datos no es totalmente estandar.
El trabajo futuro inmediato es realizar el estudio y ajuste
de los parametros del sistema y evaluar su rendimiento en
comparacion con los sistemas que conforman el estado del
arte actual en la investigacion sobre deteccion de malware en
Android. A medio plazo, se pretende incorporar analizadores
que empleen aproximaciones dinamicas, con la intencion de
emplearlos en los casos donde los analisis estaticos actuales
no sean capaces de concluir una categorizacion definitiva con
suficiente credibilidad.
R EFERENCIAS
[1] Androguard, Reverse engineering, Malware and goodware analysis of
Android applications, en lnea, https://github.com/androguard/androguard,
(ultimo acceso 9/7/2015)
[2] Apache Lucene, en lnea, https://lucene.apache.org/, (ultimo acceso
9/7/2015)
[3] Virus Total, en lnea, https://www.virustotal.com/, (ultimo acceso
9/7/2015)
[4] I. Santos, X. Ugarte-Pedrero, F. Brezo, P. G. Bringas, NOA: An information retrieval based malware detection system, Computing and
Informatics, vol. 32, pp. 1001-1030, 2013
[5] M. Egele, T. Scholte, E. Kirda, and C. Kruegel, A survey on automated
dynamic malware-analysis techniques and tools, ACM Computing Surveys, vol. 44, no. 2, pp. 6:16:42, 2012.
[6] A. Aamodt, E. Plaza. Case-Based Reasoning: Foundational Issues, Methodological Variations, and System Approaches, Artificial Intelligence
Communications vol. 7, no. 1, 39-52, 1994.
[7] G. Salton , A. Wong , C. S. Yang,A vector space model for automatic
indexing, Communications of the ACM, v.18 n.11, pp. 613-620, 1975
[8] Y. Zhou, X. Jiang, Dissecting Android Malware: Characterization and
Evolution, Proc. of the 33rd IEEE Symposium on Security and Privacy.
San Francisco, CA, 2012
DE LA H ERRAMIENTA Y T RABAJO
VALIDACI ON
F UTURO
107
JNIC2015
Marcelo Bagnulo
I. Introduction
The indisputable success of the Internet and, consequently, the increasing demand from end-users for more
secure and faster access to the online services drives the
need for continuous innovation. Modern networks often rely on dedicated hardware components generically
dubbed middleboxes to perform advanced processing functions like, for example, enhancing application performance, traffic shaping, optimizing the usage of IPv4 address space or security.
One major criticism of middleboxes is that they might
filter traffic that does not conform to expected behaviors,
thus ossifying the Internet and rendering it as a hostile
environment for innovation [3].
This does not mean that it is impossible to deploy new
protocols, but that in order to ensure success it is imperative to first understand the interaction of the proposed
solutions with the middleboxes active along the path. Recent studies [5],[4] on middleboxes behavior attempt to
provide such information. However, the existing measurements use only a very small number of vantage points,
e.g., in [5] only 142 measurement points are used.
Until recently, large-scale Internet measurement infrastructures necessary to perform this type of analysis were
available only to large Internet players, such as Google,
Akamai and large ISPs. Consequently, the lack of public
access to such resources makes it hard to repeat or verify
their results.
The emerging sea of crowdsourcing (such as the Amazon
Mechanical Turk, Microworkers and others) can provide
an accessible alternative to perform large scale Internet
measurements. By expanding the traditional crowdsourcing focus from the human element to use a diverse and
numerous group of end-user devices as measurement vantage points [2] we can leverage on crowdsourcing platforms
to run Internet wide measurements.
In this paper, we show how to make informed protocol
design choices by using a novel methodology for performing large scale Internet measurements, using a crowdsourc-
Andra Lutu
Simula Research Laboratory
108
JNIC2015
TABLE 1: Results
table
Analysis
Port 80 (%)
Aggregated
Fixed
Mobile
Proxy
Non-proxy
16,5
9
25
70
10
5,8
6,95
4,54
4,23
6,8
Fixed Line
SYN(%) NO SYN(%)
96,8
3,2
88,3
11,7
Mobile
SYN(%) NO SYN(%)
36
64
27,7
72,3
22,2
77,8
12,7
87,3
9,6
90,4
36,4
63,6
available
on
109
JNIC2015
Computer Security Lab (COSEC), Universidad Carlos III de Madrid, Leganes, Madrid
{jfuentes, lgmanzan}@inf.uc3m.es
n
I. Introduccio
El uso de las Tecnologas de la Informaci
on y de la Comunicacion (TIC) se ha generalizado en el da a da de empresas y usuarios de internet. Esta situaci
on, aunque por
un lado facilita el intercambio de grandes vol
umenes de informaci
on, conlleva al mismo tiempo importantes riesgos
y amenazas [1].
Uno de los pilares b
asicos de cualquier estrategia de ciberseguridad lo constituyen las tecnicas de cifrado, que tienen como objetivo principal asegurar la confidencialidad
de la informaci
on, de manera que un atacante no pueda
acceder a los datos originales.
Dentro de esas tecnicas, se encuentran las de clave
simetrica, donde los dos extremos de la comunicacion utilizan la misma clave (mencionada habitualmente como clave
secreta), y las de clave asimetrica, que utilizan durante su
ejecuci
on un par de claves (a las que se suele denominar
clave p
ublica y privada) [2]. En ambos casos, el resultado
de cifrar cualquier tipo de informaci
on es una secuencia
binaria aparentemente aleatoria y cuya longitud depender
a del algoritmo utilizado.
Los algoritmos de clave simetrica tienen como ventaja sobre los de clave asimetrica su mejor rendimiento y
menor longitud de clave, debido principalmente a que las
operaciones matematicas empleadas en ese caso son mas
sencillas que las equivalentes utilizadas en los algoritmos
de clave asimetrica. En cuanto a los principales algoritmos
y funciones de clave simetrica, los mas conocidos son DES
y su sucesor AES [3].
La especificaci
on de AES describe c
omo cifrar bloques
de 128 bits empleando claves de 128, 192 o 256 bits, obteniendo como resultado un bloque cifrado de 128 bits [4].
Aunque empleando AES con cualquiera de los modos de
operaci
on recomendados [5] es posible cifrar cualquier da-
to, su utilizaci
on no permite garantizar el cumplimiento
de un requisito que, aunque parezca secundario, en determinados entornos es fundamental: la preservaci
on del
formato de los datos.
En el mundo empresarial y de las administraciones
p
ublicas existen circunstancias en las que, ademas de ser
necesario cifrar los datos, estos deben mantener el mismo
formato que los datos originales. Ello se debe principalmente a la necesidad de asegurar la compatibilidad con
las bases de datos y aplicaciones ya existentes, y que fueron dise
nadas para gestionar ciertos tipos de datos con
formatos predefinidos.
Obviamente, sera posible modificar dichas bases de datos y aplicaciones para que manejaran los datos cifrados
mediante, por ejemplo, el algoritmo AES, pero el coste
econ
omico y los plazos de modificacion para realizar tales
cambios aconsejan la b
usqueda de soluciones alternativas.
Y precisamente la mejor alternativa en esas situaci
on lo
constituye lo que en ingles se conoce como Format Preserving Encryption (FPE), o cifrado con preservaci
on del
formato.
Utilizando las tecnicas de FPE es posible, por ejemplo,
cifrar n
umeros de tarjetas de credito de manera que el
dato cifrado tambien sea un n
umero de tarjeta de credito,
o cifrar identificadores de DNIe de forma que el resultado
sea un DNIe distinto. Esto permite almacenar los datos
cifrados en bases de datos sin modificar su formato de
manera que, aunque su contenido sea hecho p
ublico, los
datos verdaderos no sean conocidos.
El presente trabajo tiene como primer objetivo realizar
una introduccion a las tecnicas de cifrado con preservaci
on del formato, la cual est
a recogida en la Seccion II.
La Secci
on III describe los procesos de estandarizacion en
este campo, mientras que la Seccion IV proporciona los
detalles de implementacion de uno de los algoritmos propuestos para su estandarizacion. Por su parte, la Seccion
V incluye un ejemplo completo de cifrado y descifrado
utilizando una implementacion Java del algoritmo anteriormente mencionado. Finalmente, la Seccion VI contiene
nuestras conclusiones junto con la identificacion de algunos potenciales problemas cuya solucion, al igual que la
implementacion del algoritmo en dispositivos con recursos
limitados, constituye un reto para los investigadores en el
campo de la ciberseguridad.
110
JNIC2015
n del formato
II. Cifrado con preservacio
Los orgenes de las tecnicas FPE pueden situarse en
1981, cuando se public
o la norma FIPS 74 [6] que contena un procedimiento basado en DES que permita que
el alfabeto de los mensajes en claro y los mensajes cifrados fuera el mismo. Posteriormente, en 1997, Smith y
Brightwell [7] ahondaron en la misma idea, refiriendose a
este concepto como datatype-preserving encryption debido a su utilizaci
on para preservar los tipos en las bases de
datos.
A pesar de la novedad que representaron esos documentos, en los dos casos mencionados el tratamiento no era
lo suficientemente profundo, por lo que suele considerarse que la primera contribuci
on consistente en este campo
fue la de Black y Rogaway [8], quienes se centraron en
c
omo cifrar un entero del rango {0, N 1} de manera que
el mensaje cifrado representara otro n
umero del mismo
rango.
Para resolver este problema, Black y Rogaway propusieron tres soluciones. El primer metodo, descrito por los
autores como prefix cipher, consista en realizar una permutacion de los n
umeros enteros del rango entre 0 y N 1.
Para ello, sugeran utilizar una funci
on de cifrado simetrico con una clave secreta aleatoria, de manera que se procesaran todos los n
umeros del rango y se ordenaran los
resultados (es decir, los mensajes cifrados) por orden alfabetico.
Por ejemplo, dados los n
umeros del 0 al 9, empleando
por sencillez en la explicaci
on la funci
on resumen SHA- 1
en lugar de una funci
on de cifrado simetrico con una clave
aleatoria, la ordenaci
on alfabetica de los res
umenes generara la secuencia 9, 4, 1, 3, 7, 5, 0, 6, 2 y 8, tal como
puede comprobarse con los res
umenes mostrados a continuacion, donde el prefijo 0x indica que la cadena situada
a continuacion est
a representada en formato hexadecimal.
0:0xB6589FC6AB0DC82CF12099D1C2D40AB994E8410C
1:0x356A192B7913B04C54574D18C28D46E6395428AB
2:0xDA4B9237BACCCDF19C0760CAB7AEC4A8359010B0
3:0x77DE68DAECD823BABBB58EDB1C8E14D7106E83BB
4:0x1B6453892473A467D07372D45EB05ABC2031647A
5:0xAC3478D69A3C81FA62E60F5C3696165A4E5E6AC4
6:0xC1DFD96EEA8CC2B62785275BCA38AC261256E278
7:0x902BA3CDA1883801594B6E1B452790CC53948FDA
8:0xFE5DBBCEA5CE7E2988B8C69BCFDFDE8904AABC1F
9:0x0ADE7C2CF97F75D009975F4D720D1FA6C19F4897
111
JNIC2015
un algoritmo de cifrado simetrico. Por otra parte, la seguridad el metodo basado en la estructura Feistel dependa
del n
umero de rondas, y no era un metodo indicado para cadenas de datos de poca longitud (como por ejemplo
las cadenas que representan el n
umero de una tarjeta de
credito).
La Tabla 1 muestra un resumen de las longitudes en
bits y en dgitos recomendables para cada una de las tres
propuestas. Los datos de dicha tabla fueron calculados
por Rerence Spies [9], quien ademas fue el investigador
que utilizo por primera vez la expresion format-preserving
encryption [10].
Metodo Tama
no en bits N
umero de dgitos
Metodo 1
120
16
Metodo 2
5063
1619
Metodo 3
40240
1280
Tabla 1: Comparativa de longitudes recomendadas.
n
III. Estandarizacio
Debido al interes y aplicabilidad de las tecnicas de cifrado con preservaci
on del formato, el National Institute
of Standards and Technology (NIST) inici
o el trabajo de
estandarizacion de estas tecnicas aprobando como esquema general el conocido como FFX, propuesto por Bellare,
Rogaway y Spies en 2010 [11].
Posteriormente, el 9 de junio de 2011 procedio a solicitar propuestas concretas de algoritmos de FPE que se
ajustaran a dicho modelo. De entre las recibidas, el NIST
incluyo tres en el primer borrador de su documento SP
800-38G [12], publicado en 2013. En concreto, las tres propuestas incluidas en dicho borrador fueron:
FFX[Radix] (denominado FF1 internamente en el documento), desarrollado por Bellare, Rogaway y Spies [13].
VAES3 (FF2 en el documento), propuesto por Joachim
Vance [14].
BPS (FF3 en el documento), presentado por Eric Brier,
Thomas Peyrin y Jacques Stern [15].
Tras la publicacion del borrador, el NIST anunci
o la
apertura de un perodo de comentarios, el cual finaliz
o el
3 de septiembre de 2013. De los comentarios recibidos, el
mas importante fue un analisis de VAES3 [16] que afirma
haber descubierto un ataque de texto plano escogido que
demostrara que la seguridad de esa propuesta es menor
de los 128 bits requeridos por el NIST. En el momento de
escribir esta contribuci
on, todava no se ha publicado la
versi
on definitiva del documento, desconociendose cuando
se realizar
a dicha publicacion.
En paralelo a las actividades del NIST, el American National Standards Institute (ANSI) inici
o un trabajo equivalente con la idea de generar dos est
andares relacionados con el FPE: X9.119 [17], publicado en 2013, y que
define los requisitos de seguridad mnimos para proteger
datos sensibles de tarjetas en las transacciones comerciales, y X9.124, centrado en las tecnicas FPE, y que todava
est
a en desarrollo, sin que exista informaci
on disponible
para el p
ublico interesado.
n
IV. Implementacio
Puesto que el est
andar X9.119 no permite su libre
distribuci
on, y no hay informacion p
ublica de la norma
X9.124, el borrador del documento SP 800-38G es el u
nico est
andar relacionado con las tecnicas FPE libremente
disponible para la comunidad academica.
Con el objetivo de realizar una implementacion software
de alguna de las tres propuestas incluidas en ese documento, VAES3 fue descartado debido al analisis recogido en
[16]. De las dos restantes, la propuesta elegida para su implementacion fue FFX[Radix] debido a que, a diferencia de
BPS, dispone de vectores de prueba con los que contrastar
que la implementacion realizada es correcta [18].
Tal como se describe en [12], dada una cadena de caracteres X de longitud n, representada en la base radix, una
cadena de bytes T , de longitud t (el componente tweak ) y
una clave de cifrado K a utilizar con el algoritmo AES, el
proceso de cifrado consiste en los siguientes pasos:
1. Calcular los valores u = n/2 y v = n u.
2. Obtener los elementos A = X[1 . . . u] y B = X[u +
1 . . . n] (es decir, A representa los primeros u caracteres
de la cadena X, y B el resto).
3. Calcular los valores b = v log2 (radix )/8 y d =
4b/4 + 4.
4. Generar el elemento P = [1]1 ||[2]1 ||[1]1 ||[radix ]3 ||[10]1 ||
[u mod 256]1 ||[n]4 ||[t]4 , donde la expresion [x]y se utiliza
para representar una cadena de y bytes todos ellos con el
valor numerico x, y el smbolo || indica la operaci
on de
concatenaci
on.
5. Comenzando con i = 0, repetir los siguientes pasos
mientras i < 10, incrementando en cada iteraci
on el valor
de i en una unidad:
a) Generar el elemento Q = T ||[0]tb1 mod 16 ||[i]1 ||
[numradix (B)]b , donde numradix (x) es una funci
on que sirve para calcular el valor numerico asociado a la representacion x en la base radix.
b) Obtener el elemento R = PRF(P ||Q), donde PRF(x)
es una funci
on que genera una salida de 128 bits a partir
de una entrada cuya longitud sea m
ultiplo de 128, para lo
cual utiliza varias iteraciones de la funci
on de cifrado AES
(para mas detalles, consultar [12]).
c) Identificar el elemento S como los primeros d bytes
de la cadena R||AESK (R [1]16 )||AESK (R [2]16 )|| . . . ||
AESK (R[d/161]16), la cual est
a formada por d/16
bloques, y donde el simbolo representa la operaci
on
XOR.
d ) Calcular el valor y = num2 (S), es decir, el valor
numerico de la representacion binaria de S.
e) Realizar la asignacion m = u si el valor de i es par,
en caso contrario hacer m = v.
f ) Calcular el valor c = (numradix (A) + y) mod radix m .
g) Generar el elemento C = STRm
radix (c), donde la funon del valor
ci
on STRm
rad (x) permite obtener la representaci
numerico x como una cadena de m caracteres empleando
la base radix.
h) Realizar las asignaciones A = B y B = C en el orden
indicado.
6. Devolver A||B.
112
JNIC2015
Es importante se
nalar que, tal como est
a descrita la
operativa de descifrado en [12], esta contiene varios errores
de transcripci
on (m
as concretamente, en los pasos 5-(a),
5-(f) y 5-(h)).
La implementacion del algoritmo FFX[Radix] se ha
realizado utilizando el lenguaje de programacion Java
Standard Edition 8. Para ello, se ha empleado la clase
BigInteger [19], que permite operar con n
umero enteros
de cualquier longitud, superando de esta manera las limitaciones de los tipos primitivos int y long [20].
V. Ejemplo
Con el fin de demostrar la aplicabilidad de esta tecnica
al campo del comercio electronico, y puesto que ninguno
de los cinco vectores de test incluidos en [18] se refiere
al cifrado de una cadena de 16 dgitos, que es el caso de
los n
umeros de las tarjetas de credito, en los siguientes
apartados se muestra un ejemplo de cifrado y descifrado
obtenido mediante nuestra implementacion Java.
A. Cifrado
A continuacion se incluyen los datos del ejemplo de cifrado para la cadena 1234567890123456
(con representacion decimal), para lo cual se ha
empleado la cadena tweak 9876543210 y la clave
0x2B7E151628AED2A6ABF7158809CF4F3C a utilizar por el
algoritmo AES.
113
Q 0x393837363534333231300000055F2CC0
R 0xA63A9DBAAAB229E8CC093726AF2CFAB8
S
0xA63A9DBAAAB229E8
y
11978059583998536168
c
10881846
A
90123456
B
10881846
Tabla 2: Ronda 0 del proceso de cifrado.
Q 0x39383736353433323130000100A60B36
R 0xB145E2726676AC58DF76B53984E55C29
S
0xB145E2726676AC58
y
12773864899079482456
c
69605912
A
10881846
B
69605912
Tabla 3: Ronda 1 del proceso de cifrado.
Q 0x39383736353433323130000204261A18
R 0x44A46670E32AB291F7BBBF5CAB2C2864
S
0x44A46670E32AB291
y
4946190925793243793
c
4125639
A
69605912
B
04125639
Tabla 4: Ronda 2 del proceso de cifrado.
Q 0x393837363534333231300003003EF3C7
R 0xF2987448C3DE1143C7391C098CA2408E
S
0xF2987448C3DE1143
y
17480849809511158083
c
80763995
A
04125639
B
80763995
Tabla 5: Ronda 3 del proceso de cifrado.
Q 0x39383736353433323130000404D05C5B
R 0xE68B9CF4E1D79BE885B6C4C2C1321FDE
S
0xE68B9CF4E1D79BE8
y
16612544226061163496
c
65289135
A
80763995
B
65289135
Tabla 6: Ronda 4 del proceso de cifrado.
JNIC2015
Q 0x39383736353433323130000503E43BAF
R 0xF6ED3ADC4E6892E097175E3AABEF3B38
S
0xF6ED3ADC4E6892E0
y
17792942420693390048
c
74154043
A
65289135
B
74154043
Ronda
9
8
7
6
5
4
3
2
1
0
c
26570106
26267408
74154043
65289135
80763995
4125639
69605912
10881846
90123456
12345678
A
26570106
26267408
74154043
65289135
80763995
04125639
69605912
10881846
90123456
12345678
B
49561199
26570106
26267408
74154043
65289135
80763995
04125639
69605912
10881846
90123456
Q 0x39383736353433323130000801956D7A
R 0xD3ADCC550C3C295F5A072FD2604ACD95
S
0xD3ADCC550C3C295F
y
15253072178623293791
c
49561199
A
26570106
B
49561199
VI. Conclusiones
En esta contribuci
on, se ha presentado y descrito uno
de los algoritmos de FPE candidatos para su estandarizacion por el NIST y ANSI. Este algoritmo, denominado
FFX[Radix], es lo bastante flexible para poder ser usado
con distintas bases (decimal, hexadecimal, alfanumerica,
etc.) y con independencia de la presencia del valor tweak.
Tras su implementacion mediante el lenguaje Java, puede observarse que su aplicacion al cifrado del n
umero de
las tarjetas de credito parece limitar su funcionamiento,
puesto que por ejemplo los diversos valores y generados
no difieren mucho entre s en cada iteraci
on del bucle, y
el elemento S siempre se obtiene u
nicamente a partir del
elemento R, lo que aconseja un estudio en mayor profundidad a fin de determinar si dichas caractersticas facilitan la
aparici
on de vulnerabilidades y los consiguientes ataques.
114
JNIC2015
Otra lnea de investigacion resultante del trabajo realizado consiste en el estudio de la posibilidad de implementar el mismo esquema en dispositivos con caractersticas
computacionales limitadas, como por ejemplo las tarjetas
inteligentes. Este tipo de dispositivos se caracteriza por su
portabilidad y elevado nivel de seguridad, caractersticas
requeridas en algunos escenarios reales de implantacion
comercial [21].
Como es sabido [22], el lenguaje Java Card tienen por
definicion algunas limitaciones comparado con el lenguaje
Java utilizado en ordenadores personales y servidores, como por ejemplo la imposibilidad de utilizar elementos de
tipo long, String o BigInteger.
Aunque es cierto que en su versi
on 2.2.2 Java Card
present
o la clase BigNumber [23], la cual permite realizar sumas y restas con n
umeros enteros de longitud
arbitraria, en la practica existen varias limitaciones en
su uso. Para empezar, el paquete al que pertenece,
javacardx.framework.math, es opcional, por lo que no
se encuentra implementado en muchas de las tarjetas disponibles comercialmente. Ademas, la especificaci
on Java
Card indica que, en caso de ser implementada la clase
BigNumber, el n
umero mnimo de bytes en los que almacenar el n
umero entero con el que se deseen realizar los
c
alculos es 8 [24], por que lo el correcto funcionamiento
de esta clase con n
umeros que requieran un mayor espacio de almacenamiento no est
a garantizado. Por u
ltimo, la
clase BigNumber no incluye ning
un metodo para realizar
reducciones modulares [24] (como las necesarias en el paso
5-f de los algoritmos de cifrado y descifrado presentados
en la Secci
on IV), por lo que dichas operaciones tendran
que implementarse mediante sucesivas operaciones de sustraccion, lo que desde el punto de vista de la eficiencia
computacional constituye una opci
on demasiado costosa.
Por todo ello, implementar el algoritmo FFX[Radix] en
tarjetas Java Card constituye un reto cuya consecucion
permitira expandir las posibilidades de utilizaci
on de las
tecnicas FPE. Con el fin de conseguir una implementacion que fuera valida en cualquier tarjeta Java Card, sera
necesario desarrollar una clase equivalente a BigInteger
a partir de los tipos numericos disponibles en Java Card,
que permitiera operar con n
umeros de longitud variable
(pero con representaciones mayores de 8 bytes) y que implementara de manera eficiente operaciones de aritmetica
modular.
Agradecimientos
Este trabajo ha sido parcialmente subvencionado por
la Comunidad de Madrid (Espa
na) bajo el proyecto
S2013/ICE-3095-CM (CIBERDINE) y por el Ministerio
de Economa y Competitividad (Espa
na) bajo el proyecto
TIN2014-55325-C2-1-R (ProCriCiS).
Referencias
[1] Departamento de Seguridad Nacional, Estrategia de ciberseguridad nacional, Presidencia del Gobierno, 2013.
[2] A. F
uster Sabater et al., T
ecnicas criptogr
aficas de protecci
on
de datos (3 ed.). Madrid: RA-MA, 2004.
[3] A. F
uster Sabater et al., Criptografa, protecci
on de datos y aplicaciones. Madrid: RA-MA, 2012.
115
JNIC2015
Algebra
Lineal es posible deducir ciertas propiedades para
este tipo particular de c
odigos, generalizando resultados
conocidos sobre c
odigos cclicos.
n
I. Introduccio
Es bien sabido que los codigos correctores de errores y
los sistemas criptograficos tienen objetivos opuestos, ya
que con los codigos se trata de proteger la informaci
on
de los errores ocasionales consecuencia de su manipulaci
on es cecir, los que intentan resolver las dificultades
planteadas por falta de fiabilidad del canal y en los sistemas criptograficos tambien llamados codigos secretos,
se trata de garantizar su confidencialidad, integridad y
seguridad. Sin embargo tambien tienen objetivos complementarios. La dificultad para descodificar los c
odigos
correctores de errores se ha aprovechado para construir
sistemas criptograficos a partir de dichos codigos. Entre
dichos sistemas se encuentra el ya conocido de McEliece
para clave p
ublica. En tal sistema la clave privada de cada
usuario constituye la matriz generatriz G de un c
odigo lineal C sobre un cuerpo finito Fq junto con un algoritmo de
descodficacion. La matriz G se enmascara mediante una
matriz de permutacion obteniendo as la clave p
ublica, [1],
[2], [3].
Paralelamente el empleo de la criptografa para proteger las comunicaciones, esta la tecnica conocida como esteganografacuyo uso va en aumento y que consiste en el
disimulo de informacion y que se utiliza con el fin de proteger alguna informacion en un soporte numerico anodino
y es el soporte que es enviado sobre un canal p
ublico de
transmisi
on. Estas tecnicas de disimulo de informaci
on
est
an basadas en los codigos cclicos sobre el anillo Z4 ,
[4],[5]. Posiblemente se pueda mejorar la eficacia en el disimulo utilizando una generalizacion de los codigos cclicos
como pueden ser los codgos monomiales.
Una primera generalizacion de los codigos cclicos
fueron los codigos constacclicos introducidos por E. R.
Berlekamp en [6]. Una mas amplia generalizaci
on es la de
c
odigos monomiales y una primera aproximaci
on usando
algebra lineal para estudiar este tipo de codigos fue intro
ducido en [7]. los codigos monomiales tienen aplicaciones
pr
acticas ya que pueden ser codificados con registros de
desplazamiento.
Sea p sea un n
umero primo, q = pk para un cierto
k 1. Un c
odigo monomial q-ario de longitud n, se
puede definir a traves de una n n-matriz generadora con la propiedad de que cada fila (salvo la u
ltima)
(c1 , c2 , . . . , cn ), ci GF (q), define la siguiente fila como
(an cn , a1 c1 , a2 c2 , . . . , an1 cn1 ), donde a1 , . . ., an son
ciertos elementos fijos de GF (q)\{0}. Los c
odigos cclicos
(a1 = . . . = an = 1) y los c
odigos constacclicos (a1 =
. . . = an1 = 1) son subclases especiales de los c
odigos
monomiales de GF (q)n . De forma similar, los c
odigos
monomials pueden ser descritos en terminos de
algebra lineal. Este artculo est
a dedicado al estudio de estos c
odigos,
utilizando
algebra lineal,. Nuestro punto de partida sera
el polinomio caracterstico del endomorfismo de GF (q)n
cuya matriz en la base can
onica es la que representa al
c
odigo monomial.
Recordemos que, dado un endomorfismo de un espacio
vectorial E sobre el cuerpo F, un subespacio V E invariante es hiperinvariante si es invariante por todas las
aplicaciones lineales que conmutan con .
II. Subespacios invariantes por aplicaciones
monomiales
Sea p un n
umero primo, q = pk para alg
un k 1 y F =
GF (q). Consideremos el n-dimensional espacio vectorial
Fn sobre el cuerpo F.
ametros de F
Sea a = (a1 , . . . an ) un conjunto de n par
y consideremos la siguiente aplicaci
on lineal
a : Fn Fn
(x1 , . . . , xn ) (an xn , a1 x1 , . . . , an1 xn1 )
(1)
0
a1
Aa = 0
..
.
0
0
0
a2
..
.
...
...
...
..
.
0
0
0
..
.
. . . an1
an
0
0
.
..
.
(2)
Esta matriz recibe el nombre de matriz monomial. Observamos que esta matriz se puede escribir como producto de
una matriz diagonal diag (an , a1 , . . . , an1 ) y una matriz
116
JNIC2015
permutacion
0
1
..
.
0
0
1
..
.
...
...
...
..
.
...
Proposici
on 3: El centralizador C(Aa ) de Aa es el conjunto de matrices Ya = SXa S 1 , if Aa S = SAa .
Demostraci
on: Por la proposici
on 2, tenemos Xa Aa =
Aa Xa . Entonces, SXa S 1 Aa = Aa SXa S 1 .
1
0
0
.
..
.
1 0
0
0
0
..
.
Propiedades
Esta aplicacion verifica:
1) AanQ
= a1 . . . an In
n
2) si i=1 ai 6= 0 entonces A1
=
a
( a11 , . . . , a1n ).
Qn 1
i=1
n1
a i Aa
an vn = v1
a1 v1 = v2
a2 v2 = v3
..
.
= Ata ,
donde a =
3) su polinomio
Qn caracterstico es pa (s) = det(A sIn ) =
(1)n (sn i=1 ai ).
Qn
Proposici
on 1: Supongamos que a = i=1 ai 6= 0. Entonces, la matriz
0 0 ...
0
an
a1 0 . . .
0
0
0 a2 . . .
0
0
Aa =
..
.. . .
..
..
.
.
.
.
.
0 0 . . . an1 0
es equivalente por la relacion
0 0
1 0
Aa = 0 1
.. ..
. .
de semejanza a
... 0 a
. . . 0 0
. . . 0 0
.
.
..
. .. ..
0 0 ... 1 0
Demostraci
on: Es facil probar que
an2 vn2
an1 vn1
0
0
a1 a2
..
.
...
...
...
..
.
...
Qn
0
0
0
..
.
i=1
Qn1
i=1
0
0
..
.
ai
con = xn + xn1 + x2 2 + . . . + x2 n2 + x1 n1 F.
En esta seccion probamos que los subespacios a invariantes son tambien a -hiperinvariantes, (aquellos que
son invariantes por todas las aplicaciones lineales que conmutan con a ), (Ver [8] y [9] para mas informaci
on acerca
de estos subespacios).
Necesitamos calcular el centralizador de Aa , para ello
primero calculamos el centralizador de la matriz Aa .
Proposici
on 2 ([7]) El centralizador C(Aa ) es el conjunto de las matrices Xa de la forma:
x
ax
ax
ax
. . . ax
ax
n
xn1
..
.
Xa = ..
.
x
3
x2
x1
xn
ax1
..
.
x4
x3
x2
x5
x4
x3
abx2
..
.
..
.
x6
x5
x4
...
n2
n1
axn3
axn2
..
.
...
...
...
ax1
xn
xn1
(4)
Proposici
o
n
4:
Sea
GF
(q)
un elemento tal que
Qn
n = i=1 ai . Entonces, el subespacio [v] generado por el
vector v dado en (4) es un subespacio hiperinvariante.
Demostraci
on:
Aa v = v
con
0
a1
S =0
..
.
= vn1
= vn
v=
,
,...,
,1
a1 . . . an1 a2 . . . an1
an1
Aa S = SAa .
(3)
ax2
ax1
xn
Proposici
on 5: Sea F un subespacio invariante de Aa .
Entonces F es hiperinvariante.
Demostraci
on: Basta con observar que, para todo Ya
C(Aa ),
SXa S 1 = xn I + xn1 Aa + xn2 Aa2 + . . . + x1 An1
.
a
Por lo tanto, tenemos que en este caso el retculo de
subespacios invariantes coincide con el retculo de subespacios hiperinvariantes.
Hinv (Aa ) = Inv (Aa ).
Definici
on 1: i) Sea u = (u1 , . . . , un ) y v = (v1 , . . . , vn )
dos vectores in Fn . Definimos un producto interno sobre
F de la manera siguiente:
< u, v >= u1 v1 + . . . + un vn .
ii) Dos vectores u, v de Fn son ortogonales si, y s
olo si
< u, v >= 0.
117
JNIC2015
Demostraci
on:
`j
Pn
Pn `i n`
j
=
< ui , vj >= `=1 `i n`
= `=1
j
`
`
j`
Pn
Pn
i
i
nj = a1 . . . an `=1
=
`=1
j P
j
n
`
a1 . . . an P`=1 1 = a1 . . . an n si i = j
n
a1 . . . an `=1 ()` = 0 ( raz de la unidad) si i 6= j
Qn
i=1
ai An1
v >=
a
Luego A1
v F .
a
De esta proposici
on se puede deducir f
acilmente, la matriz inversa de la matriz S.
digos monomiales vistos como subespacios
III. Co
invariantes
Definici
on 2: Un c
odigo C de longitud n sobre el cuerpo
F recibe el nombre de monomial con respecto a1 , . . ., an ,
si siempre que c = (c1 , . . . , cn ) este en C, entonces sc =
(an cn , a1 c1 , . . . , an1 cn1 ) est
a tambien en C.
La aplicaci
on sc se puede representar en forma matricial
an cn
c1
0 0 ...
0
an
n2
n1
a1 0 . . .
i
i
0
0
Aa vi = i vi , vi =
,
,...,
,1 ,
c2 a1 c1
a1 . . . an1 a2 . . . an1
an1
0 a2 . . .
0
0
c3 = a2 c2
..
.. . .
..
.. .. ..
.
.
i = 1, . . . , n,
.
.
. . .
an1 cn
cn
0 0 . . . an1 0
donde Aa es la matriz de
a : F[1 , . . . , n ]n F[1 , . . . , n ]n
definida como en 2.
Consideremos la base v = (v1 , . . . , vn ) de vectores propios de a . Aplicando el cambio de base a Aa a la base de
vectores propios, obtenemos la siguiente matriz diagonal
1 0 . . . 0
0 2 . . . 0
Da = .
= S 1 AS
... . . . ...
..
0
0 . . . n
n1
1
n1
a1 ...a
n2
1
a2 ...a
n1
..
S=
.
1
a
n1
1
n1
2
a1 ...an1
n2
2
a2 ...an1
...
...
..
.
2
an1
n1
n
a1 ...an1
n2
n
a2 ...an1
..
.
...
...
n
an1
118
JNIC2015
q1 (s)b
p1 (s) + . . . + qr (s)b
pr (s) = 1.
Sea x C, entonces x = q1 (Aa )b
p1 (Aa )x + . . . +
qr (Aa )b
pr (Aa )x. Llamando xi = qi (Aa )b
pi (Aa )x y teniendo
en cuenta que C es Aa -invariante y que xi Ker pai (Aa )
tenemos que xi C Ker pai (Aa ).
Ejemplo 1: Consideremos la matriz Aa para an =
2, a1 = 4, a2 = . . . = an1 = 1, n = 8 y q = 5. Entonces tenemos p(s) = pa (s) = s8 1. Factorizando
p(s) en factores irreducibles sobre F = GF (5) tenemos
pa (s) = p1 (s)p2 (s)p3 (s)p4 (s)p5 (s)p6 (s) = (s+1)(s+2)(s+
3)(s + 4)(s2 + 2)(s2 + 3). Los factores pi (s) definen subespacios Aa -invariantes minimales Fi = Ker pi (Aa ), para
i = 1, 2, 3, 4, 5, 6.
Definimos un codigo monomial C de la manera
C = F1 F5 = Ker (p1 (Aa )) Ker (p5 (Aa ))
p1 (s) p5 (s) = s3 + s2 + 2s + 2
la matriz siguiente
2 0 0 0 0
2 2 0 0 0
2 4 2 0 0
4 4 4 2 0
0 3 4 4 2
0 0 3 4 4
0 0 0 3 4
0 0 0 0 3
3
3
0
0
0
0
2
4
3
4
0
2
digos monomiales
IV. Matrices de paridad de co
Sea F[1 , . . . , n ] la extensi
on algebraica considerada en
la secci
on II.
Consideremos la base v = (v1 , . . . , vn ) vectores propios
de a . Del corolario 1 y con respecto a esta base tenemos
que c C si, y s
olo si g(Aa )c = 0.
Puesto que Da es una matriz diagonal, la matriz g(Da )
es tambien diagonal y
g(Aa ) = g(SDa S 1 ) = Sg(Da )S 1
La condici
on g(Aa )c = 0 se escribe como g(Da )c0 = 0
donde c0 = S 1 c.
Sin perdida de generalidad podemos suponer que
1 , . . . , n est
an ordenados de tal manera que g(i ) = 0,
para todo 1 i k y g(i ) = i 6= 0, para todo
k + 1 i n (entonces, y puesto que mcd(g(s), h(s))=1,
h(i ) 6= 0, para todo 1 i k y h(i ) = 0, para todo
k+1 i n). Dado c = (c1 , . . . , cn ) y c0 = (c01 , . . . , c0n ) tenemos que g(Da ) = (0, . . . , 0, k+1 c0k+1 , . . . , n c0n ). Equivalentemente:
0
..
.
k+1
a1 . . . an n
..
.
n
a ...a
n1
2
an1 n
1 1
n1 1 a2 ...an1 ... 1
1
c1
n1
2
n
a
...a
a
...a
...
2
1
n1
n1
2
n1
2
2
2
c.2
=
..
..
..
.. ..
.
.
.
.n
cn
2
n1
n a1 ...an1
n a2 ...an1 ... n an1 n
0
.
..
cc1
2
1
0
n
k+1 k+1 a1 ...an1
c.n
..
..
.
.n
n n a1 ...an1
...
=0
n n
3 2 3 3 3 4
3 3 3 2 3 4
es una matriz
de
F[ 2, 4 2, 3, 4 3].
119
paridad
del
c
odigo
sobre
JNIC2015
V. Distancia de Hamming
Recordemos que el peso de Hamming de un vector v es
el n
umero se entradas no nulas y lo denotamos por wH (v)
y se define la distancia de Hamming entre dos vectores
como el peso del vector diferencia, por lo que se tiene que
wH (x) = dH (x, 0). El peso mnimo de un c
odigo C es el
mnimo de todos los pesos de todas las palabras de C no
nulos.
wmin (C) = min06=xC (wH (x))
Teniendo en cuenta que dH (x, y) = dH (xz, y z) para
todo z y que en particular dH (x, y) = dH (x y, y y) =
dH (x y, 0) tenemos que sobre un cuerpo, la distancia de
Hamming es invariante por translacion y, en particular,
para c
odigos lineales, el peso mnimo es igual a la distancia
mnima.
Vamos a obtener una cota para la distancia mnima entre dos c
odigos monomiales de una forma similar a la presentada por Roos en [11] para codigos cclicos.
Sea F un cuerpo finito y
A = a1
...
an
a11
= ...
a1`
. . . an1
.. .
.
...
an`
x11 . . . x1n
..
.
..
Para una matriz X = .
con columnas
xm1 . . . xmn
xi Fm para 1 i n no nulas, consideramos
A(X) = x1 a1
...
xn an
j1 a1 . . . an1
..
A =
.
j` a1 . . . an1
2j1 a2 . . . an1
..
.
2j` a2 . . . an1
. . . nj1
..
.
. . . nj`
x1 x21 . . . xn1
..
.. M
XU = ...
mn (F[1 , . . . , n ]).
.
.
xm x2m . . . xnm
Sea C un c
odigo monomial definido por el polinomio
pa (s) = g(s) h(s) sobre el cuerpo de descomposicion
F[1 , . . . , n ] de pa (s) y consideramos ahora el conjunto
de todos los ceros de h(s). Siguiendo la proposicion
12 la matriz A es la matriz de paridad del c
odigo C, si
la distancia mnima de C sobre F[1 , . . . , n ] es dH (A ).
Entonces, la distancia mnima de C sobre F es al menos
dH (A ), puesto que C sobre F es un subc
odigo sobre un
subcuerop de C sobreF[1 , . . . , n ].
Observaci
on 1: N
otese que los menores de A son del
tipo de Vandermonde.
Teorema 1: Sea el conjunto definido en 5 y U un conjunto consecutivo de races de sn 1 tal que dH (A ) 2
0. Then, dH (A (XU )) dH (A ) + card U 1.
Demostraci
on: Es suficiente observar que en esta particular configuraci
on dH (A ) 2, entonces, podemos aplicar
el lema 1.
Alvarez,
A. Ribagorda Garnacho, pp. 125-130, (2004).
[3] E. Celikel Cankaya, S. Nair, H. C. Cankaya. Applying error correction codes to achieve security and dependability. Computer
Standards & Interfaces. 35, pp. 78-86, (2013).
[4] H. Jouhari, El M. Souidi. A New Steganographic Scheme based
on First Order Reed Muller Codes. In Proceedings of the International Conference on Security and Cryptography, Sevilla, Spain,
pp. 351-356, (2011).
120
JNIC2015
121
JNIC2015
I.
INTRODUCTION
122
JNIC2015
Policies
Bussiness
rules
Constraints
Direct
Monitor
Logs
Evaluate
KPI
Trails
Analysis
Diagnosis
Connectors/
Validators
Report
123
JNIC2015
IV.
CASE STUDY
Project R+D
GROUPS
Information
Security
Govern
Management Team
of Information
Security
Human
Resources
Staff
ROLES
Bussiness
Manager
Establish policies
System
Administrator
Administrative
staff
Researcher
Register user in HR
database
Modiy user
in HR database
Modiy user
information
Monitor KPIs
Get reports
Modiy user
information
Role
Group
Business
Process
Legend
124
JNIC2015
ID
KPI-003
Purpose
Goal
Measurement Specification
Objects
of
Measurement
1. LDAP database
2. HR database
Attributes
1.
2.
3.
4.
FileWriter writer;
Method
1. Integer value
2. Integer value
Scale type
Measure unit
1. Registration in LDAP
2. Registration in HR
Scale
Reporting
Frequency
Basic measures
1. Objective measure
2. Objective measure
Daily
C. Monitor process
Monitoring of KPI implies to include an imperceptible piece
of software (BonitaSoft connectors) in the processes that
allows collecting information during the execution of
processes. For instance, regarding the time of registration of a
new, two timestamps are logged: the first check-point is
released when a registration process is initiated, and the second
check-point is released when the user has received a response
from Human Resource (HR) Department and LDAP. This
information is dumped in a database prepared for KPIs. On the
other hand, regarding the quality of passwords a validation
script is prepared to be performed through all users
registration. An example of Groovy script is shown in the Fig.
3. This piece of script shows a mechanism to write the log
registration time.
Measurement type
Analysis
Frequency
Another script enables to count the number of noncompliance against the compliance and stated this value
in the database of KPIs. The other KPIs are developed in
the same way, that is by means of Groovy scripts where
timestamps are stated and queries to database are needed
to check the required time of the registration process.
a) Conformity Ratio
b) List of non-authorized users.
Analytical
model
Incdicator
Interpretation
Reporting
Format
Reporting Client
ISG Team
Collecting
Frequency
D. Evaluate process
The evaluation of KPIs can be carried out in two directions:
manually and automatically. Manually by means of the options
provided to the ISG within Direct process or a monthly report
is generated. As a result of the monitoring of processes a
dashboard can be presented to the governance such as shown in
Fig. 4. In the bar chart we can observe the number of users
registered in LDAP (blue colour) and HR (yellow colour)
database. In this example we can observe a non-compliance
example which a discrepancy is shown due to one user that is
in HR database but is not registered in LDAP database. In that
case the chart is showing. Therefore, the ISG can peek the
compliance of policies in seconds at real-time.
125
JNIC2015
Ratio = 0.91
[9]
Ratio = 0.91
[10]
[11]
[12]
[13]
LDAP
HR
INCIBE,
Available
at:
https://www.osi.es/gl/actualidad/avisos/2011/10/sony-bloquea-93000cuentas-de-su-playstation-network, 2015.
SIGMA DATA SECURITY CONSULTING S.L., Estudio sobre el
cumplimiento de la LOPD por la PYME Espaola, 2010.
ISO/IEC 27001:2013, - Information security management.
Rossouw von Solms, S.H. von Solms, Information Security Governance.
Springer, 2009.
ISO/IEC 27014:2013, Information technology Security techniques
Governance of information security.
COBIT 5 for security information. ISACA 2012
Jacques Coertze, Rossouw von Solms: A software gateway to affordable
and effective Information Security Governance in SMMEs. ISSA 1-8,
2013.
126
JNIC2015
APPENDICES
127
JNIC2015
128
JNIC2015
I. I NTRODUCTION
Automatic prevention, detection and reaction systems for
intrusion management is a key topic in the last few years [1].
Yet, most of the solutions have a narrow scope and certain
difficulties and limitations when dealing with large scale and
distributed attacks like coordinated spam, phishing attacks or
DDoS [2]. To this end, concepts like autonomic system, trust
and reputation management, collaborative intrusion detection
and prevention systems, virtualized honeynets, and semantic
web should be part of novel IDS/IPS systems.
Despite the progress in intrusion management, dynamicity
and heterogeneity should consider other alternatives that take
into account input from a large pool of heterogeneous sensors
and contextual changes in the organization, beyond traditional
network attacks. In this context, new dynamic risk assessment
and management processes have emerged to provide an answer
to this shortcoming, allowing the current solutions to acquire a
dynamic assessment of the risk of the organizational assets and
the continuous evolution of threats. A dynamic risk assessment
and management allow updating the risk level on the assets of
an organization at real time, as well as dealing with dynamicity
and the changing nature of the technology and threats.
A. Our contributions
As a first contribution, we propose an approach to intrusion
response, building and deploying honeynets where the attacks
will be diverted. This is a result of the RECLAMO (Virtual and
Collaborative Honeynets based on Trust Management and Autonomous Systems applied to Intrusion Management) project,
where honeynets are created ad-hoc and optimized for each
129
JNIC2015
Collaborative intrusion
detection networks
Self-protecting
systems
Virtualization of
reactive networks
Multi-step
attacks
Ontology
Evaluation &
Learning
formatted alerts
Network and
System Context
REASONER
IRSA
context
CIDNA
Trust &
Reputation
Metrics
Parser
IDS
alerts
..
IDS
Preventive
Passive
Active
responses
CIDNB
...
CIDNX
Other
CIDNs
alerts &
attacks
Virtual
Honeynets
Deployment
130
Evaluated cost
Network IRS
Cost-sensitive
IDAM&IRS
Proactive
Stakhanovas
EMERALD
FAIR
Adaptive
CSM
ADEPTS
AAIRS
JNIC2015
Semantic coherence
TABLE I
F UNCTIONALITIES OF EXISTING AIRS
131
JNIC2015
CAS
Wise Committee
WCLA
IDS
alerts
..
IRSY
IDS
...
WCLY
...
..
IDS
IDS
alerts
IRSA
CIDNA
WCLX
Administrative
Domain 2
...
IDS
IRSX
CIDNX
alerts
..
Administrative
Domain 1
alerts &
attacks
IDS
|IDS|
M
i,k Repi (k) Reck (j)
TW Ci (j) =
L
where |IDS| is the total number of IDSs in the CIDN;
defines an aggregation operation chosen by the administrator;
Repi (k) [0, 1] is the reputation of k from the perspective
of W Ci ; Reck (j) [0, 1] defines the recommendation value
gathered from k on j; 1 represents the pace at which W Ci
forgets recommendations; and i,k [0, 1] is the weight
that W Ci can deposit on the type of IDS that k represents.
For example, i,k may be divided into separate three weights
according to the ks group: i for NIDSs, i for HIDSs, and
i for the WCs NIDSs, with i + i + i = 1.
The recommendation element is a key factor to assess alert
satisfaction. The recommendation of IDS k on IDS j at a
given time t is computed by (2), taking into consideration the
previous recommendation values already computed by k.
(t)
(t1)
(1)
k = 1,
k 6= i
(t)
(2)
132
JNIC2015
|W C|
TW Ci,j
(3)
i=1
T () =
X
i=1
but they are fixed and cannot be dynamically chosen (i.e., the
AIRS always uses the same metric, regardless of the intrusion
context or the state of the system).
We defined in RECLAMO a pool of response metrics for
modeling and specifying the behavior of the AIRS [19]. The
knowledge included in the ontology allows inferring the most
appropriate response set for different events. Such metrics are
defined by using a formal language of behavior specification,
so the complete AIRS behavior is defined formally. Their
specification in a flexible and dynamic way requires the use
of a specific language able to express these metrics. We use
SWRL as a formal language to express them.
The following parameters have been identified as the most
relevant ones for inferring the optimum response: the intrusion
impact, the IDSs confidence, the importance of the affected
resources, the severity and cost of the response, and its success.
Regarding the relevance that the compromised resource has for
the organization, the AIRS assigns more or less weight to each
of these parameters. For example, consider that the affected
resource is a user workstation. The response cost may take
priority over its success rate. However, if the attacked resource
is a database server, the AIRS may give more importance to
the response severity and the response effectiveness than the
high cost of executing the response.
In order to choose the responses, three response metrics
have been taken into account in RECLAMO, which are next
presented. Each metric assigns a weight to the parameters in
a different way. Depending on the level of importance of the
resource, the system applies one metric or another.
1) Damage reduction metric: The purpose of this metric
is to strike a balance between the cost of the damage caused
by an unattended attack (the intrusion impact) and the cost
of deploying the response (the response impact). This metric
aims to avoid that the response has a greater negative effect
than can cause the attack on the resources of an organization
(e.g., loss of availability of several resources). The AIRS uses
this metric regardless of the component importance. Note that
this metric is equivalent to the one defined by Stakhanova.
The application of this metric infers the responses, whose
impact is lower than or equal to the product of the intrusion
impact and the IDS confidence, as defined in (4).
Impactintrusion Conf idenceIDS > Impactresponse (4)
133
JNIC2015
(6)
(7)
134
JNIC2015
(updates)
Countermeasures
DDRA Inputs
Evaluation &
Learning
Context-aware
Security and Privacy
Proactive Defence
Rules
HMM
DDRA Engine
Ontology
Risk Assessment
Metrics
DDRA controller
Sensor reconfiguration
Input layer
Obligation enforcement
Organization
policies
External
External
External
DDRAs
External
DDRAs
DDRAs
DDRAs
RECLAMO
AIRS
Social Image
Promotion
Other dynamic
response mechanisms
Real-time Risk
Visualization
PILAR
Sensor reconfiguration
Obligation enforcement
135
JNIC2015
136
JNIC2015
137
JNIC2015
138
JNIC2015
Fig. 3.
Left: original image, right: modified image due to color changes.
MD5 cryptographic hash extracted from
the original image:
bb4f0a96c77e8737d02755457c2e49c8, MD5 cryptographic hash extracted from manipulated image:
6d4d51dfc23becf3edb0019448f78c8c. Perceptual Hash (pHash dct) extracted from original image: 4e1e4967f518cec2, Perceptual
Hash (pHash dct) extracted from manipulated image: 4e1e5d47b518cec0.
IV. Conclusions
139
JNIC2015
Referencias
[1]
140
JNIC2015
I. INTRODUCCION
Internet de las Cosas (IoT) [1] est terminando de
materializarse, y cada da las personas hacen uso de la tecnologa
para cumplir sus necesidades, desde pequeas consultas cotidianas
hasta poder comprar productos con un solo botn preprogramado.
Un indicador de que el IoT est sobre la sociedad es la
posibilidad de solicitar a la compaa de comercio electrnico
Amazon un botn dash button que, cada vez que el usuario pulsa,
se enviar a su domicilio un pedido segn los parmetros
establecidos en el dispositivo (por ejemplo, para solicitar
productos consumibles y cotidianos).
Lo que parece ser un simple dispositivo electrnico al servicio
del usuario esconde, a su vez, un foco potencial de inseguridad
para el usuario, ya que su utilizacin es nicamente un botn, pero
tras este mecanismo existe, principalmente, un envo de datos a los
servidores de la compaa, donde se realizar un pedido segn la
informacin de la solicitud emitida.
Si cada vez que se pulsa un botn se realiza un pedido, la
pulsacin repetida de este botn supone, por tanto, la realizacin
de un elevado nmero de pedidos, que supondrn un desembolso
para el usuario.
Y si alguien es capaz de copiar ese envo y replicarlo
malintencionadamente infinitas veces? Es consciente el usuario
de que est siendo vctima de este ataque? Y lo que podra ser ms
importante, ha sido el usuario consciente de este riesgo en el
momento de adquirir el servicio?
Aunque es muy probable que esta compaa de comercio
electrnico s haya considerado todos los escenarios, este ejemplo
nos sirve para exponer un problema existente en la actualidad: la
sociedad es consciente de las capacidades de la tecnologa para
suplir sus necesidades, pero no es consciente de los riesgos que
supone apoyarse en ella sin conocer stos.
Llegados a este punto, y pensando ms en las organizaciones y
141
JNIC2015
estos entornos, Shodan, creada por John Matherly [7], que desde
2009 ha estado realizando un escaneo eterno de todas las
direcciones IP y recolectando la informacin de las cabeceras de
cada servicio que aloja.
Una vez expuestos todos los elementos participantes en el
presente estudio, concluiremos con una prueba de concepto, donde
seguimos la metodologa de un atacante cualquiera desde una
bsqueda en Shodan de una infraestructura crtica, hasta el acceso
a una de stas, donde tendremos control total de la misma.
Finalmente, en la seccin VI se incluyen las conclusiones del
estudio.
La principal motivacin tras este estudio es mostrar. Otro
estudio de referencia, ms enfocados al Internet de las Cosas y a
los accesos abiertos o que no hacen uso de la seguridad por
defecto, es el realizado por Patton [8]. En el caso del presente
estudio, no haremos una bsqueda general de dispositivos con
acceso abierto, sino que nos centraremos en entornos crticos,
donde la seguridad adquiere una importancia an mayor.
142
JNIC2015
III. SHODAN
Introducidos en la problemtica existente en SCADA, y
conociendo la criticidad de los entornos que gobiernan, vemos que
estos entornos deben estar expuestos a la Red para mantener la
operativa en remoto, lo que supone aceptar el riesgo inherente de
que cualquier persona conectada a la Red puede tener acceso a
ste. Sin embargo, buscar entornos SCADA preguntando el tipo de
servicio que presta cada direccin IP en la actualidad en cada uno
de sus puertos, puede suponer una tarea muy pesada para un
atacante en particular, adems de dejar una huella digital grande.
Es aqu (y en muchos otros aspectos de seguridad de la
informacin) donde Shodan ha sabido ganarse un sitio en el kit de
utilidades para cualquier experto en seguridad. Creada por John
Matterly, este motor de bsqueda ofrece al usuario resultados
sobre lo que este busque, pero prescindiendo de sitios web, sino
utilizando los banner de los servicios que tienen habilitados los
servidores.
En este punto del estudio, es necesario definir dos tcnicas
utilizadas en la fase de bsqueda de informacin de cualquier test
de penetracin a un sistema: footprinting y fingerprinting [14].
Footprinting hace referencia a cualquier recopilacin de
informacin pasiva-indirecta de un objetivo con respecto del
atacante, esto es, sin que la vctima sea la fuente original directa.
Como ejemplos de esta tcnica, estn la bsqueda de
informacin de una organizacin en diferentes publicaciones en
medios abiertos, utilizacin de motores de bsqueda, informacin
relativa a registradores, DNS, WHOIS, etc.
Por otra parte estn las tcnicas de fingerprinting, ms
agresivas que las descritas anteriormente, ya que su objetivo es
adquirir la informacin directamente del objetivo, como por
ejemplo utilizando un escner de puertos o haciendo anlisis de su
trfico de red.
La principal ventaja de fingerprinting es la obtencin de
informacin muy valiosa, como el funcionamiento de un sistema,
su versin, su sistema operativo, los servicios activos, mientras
que footprinting se trata de recopilacin de informacin desde el
exterior, aunque de menos valor.
Es aqu donde destaca Shodan, ya que lo relevante de este
motor de bsqueda, no es nicamente la disposicin de la
informacin de los sistemas que ha escaneado, sino su mtodo de
funcionamiento, basado en la captura de estados de los servicios,
recopilando informacin en espacio y tiempo, y permitiendo el
acceso a esta informacin de forma atemporal, sin utilizar
informacin relativamente en tiempo real.
Esto tiene la principal ventaja, desde el punto de vista del
atacante, de que obtiene informacin valiosa, tpica de tcnicas de
fingerprinting, a travs de una entidad ajena al objetivo, similar al
footprinting.
143
JNIC2015
IV.
144
JNIC2015
V. PRUEBA DE CONCEPTO
Fig. 5. Interfaz de inicio de sesin de una empresa de energa solar con defectos
graves en las credenciales
[Capte la
atencin de
losBsqueda
lectoresde depuradoras va Shodan
Fig. 7.
mediante una
cita
importante
El detalle e histrico
nos ofrece el resto de pormenores
extradams
del sobre la depuradora: activa desde
necesarios para conocer
documento
o de la bsqueda, otros servicios
hace unos meses desde
el momento
utilice
esteva puerto 8080 por el que se ha
abiertos adems del
HTTP
espacio para
encontrado este servidor.
resaltar
Otros elementos
como un
IP y versiones que maneja el servidor,
punto
clave.
nos podran ofrecer otros
datos de forma indirecta, como la
Paracoordenadas
colocar
geolocalizacin en
de la depuradora y las
el cuadro de
texto en
cualquier
lugar de la
pgina, solo
tiene que
arrastrarlo.]
145
JNIC2015
VI. CONCLUSIONES
146
JNIC2015
REFERENCIAS
Ashton, Kevin. "That internet of things thing." RFiD Journal 22.7 (2009):
97-114.
[2] Daneels, Axel, and Wayne Salter. "What is SCADA." International
Conference on Accelerator and Large Experimental Physics Control Systems.
1999.
[3] Igure, Vinay M., Sean A. Laughter, and Ronald D. Williams. "Security issues
in SCADA networks." Computers & Security 25.7 (2006): 498-506.
[4] Krutz, Ronald L. Securing SCADA systems. John Wiley & Sons, 2005.
[5] Langner, Ralph. "Stuxnet: Dissecting a cyberwarfare weapon." Security &
Privacy, IEEE 9.3 (2011): 49-51.
[6] Wilson, Clay. "INDUSTRIAL AND SCADA SYSTEMS MAY BE
INCREASINGLY TARGETED FOR CYBERATTACK." (2012).
[7] Matherly, John C. "SHODAN the computer search engine." Available at
[Online]: http://www. shodan.io (2009).
[8] Patton, M., Gross, E., Chinn, R., Forbis, S., Walker, L., & Chen, H. (2014,
September). Uninvited Connections: A Study of Vulnerable Devices on the
Internet of Things (IoT). In Intelligence and Security Informatics Conference
(JISIC), 2014 IEEE Joint (pp. 232-235). IEEE.
[9] Ghena, B., Beyer, W., Hillaker, A., Pevarnek, J., & Halderman, J. A. (2014,
August). Green lights forever: analyzing the security of traffic infrastructure.
In Proceedings of the 8th USENIX conference on Offensive Technologies
(pp. 7-7). USENIX Association.
[10] Instituto Nacional de Tecnologas de la Comunicacin (2012, marzo).
Estudio sobre la seguridad de los sistemas de monitorizacin y control de
procesos
e
infraestructuras
(SCADA).
Recuperado
de
https://www.incibe.es/file/5ik7qnpsCJD6GNls9ZYKrA
[1]
147
JNIC2015
II.
I.
INTRODUCCIN
III.
OBJETIVOS
148
JNIC2015
V. METODOLOGA
Siguiendo los objetivos marcados en orden cronolgico, ser
necesario realizar las siguientes tareas:
149
JNIC2015
a)
b)
Figura 2. Archivos copiados en la memoria USB (a), y archivos sin
extensin y a punto de ser borrados (b).
150
JNIC2015
***********************************************
TodaysDate:XXXX
Pleaseselectanoption:
1.Clonecompletedrive
2.Imagecompletedrive
3.Imagespecifiedpartition
4.Computechecksumofdrive/partition
7.Selectkeyboardlayout(CurrentlyUSLayout)
9.ShutdownPC
0.Exit
>2
Pleaseselectformatyouwishtouse:
1.dd(viadc3dd)
2.AFF(requiresatleast256MBofRAM)
3.EWF(requiresatleast256MBofRAM)
>1
###OPTIONS###
Pleaseselectanoptiontochange:
#
Option
[1]
ChecksumMethod
[2]
Postdddstverify
[3]
Splitimagefile
No
[4]
Splitfilesize
2G
[5]
Compressimage
none
[6]
Compresslevel
[7]
BlockSize
[0]
Returntopreviousmenu
>1
Default
md5
Yes
6
1M
####Checksummethod####
Checksum method is currently set to 2md5,
defaultismd5
Please select which method you would like to
use,optionsarebelow.
ChecksumOptions:
1.md5
2.sha1
3.sha256
4.sha512
>3
Menuchoices:
1.Selectsource
2.Selectdestination
3.Changeoptions
4.Changeimagefilename
9.Executedd
0.Returntomainmen
>1
151
JNIC2015
BASICINFO:
Imagesource:/dev/sdd
Drivemodel:Unknown
Driveserialnumber:Unknown
IMAGEFILE(S):
image
Imagefilesize:255344280bytes
CHECKSUM:
Montando la imagen
As, se habr creado una imagen clonada de la memoria
USB, usando el formato de clonacin dd. Para poder montar
una imagen de este formato en Windows, se precisa la
aplicacin OSFMount [1], mostrada en la figura 4.
Figura 4. OSFMount.
dc3dd7.0.0startedatXXXX
compiledoptions:
command line: dc3dd if=/dev/sdd bufsz=1M
hlog=hash.log
log=dc3dd.log
hash=sha256
of=/mnt/temp/OSFClone0/image
inputresultsfordevice'/dev/sdd':
0613d6b3bd5bc28e131df4556406a5d12ef9f4c3ca3e9285fff
9feca9550be6e(sha256)
output
results
for
file
'/mnt/temp/OSFClone0/image':
dc3ddcompletedatXXXX
Case#:
Evidence#:
ExaminerName:
Description:
Location/Place:
152
JNIC2015
153
JNIC2015
trid ..\..\ficheros2\*.*
Figura 9. Comprobacin de la extensin de un archivo, mediante
P10XB.
VIII.
154
JNIC2015
BIBLIOGRAFA Y REFERENCIAS
1)DISKPART
2)LISTDISK(aparecerunalistadetodoslos
discosdelequipo)
3)selectdisk1(ojo!Hayqueseleccionarel
discoquesequieraformatear,enelcasodel
ejemplo,elDISCO1.Muchocuidadoconlas
equivocaciones).
4)clean
5)createpartitionprimary
6)formatfs=NTFS
7)exit
X.
CONCLUSIONES
155
JNIC2015
I.
INTRODUCCIN
156
http://www.seccord.eu/
http://www.cspforum.eu/
JNIC2015
157
JNIC2015
158
CONCLUSIONS
JNIC2015
REFERENCES
[1]
[2]
[3]
[4]
[5]
[6]
[7]
159
JNIC2015
160
JNIC2015
I.INTRODUCCIN
La ciberseguridad es una preocupacin cada vez ms
importante en los entornos de operaciones industriales y de
infraestructuras (tambin llamados Operation Technology-OT).
Como parte del proceso de mejora continua de la
ciberseguridad o de incremento del nivel de madurez de estos
entornos (hoy en da todava bastante bajo en comparacin con
los entornos IT transaccionales), suele aparecer la necesidad de
analizar e identificar los principales activos y vulnerabilidades
asociados a los entornos OT y llevar a cabo una gestin y
evaluacin integral del riesgo operativo. Con esto queremos
distinguir este anlisis de otros tradicionales y ms asociados al
riesgo estratgico, como se discutir posteriormente en este
documento.
Esta necesidad no slo surge en empresas y en
organizaciones privadas que estn preocupadas por
incrementar la seguridad de sus activos, procesos e
instalaciones (asociada directamente a su productividad, algo
que estn comenzando a comprender ahora), sino que a nivel
gubernamental, tambin es considerada. La publicacin a nivel
mundial de leyes y normativas que obligan a operadores
crticos que suministran servicios esenciales a realizar este
ejercicio, es prueba de ello. Por ejemplo en Espaa, la Ley
8/2011 de Proteccin de Infraestructuras Crticas (ley PIC),
obliga a los operadores catalogados como crticos a llevar a
cabo, dentro de los Planes de Seguridad del Operador (PSO),
un anlisis de riesgos en los que se incluya un inventario de
activos que soportan servicios esenciales, una identificacin y
evaluacin de amenazas y una valoracin y gestin del riesgo.
161
JNIC2015
162
IT
Confidencialidad,
Integridad y
Disponibilidad
2/3 aos con la
existencia de gran
nmero de
proveedores
Prctica habitual que
conduce a inversin
en ciberseguridad
Habitual e integrado
en la operacin
Comn , fcil de
actualizar y con
polticas bien
definidas y
automatizadas
Normativas genricas
Utilizacin de las
metodologas
estndares ms
actuales
Fcil despliegue y en
ocasiones carcter
obligatorio
Aspecto
Objetivo
OT
Disponibilidad,
integridad y
confidencialidad
Ciclo de vida
Evaluacin
cuantitativa del riesgo
Prctica realizada si es
obligatoria
Desarrollo de sistemas
de gestin de la
seguridad
No habitual y no
integrado
Antivirus y parches
Cumplimiento
normativas
Testeo y auditoras
Respuesta a
incidencias y anlisis
forense
JNIC2015
163
JNIC2015
2.
3.
4.
164
1.
2.
JNIC2015
3.
4.
5.
A. reas de anlisis
Las reas de anlisis que establece MAASERIS son tres. En
primer lugar se procede al anlisis de inventario de activos
vinculados al entorno OT. Para ello se ha desarrollado una base
de datos que facilita la introduccin y categorizacin de los
diferentes activos, as como las dependencias entre ellos. Entre
los tipos de activos se encuentran los siguientes: concentrador,
conversor, controlador DCS, datos, electrnica de potencia,
firewall/UTM, HMI / Touch Panel, maquinaria, PC, PLC,
pantalla, periferia, protocolos, puntos de acceso inalmbricos,
repetidores, robot, router, sistema de marcaje, servidor,
software de gestin en tiempo real y switch. Adems se
procede a realizar una agrupacin fsica de activos (planta,
edificio, sala, rack, lnea, sistema, red) y una agrupacin lgica
(red, sistema).
El segundo rea de anlisis es la identificacin de
vulnerabilidades. A travs de diferentes tcnicas y
herramientas, en muchos casos desarrolladas a medida para
entornos OT aunque en otros casos se ha podido trabajar con
herramientas tpicas en IT (como las que incorpora la
distribucin Kali Linux), se descubren las distintas
vulnerabilidades que se asocian a los activos y a las
agrupaciones de activos. Para facilitar el trabajo inicial, se ha
creado una lista de vulnerabilidades tipo vinculadas a las
siguientes dimensiones: seguridad fsica, polticas y
procedimientos, tolerancia a fallos y disponibilidad, visibilidad
y acceso entre redes, software, IAAA y criptogrfica.
Por ltimo la tercera rea de anlisis es la gestin del riesgo
operativo. Como se ha explicado en la seccin III, el riesgo
operativo se define como la probabilidad de sufrir un incidente
de seguridad a nivel operativo. Es decir, vinculado a un
entorno de produccin o una infraestructura crtica, la
existencia de un determinado riesgo afectara a la normal
operacin de sus sistemas, procesos y personas.
Para medir el riesgo operativo se ha definido una mtrica
denominada ndice de Riesgo Operativo (IRO) que se mide en
Unidades de Riesgo Operativo (URO). El ndice de Riesgo
10
165
10
JNIC2015
10
Cdigo
R08
R09
R10
R11
R12
R13
R14
R15
R16
R17
R18
Cdigo
R19
R20
R21
5.
6.
Cdigo
RE01
MA01
MA01_BBDD
MA01_anexo
MA02
MA02_anexo
MA03
RO1
RO2
Entregable
Resumen ejecutivo
Inventario de dispositivos Ethernet
BBDD de inventario de actives y dependencias
Procedimiento actualizacin BBDD inventario
Arquitectura de red actual
Mapa de arquitectura de red actual
Informe multidimensional de vulnerabilidades
Informe de riesgos operatives
Mapa de riesgos
166
JNIC2015
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
ICS-CERT.
Assessments.
cert.gov/Assessments
AGRADECIMIENTOS
A David Soler y Santiago Ramrez por el trabajo realizado
en la implantacin y evolucin de la metodologa. A Josep
Rodrigo, Patxi Arruabarrena, Asier Olea y Fernando Campos
por su participacin en el equipo de trabajo multidisciplinar
que hizo posible la creacin de la metodologa. A Manuel
Meijueiro y a Jordi Rey por su apoyo a esta iniciativa desde la
direccin de Logitek.
REFERENCIAS
[1]
167
Julio
2015.
https://ics-cert.us-
JNIC2015
I.
I NTRODUCCI ON
168
JNIC2015
Entorno grafico
ligero LXDE (deshabilitado por defecto)
VirtualBox Guest Additions 4.3.x
Servicios (desactivados por defecto):
servidor web (Apache 2)
servidores inetd: telnetd, ftpd, fingerd
servidor BD mysql
servidor smtp (postfix)
servidor pop3, imap (dovecot)
servidor ssh (openSSH)
servidor ldap (openLDAP)
Herramientas de seguridad:
analizador de protocolos WIRESHARK
escaner de vulnerabilidades: NESSUS y OPEN VAS
escaner de puertos NMAP (interfaz ZENMAP)
matasploit framework
de intrusiones en red SNORT
sistema de deteccion
de intrusiones en host SAGAN
sistema de deteccion
cortafuegos: netfilter/iptables
interfaces iptables: Firestarter, Shorewall
consola eventos IDS SNORBY
openVPN, openssl, easy-rsa, tinyca
otras: netcat (nc), hping3, iptraf, netstat-nat, tcptraceroute
Aplicaciones web vulnerables:
OWASP WebGOAT (http://webgoat.github.io/)
Mutillidae (http://sourceforge.net/projects/mutillidae/)
Damn Vulnerable Web App (http://www.dvwa.co.uk/)
foro PHP vulnerable (desarrollo propio)
Wordpress 1.5.1.1
Software general:
clientes telnet, ftp y ssh
navegador web modo texto Lynx
navegador web Mozilla Firefox
editores: vi, nano, jed, leafpad
Otras herramientas:
balanceo de carga basado en proxies (HAProxy)
LinuxHA (heartbeat, pacemaker)
de la imagen: aprox. 4,2 GB (1,9 GB comprimida)
Tamano
TUAL BOX 5 ,
1 http://wiki.qemu.org/
5 https://www.virtualbox.org/
3 http://www.xenproject.org/
7 https://www.docker.com/
6 https://www.vagrantup.com/
2 http://www.linux-kvm.org/
8 http://libvirt.org/
4 http://www.vmware.com/
169
JNIC2015
TABLA I
L ISTADO DE ACTIVIDADES D ISPONIBLES Y H ERRAMIENTAS DE S EGURIDAD E MPLEADAS .
(a) S EGURIDAD EN REDES : SEGURIDAD PERIMETRAL
ACTIVIDAD
DIFICULTAD
media
alta
media
media
media
media
HERRAMIENTAS / TECNOLOGI AS
shorewall, nmap
shorewall, nmap
openvpn, openssl, tinyca, shorewall
iptables, nmap
snort, barnyard2, snorby, scapy
snort, barnyard2, snorby, syslog
DIFICULTAD
Analisis
de protocolos y escaneo de puertos
Man in the middle sobre SSL en redes locales
baja
media
HERRAMIENTAS / TECNOLOGI AS
wireshark, nmap
ettercap, sslsniff, sslstrip
DIFICULTAD
baja
media
HERRAMIENTAS / TECNOLOGI AS
DE SISTEMAS
(d) A DMINISTRACI ON
ACTIVIDAD
DIFICULTAD
alta
baja
baja
media
HERRAMIENTAS / TECNOLOGI AS
DIFICULTAD
Analisis
de vulnerabilidades: openVAS y Nessus
de vulnerabilidades: Metasploit+Armitage sobre Metasploitable2
Explotacion
baja
alta
HERRAMIENTAS / TECNOLOGI AS
170
13 Ver
https://www.virtualbox.org/wiki/Guest OSes
JNIC2015
171
JNIC2015
R EPOSITORIO DE ACTIVIDADES
Para hacer disponible la coleccion de actividades y ejercicios basados en MVs desarrollados a lo largo de estos anos de
actividad docente se ha publicado un repositorio web donde
se recogen los enunciados, guas y demas recursos utilizados,
junto con las imagenes base de las MVs utilizadas y los respectivos shell scripts de instalacion y puesta en marcha. Este
repositorio esta actualmente publicado en la direccion http:
//alqueidon.ei.uvigo.es/repossi/ y se estructura
en 4 secciones, que se corresponden aproximadamente con la
estructura seguida en las actividades practicas de las asignaturas de seguridad en sistemas de informacion impartidas.
en http://sourceforge.net/projects/metasploitable/.
172
JNIC2015
TABLA II
PAR AMETROS
C ONFIGURABLES EN LAS MV S MEDIANTE Guest Properties.
CLAVE ATRIBUTO
TIPO VALOR
DESCRIPCI ON
/DSBOX/num_interfaces
/DSBOX/{interface}/tipo
num.
entero
/DSBOX/{interface}/address
/DSBOX/{interface}/netmask
IP
direccion
mascara
de red (formato
nnn.nnn.nnn.nnn)
IP
direccion
dir. IP o nombre completo
Numero
de dispositivos de red conectados a la MV huesped
Asignacion
estatica)
Direccion
Mascara
de red del interfaz no {interface} en el modo de configuracion
estatico
IP de broadcast del interfaz no {interface} en el modo estatico
Direccion
IP o nombre de la maquina
Direccion
que hace el papel de puerta de enlace
(ruta por defecto de la MV)
Lista de direcciones IP de los servidores de nombres a utilizar por la MV
de la maquina
virtual (permite que las MVs sean accesibles por nombre sin
necesidad de instalar un servidor DNS propio en la red virtualizada)
/DSBOX/{interface}/broadcast
/DSBOX/default_gateway
/DSBOX/default_nameserver
/DSBOX/host_name
/DSBOX/etc_hosts_dump
Desarrollo seguro. Centrado en la revision de las vulnerabilidades tpicas en aplicaciones web. Se hace uso de
aplicaciones educativas que cuentan intencionadamente
con vulnerabilidades conocidas, como problemas de inyeccion SQL o Cross Site Scripting (XSS).
Tambien se presentan alternativas para mitigar estos
problemas mediante el uso de cortafuegos de nivel de
aplicacion como mod-security.
Administracion de sistemas. Se revisan cuestiones relativas a la administracion segura de sistemas, fundamentalmente cuestiones relacionadas con la autenticacion en
entornos centralizados.
Se incluyen tambien ejercicios complementarios relacionados con balanceo de carga de aplicaciones y con
soluciones de alta disponibilidad, que si bien van mas alla
de lo que abarca tpicamente un curso sobre seguridad,
sirven para mostrar la versatilidad de nuestra propuesta
al aplicarla en otros campos relacionados.
Tests de intrusion. Se presentan ejemplos de uso de
herramientas empleadas tpicamente para dar soporte a
tareas habituales en los tests de intrusion, como detectores/analizadores de vulnerabilidades o frameworks de
explotacion de vulnerabilidades como Metasploit.
En la Tabla I se detallan las actividades actualmente disponibles dentro de cada una de estas secciones, junto con una
indicacion de las herramientas concretas trabajadas en cada
actividad. En la Fig. 2 se muestra una captura de la seccion
Seguridad en red del repositorio de actividades, con una
descripcion de parte de las actividades incluidas en la misma.
De un modo general se ha intentado seguir un esquema
uniforme a la hora de describir cada actividad. As, la documentacion de las actividades que actualmente forman parte del
repositorio sigue el siguiente esquema:
1. Descripcion general de la actividad
Objetivos (y vinculacion con contenidos teoricos)
Escenario: redes, maquinas, herramientas a emplear
Recursos: informacion de las herramientas, manuales, tutoriales externos, etc
2. Desarrollo guiado
Scripts de puesta en marcha para entornos
GNU/Linux y MS Windows 15
Pasos a seguir comentados
3. Actividades autonomas
Pruebas/experimentos a realizar
Cuestionarios
4. Descripcion de los entregables requeridos (opcional)
En la Fig. 2 se muestra el enunciado de la actividad Uso de
Shorewall: DMZ con doble firewall que sigue este esquema.
Se trata de una actividad que emplea una de las topologas de
red mas complejas presentes en el repositorio.
Como hemos senalado, por razones de comodidad y eficiencia, todas las actividades del repositorio hacen uso de una
imagen base comun. De este modo, una vez descargada esta
imagen durante el primer uso de una actividad del repositorio,
la puesta en marcha de las sucesivas actividades se simplifica.
El script de puesta en marcha que acompana a cada actividad
se encarga de la descarga de la imagen base (si esta no existe),
para, una vez esta este disponible, proceder a la creacion de
las imagenes incrementales usadas por cada MV concreta y
a la configuracion de sus parametros. En caso de que todas
estas tareas ya hubieran sido realizadas, el script simplemente
arrancara las maquinas que correspondan al ejercicio.
IV.
DE S IMULACIONES :
H ERRAMIENTA DE D ISE NO
DS BOX
173
JNIC2015
Fig. 3. Vision general de DS BOX: escenario Uso de Shorewall: DMZ con doble firewall y configuracion de conexiones en cortafuegos contencion.
Y C ONCLUSIONES
E VALUACI ON
174
JNIC2015
Fig. 4. Evaluacion global por parte del alumnado y principales problemas o dificultades.
175
JNIC2015
area en los u
ltimos dos o tres a
nos. Este articulo recoge
el contexto en el que se ha trabajado para realizar este
cambio, las experiencias y resultados obtenidos y algunas
ideas para trabajar en el futuro.
n
I. Introduccio
Distintos organismos e instituciones como NERC,
NIST, ISACA, ENISA o el DHS han propuesto en
los u
ltimos a
nos mejores practicas para la formacion y
concienciacion en Seguridad Informatica. Si se analiza
toda esta documentaci
on, se suelen proponer niveles de
profundizacion, contenidos asociados a cada uno de ellos
y roles que deberan formarse y/o concienciarse a un
nivel o a otro. Desafortunadamente, si se asocia la
concienciacion con la comprension del Que (informacion,
sensibilizacion) y la formacion con la comprension del
Como (conocimiento), todas estas propuestas dejan sin
tratar la Educacion, que se asociara con el Por que. Y
este es justo el nivel en el que deberan encontrarse las
asignaturas de Seguridad Informatica en las titulaciones
universitarias.
Sin este tipo de recomendaciones y guas, ni
nacionales ni internacionales, la mayor parte de las
nuevas titulaciones en el Espacio Europeo de Educacion
Superior (EEES), es decir, los nuevos grados, han
planteado casi siempre modulos curriculares o asignaturas
completas de Seguridad Informatica con planteamientos
mayoritariamente teoricos y centrados en la criptografa.
Sin embargo cada vez esta mas claro que este enfoque se
aleja del tipo de educacion que se debera estar dando en
la universidad para este area de la informatica ([1]). Las
necesidades de los nuevos profesionales en una sociedad
tecnologica y en red como la actual, en la que la Seguridad
Informatica afecta practicamente a todas las facetas de la
vida cotidiana de personas y organizaciones, nos obligan a
realizar un esfuerzo desde las universidades para adaptar
nuestros contenidos y enfoques pedagogicos ([2], [3], [4],
[5]).
Este esfuerzo ha comenzado a realizarse en la
Universidad Rey Juan Carlos (Madrid) en el curso
2014/2015, probando un nuevo enfoque para ocho grupos
176
JNIC2015
177
JNIC2015
178
JNIC2015
TABLA I
tica
Nuevos contenidos de la asignatura de Seguridad Informa
Bloque I
Unidad 1
Introduccion
Informatica
Introduccion
Unidad 2
Bloque II
Unidad 3
Ataques y contramedidas
Anatoma de un ataque hacker
Unidad 4
Unidad 5
Unidad 6
Unidad 7
Mecanismos criptograficos
Unidad 8
Contramedidas
protocolos
Unidad 9
Bloque III
Unidad 10
Unidad 11
Unidad 12
la
en
redes
179
JNIC2015
TABLA II
n de actividades pra
cticas en el aula
Programacio
Semana 1
Semana 2
Semana 3
Semana 4
Semana 5
Semana 6
Semana 10
Semana 11
Semana 12
Semana 15
Semana 16
Polticas y procedimientos
Incidentes, ataques y eventos
Semanas 7 a 9
Ataques
Semanas 13 y 14
Contramedidas
TABLA IV
n y calificaciones
Sistema de evaluacio
Actividad
Peso en la nota Calificacion media
Teora (clases, presentaciones, seminarios)
40%
7.2
Practicas en el aula
40%
8.1
Pr
acticas en el laboratorio
20%
8.3
alguna manera a los alumnos que se han involucrado en las
actividades optativas (las denominadas otras actividades
practicas) dentro del marco regulatorio de la universidad
respecto a sistemas de evaluaci
on.
VI. Conclusiones y trabajo futuro
Seg
un los u
ltimos estudios, mas de la mitad de las
empresas reconocen que les cuesta encontrar personal
convenientemente formado en Seguridad Informatica.
Esta limitacion esta siendo en muchos casos una de las
causas por las que se ralentiza la adopcion de nuevos
paradigmas como Mobile, Cloud o IoT. Gobiernos y
corporaciones comienzan a presionar para reducir el skill
gap detectado y las universidades deben asumir su parte
de responsabilidad, actualizando los programas y los
enfoques de las asignaturas de Seguridad Informatica en
180
JNIC2015
[10] National
Audit
Oce.
The
UK
cyber
security
strategy:
Landscape
review.
http://www.nao.org.uk/wp-content/uploads/2013/03/
Cyber-security-Full-report.pdf.
[11] Educating the next generation experts in cyber security.
http://engensec.eu/.
[12] Georgia
tech
information
security
center.
https://www.gtisc.gatech.edu/.
[13] Center for education and research in information assurance and
security (CERIAS). https://www.cerias.purdue.edu/.
[14] Marta Beltr
an and Isaac Martn de Diego. Gua de asignatura:
Seguridad inform
atica, grado en ingeniera inform
atica URJC
(2014/2015). http://miportal.urjc.es/guiasdocentes/.
Agradecimientos
Nuestro agradecimiento a los profesores que impartieron
las asignaturas de Seguridad Informatica en los cursos
anteriores, a los alumnos por sus valiosas aportaciones,
a todos los ponentes de los seminarios organizados para
la asignatura y a los ponentes de ISACA que participaron
en el Ciclo de Seminarios sobre Ciberseguridad de ISACA
(todos ellos nos han ayudado desinteresadamente) y a
todos los involucrados en la organizacion del Techfest 4
y del CyberCamp2014.
Referencias
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
Frost
and
Sullivan.
The
2013
(ISC)2
global
information
security
workforce
study.
https://www.isc2.org/uploadedfiles/(isc)2 public content/2013
J. Mirkovic and T. Benzel. Teaching cybersecurity with
DeterLab. IEEE Security & Privacy, 10(1):7376, 2012.
Richard Weiss, Michael Locasto, Jens Mache, and Vincent
Nestler. Teaching cybersecurity through games: a cloud-based
approach.
Journal of Computing Sciences in Colleges,
29(1):113115, 2013.
L. Ben Othmane, V. Bhuse, and L.T. Lilien. Incorporating
lab experience into computer security courses. In Proceedings
of the 2013 World Congress on Computer and Information
Technology, pages 14, 2013.
K. Salah, M. Hammoud, and S. Zeadally.
Teaching
cybersecurity using the cloud. IEEE Transactions on Learning
Technologies, 2015.
Conferencia de Decanos y Directores de Inform
atica (CODDI).
Acuerdos de la conferencia de decanos y directores
de
inform
atica
sobre
titulaciones
en
el
EEES.
https://www.fi.upm.es/docs/conocenos/resumen de prensa/
151 CODDI.pdf.
IEEE and ACM.
Computer science curricula 2013.
https://www.acm.org/education/CS2013-final-report.pdf.
IBMs
cyber
security
innovation
program.
https://www-304.ibm.com/ibm/university/academic/pub/page/
teaching topics.
National
initiative
for
cybersecurity
education.
http://csrc.nist.gov/nice/.
181
JNIC2015
n
I. Introduccio
El Informe Anual de Seguridad de Cisco [1] en 2014
establece que uno de los retos fundamentales para la industria en el ambito de las Tecnologas de la Informaci
on
y la Comunicacion (TIC) es encontrar profesionales adecuadamente preparados para prevenir, detectar y mitigar
amenazas de seguridad. En dicho informe, se estima que la
demanda de estos profesionales supera a la oferta en m
as
de un millon. Adicionalmente, el aumento en n
umero y
sofisticacion de las amenazas de seguridad lleva a la necesidad de potenciar determinadas habilidades anteriormente poco comunes en los profesionales de seguridad, como
es la capacidad de analisis de grandes conjuntos de datos
(Big Data) o el dominio de la seguridad en tecnologas novedosas, como comunicaciones moviles, Bring Your Own
Device (BYOD) y la nube.
La conocida web de profesionales TIC TechRepublic [2],
en una consulta realizada a influyentes profesionales ejecutivos y de equipos de recursos humanos, identifica que
las principales tendencias de contratacion de profesionales
TIC en 2014 incluiyen conocimientos de analisis Big Data,
comunicaciones moviles, la nube y seguridad en red. Otras
listas similares coinciden en la priorizacion de la seguridad
como uno de los principales retos del futuro inmediato.
La demanda actual de profesionales de seguridad requiere la definicion de unas instalaciones docentes de gran
flexibilidad, donde poder incorporar herramientas actuales y reproducir condiciones realistas en casos de estudio.
Por desgracia, el dise
no actual tpico de los laboratorios
de docencia pr
actica no permite dicha flexibilidad. La incorporacion de nuevas herramientas a los laboratorios requiere de la dedicacion exclusiva de personal de labora-
torio, que instala el nuevo software en un conjunto reducido de sistemas operativos con los que el alumno puede
iniciar la sesi
on. Dicha incorporaci
on debe ser planificada con suficiente antelaci
on, ya que se debe comprobar
que las nuevas herramientas funcionan adecuadamente y
no interfieren en el funcionamiento de otras herramientas
instaladas con anterioridad. Unido esto a la necesidad de
realizar las pr
acticas de seguridad en un entorno controlado, por lo general sin acceso a Internet y con funcionalidad
muy restringida, hace que el entorno de trabajo diste de
ser realista y que la generaci
on de material pr
actico para
la docencia de seguridad resulte limitada y poco eficiente.
Por otro lado, el n
umero limitado de sistemas operativos para el uso del laboratorio, as como de puestos en los
laboratorios, limita la reproducci
on de condiciones realistas en las sesiones pr
acticas. Tradicionalmente, para paliar este problema, se ha hecho uso de herramientas de
simulaci
on. No obstante, en el dominio de la seguridad en
red la simulaci
on impone serias limitaciones. Por ejemplo,
si bien es posible simular el tr
afico de una red con cierta fidelidad, no existen herramientas especializadas para
simular vulnerabilidades en sistemas, ataques concretos,
herramientas fundamentales en el an
alisis de la seguridad
en red, etc.
En este artculo se propone un dise
no de laboratorio virtual de seguridad en red que se adapta a las necesidades
docentes actuales. La soluci
on propuesta combina los conceptos de virtualizaci
on y USB de inicio (live-USB), que
permite arrancar un sistema operativo anfitri
on o host con
una red virtualizada de m
aquinas virtuales guest a traves
de VirtualBox. Dichas m
aquinas guest, as como el sistema host que las alberga, pueden ser personalizadas previamente por el docente, de acuerdo al trabajo de laboratorio
que se quiera ofrecer al alumno. Integrando la red virtualizada en dispositivos live-USB con suficiente capacidad,
es posible cambiar el comportamiento de cada PC en el
laboratorio de acuerdo a la pr
actica concreta a realizar.
La inclusi
on de nuevas herramientas en el laboratorio es
tan sencilla como la instalaci
on de dicha herramienta en
un nuevo USB de inicio. Esto aporta una flexibilidad y capacidad de generaci
on de nuevos materiales muy superior
a la actual. Adicionalmente, la virtualizaci
on permite escalar las pr
acticas a mayor cantidad de m
aquinas, ya que
cada PC real puede simular varias m
aquinas virtuales. La
combinaci
on de la virtualizaci
on con los dispositivos de
interconexi
on disponibles en los laboratorios (conmutado-
182
JNIC2015
183
JNIC2015
184
JNIC2015
Ubuntu cuenta con una interfaz grafica de trabajo bastante intuitiva. Por u
ltimo, Ubuntu cuenta con la herramienta
Systemback. Systemback realiza dos procesos de gran relevancia para el laboratorio virtual: genera una imagen donde vuelca una copia en vivo del sistema operativo Ubuntu
que la contiene y graba dicha imagen dentro de un dispositivo live-USB. En comparacion con otras opciones m
as
conocidas de generacion de live-USB, Systemback tiene
las siguientes ventajas:
Es capaz de generar copias en vivo de instant
aneas de
sistemas Ubuntu personalizados, no solo de distribuciones
oficiales como es el caso de UNetbootin y similares.
Puede generar live-USB a partir de las imagenes generadas.
Permite planificar, dentro del mismo sistema operativo
Ubuntu, la configuracion y personalizacion requerida de
maquinas virtuales, de modo que para realizar cambios en
el live-USB, basta con generar un nueva imagen a partir
de Systemback para que esta sea volcada en el dispositivo.
No produce errores en el etiquetado de las particiones
que se generan en el live-USB.
Se puede acceder a su codigo fuente, ademas de aceptar
mejoras propuestas por los usuarios gracias a su car
acter
de software libre.
185
JNIC2015
este ejemplo concreto se ha utilizado Windows XP. El software para el botmaster cuenta con una herramienta para
editar y compilar un archivo de configuraci
on y crear un
archivo .bin y un ejecutable que ha de ser enviado y ejecutado en la m
aquina vctima. Este ejecutable es lo que se
conoce com
unmente como el troyano Zeus o Trojan.Zbot.
Adem
as el botmaster puede acceder a un panel de control donde se muestran estadsticas acerca de los n
umero
de ordenadores infectados, n
umero actual de los robots en
la lnea, n
umero de nuevos bots, actividad diaria de estos, estadsticas de los pases en los que se encuentran las
m
aquinas infectadas y SO de las mismas.
A. Entorno experimental
El entorno propuesto esta dise
nado para la ejecuci
on de
una practica en grupos de 2 alumnos sobre el funcionamiento y deteccion de las botnets. Las botnets son redes
de equipos comprometidos denominados bots que siguen
las ordenes de un operador humano llamado botmaster.
En concreto la botnet utilizada es Zeus, tambien conocida como Zbot, Kneber, PRG, NTOS, Wsnpoem and Gorhax [4]. Esta botnet dispone de una herramienta DIY (Doit-yourself) por medio de la cual el desarrollador facilita
todas las herramientas necesarias para construir y administrar la botnet. En esencia Zeus es una red de bots que se
comunican a traves del protocolo HTTP. Todas las comunicaciones de comando y control (C&C) se realizan remotamente desde un sitio web gestionado por el botmaster.
Zeus se ha especializado en robar credenciales bancarias en
los equipos con el sistema operativo Microsoft Windows.
Zeus se compone de un elemento cliente y otro servidor. El servidor cuenta con un generador de malware que
ayuda al botmaster a crear el codigo cliente del malware
cuyo nombre tecnico es PWS-ZBot, para posteriormente
infectar los equipos y unirlos a la red de bots, conect
andolos a un sitio web remoto que aloja el servidor Zeus. Por
u
ltimo, una vez que el troyano Zeus infecta una m
aquina, cuando el usuario final visita una pagina web con un
formulario el troyano captura cada uno de los campos de
dicho formulario y enva su contenido al servidor que los
almacena en una base de datos.
En la practica dise
nada como caso de uso se pretende
montar un entorno en el que Zeus pueda funcionar y ser
detectada. En esta practica cada alumno es responsable
de configurar y operar un equipo fsico que contiene al
menos una m
aquina virtual. La configuracion inicial de
sistemas operativos, herramientas instaladas y m
aquinas
virtuales disponibles viene determinada por los live-USB
que el docente entrega a cada alumno al inicio de la pr
actica y que han sido completamente configurados previamente por este.
En la Fig. 4 se detalla el mapa de red de los dos equipos
fsicos incluyendo las maquinas virtuales que contienen.
Estos son:
Equipo Fsico del Alumno 1:
Botmaster : El codigo de control para el botmaster de
Zeus es soportado por los siguientes sistemas operativos
XP / Vista / 7, as como 2003/2003R2/2008/2008R2. En
186
JNIC2015
B. Experimentaci
on
Siguiendo las fases de una botnet definidas en [4] la experimentacion para desplegar y utilizar la botnet se divide
en: concepcion, reclutamiento, interaccion y ejecuci
on del
ataque. Finalmente, se expondran brevemente algunas posibilidades de deteccion propuestas en la practica.
B.1 Concepcion
En la etapa de concepcion de la botnet es necesario crear
los ejecutables que infectaran las maquinas vctima y la
herramienta que se utilizara para controlarlos envi
andoles
mensajes C&C. Con el codigo DIY de Zeus estas dos operaciones se consiguen configurando el archivo config.txt.
El archivo de configuracion se divide en dos secciones:
staticConfig y dynamicConfig [8]. StaticConfig contiene
los parametros que son codificados en el bot y a los que
obedece y dynamicConfig los parametros que pueden ser
cambiados tras la creacion del Zbot, ya que no son codificados por el builder, sino que son guardados como una
configuracion encriptada a la que el bot tiene acceso a ellos
en todo momento.
Los parametros fundamentales a configurar de este archivo (tanto de la seccion staticConfig como de la secci
on
dynamicConfig) son:
timer logs: Frecuencia con la que el bot manda datos al
botmaster.
WebFilters: Lista de URLs que deben ser monitorizadas. Los datos enviados a estas URLs tales como credenciales de banca online son capturados antes de establecerse
SSL y posteriormente enviados al servidor C&C. Adem
as,
ofrece la posibilidad de tomar una captura de pantalla del
cliente cuando este pulse el bot
on izquierdo de su rat
on,
siendo esto realmente u
til para el robo de n
umeros PIN.
WebFakes: Con este par
ametro se puede redirigir la direcci
on URL especificada WebFakes a una URL diferente,
versi
on potencialmente falsa de la misma.
Una vez que el archivo de configuraci
on ha sido editado
en base al fin perseguido se procede a la creaci
on de los
ejecutables utilizando la herramienta Zeus Builder.
Finalmente, es de resaltar que el objetivo de este caso de uso no es comprobar la calidad de la operaci
on de
Zeus, sino determinar la capacidad de detecci
on que los
alumnos pueden desarrollar para evitar que amenazas como esta puedan perpetrar la seguridad de los sistemas
que gestionen en un futuro. Es por ello que no se pretende
realizar pruebas con todas y cada una de las posibilidades que ofrece la botnet, sino m
as bien determinar si es
detectado en el momento de ejecuci
on del bot.exe y/o en
el intercambio de mensajes con el servidor C&C mientras
se roban datos introducidos en el formulario.
B.2 Reclutamiento e Interacci
on
Terminada la fase de concepci
on es necesario distribuir
e instalar el c
odigo malicioso generado a fin de reclutar
miembros de la botnet. Para esto, en esta pr
actica se utiliza
una p
agina web del servidor web desde la que las m
aquinas
vctima se descargan e instalan el c
odigo malicioso.
Tras la ejecuci
on, el cliente se convierte en un robot de la
botnet y el ejecutable descargado y usado en la instalaci
on
se elimina de forma autom
atica. A partir de este momento,
el botmaster en su servidor registra al equipo infectado y
puede comenzar la etapa de interacci
on a traves de la que
las comunicaciones C&C por medio del protocolo HTTP
se realizan. Las comunicaciones son codificadas utilizando
187
JNIC2015
Fig. 7. Detecci
on por Splunk
B.3 Ejecuci
on del ataque
El objetivo final de toda botnet es realizar un ataque exitoso. Esto se lleva a cabo por medio de la infraestructura
de C&C establecida y configurada en las fases de reclutamiento e interacci
on. Para controlar esta infraestructura
el botmaster dispone de un panel de control centralizado.
En este panel de control se muestra informaci
on sobre
cu
antos equipos hay infectados, cu
anto tiempo est
an activos, el n
umero de reportes de cada bot, la version del bot
que tienen instalada, etc.
En cuanto el bot.exe es ejecutado, este roba autom
aticamente la informaci
on almacenada en PSTORE (Protected
Storage), la cual usualmente contiene guardadas contra-
188
JNIC2015
se
nas de Internet Explorer. Ademas comienza a capturar
y almacenar en la base de datos automaticamente contrase
nas FTP y POP3 que son enviadas a traves de la red.
Para consultar las contrase
nas que los bots han conseguido recopilar hay que dirigirse dentro del panel de control
a Menu>Reports>Search in database. En este momento,
se puede hacer un filtrado para buscar resultados de bots
concretos con determinados parametros, ver Fig. 5, o simplemente mostrar todos los resultados de la base de datos.
Es posible adicionalmente capturar la pantalla del bot
con el objetivo de encontrar las contrase
nas introducidas
por medio de teclados virtuales en lugar de introducidas en
los formularios directamente. Ademas, no solo se obtiene
informacion sobre las credenciales y capturas de pantalla,
sino que se aportan datos como la version exacta del sistema operativo o el tiempo online del mismo entre otros.
B.4 Deteccion
Para la parte de deteccion de la practica propuesta se
comienza por configurar Snort con las reglas de detecci
on
por defecto. Los logs generados por Snort son enviados a
Splunk para su visualizacion. A modo de ejemplo, en la
Fig. 6 se muestran algunos de esos logs.
Splunk permite la visualizacion de logs as como la aplicacion de reglas de deteccion. Al igual que con Snort, se
utilizan las reglas de deteccion por defecto en Splunk. En
la Fig. 7 se puede ver la alerta Posible Troyano Zeus
creada para la deteccion de una infeccion por parte del
Troyano Zeus. Adicionalmente, se muestra una visualizaci
on de Afterglow.
para su impartici
on en titulaciones de la Universidad de
Granada.
Agradecimientos
Este trabajo ha sido parcialmente financiado por el Programa de Innovaci
on Docente de la Universidad de Granada, con la beca 14-54.
Referencias
[1] C. Systems, Annual Report 2014, Tech. Rep., 2014,
http://investor.cisco.com/files/doc downloads/annual meeting/CiscoSystems-Annual-Report.pdf.
[2] T. Hammond, Top IT job skills for 2014: Big data, mobile, cloud, security, TechRepublic, Tech. Rep.,
2014, http://www.techrepublic.com/article/top-it-job-skills-in2014-big-data-mobile-cloud/.
[3] E. Young, REMBO: A Complete Pre-OS Remote Management
Solution REMBO Toolkit 2.0 Manual, 2002.
[4] R. A. Rodrguez-G
omez, G. Maci
a-Fern
andez, and P. GarcaTeodoro, Survey and Taxonomy of Botnet Research Through
Life-cycle, ACM Comput. Surv., vol. 45, no. 4, pp. 45:145:33,
Aug. 2013.
[5] P
agina principal de Snort, https://www.snort.org/, [Ultimo
acceso: 15 julio 2015].
[6] P
agina principal de Splunk, http://www.splunk.com/, [Ultimo acceso: 15 julio 2015].
[7] P
agina de AfterGlow, http://afterglow.sourceforge.net/, [Ultimo acceso: 15 julio 2015].
[8] W.
Xiangyu,
ZeuS
The
Missing
Manual,
http://www.docstoc.com/docs/90755139/ZeuS-The-Missing
Manual, [Ultimo
acceso: 15 de julio 2015].
B.5 Discusion
Si bien la experiencia preparada para ilustrar el uso del
laboratorio virtual es de claro interes en el marco la docencia practica de seguridad, y muestra la ventaja de dotar
de flexibilidad en n
umero y tipo de dispositivos a dicho
laboratorio, la realidad es que este sistema de detecci
on
tiene altas limitaciones para la deteccion de botnets. En
la actualidad, se esta trabajando en una propuesta de deteccion distribuida con el objeto de mejorar el rendimiento
de deteccion.
VI. Conclusiones y trabajo futuro
En este trabajo se ha presentado el dise
no de un laboratorio virtual basado en dispositivos live-USB. Dicho
laboratorio permite una amplia flexibilidad de contenidos
en las experiencias practicas y de topologas de red consideradas. En combinacion con los dispositivos fsicos de
interconexion disponibles en la Escuela Superior de Ingenieras de Informatica y de Telecomunicacion de la Universidad de Granada, dichos live-USB permiten la configuracion de escenarios de seguridad realistas que pueden
ser configurados con gran agilidad por parte del profesor.
Adicionalmente, los live-USB permiten a los estudiantes
realizar experimentos practicos de escenarios en red sin
m
as ayuda que su propio PC.
El trabajo futuro estara destinado a validar esta idea
de laboratorio con la generacion de materiales concretos
189
JNIC2015
Angel
Martn del Rey, Ascension Hernandez Encinas, Jes
us Martn Vaquero,
Araceli Queiruga Dios, Gerardo Rodrguez Sanchez
Departamento de Matematica Aplicada, Universidad de Salamanca
Resumen Dentro de las distintas modalidades de Bachillerato, se ha puesto en marcha en los dos u
ltimos a
nos el
Bachillerato de Investigaci
on/Excelencia (BIE) que tiene
como principal diferencia una colaboraci
on, m
as o menos
estrecha, con diferentes departamentos universitarios. Los
autores, miembros del Departamento de Matem
atica Aplicada de la Universidad de Salamanca, est
an colaborando
con dos IES (uno de Salamanca y otro de Zamora) realizando distintas actividades relacionadas con la Criptografa
y la Seguridad en la Informaci
on que han tenido muy buena
acogida entre los estudiantes de los centros involucrados. A
lo largo de este artculo describimos la experiencia realizada y analizamos las propuestas de futuro.
n
I. Introduccio
El Bachillerato de Investigaci
on/Excelencia desarrollado en la Comunidad Autonoma de Castilla y Leon tiene
como finalidad estimular el aprendizaje autonomo, el trabajo en equipo y el interes por conocer diferentes metodos
y tecnicas de investigaci
on, en colaboracion directa con
personal docente e investigador universitario [2]. La Universidad de Salamanca firmo en 2013 un convenio especfico de colaboracion con la Junta de Castilla y Leon para
el desarrollo de actividades asociadas a la investigacion
propias del BIE.
El BIE es una modalidad de Bachillerato que incorpora dos asignaturas (una en cada curso de Bachillerato) de
Introduccion a la Investigaci
on: Iniciacion a la investigacion en el primer curso y un proyecto de investigacion
en el segundo. El contenido de las asignaturas tiene una
parte variable que depende de las actividades dise
nadas
por los distintos departamentos universitarios que colaboran en la rama del BIE correspondiente y que en nuestro
caso es la rama de Ciencias y Tecnologa. Las actividades desarrolladas por los departamentos son muy diversas: conferencias, talleres, practicas de laboratorio, visitas
a centros, etc. Ademas, la asignatura correspondiente al
segundo curso del BIE conlleva la realizacion de un peque
no proyecto de investigaci
on individual (solo en casos
concretos se autoriza la realizacion de proyectos compartidos) que es co-tutorizado por el profesor universitario
que propone el proyecto y por un profesor del Instituto de
Educacion Secundaria (IES) correspondiente. Ese proyecto tiene una estructura fijada en la normativa vigente y se
defiende en sesion p
ublica usualmente durante el segundo
trimestre del curso de segundo de Bachillerato.
Hay que hacer constar que la realizacion de esta colaboracion esta dentro de un proyecto de innovacion docente
que financian la Universidad de Salamanca y la Junta de
Castilla y Leon, y en el que participan todos los profesores
190
JNIC2015
191
JNIC2015
gunda conferencia titulada Modelos Matematicos en Ciberseguridad en la que se mostraron algunas tecnicas matematicas empleadas en Seguridad de la Informacion, concretamente:
Modelizacion matematica de la propagacion de malware.
Modelos matematicos para detectar amenazas en las redes de comunicaciones.
La carga matematica de esta charla es menor que la de
la anterior y se focalizo la atencion en las aplicaciones
practicas (vease la Fig. 3).
B. Curso 20142015
Fig. 4. Presentaci
on de la historia de la Criptografa.
En este tipo de trabajos se valora que el alumno organice y planifique adecuadamente la investigacion que
realiza, recopilando informacion procedente de internet o
de fuentes documentales. Ademas, debe familiarizarse con
las b
usquedas bibliograficas y citarlas correctamente. Para
este trabajo en particular el alumno busco referencias en
la biblioteca de su instituto y tambien en la Universidad.
En un trabajo de Aritmetica modular no poda faltar la
referencia al libro de Gauss de Disquisitiones arithmeticae
[4]. Como introduccion a la criptografa y los criptosistemas de sustitucion consulto los libros [1], [5] y [3], ademas
del libro de divulgacion [6].
Por su parte, en la realizacion del segundo proyecto de
investigacion que verso sobre los fundamentos tanto tecnicos como matematicos de la maquina Enigma, la alumna
tuvo que afianzar conceptos matematicos relacionados con
la Teora de la Combinatoria. Asimismo, realizo una importante labor de documentacion y b
usqueda bibliografica
que completo con una visita a las instalaciones de Bletchley Park. Ademas dio la casualidad de que durante
la realizacion del trabajo de investigacion se estreno la
pelcula The Imitation Game (en Espa
na, Descifrando
Enigma) sobre el papel que jugo Alan Turing en el criptoanalisis de la maquina Enigma. Este hecho acrecento el
interes y motivacion de la alumna y de sus compa
neros como se pudo ver reflejado en la exposicion final que hizo-.
Como parte final de estos trabajos de investigacion,
192
JNIC2015
Fig. 5. P
oster presentado en Alcuescar 2015.
rama de Ciencia y Tecnologa. En este caso, el centro universitario de referencia es la Escuela Politecnica Superior
de Zamora, cuyas instalaciones estan a escasos metros del
IES mencionado. Durante este curso, los profesores encargados de poner en marcha este Bachillerato nos solicitan
una relacion de actividades que se puedan llevar a cabo a
lo largo del curso academico. Contando con la experiencia del curso anterior en el IES Vaguada de la Palma,
proponemos una serie de charlas que tienen que ver con la
historia de la criptografa y con la descripcion de algunos
protocolos criptograficos. Todas las actividades se han llevado a cabo en las instalaciones de la Escuela Politecnica
de Zamora. Una vez elaborada la lista de actividades, con
la participacion de otros departamentos de la Escuela, los
alumnos y profesores del IES Claudio Moyano eligen las
actividades que les parecen mas apropiadas. Ademas, dado que hay alumnos de Ciencias y alumnos de Tecnologa,
las actividades pueden ser dirigidas a todo el grupo o bien
ser especficas para los alumnos de cada especialidad. Con
estas normas, las dos charlas propuestas fueron elegidas
para ser impartidas al curso completo de 20 alumnos. La
estructura de las actividades realizadas es siempre la misma. Los das anteriores a la actividad presencial prevista,
la plataforma MOODLE del IES Claudio Moyano cuelga las presentaciones power-point que se van a realizar.
Finalizada la actividad presencial, en la misma plataforma se cuelgan las hojas de ejercicios propuestos para que
los alumnos que lo deseen tengan trabajo adicional que
efectuar.
La primera de las charlas se titulaba Viaje a traves
de la Criptografa y en ella se resumieron los principales
metodos de cifrado a lo largo de la historia, que se ilustraron con numerosos ejemplos. Se hizo una especial mencion
a los metodos modernos (vease Fig. 6). En la charla tambien se abordaron las actuaciones necesarias para garantizar la autenticidad, confidencialidad e integridad de la
informacion transmitida por canales inseguros (vease Fig.
7).
La segunda de las charlas se titulaba Protocolos Criptograficos y en ella se expusieron algunos de los protocolos criptograficos que usan el criptosistema RSA como
base. Los alumnos conocieron algunas de las aplicaciones
del criptosistema RSA que haba sido introducido con detalle al inicio de la charla. Las preguntas del coloquio final
revelaron la creciente curiosidad de los estudiantes por todos los temas expuestos.
Los siguientes enunciados se corresponden con algunos
de los problemas proporcionados como materiales de trabajo adicionales:
1. Codifica mediante el cifrado de Playfair el mensaje:
These songs are wonderful,
utilizando como clave la palabra HAND.
2. Busca el texto claro del mensaje que aparece en la obra
de Allan Poe El escarabajo de oro.
3. Utilizando el alfabeto internacional de 26 letras y asignando su valor a cada una de ellas, de modo que
A 0,
B 1,
...,
193
JNIC2015
Z 25,
se define un cifrado afn por la expresion
C(m) = 3m + 7(mod 26),
siendo m la letra a cifrar. Encriptar el mensaje
ESTE CRIPTOSISTEMA NO ES SEGURO
4. Programa el algoritmo de Euclides
Entrada: a b (con a>b>0)
Salida: mcd(a,b)
La respuesta de los alumnos ha sido entusiasta. Al finalizar cada una de las charlas hubo un animado coloquio
que continu
o a traves del correo electronico. Ademas, un
porcentaje significativo realizo casi correctamente todas
las cuestiones propuestas como trabajo adicional. Finalmente, en Mayo de 2015 presentamos dos proyectos para
ser realizados por los alumnos de forma individualizada
durante el primer cuatrimestre del curso 2015-2016. Ambos proyectos fueron elegidos por los alumnos: Estudio
grafico de los automatas de Wolfram e Implementacion
de algunos algoritmos matematicos que se usan en Criptografa. En la actualidad los alumnos han comenzado a
trabajar en ambos proyectos.
194
JNIC2015
I. INTRODUCTION
As the demand for skill on cyber-security professionals is
growing, computer, network professionals and in general active
professionals now can turn to online, in-demand Masters. This
Master's studies can (and should) be focused in training
interested engineers, scientists and even lawyers and another
professionals to acquire a solid foundation in key technologies
computer and network security, digital forensics,
cryptography, and biometrics as well as capability to perform
initial research studies in the field. The formula Operations +
Research should be mandatory.
With industry continuing to place top priority on
safeguarding its data and information systems,, it becomes
necessary well-prepared professionals for careers in developing
security products, as security-application programmers,
security analysts, penetration testers, vulnerability analysts and
security architects as well as researchers.
This paper describes a proposal which will be implemented
at the University of Len (Spain) in 2016 jointly with INCIBE
[1]. The proposal focus on an integrated two year post-graduate
studies. The objective is to prepare professionals in cybersecurity in the broader sense from concrete software
engineering to networks and social responsibility or legal
issues. This long term official Master studies will include both
a research mention capabilities and a specific Practicum.
Graduate Master Students will be ready both to start as
professionals and to begin a Ph. D. degree in Cyber-security
This Master program is an official master (approved by
ANECA), and has its precedent studies as a Professional
Master Degree in Computer Security (2007-2009) and then a
Professional Master Degree in Cyber-Security (2009-2015).
These programs included neither a specific Practicum nor a
Research Mention: this has been shown as a gap that the two
year program is designed to fulfill.
Another relevant difference with previous studies is its
online modality: The studies are programmed to be performed
both as an on-line course and traditional, allowing the students
195
JNIC2015
196
JNIC2015
ECTS
Formation Complements
[for no IT/Telecom graduates]
Programming
Operating Systems
Communication Networks
First Semester
Cybersecurity and Cybercrime Foundations
Human Aspects
Cybersecurity
and
Legal
Implications
of
6
ACKNOWLEDGMENT
REFERENCES
Trustworthy Systems I
Software Analysis I
Second Semester
[1]
[2]
[3]
[4]
Third Semester
Research Science
18
Elective I
Elective II
Elective III
Elective IV
6
Fourth Semester
Master Thesis
30
197
JNIC2015
I.
INTRODUCCIN
198
JNIC2015
199
JNIC2015
200
JNIC2015
INFORMTICA
DERECHO
201
JNIC2015
RESULTADOS Y CONCLUSIONES
AGRADECIMIENTOS
Un agradecimiento especial a todas las personas que han
colaborado, desinteresadamente, en la realizacin de las
actividades desarrolladas en estos ltimos aos, especialmente
a los estudiantes que han conseguido encontrar tiempo libre
entre sus muchas ocupaciones para sacar adelante algunas de
las acciones realizadas.
REFERENCIAS
[1]
Crdoba, 22-06-2010
http://elpais.com/elpais/2010/06/22/actualidad/1277194631_850215.html
[2] Madrid, 11-10-2012
http://politica.elpais.com/politica/2012/10/11/actualidad/1349953208_19
9770.html
[3] Francia, 20-08-2010
http://elpais.com/diario/2010/08/20/sociedad/1282255201_850215.html
[4] Madrid, 26-11-2013
http://www.elmundo.es/madrid/2013/11/25/5293b89463fd3d7c458b457b
.html
[5] Granada, 14-04-2009
http://www.delitosinformaticos.com/04/2009/delitos/usurpacion-de-laidentidad-en-internet-para-insultar-y-ofrecer-favores-sexuales
[6] Segovia, 2-06-2011
http://www.delitosinformaticos.com/06/2011/noticias/condenadas-dosadolescentes-por-suplantar-a-una-companera-y-crear-un-peril-faso-en-lared-social-tuenti
[7] Cceres, 29-10-2012
http://www.hoy.es/20121029/local/caceres/detenida-joven-suplantaridentidad-201210291332.html
[8] Mapa de Enseanza de Seguridad de la Informacin (proyecto MESI)
http://www.criptored.upm.es/mesi/mesi2/mesi2ES.html
[9] Iniciativa Universitaria de Anlisis Forense en Informtica
https://inforensicsuex.wordpress.com/
[10] Derecho Tecnolgico e Informtica Forense
http://dtif.unex.es/
[11] Ctedra INSA-UEx sobre Seguridad y Auditora de Sistemas Software
http://escuelapolitecnicacc.blogspot.com.es/p/catedra-insa.html
202
JNIC2015
I.
INTRODUCCIN
203
JNIC2015
204
JNIC2015
205
JNIC2015
206
JNIC2015
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
[16]
[17]
[18]
[19]
[20]
[21]
[22]
[23]
207
JNIC2015
Author Index
Author Index
Alegre, Enrique
Alonso, Javier
Andreu Blazquez, Juan Jose
Anido-Bande, Ruben
Astarloa, Armando
137
195
76
168
78
Bagnulo, Marcelo
Banobre-Gomez, Manuel
Beltran Pardo, Marta
Bilge, Leyla
Brezo, Felix
108
105
161, 176
14
32
Caballero, Juan
Camacho, Jose
Cano, Jose Enrique
Caro, Andres
Carriegos, Miguel V.
Casari, Paolo
Catalano, Dario
Cilleruelo Rodrguez, Carlos
Corchado, Juan M.
Corredera de Colsa, Luis Enrique
Cuesta Parejo, Alberto
14, 18, 86
80, 182
182
148, 198
195
51
84
45, 141
82
82
45
Darriba-Bilbao, Vctor M.
de Fuentes, Jose Mara
De La Prieta, Fernando
Dol, Henry
Doychev, Goran
Dumitras, Tudor
168
88, 110
82
51
72
14
137
84
Garca, Juan F.
Garca Moro, Alberto
Garca Ordas, Diego
Garca Ordas, Mara Teresa
Garca Villalba, Luis Javier
Garca-Olalla Olivera, Oscar
Garca-Planas, Mara Isabel
Garca-Teodoro, Pedro
Garitano, Inaki
195
99
137
137
26, 67
137
116
74, 80
59
208
JNIC2015
Author Index
Gasca, Rafael M.
Gayoso Martnez, Vctor
Gil Perez, Manuel
Goetz, Michael
Gomez Hernandez, Jose Antonio
Gomez-Casero Marichal, Jose Miguel
Gonzalez Manzano, Lorena
Gonzalez Perez, Pablo
Gonzalez Vasco, Mara Isabel
Guarnido Ayllon, Mara
Guevara, Cesar
122
88, 110
76, 129
51
203
141
88, 110
92
90
182
8
1, 190
110
39, 129
Iturbe, Mikel
59
Jacob, Eduardo
Johnson, Richard
78
14
Kalwa, Joerg
Komulainen, Arwid
Kotzias, Platon
Kopf, Boris
51
51
18, 86
72
Leus, Geert
Leyva Garca, Monica
Lopez, Victoria
Lopez Barriuso, Alberto
Lopez Hernandez-Ardieta, Jorge
Lopez Perez, Francisco
Lutu, Andra
51
182
8
82
160
182
108
Macia-Fernandez, Gabriel
Maestre Vidal, Jorge
Magret, Maria Dolors
Mandalari, Anna Maria
Marco, Hector
Martn de Diego, Isaac
74, 80
26, 67
116
108
22, 24
176
1, 190
110
20
1, 190
76, 129
160
18, 86
209
JNIC2015
Author Index
Molina, Elas
Munoz Gijon, Antonio
Munoz Munoz, Alfonso
78
182
92
Nappa, Antonio
Nasta, Stefano
Nilsson, Bernt
Nilsson, Jan
Nissen, Ivor
Nizzardo, Luca
14
51
51
51
51
84
Otnes, Roald
51
Pacini, Francesco
Parra Lopez, Pascual
Pasic, Aljosa
51
160
156
90
1, 190
182
105, 168
22, 24
86
16, 20
1, 190
74, 182
32
45, 141
26, 67
8
160
51
161
51
90
Theron, Roberto
80
Um, Laurence
Uribeetxeberria, Roberto
116
59
51
122
16
39, 99, 129
210
JNIC2015
Author Index
Vinals, Vctor
20
Zago, Mattia
Zorzi, Michele
Zurutuza, Urko
76
51
59
Oberg,
Tommy
51
211