Download SENTINEL REMOTE CONTROL (S.R.C)

Document related concepts
no text concepts found
Transcript
SENTINEL REMOTE CONTROL
(S.R.C)
Gustavo Martínez
Versión G-0.5
Sentinel Remote Control
Gustavo Martínez
Índice de contenidos
0.Consideraciones acerca de este producto...................................................................................... 3
1.Objetivo del SRC......................................................................................................................... 3
2.0 Instalación ................................................................................................................................ 3
2.1.Parte cliente (gclient) ...................................................................................................................... 4
2.1.Parte servidora (gserver) .................................................................................................................. 4
2.3 Ajustando las propiedades de criptografía fuerte .................................................................................... 4
3 Ejecución y primeros pasos.......................................................................................................... 4
4.Listado de comandos ................................................................................................................... 8
5.Por hacer ..................................................................................................................................... 8
6.Preguntas y respuestas ................................................................................................................. 9
2
Sentinel Remote Control
Gustavo Martínez
0.Consideraciones acerca de este producto
La familia de llaves de protección Sentinel dispone de un par de herramientas que permiten la
alteración de la memoria de la llave fuera de línea (offline). Estas herramientas son:
•
•
Make Key Utility para la SuperPro o el Key Manager para la UltraPro. Ambos programas
pueden encontrarse integrados en el Toolkit de cada llave.
Field exchange utility.
El primer programa es la parte que permite definir que tipo de acciones se han de llevar a cabo en
la llave. Esta aplicación no se envía nunca al cliente.
La segunda aplicación aplica las acciones definidas por la aplicación anterior. Se ha de enviar al
cliente.
El modo de funcionamiento es el siguiente:
1. El cliente envía una cadena con información de la llave generada por la aplicación Field
exchange utility.
2. El administrador de la llave toma la información recibida por el cliente y define las
acciones que se han de aplicar a la llave(escrituras, borrados etc). Todo esto genera una
nueva cadena de datos.
3. Finalmente el cliente toma la cadena generada por el administrador de la llave y la ejecuta
con el programa Field exchange utility. La llave ha sido modificada.
Consulte el manual para obtener más detalles sobre estas utilidades.
Antes de utilizar Sentinel Remote Control (a partir de ahora SRC) valore la posibilidad de las
anteriores herramientas.
1.Objetivo del SRC
El objetivo de SRC es la administración y diagnóstico de problemas relacionado con las llave
Sentinel SuperPro y UltraPro todo integrado en una misma herramienta.
Para ello, hay una parte cliente (gClient) que permite tomar decisiones acerca de la llave y una
parte servidora (gServer) que ejecuta los comando enviados por la parte cliente.
La parte cliente / servidora pueden estar en una LAN, en un mismo PC o conectados a través de una
WAN.
2.0 Instalación
La instalación del SRC consta de un proceso de instalación en el PC que tiene la llave conectada o
que puede acceder a la llave1(parte servidora) y una parte en aquel PC desde el cual se desea
administrar la llave (parte cliente).
1
En el caso de utilizar una llave SuperProNet o UltraProNet.
3
Sentinel Remote Control
Gustavo Martínez
2.1 Parte servidora (gServer)
Para instalar la parte servidora deberá seguir los siguientes pasos:
1. Instalar el Java Runtime Environment o el Java Developer Kit. Ambos se pueden descargar
gratuitamente desde la página web de Sun Microsystems (http://java.sun.com). Solo es
necesario instalar uno de ellos.
2. Instalar el Sentinel System driver.
3. Copiar en el PC los ficheros gserver.jar, spjava.dll, sxjdk.dll, uxjdk.dll y bcprov-jdk15125.jar en la misma carpeta.
2.2 Parte cliente(gClient)
Para instalar la parte cliente deberá seguir los siguientes pasos:
1. Instalar el Java Runtime Environment O el Java Developer Kit. Ambos se pueden descargar
gratuitamente desde la página web de Sun Microsystems (http://java.sun.com). Solo es
necesario instalar uno de ellos.
2. Copiar en el PC el fichero gclient.jar y bcprov-jdk15-125.jar.
2.3 Ajustando las propiedades de criptografía fuerte
Debido a una limitación impuesta por el gobierno de los EEUU, el entorno Java viene limitado en
sus funciones criptográficas. SRC utiliza criptografía fuerte por lo que deberá seguir los siguientes
pasos tanto en la parte cliente como servidora:
1. Desde la página web de Sun Microsystems (http://java.sun.com) descargar el fichero
jce_policy*.zip donde * es la versión del JRE o JDK.
2. Copiar los ficheros local_policy.jar y local_policy.jar en el directorio lib\security.
Para más detalles consulte el fichero README.txt contenido en el fichero jce_policy*.zip.
3 Ejecución y primeros pasos
En primer lugar deberá arrancar la parte servidora. Para ellos ejecute el siguiente comando desde
una ventana DOS:
${JRE Path}\bin\java -classpath "${gServer Path}\bcprov-jdk15-125.jar;
${gServer Path}gserver.jar" gserver.gserver
Donde:
• ${JRE Path} ruta donde se instaló el Java Runtime Environment.
• ${gServer Path} es la carpeta donde se copiaron los ficheros gserver.jar, spjava.dll,
sxjdk.dll, uxjdk.dll y bcprov-jdk15-125.jar
4
Sentinel Remote Control
Gustavo Martínez
gServer una vez inicializado
A continuación ya puede arrancar la parte cliente. Para ello ejecute el siguiente comando desde una
ventana DOS:
${JRE Path}\bin\java -classpath "${gClient Path}\gclient.jar;D:${gClient Path}\bcprovjdk15-125.jar;${JRE Path}\lib\ext\sunjce_provider.jar;" gclient.gclient
Donde:
•
•
${JRE Path} ruta donde se instaló el Java Runtime Environment.
${gClient Path} es la carpeta donde se copiaron los ficheros gclient.jar y bcprov-jdk15125.jar.
5
Sentinel Remote Control
Gustavo Martínez
Aparecerá una de las siguientes ventanas:
A la izquierda SRC con el look & feel del JDK 1.5.0. Derecha, SRC con JDK 1.4.1
Primero seleccionaremos la dirección IP donde gServer está en ejecución. A continuación
pulsaremos el botón Conectar.
6
Sentinel Remote Control
Gustavo Martínez
Si la conexión se realiza con éxito SRC tendrá el siguiente aspecto:
Posteriormente seleccionaremos el tipo de llave al cual deseamos conectarnos (SuperPro o
UltraPro) e introduciremos el Developer ID (identificador del desarrollador) y el Design ID
(identificador del diseño). Este último parámetro solo es requerido en las llaves UltraPro, de ahí
que si se tiene seleccionado la llave SuperPro esté campo no aparecerá.
En esta versión la llave Sentinel PRO no está soportada.
Los campos Developer ID y Design ID deben ser
números en decimal.
Introducidos todos los datos pulsaremos el botón OK. Si la inicialización de la llave ha sido
correcta (se ha encontrado la llave, los parámetros son correctos), SRC mostrará el OK en el cuadro
Help+ y dispondremos de todos los comandos a aplicar a la llave.
7
Sentinel Remote Control
Gustavo Martínez
La siguiente figura muestra los resultados del paso anterior.
A partir de aquí solo deberemos seleccionar un comando, introducir sus parámetros y pulsar el
botón OK.
Finalmente para cerrar la conexión con gServer hay que utilizar el comando ‘Cerrar conexión’.
Para cerrar el servidor solo es necesario cerrar la
ventana DOS. Si hay algún cliente conectado éste
perderá la conexión.
No olvide cerrar la parte servidora una vez concluida la sesión.
8
Sentinel Remote Control
Gustavo Martínez
4.Listado de comandos
La siguiente tabla muestra los comandos disponibles el tipo de llave que lo soporta y una breve
descripción.
Comando
Cerrar conexión
Llave soportadas
Todas
Escribir celda
Escribir cadena
Todas
UltraPro
Hacer pregunta
Todas
Iniciar llave
Lectura celda
Lectura celda extendida
Todas
Todas
SuperPro
Lectura cadena
Obtener estado
Obtener versión
UltraPro
Todas
Todas
Sobrescribir celda
Sobrescribir cadena
Descripción
Cierra la conexión con el servidor y libera
todos los recursos utilizados.
Escribe un valor en una celda de memoria.
Escribe una cadena de caracteres (longitud
máxima 50).
Realiza una pregunta a un algoritmo
criptográfico.
Inicia la conexión con una llave.
Lee el valor de una celda de memoria.
Lee el valor de una celda de memoria y
muestra el tipo de celda que es.
Lee una cadena de caracteres.
Obtiene el último código de error.
Muestra la versión del driver, hard limit de la
llave. Si la llave es una UltraPro muestra
también el número total de celdas de memoria
y el form factor.
Sobrescribe la celda especificada con un
nuevo valor.
Sobrescribe una cadena de caracteres existente
en la llave por otra.
Todas
UltraPro
5.Por hacer
Las tareas por hacer son:
•
•
•
•
•
Cierre automático de la parte servidora (gServer) si no se recibe actividad.
Test de integridad remoto.
Realizar un layout de la llave con el cual se pueda interactuar.
Mejorar Help+ tanto en lengua castellana como inglesa.
Soporte para las lenguas Catalana y Alemana.
9
Sentinel Remote Control
Gustavo Martínez
6.Preguntas y respuestas
•
Comunicación gCliente-gServer
¿Puede alguien interceptar los datos entre gClient y gServer y ver su contenido?
No, los datos entre las dos partes están cifrados con el algoritmo AES, algoritmo estandarizado por
la industria para ser un estándar. Párale intercambio de la clave AES se utiliza el algoritmo RSA
con claves de 1024 bits.
¿Puede alguien manipular los datos entre gClient y gServer sin ser detectado?
No, los paquetes de datos que se envían entre cliente y servidor incluyen una huella hash SHA-1
que permite detectar manipulaciones de los datos. En caso de manipulación el paquete es
automáticamente descartado.
¿Existe la posibilidad de duplicar paquetes y errar la comunicación entre ambas partes? ¿Se
ha considerado el ataque del hombre intermedio (man in the middle)?
Todos los paquetes incorporan un identificador único (semejante al protocolo TCP/IP) que permite
detectar duplicidad de paquetes y paquetes fuera de orden. Además las comunicaciones se realizan
con el protocolo TCP/IP para mayor seguridad en el flujo de datos.
•
Arranque aplicación
El programa gServer no arranca. Finaliza sin mostrar ningún error. ¿Qué ocurre?
Probablemente algún fichero se ha corrompido o alguna DLL/ JAR ha sido reemplazada por una
versión más moderna. Restaure las DLL/ JAR originales.
•
Seguridad en los ficheros jar
¿Pueden ser manipulados los ficheros jar?
Los ficheros jar están firmados para evitar cambios en su contenido y se han utilizado enfuscadores
de código para evitar las utilidades que permiten transformar los byte codes en código fuente.
•
Comunicación gServer y llave Sentinel
¿Puede estar gServer en un PC diferente al que está conectada la llave?
gServer es capaz de encontrar llaves conectadas a otros PC. Instancíe la variable de entorno
NSP_HOST con la dirección IP del PC que tiene conectada la llave e instale en él, Sentinel Combo
Installer (llaves SuperPro) o Sentinel Protection Installer (llaves SuperPro y UltraPro).
10