Professional Documents
Culture Documents
KD Argentina
KD Argentina
1 Introduction
The variables that help make a handwritten signature a unique human identifier
also provide a unique digital signature in the form of a stream of latency periods
between keystrokes. The handwritten signature has a parallel on the keyboard.
The same neurophysiological factors that make a written signature unique are
also exhibited in a user’s typing pattern[1].
Password typing is the most widely used identity verification method in
World Wide Web based electronic commerce. Due to its simplicity, however,
it is vulnerable to impostor attacks. Keystroke dynamics and password checking
can be combined to result in a more secure verification system[2].
This authentication is fragile when there is a careless user and/or a weak
password. Biometric characteristics are unique to each person and have advan-
tages as they could not be stolen, lost, or forgotten[3, 4].
?
This paper was done with Cloodie R&D Support
2 Current implementations
There are different methods to compare keystrokes, all based on measuring the
distances between two strokes, a negative result is found when both differ more
than a threshold. One of the best methods is the Mahalanobis distance[2, 6].
Three methods are shown below, each method is a generalization of the
previous one.
The time a user press a key or the time between one key and the other may
result in a vector of events (Γ ). Each event represent a key hold time or the
elapsed time between two keys. Since in the training phase an event may occur
several times, the vector is a list of the expected values of every event time.
Calculating the euclidean distance between two vectors works as a compari-
son algorithm, with relatively high success rates[6].
N
X
d(Γ1 , Γ2 )2 = kΓ1 − Γ2 k2 = (Γ1,i − Γ2,i )2 (1)
i=1
Where Γ1 is the vector of training event times and Γ2 is the vector of testing
event times.
To optimize calculation timings the squared norm is actually used.
Again, the former method is skipping information, this time is the covariance
between events.
Mahalanobis distance is defined as
Translating each method to a kernel matrix it turns out that in equation 3 the
matrix S is the identity in the euclidean distance, a diagonal with the variances in
the normalized euclidean distance and the covariance matrix in the Mahalanobis
distance.
To generate the covariance matrix for the Mahalanobis distance all key-press
events and their respective timings should be transmitted to the server while
training –or at least the covariance matrix and the expected event timings–.
But to generate the diagonal matrix for the normalized euclidean method is it
possible to send only three integer numbers per event or two floats.
2
Using the property V ar[X] = E[X 2 ] − E[X]
Pn it is possible to generate
Pn the
2
variance using only the sum of squares SS = i=0 Γ1,i , the sum S = i=0 Γ1,i
and the total n since E[X 2 ] = SS S
n and E[X] = n . All three numbers are natural
and may be combined in an N3 vector which supports commutative addition
properties. This method allows parallelized variance calculus[9].
There are several ways to send the data depending on the algorithm to be
used. Table 1 compares them.
For example, when 20 events are used, the covariance matrix has 20×20 = 400
values and the Γ = E[X] vector has 20 values. Normally a Rn×n matrix can be
encoded with n2 numbers, but as Cov[a, b] = Cov[b, a], covariance matrix is
symmetric and therefore it can be encoded with n(n+1) 2 numbers. Assuming a
real number and an integer has the same size, the transmission would be of
20×21
2 + 20 = 230 numbers while the normalized euclidean only transmits 3 ×
20 = 60 numbers. Generalizing, the data transmission of Mahalanobis distance
is n(n+1)
2 + n reals, that is O(n2 ), normalized euclidean is 3n integers, that is
O(n) and euclidean is 2n integers or n reals, that is also O(n).
Table 2. Example of how timing counts are dependent on the event in Mahalanobis
distance
O(n2 ). Normalized euclidean should also take time to compute the variances,
but this procedure is O(n). Inverting the matrix lacks of relevant costs due to
the properties of the diagonal matrices. Euclidean distance should be the fastest
algorithm because of its simplicity.
It is important to remark that due to parallelized calculation of the vari-
ance, part of the calculating time in training mode for the normalized euclidean
distance may be done while reading the keyboard by the user machine.
The experiment also intends to measure algorithms processing time.
4 Experimental comparison
We use an already studied dataset for two main reasons, one is because it was
collected in a controlled laboratory environment, the second reason is because
14 detection algorithms were tested using this dataset[6] and that give us a
big framework to start our research. The data was collected from 50 different
users along 8 days or sessions –totalizing 400 cases per user–, in each session the
users typed always the same string: “.tie5Roanl” which represents a reasonable
secure password. When any error in the sequence was detected, the subject had
been prompted to retype the password. To make this a laptop was set up with
an external keyboard to collect data and a Windows application was developed
to prompt the subjects to type the password. The application displays it in a
screen with a text-entry field. In order to advance to the next screen, the subject
must type the 10 characters of the password correctly in sequence and then press
Enter. The data set contains the hold time of each key, the time between two
consecutive keys were pressed and the time since one key was released and the
next was pressed. One of the three values depends linearly of the other two. Due
to preconditions of covariance one value was dropped away leaving two values
per key.
From the 400 cases per user, the first 200 cases were used to train the detec-
tion algorithm and the second 200 cases were used to validate it, also the first 5
cases of all the other users were taken to generate an impostor dataset in order
to validate negative cases. This data set and schema was taken from Killourhy
and Maxion[6].
We performed 19 tests, the first using two events (the first two values of the
Γ vector) and increasing the number of events until the last one, using all twenty.
We expected to have a best success rate in the last test because it counts with
more information. We ran the three mentioned algorithms in each test.
Finally we calculated the area under the receiver operating characteristics
(ROC) curve –a performance measure for machine learning algorithms com-
monly used in systems that learns by being shown labeled examples[8]–. This
method, known as AUC, was chosen because it is a classifier performance eval-
uator independent of the decision threshold chosen on the keystroke distances.
5 Results
With the one key test case we obtained in one sample user Γ = [98.98, 166.905],
where first value corresponds to the expected key-hold time and the second to the
expected elapsed time until the next key was pressed. Both times are expressed
in milliseconds.
−1
−1 −1 341.29 282.19 0.0031 −0.00016
SM ahalanobis = Cov[Γ ] = =
282.19 5464.9 −0.00016 0.0002
−1
−1 341.29 0 0.0029 0
SnormalizedEuclidean = =
0 5464.9 0 0.00018
−1 10
Seuclidean = Seuclidean =
01
Note that SM ahalanobis and SnormalizedEuclidean have the same diagonal val-
ues but this is not the case with their inverses.
Table 3 shows the results of the 3 methods with 2 and 20 timing events
respectively. Each method shows the area under ROC curve in percentage among
with zero-miss and false-alarm rates. It is also shown the total processing time
of training, testing all the 12750 positive and 10200 negative sets and calculating
the results.
In the last test –with 20 events–, normalized euclidean distance method per-
formed even better than Mahalanobis.
As expected, our hypothesis that in the test with 20 timing events is better
than the test with 2 was confirmed and that Mahalanobis and normalized eu-
clidean distance are both superior than euclidean distance was confirmed too.
Processing is, as expected, bigger for Mahalanobis and decreasing for normalized
euclidean and finally, the fastest method, euclidean distance.
100
95
90
ROC Area (%)
85
80
75
Mahalanobis
Normalized Euclidean
Euclidean
70
2
4
6
8
10
12
14
16
18
20
Number of events
6 Conclusions
Normalized euclidean distance and Mahalanobis distance are almost the same
in all ran tests. In the case of 20 events the results varied 0.24%. Normalized
euclidean was faster than Mahalanobis distance for 132ms but slower than eu-
clidean for only 60ms. Versatility in normalized euclidean is also an advantage,
passwords may be changed and the already-trained keys be kept in the new train-
ing. Those results lead to the conclusion that normalized euclidean distance is
strong enough to be used and its advantages in data sizes and versatility are con-
siderably important to be chosen against Mahalanobis distance and its success
rate suggests that it should be employed against euclidean distance.
XIX Congreso Argentino de Ciencias de la Computación CACIC 2013
References
1. Joyce, R.; Gupta, G.: Identity authentication based on keystroke latencies. Commun.
ACM 33, 2 (February 1990), 168-176. http://doi.acm.org/10.1145/75577.75582
(1990)
2. Cho, S.; Han, C.; Han., D. H.; Kim, H. I.: Web based Keystroke Dynamics Iden-
tity Verification using Neural Network. Journal of Organizational Computing and
Electronic Commerce, Vol. 10, No. 4, pp. 295–307 (2000)
3. Polemi, D.: Biometric Techniques: Review and Evaluation of Biometric Techniques
for Identification and Authentication, Including an Appraisal of the Areas Where
They are Most Applicable. Institute of Communication and Computer Systems,
National Technical University of Athens, Athens, Greece. Retrieved on 2013-07-
01: ftp://ftp.cordis.lu/pub/infosec/docs/biomet.doc, EU Commission Final Rep.
(1997)
4. Araujo, L. C. F.; Sucupira, L. H. R.; Lizarraga, M. G.; Ling, L. L.; Yabu-Uti, J.
B. T.: User authentication through typing biometrics features. Signal Processing,
IEEE Transactions on, vol. 53, no. 2, pp.851–855 (2005)
5. Monrose, F.; Rubin, A. D.: Keystroke dynamics as a biometric for authentication.
Future Gen. Comput. Syst., vol. 16, no. 4, pp. 351-359 (2000)
6. Killourhy, K. S.; Maxion, R. A.: Comparing Anomaly-Detection Algorithms for
Keystroke Dynamics. In International Conference on Dependable Systems & Net-
works (DSN-09), pp. 125–134, Estoril, Lisbon, Portugal, 29 June to 02 July 2009.
IEEE Computer Society Press, Los Alamitos, California (2009)
7. Mahalanobis, P. C.: On the generalised distance in statistics. Proceed-
ings of the National Institute of Sciences of India 2 (1): 49-55. Re-
trieved on 2013-07-01: http://www.new.dli.ernet.in/rawdataupload/upload/
insa/INSA_1/20006193_49.pdf (1936)
8. Bradley, A. P.: The use of the area under the ROC curve in the evaluation of
machine learning algorithms. Pattern Recognition, Volume 30, Issue 7, July 1997,
Pages 1145–1159, ISSN 0031-3203, http://dx.doi.org/10.1016/S0031-3203(96)
00142-2. (1997)
9. Chan, T. F.; Golub, G. H.; LeVeque, R. J.: Updating Formulae and a Pair-
wise Algorithm for Computing Sample Variances. Technical Report STAN-
CS-79-773, Department of Computer Science, Stanford University. Retrieved
on 2013-07-01: ftp://reports.stanford.edu/pub/cstr/reports/cs/tr/79/773/
CS-TR-79-773.pdf (1979)
Mag. Licenciada Mirta Elizabeth Navarro1 Mag. Abogado María del C. Becerra22,
marisabecerra2005@yahoo.com.ar, mirthaenavarro@yahoo.com.ar
Abstract.:Con esta propuesta de gestión integral diseñada para la protección de la información alineada
a la norma IRAM ISO IEC 27001, 27002 y a lastendencias y normas de seguridad informática, consistente
en la creación y adopción de un marco regulatorio que favorezca la identificación y protección de las
infraestructuras estratégicas y críticas de la U.N.S.J., se favorecerá la colaboración entre los diversos
sectores públicos y privados, para el desarrollo de estrategias y estructuras adecuadas para la protección de
los activos de información. Todo ellodará real importancia a la nueva visión del estado, liderada por la
incorporación de las TIC´s en los procesos administrativos y bajo el sustento de la comunicación íntegra y
confidencial necesaria en el entorno globalizado de e-gobierno, se busca dar impulso a la administración
electrónica.
Keywords: Gestión Integral de seguridad. Infraestructuras críticas. Propuesta para implementar el plan
Infraestructuras críticas y ciberseguridad.
1 Introducción
Para ayudar a garantizar una gestión de integral de las infraestructuras críticas3 de las empresas se
tomaron en cuenta dos normas de la familia de las normas ISO 27000 adaptadas y traducidas en nuestro país,
especialmente las Normas IRAM ISO 27.0014 y 270025 y su antecedente 17799), en base a ellas se
definieron los requisitos para el sistema de gestión de seguridad (SGSI) propuesto.
En el proyecto “Convergencia de Tecnologías informáticas y Metodologías para la implementación de
sistemas de Información”se analizaron las políticas, prácticas, procedimientos y estructuras organizacionales
como conjunto de controles necesarios para implementar un sistema de gestión para las infraestructuras
críticas.
En Argentina por Resolución 580/2011 se crea, en el ámbito de la Oficina Nacional de Tecnologías de
Información de la subsecretaria de Tecnologías de Gestión de la Secretaria de Gabinete de la Jefatura de
Gabinete de Ministros, el “Programa Nacional De Infraestructuras Criticas De Información y Ciberseguridad”
en el marco de lo establecido la Ley de Ministerios (t.o. Decreto Nº 438/92), a fin de impulsar la creación y
adopción de un marco regulatorio específico que propicie la identificación y protección de las infraestructuras
Investigadora de la U.N.S.J. Directora del Instituto de informática del Foro de Abogados de San Juan
3
Las infraestructuras críticas son aquellas instalaciones, redes, equipos físicos y de tecnología de la información cuya
interrupción o destrucción tendría un impacto en el bienestar de los ciudadanos o en el eficaz funcionamiento del
gobierno. Las infraestructuras críticas están presentes en numerosos sectores: financiero, transporte y distribución,
energía, salud, comunicaciones, y administraciones públicas.
4
En Argentina es IRAM, como organismo nacional de normalización, quien la estudia a través del Subcomité de
Seguridad de la Información y la adopta como IRAM-ISO/IEC 27001. Se publica bajo el nombre Tecnología de la
información. Sistemas de gestión de la seguridad de la información (SGSI). Requisitos, difundiéndola en la región a
través de cursos y seminarios.
5Aprobada y consensuada por el IRAM (Instituto de Normalización Argentino) en el año 2002
estratégicas y críticas del Sector Público Nacional, los organismos interjurisdiccionales y las organizaciones
civiles y del sector privado que así lo requieran, y la colaboración de los mencionados sectores con miras al
desarrollo de estrategias y estructuras adecuadas para un accionar coordinado hacia la implementación de las
pertinentes tecnologías, entre otras acciones.
El “Programa Nacional de Infraestructuras Criticas de Información y Ciberseguridad” no interceptará ni
intervendrá en conexiones o redes de acceso privado de acuerdo a lo estatuido por la Ley Nº 25.326 de
Protección de los Datos Personales y su Decreto Reglamentario Nº 1558 del 29 de noviembre de 2001.
El programa de ICIC, tendrá a su cargo los siguientes objetivos:
a) Elaborar y proponer normas destinadas a incrementar los esfuerzos orientados a elevar los umbrales de
seguridad en los recursos y sistemas relacionados con las tecnologías informáticas en el ámbito del Sector
Público Nacional.
b) Colaborar con el sector privado para elaborar en conjunto políticas de resguardo de la seguridad digital
con actualización constante, fortaleciendo lazos entre los sectores público y privado; haciendo especial
hincapié en las infraestructuras críticas.
c) Administrar toda la información sobre reportes de incidentes de seguridad en el Sector Público Nacional
que hubieren adherido al Programa y encausar sus posibles soluciones de forma organizada y unificada.
d) Establecer prioridades y planes estratégicos para liderar el abordaje de la ciberseguridad, asegurando la
implementación de los últimos avances en tecnología para la protección de las infraestructuras críticas.
e) Investigar nuevas tecnologías y herramientas en materia de seguridad informática.
f) Incorporar tecnología de última generación para minimizar todas las posibles vulnerabilidades de la
infraestructura digital del Sector Público Nacional.
g) Asesorar a los organismos sobre herramientas y técnicas de protección y defensa de sus sistemas de
información.
h) Alertar a los organismos que se adhieran al presente Programa sobre casos de detección de intentos de
vulneración de infraestructuras críticas, sean estos reales o no.
i) Coordinar la implementación de ejercicios de respuesta ante la eventualidad de un intento de vulneración
de las infraestructuras críticas del Sector Público Nacional.
j) Asesorar técnicamente ante incidentes de seguridad en sistemas informáticos que reporten los
organismos del Sector Público Nacional que hubieren adherido.
k) Centralizar los reportes sobre incidentes de seguridad ocurridos en redes teleinformáticas del Sector
Público Nacional que hubieren adherido al Programa y facilitar el intercambio de información para
afrontarlos.
I) Actuar como repositorio de toda la información sobre incidentes de seguridad, herramientas, técnicas de
protección y defensa.
m) Promover la coordinación entre las unidades de administración de redes informáticas del Sector Público
Nacional, para la prevención, detección, manejo y recopilación de información sobre incidentes de seguridad.
n) Elaborar un informe anual de la situación en materia de ciberseguridad, a efectos de su publicación
abierta y transparente.
ñ) Monitorear los servicios que el Sector Público Nacional brinda a través de la red de Internet y aquellos
que se identifiquen como Infraestructura Crítica para la prevención de posibles fallas de Seguridad.
o) Promover la concientización en relación a los riesgos que acarrea el uso de medios digitales en el Sector
Público Nacional, las Organizaciones de Gobierno, al público en general, como así también del rol
compartido entre el Sector Público y Privado para el resguardo de la Infraestructura Crítica.
p) Difundir información útil para incrementar los niveles de seguridad de las redes teleinformáticas del
Sector Público Nacional.
k) Interactuar con equipos de similar naturaleza.
Para protegerse de estas amenazas la British Standards Institution publicó en 1995 la norma BS 7799 -
parte 1 y 2- que sirvió como antecedente a ISO para el estudio de dos estándares internacionales adoptados y
reconocidos a nivel mundial: la norma ISO/IEC 17799:2000 Information technology - Security techniques -
Code of practice for information security management, revisada en 2005 y reemplazada por la ISO/IEC
27002, que establece los requisitos fundamentales a tener en cuenta para establecer, operar, controlar, revisar,
mantener y mejorar un sistema de gestión de seguridad de la información. La norma 27.002 establece un
conjunto de reglas de normalización de los conceptos y operatorias de seguridad informática.
Tal cual lo enfatizan los autores, la seguridad de la información se logra implementando un conjunto
adecuado de controles que abarca políticas, practicas, y procedimientos, estructuras organizaciones y
funciones del software. Estos controles deben ser establecidos para garantizar que se logren los objetivos
específicos de seguridad de la organización”.
La edición 2000 de esta norma fue publicada por IRAM dando como resultado la IRAM-ISO/IEC
17799:2002. Ésta fue estudiada por el Subcomité de Seguridad de la Información de IRAM (revisión de la
IRAM 17798 cuyo antecedente es la BS 7799-2).
La norma está basada en el mismo modelo de los sistemas de gestión de la calidad de la familia ISO
9000. Establece conceptos similares sobre Requisitos de la documentación: alcance, política de seguridad,
enfoque sistémico de identificación y valoración de riesgos, operaciones para el tratamiento de los riesgos,
objetivos de control, controles y aplicabilidad de los mismos.
Actualmente para certificar un Sistema de Gestión de la Seguridad implementado bajo la norma ISO/IEC
17799 (ISO 27002) se utiliza la norma ISO/IEC 27001: 2005.
Tal como lo prevé la Norma IRAM ISO IEC 27.001 para una adecuada gestión de la seguridad de la
información se propone implantar en las organizaciones locales un sistema que aborde esta tarea de una
manera metódica, documentada y basada en objetivos claros de seguridad y en una evaluación de los riesgos
a los que está sometida la información de las organizaciones locales.
En la práctica esta norma se presenta embebida en varias normativas estatales en Argentina. Forma parte
de reglamentaciones de organismos del Estado para cumplir con diversos procedimientos, entre los que se
destaca la comunicación A4609 del BCRA (Banco Central de la República Argentina). Un decreto del Poder
Ejecutivo de la Secretaria de la Función Pública (2006) instaló la norma con el nombre de Sistema de Gestión
de Seguridad del Estado. Existen 400 organismos estatales que la implementan pero no la certifican.
La comunicación A-4609 del Banco Central de la República Argentina6, resulta así aplicable al conjunto
de entidades del sistema regulado por dicha institución y establece los “Requisitos mínimos de gestión
implementación control de los riesgos relacionados con la tecnología informática, sistemas de información y
recursos asociados para entidades financieras”.
En el apartado referido a la Gestión de seguridad la comunicación establece que las entidades financieras
deben considerar en su estructura organizacional un área para la protección de los activos de información, con
el fin de establecer los mecanismos para la administración y el control sobre el acceso lógico y físico a sus
distintos ambientes tecnológicos y recursos de información: equipamiento principal, plataforma de sucursales,
equipos de departamentales, subsistemas o módulos administradores de seguridad de los sistemas de
aplicación, sistemas de transferencias electrónica de fondos, base de datos, canales de servicios electrónicos,
banca por Internet y otros.
Por la complejidad de la implementación de la Norma, sería conveniente que la Administración Pública
definiera de manera sistemática el alcance el proyecto, principalmente en las áreas de CONTROL DE
ACTIVOS Y SEGURIDAD DE LOS RECURSOS HUMANOS.
Adoptar una norma de gestión de la seguridad de la información garantiza la correcta consideración de los
activos de información de una organización junto con el análisis de su vulnerabilidad y amenazas, también
asegura que se establezcan controles de procedimiento y tecnológicos (gestión de accesos mediante registro
de huellas, control de información por Internet y mails, controles sobre el software y las bases de datos).
Mediante la norma estos procedimientos se desarrollan de manera ordenada, pautada y controlada; no como
simples impulsos aislados, sino como un verdadero sistema que garantice la confidencialidad, integridad y
acceso a la información de gestión, de dirección, y pública de la empresa.
A partir de la generalización de la tecnología de la información y la comunicación proliferaron las
situaciones de riesgo para los sistemas de información, las bases de datos y los recursos de hardware, a los
cuales denominamos activos de la información.
6
B.O. 31.156,16/05/2007, corregida por la Comunicación C-48.583/2007 BCRA y actualizada por la Comunicación B-
9042/2007 BCRA
Se tomó en cuenta la decisión administrativa 669/2004 que estableció que los organismos del Sector
Público Nacional comprendidos en los incisos a) y c) del artículo 8º de la Ley Nº 24.156 y sus modificatorias
deberán dictar o adecuar sus políticas de seguridad. Conformación de Comités de Seguridad en la
Información. Funciones de los mismos y responsabilidades en relación con la seguridad.
Los comités deberán integrado al menos por un miembro del Directorio o autoridad equivalente, y el
responsable máximo del área de Tecnologías Informática y sistemas.
Infraestructuras Criticas son las infraestructuras estratégicas (es decir, aquellas que proporcionan
servicios esenciales) cuyo funcionamiento es indispensable y no permite soluciones alternativas, por lo que su
perturbación o destrucción tendría un grave impacto sobre los servicios esenciales”. Se refiere tanto a
empresas del sector TIC, agua, energía, industria nuclear, sistema financiero o transporte, ente otras.
Las Infraestructuras Criticas, son consideradas un conjunto de recursos, servicios, tecnologías de la
información y redes, que en el caso de sufrir un ataque, causarían gran impacto en la seguridad, tanto física
como económica, de los ciudadanos o en el buen funcionamiento del Gobierno de la Nación, siendo menester
dictar medidas para la protección de tales infraestructuras.
Existen gran variedad de formas de ataque a los sistemas, con el fin de obtener esta información.
Pero también existen políticas y paradigmas de seguridad actuales que nos permiten poner una brecha a estos
ataques y proteger este recurso tan valioso.
Tomando en cuenta que el mundo contemporáneo se caracteriza por los profundos cambios
originados en el desarrollo y difusión de las tecnologías de la información y la comunicación en la sociedad,
las cuales se encuentran sustentadas en gran medida en el ciberespacio. Y que la utilización de las
comunicaciones virtuales es un recurso que depende de la infraestructura digital, la cual es considerada como
infraestructura crítica, entendiéndose ésta como imprescindible para el funcionamiento de los sistemas de
información y comunicaciones, de los que a su vez dependen de modo inexorable, tanto el Sector Público
Nacional como el sector privado, para cumplir sus funciones y alcanzar sus objetivos.
En el planteamiento de los instrumentos de planificación, se detectaron cambios estratégicos de
protección que hasta ahora estaban enfocados principalmente a la seguridad física y que, ahora, como no
podía ser de otra manera tienen un enfoque integral y actual de protección de las Infraestructuras críticas
como conjunto de actividades destinadas a asegurar la funcionalidad, continuidad e integridad de las
infraestructuras críticas con el fin de prevenir, paliar y neutralizar el daño causado por un ataque deliberado
contra infraestructuras y garantizar la integración de estas actuaciones.
Se requiere un planteamiento de seguridad holístico (física, lógica, personal y operativa) de
verdadera Seguridad Integral = Protección + Prevención donde la Gestión de riesgos debe ser su protagonista
más importante y las soluciones pasen por la Evaluación de Impactos, establecimiento de Planes de
contingencia, Planes de continuidad del negocio y de las operaciones y la determinación de los Sistemas y
aplicaciones de garantía de alta disponibilidad.
En la Protección de Infraestructuras Críticas, es preciso estudiar los criterios que permitan determinar
qué factores confieren carácter crítico a una infraestructura o elemento de infraestructura particular. Los
criterios de selección deberían basarse en conocimientos sectoriales y generales. Pueden definirse tres factores
de identificación de una infraestructura crítica potencial:
• Alcance - la pérdida de un elemento de infraestructura crítico se mide por el tamaño del área geográfica que
pudiera verse afectada por su pérdida o indisponibilidad.
• Magnitud - el grado del impacto o de la pérdida puede evaluarse como nulo, mínimo, moderado o principal.
Entre los criterios que podrían utilizarse para evaluar la magnitud potencial se encuentran los siguientes:
(a) impacto público (cantidad de población afectada, pérdidas de vidas, enfermedades, lesiones graves,
evacuación);
(b) económico (efecto PIB, volumen de pérdida económica y/o degradación de productos o servicios);
(c) ambiental (impacto en el lugar y sus alrededores);
(d) interdependencia (con otros elementos de infraestructura críticos).
(e) político (confianza en la capacidad de las administraciones públicas);
Efectos en el tiempo - estos criterios determinan en qué plazo (tiempo) la pérdida de unelemento podría tener
un impacto. En caso de sufrir un ataque, las estructuras críticas, causarían gran impacto en la seguridad, tanto
física como económica del país. Este impacto se mide según unos criterios horizontales que determinan la
criticidad de una infraestructura. Se han establecido tres: el número potencial de víctimas, el impacto
económico y el impacto público.
En la República Argentina se enuncia que El Programa Nacional de Infraestructuras Críticas de
Información y Ciberseguridad (ICIC) tiene como finalidad impulsar la creación y adopción de un marco
regulatorio específico que propicie la identificación y protección de las infraestructuras estratégicas y críticas
del Sector Público Nacional, los organismos interjurisdiccionales y las organizaciones civiles y del sector
privado que así lo requieran, y la colaboración de los mencionados sectores con miras al desarrollo de
estrategias y estructuras adecuadas para un accionar coordinado hacia la implementación de las pertinentes
tecnologías.
También impulsa una Encuesta Nacional sobre Acceso y Uso de Tecnologías de la Información y la
Comunicación (ENTIC) en Hogares y Personas, que permite contar con información desde la perspectiva de
los usos y accesos de los hogares y de las personas a dichas tecnologías en la Argentina. La ENTIC se
administró a todos los hogares para la Encuesta Anual de Hogares Urbanos (EAHU), cuya estimación se
extiende al total de la población residente en hogares particulares urbanos, en localidades de 2.000 o más
habitantes.
Mediante el Programa Nacional de Infraestructura Crítica de Información y Ciberseguridad (ICIC) e
Internet Sano
- Se promoverá la concientización de la protección de las infraestructuras críticas de información y la
ciberseguridad dentro de las dependencias del Sector Público Nacional, brindando asistencia técnica a los
organismos nacionales, provinciales y municipales que lo requieran.
- Se actualizará la Estrategia Nacional ICIC.
- Se dictarán talleres y charlas técnicas sobre Ciberseguridad.
- Se formularán ejercicios de respuesta a incidentes.
- Se creará la Política de Seguridad de la Información.
- Se generarán nuevos contenidos para concientización de la ciudadanía.
- Se desarrollarán exposiciones y conferencias de concientización.
- Se concertarán alianzas público-privadas para la creación y difusión de contenidos.
Organismo responsable: Subsecretaría de Tecnologías de Gestión. Jefatura de Gabinete de Ministros.
Fecha tentativa: diciembre 2013
Normas IRAM ISO 27.0017 y 270028 y su antecedente 17799) debido a que en base a ellas se definieron los
requisitos para el sistema de gestión de seguridad (SGSI) propuesto.
Para ello sería necesario para ello adoptar las medidas para la protección de la Infraestructuras críticas
donde se fije entre otras cosas, la necesidad de que para esta gestión se fije:
• Un Plan de Seguridad del Operador (PSO)
• Un Plan de Protección Especifico (PPE) para cada una de las infraestructuras que haya sido
identificada como critica por la Secretaria de para la Protección de Infraestructuras Criticas.
El encargado de seguridad debería recoger los contenidos mínimos que deben articular estos planes, y
desarrollar un nuevo documento en el que se describe el modo de abordar la implantación de las medidas y
más tarde reflejarlo en dichos planes.
Se entiende por incidente de seguridad todo incidente que impida el normal funcionam8ento de los
activos de información y que afecte la Seguridad Informática.
La gestión de incidentes de Seguridad tiene por objeto restaurar la operación normal de los sistemas con
tanta rapidez como sea posible y mitigar el impacto adverso a sus procesos, asegurando así que se mantenga
debidamente la confidencialidad, integridad y disponibilidad de la información de la U.N.S.J.
El comité de Seguridad Informática definirá las pautas a seguir en la gestión de incidentes de seguridad,
lo que deberán ser implementados por el Departamento de Sistemas de la U.N.S.J. bajo la coordinación del
encargado de Seguridad de los activos de información.
Además deberá elaborar una Guía aplicativa del sistema de seguridad utilizando como apoyo la Norma
IRAM ISO IEC 27001.
Se propone un sistema de gestión de Incidentes de seguridad porque es la forma en que la Organización
dirige y controla aquellas actividades asociadas a la seguridad. De una manera más amplia debería contar con
dos grandes apartados alineados con la estructura del Plan de Seguridad del Operador (PSO) y del Plan de
protección Específico (PPE):
• Un capítulo dedicado al análisis de riesgos, uno de los aspectos principales de los mencionados
planes.
Dos capítulos dedicados a recoger las medidas de seguridad lógicas y físicas que se deberán:
• Construir y proponer una normativa de seguridad aplicable al entorno local mediante la
• Implementación de un Equipo de Respuesta a Incidentes para la Universidad Nacional de San
Juan.
el área de Seguridad, pero básicamente el área de Manejo de incidentes tiene a su cargo la prevención de
ataques, y si estos suceden mitigar el impacto. El área de seguridad realiza actividades de protección, en
cuanto a configuraciones y garantiza la infraestructura informática de la Universidad.
2. Detección de Incidentes de Seguridad
Esta fase está compuesta de varias actividades, tales como: detección de incidentes, análisis inicial y
documentación del incidente y tiene como objetivo la búsqueda de toda posible señal de ocurrencia de un
incidente. Todas las actividades e información generada en esta fase en enviada al proceso de Triage,
haciendo uso de los reportes establecidos.
La Detección de incidentes es un proceso que permite identificar las actividades inusuales que pueden
comprometer la misión del CSIRT, consiste en la detección y evaluación de posibles incidentes, determinar si
un incidente ha ocurrido, y de ser así, el tipo, extensión y magnitud del problema.
Estas actividades se pueden identificar de manera reactiva y proactiva.
Los incidentes se pueden detectar a través de muchos medios tales como: IDS basados en red
(NIDS) y en host (HIDS), software antivirus, software de control de integridad de archivos, sistemas de
monitoreo de red, analizadores de logs, etc.
Los incidentes también pueden ser detectados por medios manuales, tales como reportes de incidentes de
usuarios.
En el proceso de detección están involucrados: Encargado de Seguridad, CSIRT-UNSJ, Gestión de
Servicios TI, Infraestructura de TI, usuarios que han sido víctimas de algún ataque y otras áreas, incluye
los siguientes aspectos:
• Señales de un incidente
• Detección de incidentes mediante la utilización de herramientas
• Detección de incidentes mediante el reporte de terceros.
Señales de un Incidente:
En el proceso de detección, la información sobre potenciales incidentes, vulnerabilidades, información de
seguridad informática o de manejo de incidentes, puede ser obtenida de dos maneras:
• Detección Reactiva
Un incidente puede haber ocurrido o estar ocurriendo en este momento, puede ser detectado de varias
maneras:
• El antivirus detecta que un equipo está contaminado con algún tipo de virus.
• Incidentes en el servidor web
• Envío de alertas y notificaciones por parte de otras organizaciones.
• Detección Proactiva
• Monitoreo de Red
• Escaneo de vulnerabilidades
• Investigación
• Análisis de Riesgos
La detección de incidentes es un proceso que permite saber si el sistema está en peligro o si los servidores
corren el riesgo de detener sus servicios.
Esta actividad va de la mano con la detección proactiva, se debe tomar en cuenta el personal que se
encargue del monitoreo y detección de actividad sospechosa, análisis de logs, uso de software de detección de
intrusos, para cada una de estas actividades se deben tomar en cuenta los procesos establecidos en el Área de
Seguridad para estas actividades.
Todos los datos analizados y los considerados sospechosos se envían al proceso de Triage.
Detección de incidentes mediante el reporte de terceros va de la mano con la detección reactiva, el
usuario notifica del incidente al área de Gestión de Servicios, si el incidente se encuentra en la base de
conocimiento de esta área, es atendido por ellos, caso contrario se envía el reporte del incidente al equipo
CSIRT – UNSJ, en donde, primeramente se verifica que sea un incidente de seguridad.
Los incidentes que se envían al CSIRT-UNSJ y los que se atienden, son los que constan en la
Categorización de incidentes del CSIRT-UNSJ.
• Análisis de Incidentes de Seguridad
En este proceso se busca analizar cada reporte de incidentes presentado, tanto por los usuarios y por los
reportes obtenidos de las herramientas utilizadas, con la finalidad de verificar si realmente se trata de un
incidente de seguridad, o son falsos positivos.
Se debe recalcar que el equipo CSIRT debe trabajar rápidamente en el análisis y validación de los
incidentes, todas las acciones realizadas deben ser documentadas.
Uno de los mecanismos que sirve de soporte para Detección es la documentación del incidente, se han
definido varios formatos para el reporte y respuesta de incidentes y vulnerabilidades, el uso de reportes ayuda
a:
• Proveer información completa de un incidente al equipo
• Organizar la información recibida
• Priorizar reportes
La información que se solicita en el reporte de incidente es:
• Información de contacto
• Fecha de reporte
• Sistemas afectados
• Descripción del incidente
• Observaciones
A más de los reportes de incidentes, parte de la documentación incluye un documento en el que se detalla
el cómo los usuarios deben realizar el reporte de los incidentes al equipo, etc.
Adicional al reporte de incidente enviado por el usuario, por parte del Equipo CSIRT-UNSJ se debe
enviar un documento de respuesta a incidentes, en el que se detalle la información relativa a la atención y
respuesta del incidente reportado, dependiendo del tipo de incidente, esta información será enviada a
autoridades, y personal que requiera de esta información. (Esta sección, se detalla en la fase de la respuesta a
incidentes).
En cuanto a los recursos humanos, es necesario que el plantel de empleados sea idóneo para la realización
del trabajo de la Organización, pero además debe definir y comunicar sus funciones y responsabilidades.La
misma organización debe establecer las necesidad información y facilitar y evaluar la eficacia de la formación
y de esto debe haber evidencia (Es decir, se exige un registro de capacitación del personal y en lo posible la
formación de una tablero de comando al efecto).
También se debe sensibilizar a toda la organización sobre la importancia de la capacidad humana de la
Organización descansa sobre la formación que da a todos sus empleados. La organización dispone un
potencial que debe ser aprovechado para poder subsistir y este es el potencial humano para ello se debe
implantar los siguientes aspectos motivación, adiestramiento y Comunicación.Implantar en las
infraestructuras críticas para mejorar los niveles de protección integrales.
Se propone crear un CSIRT dentro de la UNSJ, ello es un proceso que involucra un cambio estructural,
organizacional y desde luego requiere de mucho esfuerzo y compromiso a todos los niveles. Sin duda un
CSIRT viene a darle un gran valor a la organización ya que provee un punto de contacto único para afrentar,
resolver y proponer en el campo de las nuevas tecnologías.
La protección del ciberespacio requiere de una organización que sirva de centro nacional decoordinación para
asegurar y proteger el ciberespacio, cuya misión incluye vigilancia, alerta,respuesta y recuperación, con la
colaboración de las entidades gubernamentales en los ámbitosnacional, estatal y local, el sector privado, el
sector académico y la comunidad internacional.
Los principales objetivos que debe cubrir este centro nacional son:
Desarrollar un sistema nacional de seguridad y respuesta ante incidentes cibernéticos paradetectar, prevenir,
responder y recuperarse de incidentes en el ciberespacio.
• Establecer un centro de coordinación para la gestión de incidentes cibernéticos que reúnen los
elementos críticos del gobierno y los elementos esenciales de las infraestructuras de los operadores y
los proveedores para reducir el riesgo y la gravedad de los incidentes.
• Participar en la vigilancia, alerta y mecanismos de intercambio de información.
• Elaborar y probar los planes de respuesta de emergencia, procedimientos y protocolospara asegurar
que los colaboradores gubernamentales y no gubernamentales puedanfomentar la confianza ypuedan
coordinarse de manera eficaz en caso de crisis.
La implementación del CSIRT-UNSJ permitirá:
• Contar con un equipo capacitado para la atención de incidentes brindando servicios
proactivos, reactivos y de aseguramiento de la calidad en temas de seguridad de la información.
• Concientizar a la comunidad universitaria y usuarios finales sobre los riesgos y
beneficios del uso de internet, pero, sobre todo de la importancia de tomar en cuenta las medidas
de seguridad adoptadas en la Universidad.
Por otra parte como objetivo fundamental el construir y proponer una normativa de seguridad aplicable al
entorno local, la implementación del equipo permitirá compartir la experiencia y resultados obtenidos con
otras universidades.
Los beneficiarios de la implementación de este proyecto serán principalmente la UNSJ y con la
implementación del proyecto:
• Otras Universidades, con la finalidad de profundizar y proponer temas de investigación.
• Organizaciones públicas y privadas que mantienen Equipos de Seguridad.
• Empresas y profesionales que brindan servicios de atención de incidentes.
• Participación efectiva de todos los intervinientes en el proyecto.
Hasta la fecha la participación de los integrantes del equipo se ve reflejada en el cumplimiento de las
actividades, estas se han realizado acorde a lo planificado.
Se ha involucrado a personal de Marketing para la publicidad del CSIRT.
Se han realizado reuniones de Coordinación
Se mantuvieron reuniones con:
• Grupo de seguridad para la presentación de la metodología para el manejo de
incidentes.
• Grupo de Administradores para comunicarles la existencia del CSIRT-UNSJ, uso
de reportes de incidentes y políticas.
Se realizaran actividades de Difusión mediante emisión de boletines con tips de seguridad para usuarios,
los mismos que se emitirán mensualmente. Como estrategia de marketing, durante el primer mes se emitirán
boletines semanalmente, con el objetivo de posicionar el CSIRT-UNSJ en la comunidad universitaria.
• En conjunto con el área de marketing de la UNSJ se está preparando unaestrategia
de comunicación para realizar la difusión del CSIRT-UNSJ, lo que incluye boletines
informativos, notas periodísticas, etc.
• Emisión de un boletín sobre el CSIRT-UNSJ al área de marketing para que sea
difundido a nivel interno en la UNSJ
Finalmente la guía deberá incluir un Anexo dedicado a la protección de los sistemas de monitorización y
control de procesos e infraestructuras, dada su relevancia en este tipo de infraestructuras, así como un
apartado en el que se recogen, de manera exhaustiva, todas las referencias utilizadas.
V. Conclusiones
Así hemos de concluir en que, sin duda hoy la responsabilidad y respuesta de una única Seguridad
con mayúscula, integral e integrada, pública y privada, es estrictamente necesaria e irreversible.Por todo ello,
para un adecuado presente y futuro hay que integrar el sistema de gestión de la Seguridad Pública y la
Seguridad Privada hacia una nueva visión común y especial cultura de seguridad sobre la base de las
amenazas complejas y la interdependencia e incrementar los recursos de análisis y liberarlos de viejas
patologías y rigideces para desarrollar el esquema de Gestión Integral e Integrada de la Seguridad.
VI.-Referencias
31“Evaluación y Seguridad de un Sistema de Información”, por José Alfredo Jiménez
http://www.monografias.com/trabajos/seguinfo/seguinfo.shtml
32. “Administración segura de la información: Una experiencia de vinculación entre un ente del estado
provincial y la U.N.P.A”. Javier Díaz, L.I.N.T.I. – Universidad Nacional de La Plata
http://www.ing.unp.edu.ar/wicc2007/trabajos/ISBD/066.pdf
33. “Propuesta para un modelo de gestión de documentos electrónicos de archivo en la administración
pública”- documento de trabajo elaborado por Carlos Alberto Zapata y Nelson Javier Pulido para el comité de
gestión de documentos del sistema nacional de archivos
34.http://www.slideshare.net/scarchivistas/propuesta-para-un-modelo-de-gestin-de-documentos-
electrnicos-de-archivo-en-la-administracin-pblica
Gómez Vieites, Álvaro (2007). Enciclopedia de la Seguridad Informática.
3.5Altmark, Daniel Ricardo y Molina Quiroga Eduardo. Tratado de Derecho Informático. Tomo III.
Publicado por la Ley año 2012
Antonio Castro Lechtaler1, Marcelo Cipriano1, Edith García2, Julio Liporace2, Ariel
Maiorano2, Eduardo Malvacio2,
Escuela Superior Técnica “Gral. Div. Manuel N. Savio”, Facultad de Ingeniería
Instituto de Educación Superior del Ejército Argentino
1
{acastro, marcelocipriano}@iese.edu.ar;
2
{edithxgarcia, jcliporace, maiorano, edumalvacio}@gmail.com
1 Introduction
The revolution of communications and technology has taken cryptology from the
military and diplomatic realm into everyday life.
E-mailing, home banking, user authentication in social networks, mobile
communications, and wireless technology have increased the requirements for
confidentiality while data is transferred via insecure channels.
Some ciphering systems meet the requirements to protect data satisfactorily.
However, they do not meet the increasing demand for higher transfer rates.
Because of the resources used and the processing power required, the existing
algorithms lag behind the increasing needs for data transfer security.
Stream ciphers may prove suitable to use in portable devices. Their hardware
adaptability turns them into feasible solutions, responding to the increasing demand
and high transfer rate standards.
Vernan and Mauborge created such a system in 1917 at the AT&T labs. In their
design, the required key is as long as the length of the message. Both, transmitter and
receiver must have the key which must be destroyed after use. Otherwise, security is
jeopardized.
Because of this feature, the system is known as One-Time-Pad. The key must be
random and is used for both processes: ciphering and deciphering. Hence, users need
to share it at both ends. Cryptosystems under this particular secret key configuration
belong to a class known as symmetric-key algorithms.
In 1949, Shannon demonstrated the invulnerability of this system by satisfying the
requirements for perfect secrecy established by the rising field of Information Theory.
Nonetheless, two weaknesses become apparent, not in the algorithm itself, but in
its application. On one hand, a problem arises in the generation of the secret key; and,
on the other, in the security of key distribution.
A possible solution is to find a deterministic procedure to generate the key. Such a
key would not be random, but pseudorandom, and shall meet additional requirements
to be considered secure.
Currently, Linear Feedback Shift Registers (LFSRs) are used extensively to generate
pseudorandom sequences with controlled period and linear complexity.
Research on LFSRs began in the 60s [6] and continued through several years. A
significant number of results and applications have been produced: algorithm design,
error control codes, and linear complexity analysis of binary sequences with the
Berlekamp-Massey algorithm [7].
Because of their linearity, LFSRs alone are insecure. It is widely known that, when
2n-1 consecutive bits of an outbound sequence are known, it becomes predictable.
Attempts to add linear complexity by combining LFSRs with, among other things,
nonlinear functions have not met the desired standards yet.
Nonlinear Feedback Shift Registers (NLFSRs), a generalization of their linear
counterparts, have been relegated for a long time. While LFSR theory is robust and
well understood, many fundamental problems with NLFSRs remain unanswered.
One such problem is the determination of the period of outbound sequences in
NLFSRs. In recent years, research has focused on nonlinear registers and stream
ciphers using NLFSRs in some form. This is the case for the class TRIVIUM [1][2],
BIVIUM [10].
Our research focuses in the development of a new family of the TRIVIUM-
BIVIUM stream cipher class, designated as Toys.
In our Toys, in which the sizes of the NLFSRs are reduced significantly, we have
modified their taps while maintaining the original design principles.
With these models, observation in a constrained environment may foster more
realistic research projects, as well as allow researchers to compare results within
smaller samples and to conduct tests in a reduced space.
In the future, the Toy family may help contribute in the development of a solid
algebra involving NLFSRs, in particular for generators of the TRIVIUM-BIVIUM
class.
2. FSR Overview
An n-bit feedback shift register (FSR) is an n-bit length register with a feedback
function:
where the feedback bit (at the tap positions of the register) or the output bit is of the
form:
For each step t, the register bits shift one position to the right and the taps are fed
into the function and become the bit input for the following step. The n bits of the
register constitute the state of the register at step t. The initial state is defined when
t=0. The period of a FSR is the length of the largest cycle generated by the output
sequence of the register.
If the feedback function is linear, i.e.:
f(xn-1,xn-2 ,…….x0) = c0x0 + c1x1 + c2x2 +………+ cn-1xn-1 (ci ∈ {0,1}) (3)
we say that the registry is an LFSR (Linear Feedback Shift Register). Otherwise,
with a nonlinear feedback function, we have a NLFSR (Nonlinear Feedback Shift
Register).
The key bit stream must meet certain cryptologic security conditions, i.e.: the
length of the sequence and the linear complexity must be sufficiently large, and the
binary sequence must satisfy a series of pseudo-random tests [6].
The stream algorithm TRIVIUM was designed by Christophe De Cannière and Bart
Preneel. It was selected as a finalist algorithm in the e-STREAM Project [5]. It was
designed to generate at least 264 bits with the use of an 80-bit secret key and an
initialization vector (IV) of also 80 bits.
It consists of three combined NLFSRs. The first register controls the second, the
second controls the third, and this last register controls the first.
The output consists of three combined non-linear shift registers of length 93, 84,
and 111, and where specific positions are selected to obtain a key bit stream. Whereas
no efficient attack has been encountered to break this generator so far [8][9], its
period remains undetermined and an open research problem.
A complete description is given by the following simple pseudo-code:
INPUT: s0, s1,…,s287 initial state, integer n, si ∈{0,1}.
OUTPUT: binary sequence {kt}
1. Initialization
t1 ← s65 ⊕ s92
t2 ← s161 ⊕ s176
t3 ← s242 ⊕ s287
2.1 kt ← t1 ⊕ t2 ⊕ t3
2.2 t1 ← t1 ⊕ s90 ⊗ s91 ⊕ s170
t2 ← t2 ⊕ s174 ⊗s175 ⊕ s263
t3 ← t3 ⊕ s285 ⊗s286 ⊕ s68
2.3 (s0, s1,…,s92) ← (t3, s0,…,s91)
(s93, s94,…,s176) ← (t1, s93,…,s175)
(s177, s178,…,s287) ← (t2, s177,…,s285)
3. Return {kt}
4.1. Trivium-Toy
The model consists of three NLFSRs X, Y, and Z of lengths 31, 28 and 37 with the
following states:
X(31): X0, X1,…………,X30
Y(28): Y0,Y1,………….,Y27 (4)
Z(37): Z0, Z1,………….,Z36
Being the feedback of each register, i.e. the bit input in each:
Also, the cipher of the plaintext with the key bit stream is:
Ct = P t ⊕ K t (7)
2.1 kt ← t1⊕ t2 ⊕ t3
3. Return {kt}
4.2. Bivium-Toy
The model consists of two NLFSRs X, and Y of lengths 31 and 28 respectively with
the following states:
X(31): X0, X1,…………,X30
(8)
Y(28): Y0, Y1,…………,Y27
1. Initialization.
t1 ← s21 ⊕ s30
t2 ← s53 ⊕ s58
2.1 kt ← t1⊕ t2
3. Return {kt}
5. Conclusions
6. Further research.
The Toy family may foster additional research in the following areas:
- Search for length of the period or cycles.
- Distribution of taps and their changes to determine algebraic properties and
personalization of N-viums.
- Algebraic analysis of the non-linear functions used in the models.
- Search for possible weak keys.
7. Acknowledgements
8. References
Abstract. The main feature of secure software lies in the nature of processes and
practices used to specify, design, develop and implement software. Security
patterns applied the concept of pattern in the security realm. Its description helps
to capture immediately the essence: what is the problem to which attends and
what the proposed solution is. The different formats that exist for its description
and the multiplicity of sources make its discovery demand effort that discourages
the systematic use by potential recipients. This paper presents the prototype of a
catalogue that seeks to establish a bridge between the knowledge and experience
security experts and the needs of knowledge of software development teams.
Keywords: Security patterns. Security intelligence. Security patterns catalogue.
The main feature of secure software lies in the nature of the processes and practices
used to specify, design, develop and deploy the software [1]. A project that adopts an
improved security software development process incorporates a set of practices that
reduce the number of exploitable flaws and bugs. Over time, these practices become
more systematic, so it should decrease the likelihood that such vulnerabilities are
present in the software at the moment that releases. The results in the field of research
and experiences in the industry indicate the importance of reducing such potential
vulnerabilities as early as possible within the software development lifecycle. The
adoption of improved security processes and practices is much more profitable than the
solution widespread today to develop and release patches for the operating software [2].
This early attention of the security has to do with the adoption of a set of activities
that make possible the security integration in the software development lifecycle [3],
including [4]: 1) identify security objectives, 2) apply security design guidelines, 3)
create threat models, 4) conduct security architecture and design reviews, 5) complete
implementation security reviews, and 6) run deployment security reviews.
We note the active development of tools and methods for testing that allows assessing
the robustness and resilience of software products and their underlying infrastructure
under attack conditions (for example, those used in penetration testing). Namely, there is
intelligence domain of attacks that exploit vulnerabilities and compromise the security of
software-intensive systems. All this produces a complex deal scenario.
There are criteria that help to secure software production [5]:
Keep in mind that the security and cost of production of a software system
depends strongly on the knowledge about its requirements [6].
Include security treatment in each of the different stages of the software development
cycle is an accepted criterion for improving the security of the final product. [7]
Incorporate security patterns, which represent the best practices achieved by the
industry in order to stop or limit security attacks [8].
In the secure software development process’ case, security patterns are a way to
bridge the gap between theory and practice. Although there are theoretical
approaches, they are limited to relatively complex systems, and require a grade of
knowledge and experience that is not available at the necessary level.
Then, we may infer that promote the use of security patterns to guide and drive the
building of secure software development models, from the early stages of the process,
is an approach that will allow us to ensure greater security in the behavior of a
software product.
2 Security Patterns
engineers, a key part of their audience; (iii) the patterns already are used to capture the
knowledge about the system and the organization, then using the patterns to capture
security knowledge help to improve security in the systems lifecycles, where results
clearly needed. In particular regard to its development, in the last years different security
groups have been specifying different patterns, as well as have made efforts for
classification purposes [13, 14].
But already there is no denying the need to address the problem of security products and
services based on software, responsible for projects still face serious difficulties in
addressing effectively the priorities identified in terms of security. What is the cause of
this discrepancy? We cannot say that only due to ignorance about the existence of
attackers who manage to exploit vulnerabilities in software. In fact, we can observe a
significant disconnect between security experts and software development teams; the
first are focused on the security of a system, while the seconds in building a system. For
the latter, security is one of the non-functional goals with relevant, but just one of many.
At present, a multiplicity of sources exists where there are available different groups
of security patterns defined throughout the time. This does that its discovery demands
a level of effort that, normally, discourages to whom they are destinated to make use
of them in systematic form. A centralized catalogue is a tool that acts as a starting
point for the search and identification of one or more solutions to a security problem
that is intended to resolve, expressed through security patterns. In this way it seeks to
establish a bridge between the intelligence developed by security experts and the
needs of knowledge of the software development teams.
To do this, we define as main requirement that the information offered by the
catalogue be appropriate to “find” the security pattern. This information is extracted or
inferred from the description of the pattern itself, and includes extensions that facilitate
the categorization of the pattern according to established criteria. In the current design
of the catalogue we adopted two criteria: (1) the security attributes impacted by the
problem described; (2) the software development process phase to which applies the
pattern. In this way, we hope that the information related with security patterns
presented via the catalogue helps to capture immediately the essential aspects of them.
Our problem then is to define a way of structuring and indexing a catalogue of security
patterns, so it could result quite easy to find a pattern that proposes a solution to an
identified security situation, and from there access to the complete original reference of
the security pattern description. We define the set of attributes shown in Table 1 as the
common attributes of security patterns that allow finding their references.
Except for the ‘Nombre’ attribute, for the remaining attributes is necessary to make
an analysis of the security pattern description in its original source, extract the attributes
concepts associated with the selected attributes and perform the cataloguing of the
security pattern. With respect to this concepts extraction process during the review of a
security pattern, we found a guide in [17]; this paper summarized the results about the
quality of the information included in the aspects that describe a security pattern, as well
as the frequency of use of these aspects used along 67 publications of security patterns.
In this regard, we can highlight the following as a guide to the extraction process:
Solution (present in 87% of publications), is used to describe what security
aspects attends the pattern and how it could be implemented;
Problem (present in 84% of publications), in many cases includes abstract or
oversimplified description of the problem;
Related Patterns and Consequences (present in 75% of publications), require a
good understanding of other security patterns as potential impact in the field of
security so that they can be used as elements of distinction.
Context (present in 49% of publications) generally includes a brief description,
which makes it difficult to extract sufficient knowledge or even an idea about
what the security pattern;
Known Use (present in 46% of publications), described in what real-life cases
you can use the pattern and provides guidance on its application domain.
Authenticated Session
(a.k.a. Server-Side Cookies, Single Sign-On)
Abstract
An authenticated session allows a Web user to access multiple access-restricted pages on a Web site
without having to re-authenticate on every page request. Most Web application development environments
provide basic session mechanisms. This pattern incorporates user authentication into the basic session model.
Problem
HTTP is a stateless, transaction-oriented protocol. Every page request is a separate atomic transaction with
the Web server. But most interesting Web applications require some sort of session model, in which multiple
user page requests are combined into an interactive experience. As a result, most Web application
environments offer basic session semantics built atop the HTTP protocol. And the protocol itself has evolved
to provide mechanisms -such as basic authentication and cookies- that allow session models to operate
correctly across different Web browsers. An obvious use for session semantics is to allow users to authenticate
themselves once instead of every time they access a restricted page. However, great care must be taken when
using session semantics in a trusted fashion. Most session mechanisms are perfectly adequate for tracking non-
critical data and implementing innocuous transactions. In such cases, if an end user circumvents the session
mechanism, no harm is caused. But it is easy to make mistakes when applying session mechanisms to
situations where accountability, integrity, and privacy are critical.
Solution
An authenticated session keeps track of a user’s authenticated identity through the duration of a Web
session. It allows a Web user to access multiple protected pages on the Web site without having to re-
authenticate him/her-self on every page request. It keeps track of the last page access time and causes the
session to expire after a predetermined period of inactivity. …..
Examples
Many significant Web banking and e-commerce applications rely on this pattern. Any site that enforces
user authentication and does not store that information on the client uses something similar. ….
Related Patterns
· Network Address Blacklist – a related pattern that demonstrates a procedure for blocking a network
address from further access attempts if a session identifier guessing attack is conducted.
· Password Authentication – a related pattern that presents the secure management of passwords, which are
almost always used as the authentication mechanism for this pattern.
References
[1] Coggeshall, J. “Session Authentication”.
http://www.zend.com/zend/spotlight/sessionauth7may.php, May 2001.
[2] Cunningham, C. “Session Management and Authentication with PHPLIB”.
http://www.phpbuilder.com/columns/chad19990414.php3?page=2, April 1999.
[3] Kärkkäinen, S. “Session Management”. Unix Web Application Architectures.
http://webapparch.sourceforge.net/#23, October 2000.
same applies to the design phase, in the aspect of ‘user authentication’; iii) Aspecto de
seguridad afectado: in the final paragraph of section description Problem refers to
“But it is easy to make mistakes when applying session mechanisms to situations
where accountability, integrity, and privacy are critical”, accordingly, the security
pattern seeks to address these shortcomings; iv) Keywords: inferred from Name and
Know-As-As sections; v) Referencias: from the references listed in the References
section, selecting those sources whose availability at the time of cataloguing can be
verified. Obtained these data, we proceed to cataloguing the security pattern selected
for example, using the prototype that we describe in the following section.
To realize this proposal, we analyzed extended use alternative tools that allow us to
its implementation. We define build a prototype using a tool for management of
bibliographic references: ‘JabRef’. This is a very low-cost alternative to test the idea
which, if it actually works, can then be extended to massive tools, as for example a
web application with features ‘wiki’.
JabRef is configurable bibliographic reference management software. It use native
format BibTex (a text-based and independent of the style file format) to define lists of
bibliographic items, articles, thesis, etc. For the generation of the proposed catalogue
we take advantage of this facility for recording references in this manager; in addition,
the existence of distinct and specific attributes in each pattern allows us to generate a
special entry type (Security Pattern type) with their respective fields and general and/or
optional information. Another important feature of JabRef is the use of LaTeX, which
allows us to transfer automatically and without major difficulties (given the use of well-
defined parameters) the current catalogue to any other type of software that allows the
entry of the same language: databases, Wikipedia pages, another specific or general
purpose manager, etc. Figure 2 shows a screen from the JabRef interface, where:
Groups (section 1). Created groups that correspond to the phases of software
development in which the pattern is normally applicable. Selecting a group in
section 2 (Entry) will appear the patterns that correspond to that classification.
Entry (section 2). Entries loaded at the base are presented as a table with the
fields as columns, which can be used to select a criterion of order by pressing the
desired column. You can see all the references or related files by right clicking
1 2
3 4
on the desired row in the column ‘File’ (second column), folding a list of values.
If you select one of these, will go to the required reference, whether a document
available locally or on the Internet.
Search (section 3). It allows to search according to an attribute and filters inside the
entire catalogue. After a search and already showing the selected patterns that
contain the phrase or word searched, when you double-click on them and
navigating through the different tabs of the query, words appear highlighted in blue.
Preview (Section 4). It shows the information of the security pattern selected in
PDF format, which is a friendly representation of the contents of the pattern by
default. By pressing the right mouse button you can print preview.
This figure shows the way how catalogued information relating to the
Authenticated Session pattern [21] is displayed, where there are the attributes
proposed to categorize a security pattern.
Cataloguing a security pattern: Figure 3 shows some of the facilities offered by the
developed prototype to incorporate information from the attributes listed in Table 2:
Figure 3.a): Loading the ‘Required Fields’ (mandatory): name, objective,
classification, security issues, key words and Bibtexkey (a peculiarity of JabRef and
a) Required Fields.
b) Optional Fields.
c) Loading
‘Keywords’ and
‘Referencias’.
Figure 3 Interfaces for loading data for cataloguing attributes Authenticated Session security pattern.
bibtex references, which is used for references to the security pattern); Figure 3b)
Information is supplemented with related patterns and other well-known names (in
both cases, if any); Figure 3.c): Defining ‘Keywords’ and ‘Referencias’ for the
security pattern, taking advantage of the JabRef’s facility for linking local and
external files as ‘Files’.
Searching a security pattern in the catalogue: Figure 4 shows the result of a search
for references to security patterns applicable to the design phase and that attend to the
confidentiality as a security attribute.
This proposal aims to provide to the security community these quick references, and
go replenishing it as it’s used. The tool chosen to build a catalogue of references
helps us to test in a simple way, and eventually modify, the proposed structure and
criteria, and consider the possibility of replace with another with higher performance
and style. This prototype allows us to define the bases to make an extension to a
wiki-style web tool, which will be available to the whole community, and also to be
updated by it. In addition to the web tool, it will be necessary to propose and publish
criteria to incorporate new references to our catalogue, so that all entries follow these
agreed common criteria. This is the work that we intend to address in a next phase.
References
1. McGraw, G., “Software Security: Building Security In.” Addison-Wedsley. EEUU. (2006).
2. Romaniz, S., “Buenas prácticas de elicitación de los requerimientos de seguridad”. IV Congreso
Iberoamericano de Seguridad Informática -CIBSI2007-, Argentina (2007).
3. Meier, J. et al., “Security engineering explained.” (2005). Available in
http://www.microsoft.com/download/en/confirmation.aspx?id=20528.
4. Castellaro, M. y otros, “Hacia la Ingeniería de Software Seguro.” XV Congreso Argentino de
Ciencias de la Computación, CACIC2009. Argentina. (2009).
5. Solinas, M., “Elicitación y trazabilidad de requerimientos utilizando patrones de seguridad.”
Universidad Nacional de La Plata. Argentina. (2012). Available in
http://sedici.unlp.edu.ar/bitstream/handle/10915/421/Documento_completo.pdf?sequence=1.
6. Garvin, D., “What does product quality really mean?” Sloan Management Review, Vol 26, No
1. (1984).
7. Romaniz, S. y otros, “La seguridad como aspecto organizacional y transversal en proyectos de
Sistemas de Información.” 38 Jornadas Argentinas de Informática 38JAIIO. Argentina. (2009).
8. Schumacher, M. et al., “Security Patterns: Integrating Security and Systems Engineering.” John
Willey & Sons Inc. EEEUU. (2006).
9. Coplien, J.: “Design Pattern Definition - Software Patterns.” Available in
http://www.hillside.net/component/content/article/50-patterns/222-design-pattern-definition.
10. Schumacher, M.: “Security engineering with patterns-origins, theoretical model, and new
applications.” Springer-Verlag. (2003).
11. Alexander, C.: “The Timeless Way of Building.” Oxford University Press. EEUU. (1979).
12. Yoshioka, N. et al.: “A survey on security patterns.” Progress in Informatics. (2008).
13. Fernandez, E. et al. “Classifying Security Patterns.” Progress in WWW Research and
Development Volume 4976. (2008).
14. Washizaki, H. et al. “Improving the Classification of Security Patterns.” 20th International
Workshop on Database and Expert Systems Application, DEXA’09. Austria. (2009).
15. Buschmann, F. et al. “Pattern-Oriented Software Architecture: A System of Patterns.”
Chichester, UK: Wiley, 1996.
16. Schumacher, M. et al., “Security engineering with patterns.” Proceedings of the Conference on
Pattern Languages of Programs, pp. 1–17. (2001).
17. Bunke, M. et al. “Organizating Security Patterns Related to Security and Pattern Recognition
Requirements.” International Journal on Advances in Security, vol 5 no 1 & 2 (2012).
18. Kienzle, D.: “Security Patterns Template and Tutorial version 1.0.” (2008). Available in
http://www.scrypt.net/~celer/securitypatterns/template%20and%20tutorial.pdf
19. Blakley, B. et al. “Security Design Patterns.” The Open Group. (2004). Available in
https://www2.opengroup.org/ogsys/catalog/g031.
20. Henninger, V. et al. “Software pattern communities: Current practices and challenges.”
Proceedings of the Conference on Pattern Languages of Programs PLOP. New York, NY, USA.
ACM, 2007, pp. 14:1–14:19.
21. Darrell M. Kienzle et al. "Security Patterns Repository Version 1.0.” Available in
http://www.scrypt.net/~celer/securitypatterns/repository.pdf
1. Introducción
2. Android
2.2. Aplicaciones
Las aplicaciones de Android, como ya mencionamos, se pueden pro-
gramar tanto en C++ como en Java. Cuando se compilan los programas,
el Kit de Desarrollo nos arma un archivo .APK. Los programas compila-
dos son programas en Bytecode para la máquina virtual Dalvik.
Los archivos .APK son los que nos permiten instalar una aplicación en el
celular. Contienen una serie de instrucciones a ejecutar y además otros
recursos como imágenes, sonidos y archivos .xml cómo por ejemplo el An-
droidManifest.xml.
Cada APK se asocia a un proceso único, que proporciona el ambiente de
ejecución de los componentes. De los cuales, uno es el componente inicial
del programa.
Cuando se ejecuta una aplicación se le asigna un proceso Linux y un úni-
co hilo de ejecución (thread), ası́ todos sus componentes corren sobre el
mismo proceso y thread.
4. La Herramienta
4.1. El Proceso
A continuación se detalla el proceso realizado por la herramienta para
generar las verificaciones. Este proceso se realiza cuando la aplicación es
instalada en el dispositivo Android.
Figura 1. Instrumentaci
on de ocdigo en el archivo principal
4.2. Ejemplos
En primer lugar se implementó una agenda de contactos donde se al-
macenan números telefónicos que pueden ser usadas por otra aplicaciones
5. Conclusiones
confiable. Por otro lado, la herramienta tiene la ventaja que se puede mo-
dificar fácilmente o incluso utilizarla para realizar otro tipo de chequeos
o modificaciones de las aplicaciones.
Referencias
1. Web oficial de desarrollo para Android,
http://developer.android.com/index.html
2. Android Argentina, http://androidargentina.com.ar/
3. Web oficial de Dex2jar, http://code.google.com/p/dex2jar/
4. ¿Qué es Android?, http://www.xatakandroid.com/sistema-operativo/que-es-
android.
5. Wikipedia: Android, http://es.wikipedia.org/wiki/Android
6. Web de Jasmin, http://jasmin.sourceforge.net/about.html
7. Android Security, https://source.android.com/tech/security/
8. Introduction to Instrumentation and Tracing
http://msdn.microsoft.com/en-us/library/aa983649 %28VS.71 %29.aspx
9. Martı́n Abadi; Mihai Budiu; Úlfar Erlingsson y Jay Ligatti. Control-Flow
Integrity Principles, Implementations, and Applications. ACM Journal Vol V, Fe-
brero 2007.
10. Chao Zhang; Tao Wei; Zhaofeng Chen; Lei Duan; Lászl Szekeres; Step-
hen McCamant; Dawn Song y Wei Zou. Practical Control Flow Integrity &
Randomization for Binary Executables.