Cómo detecto un Trojan
La detección de Trojans es fácil, si usted tiene un patrón estático de la búsqueda a explorar para. el software del Contra-virus detecta rutinariamente (algunos) usar de Trojans mucho las mismas técnicas patro'n-que buscan usadas para detectar virus. Sin embargo, la identificación de un Trojan conocido no es siempre la mejor defensa. La detección de Trojans previamente desconocido es también (conceptual) simple, con tal que usted haya mantenido siempre las mejores prácticas de la seguridad (literalmente siempre, por lo menos por lo que el sistema protegido). La mayoría de los métodos de detección en sistemas multiusos tradicionales derivan de una reconciliación a veces llamada del objeto del principio. La reconciliación del objeto es una manera de lujo de pedir, "todavía están las cosas justas la manera I a la izquierda ellos?" Aquí es cómo trabaja: Los objetos son áreas del sistema, tales como archivos o directorios. La reconciliación es el proceso de comparar esos objetos contra un expediente de la foto de los mismos objetos tomados en una cierta fecha anterior cuando el objeto protegido era sabido para estar en un digno de confianza, "limpia" el estado. Nota En sentido estricto, no hay tal hora del "estado limpio". Incluso una instalación cero del "día" del software del sistema sobre un sistema virginal asume una habitación del programa sin substituciones y puertas traseras. ¿Puede usted poner confianza ilimitada en un sistema usted hizo no estructura totalmente del rasguño usted mismo? "ninguna cantidad de verificación o de escrutinio del fuente-nivel le protegerá contra usar untrusted código," dice Ken Thompson en sus reflexiones en confiar en confianza. ¿este medio que nosotros debe dar para arriba en este acercamiento? Por supuesto no, solamente debemos considerar que, uniforme si construimos un tion del applica del código de fuente escudriñado, puede ser que no poder confiar en el recopilador o cada snippet del microcódigo del hardware en la placa base del sistema. Más comunmente, el proceso descrito como reconciliación del objeto se conoce como la detección del cambio, la comprobación de la integridad, o gerencia de la integridad. Sin embargo, estos términos no son terminantemente sinónimos. La detección del cambio describe simplemente cualquier técnica que alerte a usuario al hecho de que un objeto se ha cambiado en un cierto respecto. La comprobación de la integridad tiene el mismo significado de la base, pero se toma a menudo para implicar un acercamiento más sofisticado, no solamente a detectar el cambio a pesar de tentativas de encubrirlo, pero a asegurarse de que el software de divulgación sí mismo no está derribado. La gerencia de la integridad es un término más general. Puede incluir no solamente la detección de cambios desautorizados, pero otros métodos de mantener integridad del sistema. Tales métodos pueden incluir algo o todo el siguiente, en ninguna orden particular:
Un método simple de probar integridad del archivo, se basa en informes de cambios en la información del estado del archivo. Diversas pruebas de la integridad del archivo varían en la sofisticación. Por ejemplo, usted puede probar crudo la integridad de un archivo usando cualesquiera de los índices siguientes:
Desafortunadamente, ningunos de estos tres métodos constituyen una defensa realmente adecuada contra más que el ataque más crudo. Cada vez que se altera un archivo, sus valores cambian. Por ejemplo, cada vez que se abre, se altera, y se ahorra el archivo, una nueva fecha pasado-modificada emerge. Sin embargo, esta fecha puede ser manipulada fácilmente. Considere el manipular de este timestamp del archivo. ¿Cómo difícil es? Cambie el tiempo del sistema, aplique deseado corrige, archiva el archivo, y reajusta el tiempo del sistema. Todavía mejore, consiga y excepto la información del date/time usando funciones de biblioteca estándares de C (por ejemplo), modifican o substituyen el objeto, y restauran la fecha de la modificación del archivo. En un sistema single-user (como MS-DOS) con ningunos de acceso controles mínimos o, la codificación implicada es trivial. Para este hijo del rea, la comprobación de la época de la modificación es una manera no fiable de detectar el cambio. También, la fecha pasada de la modificación no revela nada si el archivo era inalterado (por ejemplo, si fue copiada solamente, visto, o enviado). Por otra parte, si hay una disparidad entre la fecha de la modificación vuelta por el sistema y la fecha de la modificación registrada por un sistema que supervisa utilidad, hay una posibilidad distinta de acción malévola. Otra manera de comprobar la integridad de un archivo está examinando su tamaño. Sin embargo, este valor se puede manipular muy fácilmente, ajustando o rellenando el archivo sí mismo, o alterando el valor divulgado por el sistema operativo. Hay otros índices. Por ejemplo, las sumas de comprobación básicas podían ser utilizadas. Sin embargo, aunque las sumas de comprobación son más confiables que estampar de la hora y de fecha, pueden ser alteradas, también. Si usted confía en un sistema básico de la suma de comprobación (o utilice el software de la detección del cambio, que confía en checksumming simple), es particularmente importante que usted mantiene su lista de la suma de comprobación un ambiente confiado en. Esto pudo significar en un servidor separado o aún un medio separado, accesible solamente por la raíz u otra confiaba en a usuarios. Las sumas de comprobación trabajan eficientemente y apropiadamente para comprobar la integridad de un archivo transferido, por ejemplo, del punto A señalar B, pero no es conveniente para los altos usos de la seguridad. Los no diseñan simplemente para guardar contra una tentativa malévola de derribarlos para volver la información falsa. Una técnica menos fácilmente derribada implica el calcular de una huella digital digital más sofisticada para cada archivo usando varios algoritmos. Una familia de los algoritmos llamados la serie de MD se puede utilizar para este propósito. Una de las puestas en práctica más populares es un sistema llamado MD5. MD5MD5 pertenece a una familia de las funciones unidireccionales del picadillo llamadas los algoritmos del resumen del mensaje. El sistema MD5 se define en RFC 1321 como sigue: El algoritmo toma como entrada un mensaje de la longitud arbitraria y produce como salida un 128-bit "huella digital" o "resumen del mensaje" de la entrada. Se conjetura que es de cómputo infeasible producir dos mensajes que tienen el mismo resumen del mensaje, o producir cualquier mensaje que tiene un resumen especificado primero dado del mensaje de la blanco. El algoritmo MD5 se piensa para los usos digitales de la firma, donde un archivo grande debe ser "comprimido" de una manera segura antes de ser cifrado con una llave (secreta) privada bajo cryptosystem de la pu'blico-llave tal como RSA. Cuando usted funciona un archivo con MD5, la huella digital emerge mientras que un valor 32-character. Parece esto: 2d50b2bffb537cc4e637dd1f07a187f4 Muchos sitios que distribuyen el uso MD5 del software de UNIX de generar las huellas digitales digitales para sus distribuciones. Pues usted hojea sus directorios, usted puede examinar la huella digital digital original de cada archivo. Un listado típico del directorio pudo parecer esto: MD5 (wn-1.17.8.tar.gz) = 2f52aadd1defeda5bad91da8efc0f980 MD5 (wn-1.17.7.tar.gz) = b92916d83f377b143360f068df6d8116 MD5 (wn-1.17.6.tar.gz) = 18d02b9f24a49dee239a78ecfaf9c6fa MD5 (wn-1.17.5.tar.gz) = 0cf8f8d0145bb7678abcc518f0cb39e9 MD5 (wn-1.17.4.tar.gz) = 4afe7c522ebe0377269da0c7f26ef6b8 MD5 (wn-1.17.3.tar.gz) = aaf3c2b1c4eaa3ebb37e8227e3327856 MD5 (wn-1.17.2.tar.gz) = 9b29eaa366d4f4dc6de6489e1e844fb9 MD5 (wn-1.17.1.tar.gz) = 91759da54792f1cab743a034542107d0 MD5 (wn-1.17.0.tar.gz) = 32f6eb7f69b4bdc64a163bf744923b41 Si usted descarga un archivo de tal servidor y encuentra que la huella digital digital del archivo descargado es diferente, hay una buena ocasión que algo es inoportunamente. Con o sin MD5, la gerencia de la integridad es un proceso complejo. Las varias utilidades se han diseñado para asistir con la gerencia de la integridad en sistemas complejos y distribuidos. Las utilidades siguientes UNIX-fueron basadas originalmente, pero los programas similares están disponibles para los sistemas operativos de Microsoft. TripwireTripwire (escrito en 1992) es una herramienta comprensiva de la integridad del archivo. Tripwire se diseña bien, se entiende fácilmente, y se pone en ejecucio'n fácilmente. Los valores originales (huellas digitales digitales) para que los archivos sean supervisados se guardan dentro de un archivo de base de datos. Que el archivo de base de datos en formato simple del ASCII está alcanzado siempre que una firma necesite ser calculada o ser verificada. Idealmente, una herramienta tal como Tripwire sería utilizada inmediatamente después (día cero) de una instalación fresca. Esto le da 100% el aseguramiento de la integridad del sistema de ficheros como punto de partida (o el casi 100%—recuerde el artículo de Ken Thompson). Una vez que usted genere la base de datos completa para su sistema de ficheros, usted puede introducir a otros usuarios (quiénes llenarán inmediatamente su sistema de la chatarra que, se puede también fingerprinted opcionalmente y verificar en cheques subsecuentes). Aquí están algunas de sus características más útiles:
Tripwire es una herramienta popular y eficaz, pero hay algunas ediciones de seguridad comunes a la mayoría o a todas las herramientas de gerencia de la integridad. Una tal edición se relaciona con la base de datos de valores se genera y se mantiene que. Del principio, los autores de Tripwire estaban bien enterados de esto: La base de datos usada por el inspector de la integridad se debe proteger contra modificaciones desautorizadas; un intruso que puede cambiar la base de datos puede derribar la integridad entera que comprueba esquema. Un método de proteger la base de datos es almacenarla en medios inalterables. Esto elimina cualquier probabilidad de tratar de forzar. Kim y Spafford sugieren que la base de datos esté protegida de este modo, aunque precisan que éste podría presentar algunos problemas prácticos, procesales. Mucho depende de cómo la base de datos será a menudo actualizada, y su tamaño. Ciertamente, si usted está poniendo Tripwire o una utilidad en ejecucio'n similar en una escala ancha (y está utilizando sus ajustes más rigurosos), el mantenimiento de una base de datos inalterable podría ser formidable. Como de costumbre, esto analiza a una compensación entre el nivel del riesgo y la inconveniencia de fijar y de mantener defectos paranoicos. TAMULa habitación del tigre de TAMU (de la universidad de Tejas A&M) es una colección de las herramientas que grandemente hance del en la seguridad de una caja de UNIX. Estas herramientas fueron creadas en el local, en respuesta a un ataque extenso de un grupo coordinado de galletas del Internet. El paquete se ha aumentado y retituló TARA (asistente de investigación analítico del tigre). Incorpora un número de escrituras usadas para explorar los sistemas de UNIX para los problemas. HobgoblinHobgoblin es una puesta en práctica interesante de la comprobación del archivo y de la sistema-integridad. Es una lengua y un intérprete. La lengua, según los autores, describe las características de un sistema de archivos, y los cheques del intérprete si la descripción empareja los archivos reales, y señala cualquier excepción por medio de una bandera. En Otras PlataformasLos inspectores de la integridad del archivo existen para Windows, (en hecho hay una puesta en práctica de Tripwire para Windows NT). No diseñan a los inspectores de la integridad necesariamente expreso para comprobar las máquinas múltiples y las redes excesivas de los sistemas de ficheros. Algunas herramientas más viejas del DOS y de Windows utilizan el CRC simple checksumming como un índice y por lo tanto pudo ser más fácil de derribar que las herramientas que emplean MD5 y algoritmos relacionados. Piensan a la mayoría para el uso como suplemento a los exploradores del virus (puesto que los cambios perceptibles a un objeto infectable pudieron indicar la infección del virus). Esto no invalida la utilidad potencial de los inspectores de la integridad pues los medios de detectar substituciones posibles del código comprometido para los ficheros del sistema. Sin embargo, la detección del cambio es menos conveniente en las plataformas de Windows en que los ficheros del sistema alcanzados por usos múltiples se pueden substituir por las instalaciones y las mejoras legítimas. Hay a menudo una delineación más aguda en otras plataformas entre los archivos que pertenecen al sistema y los archivos que pertenecen a un uso. Además, la detección del cambio trabaja solamente bien con ciertos tipos de executables binarios, uniformes en el contexto de la detección del virus. Muchos virus y Trojans infectan los archivos que propósito principal es contener los datos (hojas de balance, archivos de proceso de la palabra, etcétera). Sin embargo, tales archivos se piensan generalmente para ser modificados, al igual que los ficheros de diario usados en muchos sistemas multiusos para seguir la acción malévola posible. Claramente, la detección del cambio basada en la presunción que los archivos siguen siendo estáticos no va a trabajar en estos casos. En algunos casos, es posible especificar los cambios que pudieron significar una abertura (la adición del código macro a un archivo de la palabra, por ejemplo). Este acercamiento requiere que el software de inspección "sepa" más sobre los internals del archivo, más bien que apenas su huella digital digital. Eso exigiría dificultades administrativas serias, así que el acercamiento no está bien favorecido actualmente. La defensa más segura, aunque, es bloquear la modificación desautorizada de los ficheros del sistema proactively por la firma del código, medios inalterables, y otras medidas con derecho preferente. esto es un artículo agregado por Marcel Baldwin
|
|||
|