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