1. SMART SYSTEMS
LA SEGURIDAD EN SAAC
SISTEMA DE ADMINISTRACIÓN DEL CENLEX
Alonso Ruiz Carlos Alberto
Cabrera Martínez Moisés
Flores Arriaga Luis Antonio
García Labra Abrahan Moisés
Ordoñez García Pablo
03/12/2012
INSTITUTO POLITÉCNICO NACIONAL
Centro De Estudios Científicos y Tecnológicos No. 9
“Juan de Dios Bátiz Paredes”
La finalidad de este documento es la justificación que se le da al sistema SAAC acerca de la seguridad que presenta
para garantizar al cliente la confianza que debe sentir al hacer uso del sistema.
2. EL SISTEMA DE ADMINISTRACIÓN DE ALMACÉN CENLEX (SAAC) Y LA SEGURIDAD DE LA INFORMACIÓN
El sistema SAAC consiste en la administración de productos de almacén por parte de un administrador, el
cual podrá registrar entrada de productos, darlos de alta, e incluso modificarlos. A parte de que cuenta con
la opción de generar un inventario (anual) y un informe (fechas específicas) sobre dichos productos. Por
otro lado al sistema podrán ingresar 2 usuarios, el administrador y el supervisor, quien podrá observar los
movimientos que haya habido en el almacén, información del mismo y es el encargado de aceptar o
denegar pedidos por parte de un usuario, este usuario tiene la posibilidad de realizar un pedido al almacén.
El administrador del almacén hizo mención de que la información sobre los productos debía ser asegurada
de tal forma que no todos los usuarios que ingresaran al sistema pudieran observarla o hacer cambios en
ella, a esto él lo consideraba secreto industrial.Como tal, dicho usuario se preocupaba por la integridad, la
seguridad y la fiabilidad del software que utilizaría.
La seguridad en el software es la idea de la ingeniería del software para que siga funcionando
correctamente bajo alguna irrupción maliciosa, como una amenaza o un ataque.
Dentro los ataques activos 1 la suplantación de identidad es uno de los más peligrosos, y se produce
cuando una entidad finge ser otra, por esta razón el sistema debe contar con algún servicio deautenticidad
que consiste en que la información provenga de quien realmente dice provenir.
Para hacer frente a estos problemas y satisfacer las necesidades del cliente,nosotros hemos realizado
esfuerzos significativos para reducir las vulnerabilidades, mejorar la resistencia a los ataques y proteger la
integridad de los productos que se manejan en el almacén, así pues se implementaron servicios y
mecanismos de seguridad.
Actualmente la mayoría de los servicios de seguridad incluyen el mecanismo de cifrado, lo cual quiere decir
que al cifrar la información, se cubre una gran parte de la seguridad en un sistema.
Por otro lado ya que SAAC cuenta con la posibilidad de que un usuario externo (puede pertenecer a algún
área del CENLEX) tenga la posibilidad de generar un pedido al almacén a través de una página de internet,
el número de amenazas y ataques aumenta, puesto que se maneja más información (formato de pedido)
que viaja a través de una red que puede ser alterada o modificada por un tercero o por la misma persona.
En la medida en que las aplicaciones Web críticas (que involucren información confidencial) se consideren
seguras, los usuarios harán un mayor uso de ellas, sin el temor de que la información que están
proporcionando va a ser utilizada de forma ilícita.
Intentan alterar los recursos del sistema o afectar su comportamiento.
1
3. ¿ENTONCES COMO FUNCIONA LA SEGURIDAD DENTRO DE SAAC?
Sabemos que en un sistema de información se presentan distintos problemas de atentados contra la
seguridad, clasificados en:
Amenaza: Una posibilidad de violación de la seguridad, que existe cuando se da una circunstancia,
capacidad, acción o evento que pudiera romper la seguridad y causar perjuicios.
Ataque: Un asalto a la seguridad del sistema derivado de una amenaza inteligente; es decir, un acto
inteligente y deliberado para eludir los servicios de seguridad y violar la política de seguridad de un
sistema. (Stallings, 2004)
Algunas de las amenazas a las que se expone nuestro sistema son:
Accesos no autorizados al sistema: un usuario externo puede intentar conseguir privilegios que no
le corresponden.
Una persona externa al sistema puede lanzar un ataque de negación de servicio, en nuestro caso un
pedido del catálogo del almacén.
Dentro de la clasificación de los ataques a un sistema, un ataque al que se enfrenta el nuestro es el ataque
pasivo2, que consta de la obtención del mensaje, ya que un usuario externo podría ver el formato de una
solicitud de pedido al almacén.
(Stallings, 2004)
Referente a los ataques activos, la suplantación de identidad es la más peligrosa, y nos enfocamos a que
determinada persona podría hacerse pasar por otra, en nuestro sistema el supervisor de almacén puede
fingir ser el administrador del almacén.
Por otro lado nuestro sistema también se expone a la repetición, otro tipo de ataque activo, dado que un
agente externo puede capturar una unidad de datos y su retransmisión posterior, en este caso un pedido al
almacén, el cual pudiera ser renviado varias veces por una persona.
Así mismo puede que haya una modificación del mensaje por parte de un tercero, es decir, una parte del
mensaje es alterada, en nuestro caso la tercera persona puede cambiar el estado de “rechazado” a
“aceptado” de algún pedido hacia el almacén.
Considerando estos riesgos a los cuales se somete el sistema, y en conjunto con los mecanismos de
seguridad, cifrado y notarización, hemos podido implementarlos siguientes servicios de seguridad y los
respectivos mecanismos de seguridad:
Control de Acceso:
o Control de acceso. Decidimos utilizar este mecanismo ya que en el CENLEX, lugar donde operará
nuestro sistema, existen 2 usuarios que tendrán acceso al software, el administrador del almacén y
la supervisora del mismo, aparte de que el administrador cuenta con varias personas que le ayudan
en el almacén; por esta razón será necesario un control de acceso, el cual hemos implementado a
través de un inicio de sesión que verificará qué persona está accedido al sistema y de esta forma se
le otorgarán distintos privilegios a la persona que haya ingresado.
Autentificación de entidades Origen/destino
o Intercambio de autentificación: nuestro sistema comprueba la identidad del usuario al momento de
registrarse en el inicio de sesión y los datos que haya ingresado se verifican en nuestra base de
2
Los ataques pasivos se dan en forma de escucha o de observación no autorizadas de las transmisiones.
4. datos, donde están almacenados los nombres y contraseñas de cada usuario que el supervisor haya
agregado, de esta forma los datos que la persona haya introducido deben coincidir con los
almacenados en nuestra base de datos.
Notarización:
Al momento de realizar un pedido hacia el almacén, una tercera parte tendrá que avalar dicho
pedido en una parte determinada del software, de esta forma el intercambio de información entre
el usuario general y el almacén se ve supervisada y es aprobada o rechazada por un tercero, con el
fin de mantener la integridad de los datos enviados.(Stallings, 2004)
Finalmente en la parte del cifrado, implementamos el algoritmoDES, principalmente por ser un algoritmo
de cifrado estudiado en clase, no es muy complejo, y cubre las necesidades que el cliente requiere
respecto a seguridad, ya que cumple con las funciones del mecanismo de seguridad Cifrado.
Algoritmo DES
“DES (Data Encryption Standard, estándar de cifrado de datos) es un algoritmo desarrollado originalmente
por IBM a requerimiento del NBS (National Bureau of Standards, Oficina Nacional de Estandarización, en la
actualidad denominado NIST, NationalInstitute of Standards and Technology, Instituto Nacional de
Estandarización y Tecnología) de EE.UU. y posteriormente modificado y adoptado por el gobierno de
EE.UU. En 1977 como estándar de cifrado de todas las informaciones sensibles no clasificadas.
Posteriormente, en 1980, el NIST estandarizó los diferentes modos de operación del algoritmo. Es el más
estudiado y utilizado de los algoritmos de clave simétrica.” (Arriazu, 1999)
El nombre original usado por IBM era Lucifer, este trabajaba con bloques de 128 bits, teniendo la clave
igual de longitud y se basaba en operaciones lógicas booleanas. Tiempo después la NBS implemento
reducciones en los bloques y claves, actualmente el DES cifra bloques de 64 bits, incluyendo permutación,
sustitución y usando una clave de 64 bits, de los que 8 son de paridad (es decir que usa 56 bits),
produciendo así 64 bits cifrados.
DES tiene 19 etapas diferentes.
5. Viendo el esquema general del algoritmo DES, podemos decir, que al texto plano (separado previamente
en bloques de 64) pasa por una caja de permutación inicial, de nombre IP donde se divide en R0, y L0, en
paralelo, se calculan las calves, la clave de 64bits se reduce a 56 por una caja de permutación PC-1, se rota
a la izquierda según la calve que se quiera calcular, después se permuta con una PC-2. Teniendo K1, se le
aplica al texto, siguiendo la estructura Feistel con 16 rondas, (es decir, teniendo 16 claves), después, se
intercambian posiciones R0 y L0, se introducen en una caja de permutación fina, (IP^-1) y el texto esta
cifrado, para descifrar, se debe repetir el mismo proceso, pero aplicando las claves desde K16, hasta K1.
“La función f de la red de Feistel se compone de una permutación de expansión (E), que convierte el
bloque correspondiente de 32 bits en uno de 48. Después realiza una or-exclusiva con el valor Ki, también
de 48 bits, aplica ocho S-Cajas de 6*4 bits, y efectúa una nueva permutación (P).” (Arriazu, 1999)
¿POR QUÉ EL DES ES SEGURO?
“Con una clave de 56 bits, hay claves posibles, que aproximadamente es claves. Por este
motivo no parece práctico un ataque de fuerza bruta. Suponiendo que, en promedio, se tiene que intentar
la mitad del espacio de claves, una única maquina que realice un cifrado DES por microsegundo tardaría
mas de mil años en romper el cifrado.” (Stallings, 2004)
6. LA CONFIANZA DEL CLIENTE HACIA SAAC
Nuestro sistema está expuesto a muy pocas amenazas y ataques dentro de la institución CENLEX, sin
embargo esto no implica que no se implementen mecanismos y servicios de seguridad en el sistema, ya
que lo más importante es que el usuario se sienta seguro de usar nuestro software, por esta razón hicimos
uso de distintos servicios de seguridad, entre ellos el control de acceso al sistema y la autentificación de
entidades Origen/destino, de esta forma se prevén distintas amenazas y se protege contra diversos
ataques al sistema.
El usuario para el que se realizo SAAC es el administrador del almacén, nosotros le garantizamos que la
información que él vaya almacenando en el sistema esté lo más protegida posible con algunos servicios de
seguridad y un mecanismo de cifrado (DES). El administrador hizo mención de que no toda la información
sobre los productos del almacén debe ser visualizada por otros usuarios, así pues el sistema cuenta con un
control de acceso que determina los distintos privilegios que le serán otorgados a aquellos que ingresen a
SAAC.
Trabajos citados
Arriazu, J. S. (1999). Descripción del algoritmo DES.
Stallings, W. (2004). Fundamentos de Seguridad en Redes - Aplicaciones y Estándares. Madrid: PEARSON EDUCATION.