MXPA04007406A - Mecanismo para evaluar riesgos de seguridad. - Google Patents
Mecanismo para evaluar riesgos de seguridad.Info
- Publication number
- MXPA04007406A MXPA04007406A MXPA04007406A MXPA04007406A MXPA04007406A MX PA04007406 A MXPA04007406 A MX PA04007406A MX PA04007406 A MXPA04007406 A MX PA04007406A MX PA04007406 A MXPA04007406 A MX PA04007406A MX PA04007406 A MXPA04007406 A MX PA04007406A
- Authority
- MX
- Mexico
- Prior art keywords
- application
- security
- computer
- trusted
- readable medium
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/51—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
Abstract
Se describe un mecanismo para evaluar colectivamente riegos de seguridad asociados con la carga de una aplicacion. Un ambiente huesped asociado con la carga de la aplicacion invoca un administrador de confianza para evaluar los riesgos de seguridad. El administrador de confianza invoca una pluralidad de evaluaciones de confianza, en donde cada evaluador de confianza es responsable de analizar y evaluar un riesgo de seguridad diferente. Al terminar cada evaluacion de riesgo de seguridad, los resultados de esas evaluaciones de riesgo de seguridad individuales son regresados al administrador de confianza. El administrador de confianza agrega la variedad de resultados de evaluacion de riesgo de seguridad y hace una determinacion de seguridad basandose en los resultados de evaluacion agregados. Esa determinacion puede hacer avanzar la carga de la aplicacion, para bloquear la carga de aplicacion, o tal vez para incitar al usuario a tomar una decision con respecto a si hacer avanzar la carga.
Description
MECANISMO PARA EVALUAR RIESGOS DE SEGURIDAD
Esta solicitud se presentó como una solicitud de PCT presentada el 17 de Mayo del 2003, por MICROSOFT CORPORATION, una nacional y residente de Estados Unidos, designando a todos los países, excepto E. U. A.
CAMPO DE LA INVENCION
La presente invención se refiere a sistemas de seguridad de cómputo. Más particularmente, la presente invención se refiere a un mecanismo para evaluar y agregar información de evaluación de seguridad para sistemas de cómputo.
ANTECEDENTES DE LA INVENCION
Los usuarios de computadora actuales tienen acceso a una multitud de diferentes aplicaciones y utilidades. El usuario de computadora típico puede instalar docenas de programas de computadora durante el curso de un año. La mayoría de las veces, los usuarios de computadoras hábilmente instalan programas en sus computadoras. Por ejemplo, un usuario puede comprar un programa de software e instalarlo manualmente. Algunas veces un usuario puede instalar un programa en forma no hábil, tal como visitando un ~ sitio web pa rti cu la r que e s~fa~c o ñfi g u r a~d o~~pa r a inst alam ñ a apITc ación pequeña o programa pequeño en la computadora de usuarios. La instalación de programas en computadoras se ha convertido en un lugar común actualmente que algunos usuarios no están concientes de las emisiones de seguridad involucradas con la instalación del nuevo software. Otros usuarios sutilmente están al pendiente de las emisiones de seguridad en general, pero típicamente están inseguros con respecto a las emisiones particulares que pueden rodear a la instalación de un programa particular. Muchos usuarios entienden que los nuevos programas pueden introducir virus u otros códigos malignos en sus computadoras. Los usuarios también entienden que algunos desarrolladores de software hacen programas libremente disponibles que tienen una función o propósito abierto al público tal como mejorar los mensajes de correo electrónico, y una función o propósito secreto o protegido, tal como grabar información con respecto al usuario que posteriormente es regresada a una entidad de mercado. Este tipo particular de software por lo regular es llamado como "spyware" (software de espionaje). Por lo regular los usuarios intentan protegerse así mismos de éstos retos de seguridad en varias formas. Por ejemplo, muchos usuarios instalan utilidades anti-virus para protegerse contra virus. Muy pocos usuarios también instalan utilidades anti-spyware para dirigir las emisiones de seguridad de spyware. Desafortunadamente, cada utilidad de seguridad opera en forma separada uno del otro y sin el conocimiento de cada uno de los otros resultados, incomodando al usuario efe e^sTa manera con fa asimilación de la información de cada utilidad de seguridad. Los sistemas de seguridad actuales operan en un vacío con respecto uno al otro, y cada uno reporta al usuario solamente su riesgo de seguridad específico. La mayoría de los usuarios no desean preparar notificaciones de diferentes riesgos de seguridad de varios sistemas diferentes. Más bien, desean subsistemas de seguridad solo para trabajar. La naturaleza de trabajo en fragmentos de las utilidades de seguridad actuales típicamente deja a los usuarios con la incertidumbre de que han dejado un hueco en sus defensas, y que programas malignos o no deseables pasarán. Debido a esa incertidumbre o miedo, muchos usuarios son renuentes a tratar nuevos programas, especialmente en ambientes en línea. Desafortunadamente, actualmente no hay ningún mecanismo que pueda proteger a un usuario de múltiples riesgos de seguridad diferentes presentados por un programa de software particular cuando se están descargando, instalando o ejecutando. Un mecanismo adecuado para evaluar riesgos de seguridad ha esquivado a aquellos expertos en la técnica.
COMPENDIO DE LA INVENCION
La presente invención está dirigida a un sistema y método para acumular información de evaluación de seguridad con respecto a un programa la operación en esa información en una forma conveniente üTTMzable. ETi resumen, un ambiente huésped es responsable cTe cargar una aplicación. En respuesta al inicio de la carga de aplicación, el ambiente huésped invoca a un administrador de confianza para evaluar cualesquiera riesgos de seguridad asociados con esa aplicación. El administrador de confianza invoca una pluralidad de evaluadores de confianza, en donde cada evaluador de confianza es responsable de analizar y evaluar un riesgo de seguridad diferente. Después de completar cada evaluación de riesgo de seguridad, los resultados de esas evaluaciones de riesgo de seguridad individuales son represados al administrador de confianza. El administrador de confianza agrega la variedad de resultados de evaluación de riesgo de seguridad y hace una determinación de seguridad basándose en los resultados de evaluación agregados. Esa determinación puede ser movida hacia delante con la carga de la aplicación, para bloquear la carga de la aplicación, o tal vez para incitar al usuario a tomar una decisión con respecto ha si se mueve hacia delante con la carga. Ventajosamente, si es incitado, el usuario puede tomar la decisión basándose en la evaluación de seguridad colectiva de la aplicación, lo cual proporciona al usuario un mayor sentido de protección sobre su sistema de cómputo en general.
BREVE DESCRIPCION DE LOS DIBUJOS
La Figura 1 es un diagrama de bloque funcional que ilustra un dt pTrs G???- d¾ C¾mputó que pu é de ser utilTzacTo erTTmpTe mentación e de la presente invención. La Figura 2 es un diagrama de bloque funcional que generalmente ilustra componentes de un sistema para realizar una evaluación de seguridad de una aplicación y para presentarle a un usuario una evaluación de seguridad colectiva de esa evaluación. La Figura 3 es una representación gráfica de un grupo de otorgamiento ilustrativo para una aplicación que asocia permisos particulares con componentes de la aplicación en el contexto de la aplicación. La Figura 4 es una representación gráfica de una interfase de usuario ilustrativa que se puede utilizar para presentar información de evaluación de seguridad colectiva a un usuario. La Figura 5 es un diagrama de flujo lógico que generalmente ilustra un procedimiento para evaluar los riesgos de seguridad asociados con una aplicación y para presentar al usuario la evaluación de seguridad colectiva.
DESCRIPCION DETALLADA DE LA MODALIDAD PREFERIDA
La invención será descrita primero haciendo referencia a un ejemplo de un ambiente de cómputo ilustrativo en donde se pueden implementar las modalidad de la invención. Después, se describirá un ejemplo detallado de una implementación específica de la invención. También se pueden incluir implementaciones alternativas con respecto a ciertos defalles de la implementación especíTica Se apreciará que las modalidades de la invención no están limitadas a aquellas descritas aquí.
Ambiente de Cómputo Ilustrativo de la Invención La Figura 1 ilustra un dispositivo de cómputo que puede ser usado en implementaciones ilustrativas de la presente invención. Con referencia a la Figura 1, un sistema ilustrativo para implementar la invención incluye un dispositivo de cómputo, tal como un dispositivo de cómputo 100. En una configuración muy básica, el dispositivo de cómputo 100 típicamente incluye por lo menos una unidad de procesamiento 102 y una memoria de sistema 104. Dependiendo de la exacta configuración y tipo de dispositivo de cómputo 100, la memoria de sistema 104 puede ser volátil (tal como RAM), no volátil (tal como ROM, memoria flash, etc.), o alguna combinación de las dos. La memoria de sistema 104 típicamente incluye un sistema operativo 105, uno o más módulos de programa 106, y puede incluir datos de programa 107. Esta configuración básica del dispositivo de cómputo 100 se ilustra en la Figura 1 a través de aquellos componentes dentro de la línea desvanecida 108. El dispositivo de cómputo 100 puede tener características adicionales o funcionalidad. Por ejemplo, el dispositivo de cómputo 100 también puede incluir dispositivos de almacenamiento de datos adicionales (removibles y/o no removibles), tales como, por ejemplo, discos magnéticos, discos ópticos, o cintas. Dicho almacenamiento adicional se muestra en la Figura ~1 a través del almacenamiento removible 109 y almacenamiento no removible 110. Los medios de almacenamiento de computadora pueden incluir medios volátiles y no volátiles, removibles y no removibles, implementados en cualquier método o tecnología para almacenar información, tal como instrucciones legibles por computadora, estructuras de datos, módulos de programa, u otros datos. La memoria de sistema 104, el almacenamiento removible 109 y el almacenamiento no removible 110 todos son ejemplos de medios de almacenamiento por computadora. Los medios de almacenamiento por computadora incluyen, pero no se limitan a, RAM, ROM, EEPROM, memoria flash, u otra tecnología de memoria, CD-ROM, discos versátiles digitales (DVD) u otro almacenamiento óptico, casetes magnéticos, cinta magnética, almacenamiento en disco magnético u otros dispositivos de almacenamiento magnético, o cualquier otro medio que pueda ser utilizado para almacenar información deseada y que pueda ser accesada a través del dispositivo de cómputo 100. Cualquier medio de almacenamiento de computadora puede ser parte del dispositivo 100. El dispositivo de cómputo 100 también puede tener dispositivos de entrada 112 tales como un teclado 122, ratón 123, y pluma, dispositivo de entrada por voz, dispositivo de entrada táctil, explorador, etc. También se pueden incluir dispositivos de salida 114 tales como una presentación, bocinas, impresora, etc. Estos dispositivos son bien conocidos en la técnica y no necesitar ser discutidos aquí. El dispositivo de cómputo ?0? TarñbTén puede contene7 conexiones de comunicación 116 que permiten que el dispositivo 100 se comunique con otros dispositivos de cómputo 118, tales como a través de una red. Las conexiones de comunicación 116 son un ejemplo de medios de comunicación. Los medios de comunicación típicamente pueden ser modalizados por instrucciones legibles por computadora, estructuras de datos, módulos de programa, u otros datos en una señal de datos modulada, tales como una onda portadora u otro mecanismo de transporte, e incluyen cualquier medio de suministro de información. El término "señal de datos modulada" significa una señal que tiene una o más de sus características fijadas o cambiadas de tal manera que codifica la información en la señal. A manera de ejemplo, y no de limitación, los medios de comunicación incluyen medios mediante cables tales como una red con cables o una conexión dirigida por cables, y medios inalámbricos tales como medios acústicos, RF, infrarrojos, y otros medios inalámbricos. El término medios legibles por computadora como se utiliza aquí, incluye tanto medios de almacenamiento como medios de comunicación.
Discusión de la Implementación Específica La Figura 2 es un diagrama de bloque funcional que generalmente ¡lustra los componentes de un ambiente que implementan la presente invención. Como se muestra en la Figura 2, un sistema de evaluación de confianza 200 se configura para evaluar una aplicación 201 e "icíeñTi ícar cualesquiera riesgos cTe~sé~g Tncrad asociados con la aplicación 201. La aplicación 201 puede ser cualquier código ejecutable que esté disponible al dispositivo de cómputo 100. Existen inherentemente algunos riesgos de seguridad asociados con la ejecución de la aplicación 201 en el dispositivo de cómputo 100. Por ejemplo, la aplicación 201 puede contener un virus o puede constituir un spyware. Por consiguiente, el sistema 200 está configurado para analizar la aplicación 201 para evaluar y cuantificar aquellos riesgos en una forma inteligente. El sistema de evaluación de confianza 200 después hace una decisión con respecto a la carga de la aplicación 201. La aplicación 201 puede estar compuesta de varios componentes que operan en conjunto. Por ejemplo, la aplicación 201 puede incluir múltiples módulos o ensambles, tales como el ensamble A 202 y ensamble B 203. La aplicación 201 puede incluir metadatos que describen la aplicación y cada uno de sus componentes constituyentes. Esos metadatos pueden estar contenidos en un manifiesto 205 o de otra manera almacenados en asociación con la aplicación 201. Los metadatos pueden incluir información tal como el nombre de la aplicación, la versión de la aplicación, que derechos y permisos se desean para los componentes constituyentes de la aplicación, información de política de privacidad, información de firma digital, y similares. La aplicación 201 primero puede ser cargada en el dispositivo de cómputo 100 en una de muchas formas. Por ejemplo, la aplicación 201 puede ser descargada durante una sesión de Internet^ puedé~se7 obtenida en un disco óptico u otro almacenamiento permanente, puede ser recibida en un mensaje de correo electrónico, o a través de algún otro mecanismo. En esta implementación, la aplicación 201 es cargada por y ejecutada en un ambiente huésped 220. Para el propósito de esta discusión, el ambiente huésped 220 incluye cualquier ambiente en donde la aplicación 201 será ejecutada. Por ejemplo, el ambiente huésped 220 puede ser un ambiente de tiempo de corrido de código administrado, con la cápsula otra aplicación, o similares. En este ambiente particular, el ambiente huésped 220 puede incluir una clasificación de prioridad basándose en el tipo de huésped que es. Por ejemplo, se puede determinar que un ambiente huésped asociado con una unidad de disco óptico puede poseer un riesgo de seguridad más bajo que un ambiente huésped asociado con una sesión en red, tal como Internet. La clasificación de prioridad se puede utilizar posteriormente cuando se asigna una escala de seguridad a la aplicación 201. El ambiente huésped 220 está configurado para crear un Objeto de Descripción de Aplicación (ADO) 221 basándose en los metadatos con respecto a la aplicación 2 201. El ambiente huésped 220 incluye en el ADO 221 suficiente información con respecto a la aplicación 201 para evaluar efectivamente los riesgos de seguridad asociados con la aplicación 201. Por consiguiente, el ADO 221 puede incluir, en forma de objeto, el nombre de la aplicación, la versión de la aplicación, que derechos y permisos desean los componentes constituyentes de la aplicacfól ; información de poTTtTca^ d"e privacidad, información de firma digital, y similares. El ambiente huésped 220 además está configurado para invocar un administrador de confianza 210 para realizar la evaluación. El administrador de confianza 210 puede ser un componente de confianza de un sistema operativo residente en el dispositivo de cómputo 100. En esta modalidad particular, el administrador de confianza 210 expone una interfase que es llamada por el ambiente huésped 220 para iniciar la evaluación de seguridad de la aplicación 201. El administrador de confianza 210 recibe el ADO 221 del ambiente huésped 220 a través de la interfase. El administrador de confianza 201 además está configurado para invocar una serie de máquinas de evaluación de confianza para evaluar el riesgo de seguridad asociado con la aplicación 201. Cada máquina de evaluación está configurada para evaluar una clase particular de reto basándose en la información en el ADO 221 o en los componentes de la misma aplicación 201. Por ejemplo, la máquina de evaluación 240 puede ser una máquina de clasificación que evalúa la evidencia con respecto a la aplicación, como puede estar contenida en el ADO 221 o en cualquier parte, para determinar la habilidad de la aplicación para realizar actos maliciosos en el dispositivo de cómputo 100. La máquina de evaluación 241 puede ser un verificador de virus y la máquina de evaluación 242 puede ser configurada para evaluar aspectos de privacía sobre la aplicación 201. Cada uno de los motores de evaluación puede derivarse de una clase base, o puede ser implementado como una interfase.
Cada máquina de evaluación está configurada para valorar la aplicación 201 contra sus reglas o criterios particulares para determinar una clasificación 245. Los ejemplos de la clasificación incluyen un valor numérico entre un mínimo y un máximo, o un valor discreto a partir de un grupo de niveles de seguridad alternativos. Estos son solo ejemplos y no es una lista exhaustiva. La clasificación 245 después puede ser regresada al administrador de confianza 210 a través de cada máquina de evaluación al término de su evaluación. El administrador de confianza 210 está configurado para agregar las clasificaciones individuales en una colección de clasificaciones 250, la cual representa la evaluación de seguridad colectiva de la aplicación en cada una de las áreas para las cuales existe una máquina de evaluación. Cualesquiera prioridades que puedan existir, tales como prioridades asociadas con el tipo particular de ambiente huésped 220, pueden ser aplicadas a la colección de clasificación 250 para refinar más la evaluación de seguridad colectiva. Con base en la evaluación de seguridad colectiva, el administrador de confianza 210 puede tener información suficiente para hacer una decisión de carga sin involucrar al usuario. Por ejemplo, los umbrales pre-determinados (ya sea fijados por omisión o tal vez provistos por el usuario) pueden gobernar que programas son cargados sin buscar la aceptación del usuario, o que programas queden bloqueados sin incitar al usuario. Si la evaluación de seguridad colectiva para la aplicación particular que se está arg a n do — falta emrtre esos fcrs u m Ta~Te~s , el üs uano uecíe s eT incitado para tener una decisión de carga. El administrador de confianza 210 construye un Objeto de Confianza 261 que describe el nivel de permisos con los cuales será cargada la aplicación, sino es que todos. El Objeto de Confianza 261 puede incluir datos que definen un grupo de otorgamiento de permiso 262 para la aplicación en una base de componente por componente. Un ejemplo de un grupo de otorgamiento de permiso ilustrativo 262 se muestra en la Figura 3 y se describe a continuación. Si la evaluación de seguridad colectiva para la aplicación 201 falla entre los dos umbrales antes mencionados, el administrador de confianza 210 puede pasar el objeto de confianza 261 a una interfase de usuario 260, de manera que el usuario puede ser incitado. La interfase de usuario 260 es un mecanismo para presentar la evaluación de seguridad colectiva al usuario en una forma importante, de manera que el usuario puede hacer una decisión informada con respecto al proseguimiento. La interfase de usuario 260 puede tener muchas formas, tales como una caja de diálogo, una señal audible, un indicador de icono, o similares. Un ejemplo de una interfase de usuario potencial 260 se ¡lustra en la Figura 4 y se describe más adelante. En esencia, la interfase de usuario 260 representa un punto individual de presentación de varios y de información de seguridad diferente que, en sistemas convencionales, no existen. La interfase de usuario 260 puede incitar al usuario con las cTeTa aplicación prosiga, y posiblemente le presenta al usuario varios niveles de permisos que pueden ser asignados a la aplicación. Al usuario se le solicita hacer una determinación de si proseguir con la carga de la aplicación, o no. La interfase de usuario 260 agrega la información de respuesta de usuario al objeto de confianza 261 y la regresa al administrador de confianza 210. Cada vez que la aplicación 201 es lanzada o ejecutada, su ambiente huésped 220 puede invocar al administrador de confianza 210 para recuperar la evaluación de seguridad de la aplicación 201. En el caso en donde el grupo de otorgamiento 262 ya haya sido creado, el administrador de confianza 210 puede regresar ese grupo de otorgamiento 262 al ambiente huésped 220. Alternativamente, el ambiente huésped 220 puede guardar en memoria caché la información de evaluación de seguridad para uso subsecuentes sin involucrar al administrador de confianza 210. El ambiente huésped 220 después aplicará cualesquiera permisos de acceso identificados en el grupo de otorgamiento 262 a la aplicación 201. Más específicamente, el ambiente huésped 220 puede aplicar los permisos de acceso a cada componente individual, tal como el ensamble A 202, de la aplicación 201. Si es igualmente confiable que el ambiente huésped 220 o alguna otra aplicación pueda presentar un componente al administrador de confianza 210 para una evaluación de seguridad sin el intento específico de ejecutar después el documento. ta — Fig-üra — 3 -es- o -na^re-?t ementa eran ¡~g rá"Tíc§ dé- urT gTüpo- d~e otorgamiento ilustrativo 301 que puede ser generado por implementaciones de la presente invención. Se debe observar que el término "grupo de otorgamiento", como se utiliza aquí, significa cualquier colección de información que se utilice para definir el ambiente de seguridad en donde se puede ejecutar una aplicación. El término "grupo de otorgamiento" utilizado aquí no está limitado a un ambiente de seguridad particular, tal como un ambiente de Tiempo de Corrido del Lenguaje Común, sino que más bien pretende cubrir información utilizada para definir el ambiente de seguridad dentro del cual una aplicación se ejecuta sin considerar el ambiente operativo particular. En este ejemplo particular, el grupo de otorgamiento 301 pueden ser datos dentro de un objeto, tales como un Objeto de Confianza, o similares. En este ejemplo, el grupo de otorgamiento 301 incluye información que identifica a cada componente de la aplicación. Además, el grupo de otorgamiento 301 incluye información que define los permisos de cada componente de la aplicación. En este caso, una tabla de componentes 310 identifica los componentes Ensambla A, Ensamble B y Ensamble C y asocia cada uno esos componentes con un grupo de permiso. Por ejemplo, en el grupo de otorgamiento 301, el Ensamble A es identificado por tener el grupo de permiso PS1. Una tabla de permisos 320 también está incluida en el grupo de otorgamiento 301 para definir específicamente aquellos permisos que t+enen defechos de -s-eg-tt M-d-aJ-qre- est rr~ a SOcta d ~s~C TT~ clídlFgTü po de permiso. En este ejemplo, el grupo de permiso PS1 incluye aquellos permisos y derechos identificados en el ejemplo como permisos 1. Se apreciará que, como se describió anteriormente, cuando el ambiente huésped 220 comienza a cargar los componentes de la aplicación, haciendo referencia al grupo de otorgamiento 301, los permisos apropiados pueden ser aplicados a cada componente de la aplicación en el contexto de la aplicación. En otras palabras, alguna otra aplicación también puede incluir el Ensamble B, pero en el contexto de esa otra aplicación, el Ensamble B puede tener un grupo de permiso diferente. En ese caso, cuando se ejecuta la otra aplicación, y el Ensamble B se carga, podría tener el grupo de permiso definido por un grupo de otorgamiento asociado con la otra aplicación. La Figura 4 es un diálogo de Interfase de Usuario Ilustrativo que puede ser presentado a un usuario con base en una evaluación de seguridad de una aplicación. En este ejemplo particular, el diálogo 401 se presenta basándose en una evaluación de una aplicación que ha solicitado acceso al sistema de archivo y a la red. Además, un evaluador de virus ha determinado que aplicación no contiene un virus. En la indicación de icono del nivel de riesgo 405, también puede ser incluido. Al usuario se le presenta la opción de permitir que la carga prosiga, tal como oprimir un botón de OK 410, o abortar la carga. La interfase de usuario mostrada en la Figura 4 es solamente para el propósito de ilustración, y no se ve como un punto TTmitánte ó mecanisnTO eTíclTTs vo p~aTa~ pre nTar rrfmTrTacion <fé seguridad al usuario. En realidad, se contempla que muchas otras diferentes formas de presentación, de evaluación de seguridad colectiva serán evidentes a partir de las enseñanzas de esta invención. La Figura 5 es un diagrama de flujo lógico que generalmente ilustra un procedimiento para identificar y presentar colectivamente, en forma significante, información sobre riesgos de seguridad poseídos por una aplicación. El procedimiento comienza en el bloque de inicio 501, en donde una aplicación se está cargando para ejecutarse en un sistema de cómputo. Como se discutió anteriormente, una aplicación puede ser cargada en muchas formas a través de varios tipos de huéspedes. Por consiguiente, en el bloque de inicio 501, una aplicación particular se está cargando a través del uso de un huésped particular. El procedimiento continúa al bloque 503. En el bloque 503, el huésped construye un Objeto de Descripción de Aplicación (ADO) basándose en la información sobre la aplicación. Como se describió anteriormente, la información puede ser obtenida a partir de un manifiesto incluido con la aplicación, o a través cualesquiera otros metadatos asociados con la aplicación. El ADO contiene información descriptiva con respecto a la aplicación, tal como el nombre y la versión de la aplicación, cualesquiera derechos solicitados por la aplicación, cualesquiera permisos de acceso de código siendo solicitados por la aplicación, información de firma dfgTfaTcon relación a la aplicación, información de política de privacidad, y similares. El procedimiento continúa en el bloque 505. En el bloque 505, el huésped invoca a un administrador de confianza con una instrucción para evaluar los riesgos de seguridad asociados con la aplicación. El huésped pasa el ADO al administrador de confianza para utilizarse en la evaluación. En el bloque 507, el administrador de confianza comienza a evaluar los riesgos de seguridad de la aplicación invocando una serie de evaluadores de confianza, que cada uno evalúa un área específica del riesgo de seguridad. Por ejemplo, un evaluador de virus puede ser configurado para examinar cada componente de una aplicación para la posibilidad de que la aplicación contenga un virus. Un evaluador de privacidad puede evaluar los permisos solicitados por la aplicación para determinar que nivel de amenaza presenta la aplicación a la privacidad. También se pueden utilizar muchos otros evaluadores de confianza, como se será evidente por aquellos expertos en la técnica. El bloque 508 se realiza para cada evaluador de confianza en el sistema. El bucle 508 comienza en el bloque 509, en donde el evaluador de confianza real examina la información en el ADO y/o los componentes de la aplicación para evaluar el riesgo de seguridad. La información en el ADO puede ser comparada contra un grupo de reglas u otros criterios para desarrollar una clasificación que cuantifique el riesgo de seguridad de la aplicación. En un ejemplo, una clasificación puede ser un valor de cero (riesgo — máximo) a 1 -(Tiesg-o rrrín i mo . ~tra ctasifrcación ~t~a~m te~n ^pjed^incTüir fcH^- rtoi ¡ d a ü y un^escT ptor de cad e n a . Se apreciará que las evaluaciones realizadas por cada evaluador de confianza son análogas a evaluaciones de riesgo de seguridad similares que puedan ser realizadas por mecanismos convencionales. Sin embargo, de acuerdo con la invención, cada evaluador de confianza evalúa su riesgo de seguridad respectivo y regresa la colección de clasificación al administrador de confianza (bloque 511). Cuando cada evaluador ha regresado su colección de clasificación al administrador de confianza, el bucle 508 termina y el procedimiento continúa al bloque 513. En el bloque 513, el administrador de confianza analiza las colecciones de clasificación de los evaluadores de confianza. El administrador de confianza puede dar prioridad a las colecciones de clasificación basándose en algunos criterios predeterminados, tales como una prioridad asociada con un evaluador de confianza particular, o algún otro esquema de prioritización. Por ejemplo, un alto riesgo de que un virus esté presente puede valer más que un bajo riesgo de que pueda ocurrir una violación de privacidad. El administrador de confianza determina, a partir de las colecciones de clasificación con prioridad, un impacto de seguridad agregado en el sistema de cómputo. Si el impacto de seguridad agregado en el sistema excede algún umbral predeterminado, el administrador de confianza simplemente puede bloquear la carga de la aplicación. Si el impacto de seguridad agregado está por debajo de algún otro u b r_a el ad-m i~n istrador de -e e fta-n-z-a- s-i mp†e m en te ^prre de~d es ar roMa r un objeto de confianza que incluye suficientes permisos para se ejecute la aplicación. Sin embargo, si no existe ninguno de estos casos, el administrador de confianza puede invocar una Inferíase de usuario para incitar al usuario a hacer la determinación. En el bloque 515, el administrador de confianza pasa la colección de clasificación con prioridad y la información de impacto agregada a la interfase de usuario para evaluación final si es requerido por parte del usuario. Si es así, el impacto de seguridad agregado es presentado al usuario. La presentación puede estar en la forma de una caja de diálogo que resume o detalla específicamente los riesgos de seguridad asociados con la carga de la aplicación. Por ejemplo, una máquina de clasificación pudo haber determinado que la aplicación haya solicitado suficientes permisos para leer y modificar archivos en la computadora, y transmitir datos a través de una conexión de red. Con base en esa información, tal vez junto con otra evidencia, un evaluador de privacidad pudo haber determinado que la aplicación probablemente va a compartir la información de usuario a través de la red. Por consiguiente, esa información puede ser combinada para informarle al usuario que la carga de la aplicación probablemente dará como resultado que el usuario sea activado por campañas de comercio por televisión u otros usos inapropiados de la información personal del usuario. Ventajosamente, al usuario se le presenta información de seguridad diferente reunida en una notificación común, tal como una caja de — d+á+ogo o^STrm l a re s^ Eñ él bloque 5~T7, con cualquier entrada de la interfase de usuario, el administrador de confianza modifica el objeto de confianza para describir el ambiente de seguridad en donde se puede ejecutar la aplicación. En una modalidad, el objeto de confianza incluye datos que asocian la aplicación, o componentes de la aplicación, con un grupo de otorgamiento de permiso. El grupo de otorgamiento de permiso describe el nivel de seguridad que será aplicado a la aplicación cuando se ejecute. En un ambiente específico, un grupo de otorgamiento de permiso está asociado con cada componente de la aplicación. En esa forma, un componente que es compartido entre diferentes aplicaciones puede ser ejecutado con diferentes permisos, dependiendo del contexto de aplicación en donde se está ejecutando. El procedimiento puede estar inactivo en el bloque 517 hasta que la aplicación en realidad sea ejecutada, ocasionado así que el huésped comience a cargar componentes de la evocación. En ese punto, el procedimiento continúa al bloque 519. En el bloque 519, la aplicación se está cargando por el huésped. Como parte de una política de seguridad que se aplica a aplicaciones que se están cargando, el huésped consulta el administrador de confianza para el objeto de confianza asociado con la aplicación. A medida que cada componente de la aplicación se carga, el grupo de otorgamiento de permiso asociado con ese componente es aplicado. De esta manera, las aplicaciones que han sido cargadas de acuerdo con la invención son solamente a las que — se les otorga — aquellos permisos qre el usuario, en una manera rnfoi inada, directa y comprensivameñTe ha establecido. Si no se han otorgado suficientes privilegios a la aplicación, el administrador de confianza puede bloquear la ejecución de la aplicación. La especificación, ejemplos y datos anteriores proporcionan una descripción completa de los conceptos e implementaciones ilustrativas de la invención. Ya que muchas modalidades de la invención pueden hacerse sin apartarse del espíritu y alcance de la misma, la invención reside en las siguientes reivindicaciones.
5/5
Claims (7)
1.- Un medio legible por computadora que tiene componentes ejecutables por computadora, que comprende: un administrador de confianza configurado para recibir una notificación de que una aplicación está siendo cargada y, en respuesta, hacer que la aplicación sea evaluada para una pluralidad de riesgos de seguridad, el administrador de confianza además estando configurado para agregar clasificaciones asociadas con cada evaluación de riesgo de seguridad para determinar una evaluación de seguridad colectiva basándose en las clasificaciones agregadas; y una interfase de usuario configurada para presentar la evaluación de seguridad colectiva determinada por el administrador de confianza.
2.- El medio legible por computadora de acuerdo con la reivindicación 1, en donde la aplicación está siendo cargada por un ambiente huésped, y en donde el ambiente huésped emite la notificación al administrador de confianza.
3. - El medio legible por computadora de acuerdo con la reivindicación 2, en donde el ambiente huésped está configurado para crear un objeto de descripción de aplicación que incluye información descriptiva sobre la aplicación.
4. - El medio legible por computadora de acuerdo con la reivindicación 3, en donde la información descriptiva incluye el nombre de la aplicación y la -v-e-FS-fén de-Fa apticación 24 5^ El me~cfío TegT¾Te por computadora de acuerdo con la reivindicación 3, en donde la información descriptiva identifica derechos y permisos solicitados por los componentes de la api icación. 5 6.- El medio legible por computadora de acuerdo con la reivindicación 3, en donde la información descriptiva incluye información de política de privacidad. 7. - El medio legible por computadora de acuerdo con la reivindicación 3, en donde la información descriptiva incluye 10 información de firma digital sobre la aplicación. 8. - El medio legible por computadora de acuerdo con la reivindicación 1, en donde las evaluaciones de riesgos de seguridad se realizan por un evaluador de confianza separado, cada evaluador de confianza estando configurado para analizar un riesgo de 15 seguridad particular asociado con la aplicación. 9. - El medio legible por computadora de acuerdo con la reivindicación 8, en donde el riesgo de seguridad particular comprende la presencia de un virus. 10. - El medio legible por computadora de acuerdo con la 20 reivindicación 8, en donde el riesgo de seguridad particular comprende una violación de privacidad. 11. - El medio legible por computadora de acuerdo con la reivindicación 1, en donde la evaluación de seguridad colectiva identifica uno o más riesgos de seguridad asociados con la carga de _25 la aplicación- 25 1-2 = ?? ??GT ?? legible por computadora codificado con una estructura de datos, que comprende: un grupo de otorgamiento asociado con una aplicación, el grupo de otorgamiento incluyendo una primera tabla y una segunda tabla, 5 la primera tabla incluyendo una lista de componentes que constituyen la aplicación, cada componente estando asociado con un grupo de permiso, la segunda tabla incluyendo una lista de grupos de permiso y una descripción para cada grupo de permiso. 13. - Un método implementado por computadora, que 10 comprende: recibir una notificación de que una aplicación está siendo cargada por un ambiente huésped; recibir un objeto de descripción de aplicación que incluye información sobre la aplicación; 15 hacer que la aplicación sea evaluada para determinar una pluralidad de riesgos de seguridad asociados con la aplicación; agregar resultados de la evaluación de la pluralidad de riesgos de seguridad; y presentar los resultados agregados como una evaluación de 20 seguridad colectiva de la aplicación. 14. - El método implementado por computadora de acuerdo con la reivindicación 13, en donde ocasionar que la aplicación sea evaluada además comprende invocar una pluralidad de evaluadores de confianza, cada evaluador de confianza estando asociado con un _25 ? esgo de seguridad posible -d-tíef-e-fl-t-e-, -cada e \ra fu crd ?t ~d é~ coTTf íá za 26 opera paia e^ralxrar una probabilidad de que la aplicación sufre del riesgo de seguridad posible particular que corresponde a ese evaluador de confianza. 1
5. - El método implementado por computadora de acuerdo con la reivindicación 13, que comprende además asignar un grupo de permiso a la aplicación, el grupo de permiso definiendo permisos con los cuales la aplicación será ejecutada. 1
6. - El método implementado por computadora de acuerdo con la reivindicación 15, que comprende además, en respuesta a una notificación para ejecutar la aplicación, recuperar el grupo de permiso y hacer que la aplicación sea ejecutada con los permisos apropiados. 1
7. - El método implementado por computadora de acuerdo con la reivindicación 15, en donde el grupo de permiso define permisos para los componentes de la aplicación. 27 FSOMEÑT Se describe un mecanismo para evaluar colectivamente riesgos de seguridad asociados con la carga de una aplicación. Un ambiente huésped asociado con la carga de la aplicación invoca un administrador de confianza para evaluar los riesgos de seguridad. El administrador de confianza invoca una pluralidad de evaluadores de confianza, en donde cada evaluador de confianza es responsable de analizar y evaluar un riesgo de seguridad diferente. Al terminar cada evaluación de riesgo de seguridad, los resultados de esas evaluaciones de riesgo de seguridad individuales son regresados al administrador de confianza. El administrador de confianza agrega la variedad de resultados de evaluación de riesgo de seguridad y hace una determinación de seguridad basándose en los resultados de evaluación agregados. Esa determinación puede hacer avanzar la carga de la aplicación, para bloquear la carga de aplicación, o tal vez para incitar al usuario a tomar una decisión con respecto a si hacer avanzar la carga.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/440,518 US8156558B2 (en) | 2003-05-17 | 2003-05-17 | Mechanism for evaluating security risks |
PCT/US2003/015709 WO2004107647A1 (en) | 2003-05-17 | 2003-05-17 | Mechanism for evaluating security risks |
Publications (1)
Publication Number | Publication Date |
---|---|
MXPA04007406A true MXPA04007406A (es) | 2005-02-17 |
Family
ID=34118079
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
MXPA04007406A MXPA04007406A (es) | 2003-05-17 | 2003-05-17 | Mecanismo para evaluar riesgos de seguridad. |
Country Status (10)
Country | Link |
---|---|
US (1) | US8156558B2 (es) |
EP (1) | EP1625687A4 (es) |
JP (2) | JP2006526193A (es) |
KR (1) | KR100968003B1 (es) |
CN (1) | CN1618198A (es) |
AU (1) | AU2003233574B9 (es) |
BR (1) | BR0307030A (es) |
CA (1) | CA2472366A1 (es) |
MX (1) | MXPA04007406A (es) |
WO (1) | WO2004107647A1 (es) |
Families Citing this family (90)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100968003B1 (ko) * | 2003-05-17 | 2010-07-07 | 마이크로소프트 코포레이션 | 보안 위험을 평가하는 메카니즘 |
GB2403309B (en) * | 2003-06-27 | 2006-11-22 | Hewlett Packard Development Co | Apparatus for and method of evaluating security within a data processing or transactional environment |
US8214906B2 (en) * | 2003-10-21 | 2012-07-03 | International Business Machines Corporation | System, method and program product to determine security risk of an application |
JP2005316890A (ja) * | 2004-04-30 | 2005-11-10 | Sony Corp | プログラム、コンピュータ、データ処理方法、通信システムおよびその方法 |
US7774824B2 (en) * | 2004-06-09 | 2010-08-10 | Intel Corporation | Multifactor device authentication |
KR20060030993A (ko) * | 2004-10-07 | 2006-04-12 | 한국전자통신연구원 | 정보 자산의 보안 수준 분석 방법 |
US7600256B2 (en) | 2005-02-04 | 2009-10-06 | Microsoft Corporation | Security critical data containers |
US8117640B1 (en) * | 2005-02-23 | 2012-02-14 | Mark Moriconi | Systems and methods for analyzing application security policies |
US8359645B2 (en) * | 2005-03-25 | 2013-01-22 | Microsoft Corporation | Dynamic protection of unpatched machines |
US7685149B2 (en) * | 2005-03-28 | 2010-03-23 | Microsoft Corporation | Identifying and removing potentially unwanted software |
US8516583B2 (en) | 2005-03-31 | 2013-08-20 | Microsoft Corporation | Aggregating the knowledge base of computer systems to proactively protect a computer from malware |
US8060860B2 (en) * | 2005-04-22 | 2011-11-15 | Apple Inc. | Security methods and systems |
US20060259967A1 (en) * | 2005-05-13 | 2006-11-16 | Microsoft Corporation | Proactively protecting computers in a networking environment from malware |
US20070028300A1 (en) * | 2005-07-28 | 2007-02-01 | Bishop Ellis E | System and method for controlling on-demand security |
US20070124803A1 (en) * | 2005-11-29 | 2007-05-31 | Nortel Networks Limited | Method and apparatus for rating a compliance level of a computer connecting to a network |
US7725325B2 (en) * | 2006-01-18 | 2010-05-25 | International Business Machines Corporation | System, computer program product and method of correlating safety solutions with business climate |
US8572381B1 (en) * | 2006-02-06 | 2013-10-29 | Cisco Technology, Inc. | Challenge protected user queries |
US8270941B2 (en) | 2006-02-24 | 2012-09-18 | Qualcomm Incorporated | System and method for downloading user interface components to wireless devices |
US20070204167A1 (en) * | 2006-02-28 | 2007-08-30 | Aladdin Knowledge Systems Ltd. | Method for serving a plurality of applications by a security token |
JP4434169B2 (ja) * | 2006-03-30 | 2010-03-17 | ブラザー工業株式会社 | 情報処理装置、及び、プログラム |
US7793110B2 (en) * | 2006-05-24 | 2010-09-07 | Palo Alto Research Center Incorporated | Posture-based data protection |
CN100423494C (zh) * | 2006-06-13 | 2008-10-01 | 南京大学 | 一种基于依赖关系的信息技术产品安全保证评估流程生成方法 |
CN100409622C (zh) * | 2006-06-13 | 2008-08-06 | 南京大学 | 一种基于依赖关系的信息技术产品安全保证评估流程控制方法 |
US8117441B2 (en) * | 2006-06-20 | 2012-02-14 | Microsoft Corporation | Integrating security protection tools with computer device integrity and privacy policy |
US8959568B2 (en) * | 2007-03-14 | 2015-02-17 | Microsoft Corporation | Enterprise security assessment sharing |
US20090019170A1 (en) * | 2007-07-09 | 2009-01-15 | Felix Immanuel Wyss | System and method for secure communication configuration |
AU2008100698B4 (en) * | 2007-07-30 | 2009-04-02 | REAPP Technology Pty Limited | REAPP fourier transform computer security methodology |
US8037536B2 (en) * | 2007-11-14 | 2011-10-11 | Bank Of America Corporation | Risk scoring system for the prevention of malware |
US10318730B2 (en) * | 2007-12-20 | 2019-06-11 | Bank Of America Corporation | Detection and prevention of malicious code execution using risk scoring |
US8136164B2 (en) * | 2008-02-27 | 2012-03-13 | Microsoft Corporation | Manual operations in an enterprise security assessment sharing system |
US8532978B1 (en) * | 2008-10-31 | 2013-09-10 | Afrl/Rij | Natural language interface, compiler and de-compiler for security policies |
US8156388B2 (en) * | 2008-11-24 | 2012-04-10 | Symbol Technologies, Inc. | Analysis leading to automatic action |
US8336080B2 (en) * | 2009-06-26 | 2012-12-18 | Symbol Technologies, Inc. | Methods and apparatus for rating device security and automatically assessing security compliance |
CN106097107B (zh) | 2009-09-30 | 2020-10-16 | 柯蔼文 | 用于社交图数据分析以确定社区内的连接性的系统和方法 |
JP5333141B2 (ja) * | 2009-10-09 | 2013-11-06 | ソニー株式会社 | 情報処理装置および方法、並びにプログラム |
US20110099164A1 (en) | 2009-10-23 | 2011-04-28 | Haim Zvi Melman | Apparatus and method for search and retrieval of documents and advertising targeting |
EP2515496A4 (en) | 2009-12-15 | 2013-07-03 | Telefonica Sa | SYSTEM AND METHOD OF TRUSTING TRUST BETWEEN DATA NETWORKING USERS |
WO2011106897A1 (en) | 2010-03-05 | 2011-09-09 | Chrapko Evan V | Systems and methods for conducting more reliable assessments with connectivity statistics |
WO2011134086A1 (en) | 2010-04-30 | 2011-11-03 | Evan V Chrapko | Systems and methods for conducting reliable assessments with connectivity information |
US8413249B1 (en) * | 2010-09-30 | 2013-04-02 | Coverity, Inc. | Threat assessment of software-configured system based upon architecture model and as-built code |
JP5651065B2 (ja) * | 2011-04-08 | 2015-01-07 | Kddi株式会社 | アプリケーション評価装置およびプログラム |
US8656465B1 (en) * | 2011-05-09 | 2014-02-18 | Google Inc. | Userspace permissions service |
US8646100B2 (en) * | 2011-06-03 | 2014-02-04 | Apple Inc. | Method for executing an application in a restricted operating environment |
CN102890629B (zh) * | 2011-07-21 | 2017-07-21 | 富泰华工业(深圳)有限公司 | 具有操作提示功能的电子装置及操作提示方法 |
KR101326896B1 (ko) * | 2011-08-24 | 2013-11-11 | 주식회사 팬택 | 단말기 및 이를 이용하는 어플리케이션의 위험도 제공 방법 |
CN102521549A (zh) * | 2011-11-28 | 2012-06-27 | 宇龙计算机通信科技(深圳)有限公司 | 一种应用程序安全预判装置及方法 |
WO2013097026A1 (en) | 2011-12-28 | 2013-07-04 | Chrapko Evan V | Systems and methods for visualizing social graphs |
US8978094B2 (en) | 2012-02-03 | 2015-03-10 | Apple Inc. | Centralized operation management |
US9443086B2 (en) | 2012-02-23 | 2016-09-13 | Infosys Limited | Systems and methods for fixing application vulnerabilities through a correlated remediation approach |
KR101308351B1 (ko) * | 2012-02-24 | 2013-09-17 | 주식회사 팬택 | 어플리케이션에 권한을 할당하는 단말기 및 상기 단말기의 권한 할당 방법 |
US20130254880A1 (en) * | 2012-03-21 | 2013-09-26 | Mcafee, Inc. | System and method for crowdsourcing of mobile application reputations |
CN103368987B (zh) * | 2012-03-27 | 2017-02-08 | 百度在线网络技术(北京)有限公司 | 云服务器、应用程序的审核认证及管理系统和方法 |
CN103366118A (zh) * | 2012-04-06 | 2013-10-23 | 腾讯科技(深圳)有限公司 | 进行安装包病毒查杀的方法及装置 |
US9088450B2 (en) | 2012-10-31 | 2015-07-21 | Elwha Llc | Methods and systems for data services |
US10216957B2 (en) | 2012-11-26 | 2019-02-26 | Elwha Llc | Methods and systems for managing data and/or services for devices |
US9886458B2 (en) | 2012-11-26 | 2018-02-06 | Elwha Llc | Methods and systems for managing one or more services and/or device data |
US10069703B2 (en) * | 2012-10-31 | 2018-09-04 | Elwha Llc | Methods and systems for monitoring and/or managing device data |
US9626503B2 (en) | 2012-11-26 | 2017-04-18 | Elwha Llc | Methods and systems for managing services and device data |
US10091325B2 (en) | 2012-10-30 | 2018-10-02 | Elwha Llc | Methods and systems for data services |
CN103853975A (zh) * | 2012-11-28 | 2014-06-11 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
US8613094B1 (en) * | 2012-12-17 | 2013-12-17 | Google Inc. | Using a honeypot workflow for software review |
US9268940B1 (en) * | 2013-03-12 | 2016-02-23 | Symantec Corporation | Systems and methods for assessing internet addresses |
CN104217155A (zh) * | 2013-05-30 | 2014-12-17 | 宁夏新航信息科技有限公司 | 一种对计算机软件进行保护的方法和装置 |
US9323931B2 (en) * | 2013-10-04 | 2016-04-26 | Bitdefender IPR Management Ltd. | Complex scoring for malware detection |
CN110717178A (zh) * | 2013-10-18 | 2020-01-21 | 诺基亚技术有限公司 | 用于操作和监测针对电子设备中的应用的权限的方法和系统 |
US20150235025A1 (en) * | 2014-02-20 | 2015-08-20 | Mark Mundy | Process to prevent malicious changes to electronic files on an electronic storage device |
CA2955457A1 (en) * | 2014-07-14 | 2016-01-21 | Iota Security Inc. | System, method and apparatus for detecting vulnerabilities in electronic devices |
US10783254B2 (en) * | 2014-10-02 | 2020-09-22 | Massachusetts Institute Of Technology | Systems and methods for risk rating framework for mobile applications |
US20160162269A1 (en) * | 2014-12-03 | 2016-06-09 | Oleg POGORELIK | Security evaluation and user interface for application installation |
US9578043B2 (en) | 2015-03-20 | 2017-02-21 | Ashif Mawji | Calculating a trust score |
EP3304402A1 (en) | 2015-05-28 | 2018-04-11 | Entit Software LLC | Security vulnerability detection |
US10089465B2 (en) | 2015-07-24 | 2018-10-02 | Bitdefender IPR Management Ltd. | Systems and methods for tracking malicious behavior across multiple software entities |
US9767291B2 (en) * | 2015-10-06 | 2017-09-19 | Netflix, Inc. | Systems and methods for security and risk assessment and testing of applications |
CN105404806B (zh) * | 2015-12-03 | 2018-07-24 | 烟台南山学院 | 一种对计算机软件进行保护的方法和装置 |
WO2017111967A1 (en) * | 2015-12-22 | 2017-06-29 | Hewlett Packard Enterprise Development Lp | Privacy risk information display |
US20170235792A1 (en) | 2016-02-17 | 2017-08-17 | Www.Trustscience.Com Inc. | Searching for entities based on trust score and geography |
US9679254B1 (en) | 2016-02-29 | 2017-06-13 | Www.Trustscience.Com Inc. | Extrapolating trends in trust scores |
US9438619B1 (en) * | 2016-02-29 | 2016-09-06 | Leo M. Chan | Crowdsourcing of trustworthiness indicators |
US9721296B1 (en) | 2016-03-24 | 2017-08-01 | Www.Trustscience.Com Inc. | Learning an entity's trust model and risk tolerance to calculate a risk score |
US10313383B2 (en) | 2016-06-01 | 2019-06-04 | Mastercard International Incorporated | Systems and methods for use in evaluating vulnerability risks associated with payment applications |
KR101766847B1 (ko) * | 2017-01-24 | 2017-08-11 | (주)지란지교소프트 | 사용자 행위에 기반한 프로세스 평가 방법 |
US10572680B2 (en) * | 2017-03-21 | 2020-02-25 | Microsoft Technology Licensing, Llc | Automated personalized out-of-the-box and ongoing in-application settings |
US10180969B2 (en) | 2017-03-22 | 2019-01-15 | Www.Trustscience.Com Inc. | Entity resolution and identity management in big, noisy, and/or unstructured data |
US10592837B2 (en) * | 2017-04-21 | 2020-03-17 | Accenture Global Solutions Limited | Identifying security risks via analysis of multi-level analytical records |
KR101790761B1 (ko) * | 2017-06-01 | 2017-10-31 | (주)지란지교소프트 | 사용자 행위에 기반한 프로세스 평가 방법 |
US10719610B2 (en) * | 2017-08-14 | 2020-07-21 | Blackberry Limited | Generating security manifests for software components using binary static analysis |
US10915638B2 (en) * | 2018-05-16 | 2021-02-09 | Target Brands Inc. | Electronic security evaluator |
US10820205B1 (en) * | 2019-02-27 | 2020-10-27 | NortonLifeLock, Inc. | Systems and methods for performing reputation-based identification of applications on unmanaged mobile devices |
US11347865B2 (en) * | 2019-03-29 | 2022-05-31 | Blackberry Limited | Determining security risks in binary software code |
CN112270014B (zh) * | 2020-10-16 | 2022-06-10 | 维沃移动通信有限公司 | 应用程序控制方法、装置及电子设备 |
Family Cites Families (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04199436A (ja) * | 1990-11-29 | 1992-07-20 | Nec Corp | ソフトウェア検査システム |
JPH04310188A (ja) * | 1991-03-01 | 1992-11-02 | Internatl Business Mach Corp <Ibm> | 文書/画像ライブラリのためのライブラリサービス方法 |
US5421006A (en) * | 1992-05-07 | 1995-05-30 | Compaq Computer Corp. | Method and apparatus for assessing integrity of computer system software |
JP2501771B2 (ja) | 1993-01-19 | 1996-05-29 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 不所望のソフトウェア・エンティティの複数の有効なシグネチャを得る方法及び装置 |
JPH07160495A (ja) * | 1993-12-03 | 1995-06-23 | Toshiba Corp | ソースコード評価装置 |
US5832208A (en) * | 1996-09-05 | 1998-11-03 | Cheyenne Software International Sales Corp. | Anti-virus agent for use with databases and mail servers |
US5960170A (en) | 1997-03-18 | 1999-09-28 | Trend Micro, Inc. | Event triggered iterative virus detection |
US5974549A (en) * | 1997-03-27 | 1999-10-26 | Soliton Ltd. | Security monitor |
US6167521A (en) * | 1997-08-29 | 2000-12-26 | International Business Machines Corporation | Securely downloading and executing code from mutually suspicious authorities |
US6279113B1 (en) * | 1998-03-16 | 2001-08-21 | Internet Tools, Inc. | Dynamic signature inspection-based network intrusion detection |
US6282546B1 (en) | 1998-06-30 | 2001-08-28 | Cisco Technology, Inc. | System and method for real-time insertion of data into a multi-dimensional database for network intrusion detection and vulnerability assessment |
JP3703064B2 (ja) | 1998-08-12 | 2005-10-05 | 株式会社日立製作所 | ソフトウェア品質評価装置および品質評価方法 |
US6321338B1 (en) * | 1998-11-09 | 2001-11-20 | Sri International | Network surveillance |
US6782478B1 (en) * | 1999-04-28 | 2004-08-24 | Thomas Probert | Techniques for encoding information in computer code |
US6446069B1 (en) * | 1999-09-17 | 2002-09-03 | International Business Machines Corporation | Access control system for a multimedia datastore |
JP4084914B2 (ja) * | 1999-09-29 | 2008-04-30 | 株式会社日立製作所 | セキュリティ評価方法および装置、セキュリティ施策の作成支援方法および装置 |
US6883101B1 (en) * | 2000-02-08 | 2005-04-19 | Harris Corporation | System and method for assessing the security posture of a network using goal oriented fuzzy logic decision rules |
US7096502B1 (en) | 2000-02-08 | 2006-08-22 | Harris Corporation | System and method for assessing the security posture of a network |
US7089428B2 (en) * | 2000-04-28 | 2006-08-08 | Internet Security Systems, Inc. | Method and system for managing computer security information |
US7131143B1 (en) * | 2000-06-21 | 2006-10-31 | Microsoft Corporation | Evaluating initially untrusted evidence in an evidence-based security policy manager |
JP4744674B2 (ja) * | 2000-06-30 | 2011-08-10 | 富士通フロンテック株式会社 | プログラムインストール方法、プログラムインストールシステム、プログラム実行装置及び記憶媒体 |
AUPQ885400A0 (en) * | 2000-07-18 | 2000-08-10 | Proteome Systems Ltd | Release of sugars from biomolecules |
US7350204B2 (en) * | 2000-07-24 | 2008-03-25 | Microsoft Corporation | Policies for secure software execution |
US7032114B1 (en) * | 2000-08-30 | 2006-04-18 | Symantec Corporation | System and method for using signatures to detect computer intrusions |
US7178166B1 (en) * | 2000-09-19 | 2007-02-13 | Internet Security Systems, Inc. | Vulnerability assessment and authentication of a computer by a local scanner |
JP2002123494A (ja) * | 2000-10-17 | 2002-04-26 | International Network Securitiy Inc | セキュリティ情報提供システム及びセキュリティ情報提供方法 |
US7168093B2 (en) * | 2001-01-25 | 2007-01-23 | Solutionary, Inc. | Method and apparatus for verifying the integrity and security of computer networks and implementation of counter measures |
US7281267B2 (en) * | 2001-02-20 | 2007-10-09 | Mcafee, Inc. | Software audit system |
JP2002342279A (ja) * | 2001-03-13 | 2002-11-29 | Fujitsu Ltd | フィルタリング装置、フィルタリング方法およびこの方法をコンピュータに実行させるプログラム |
JP4254988B2 (ja) * | 2001-03-16 | 2009-04-15 | 株式会社日立製作所 | セキュリティ診断システムおよびセキュリティ診断方法 |
EP2261796A3 (en) | 2001-05-14 | 2011-02-23 | NTT DoCoMo, Inc. | System for managing program stored in storage block of mobile terminal |
US7099663B2 (en) * | 2001-05-31 | 2006-08-29 | Qualcomm Inc. | Safe application distribution and execution in a wireless environment |
JP2003050723A (ja) | 2001-08-03 | 2003-02-21 | Toshiba Corp | 計算機プログラム品質管理装置、計算機プログラムエディタ、プログラム、計算機プログラム品質管理方法、計算機プログラムエディット方法 |
TWI281107B (en) * | 2001-08-13 | 2007-05-11 | Qualcomm Inc | Using permissions to allocate device resources to an application |
GB2378783B (en) * | 2001-08-17 | 2004-12-29 | F Secure Oyj | Preventing virus infection in a computer system |
JP4733885B2 (ja) | 2001-09-29 | 2011-07-27 | 株式会社東芝 | 脆弱性評価プログラム、方法及びシステム |
US7359865B1 (en) * | 2001-11-05 | 2008-04-15 | I2 Technologies Us, Inc. | Generating a risk assessment regarding a software implementation project |
MXPA04006473A (es) * | 2001-12-31 | 2004-10-04 | Citadel Security Software Inc | Sistema de resolucion automatizado para vulnerabilidad de computadora. |
JP2003216447A (ja) * | 2002-01-17 | 2003-07-31 | Ntt Docomo Inc | サーバ装置、移動通信端末、情報送信システム及び情報送信方法 |
US20030172291A1 (en) * | 2002-03-08 | 2003-09-11 | Paul Judge | Systems and methods for automated whitelisting in monitored communications |
US6785820B1 (en) * | 2002-04-02 | 2004-08-31 | Networks Associates Technology, Inc. | System, method and computer program product for conditionally updating a security program |
US7290275B2 (en) * | 2002-04-29 | 2007-10-30 | Schlumberger Omnes, Inc. | Security maturity assessment method |
US20040006704A1 (en) * | 2002-07-02 | 2004-01-08 | Dahlstrom Dale A. | System and method for determining security vulnerabilities |
US7472421B2 (en) * | 2002-09-30 | 2008-12-30 | Electronic Data Systems Corporation | Computer model of security risks |
US6952779B1 (en) * | 2002-10-01 | 2005-10-04 | Gideon Cohen | System and method for risk detection and analysis in a computer network |
US7437760B2 (en) * | 2002-10-10 | 2008-10-14 | International Business Machines Corporation | Antiviral network system |
AU2003297137A1 (en) * | 2002-12-18 | 2004-07-29 | Goldman, Sachs And Co. | Interactive security risk management |
US7134015B2 (en) * | 2003-01-16 | 2006-11-07 | International Business Machines Corporation | Security enhancements for pervasive devices |
JP2006523898A (ja) * | 2003-04-18 | 2006-10-19 | オンス ラブス,インク | ソースコードの脆弱点の検出法および検出システム |
US7328454B2 (en) * | 2003-04-24 | 2008-02-05 | At&T Delaware Intellectual Property, Inc. | Systems and methods for assessing computer security |
KR100968003B1 (ko) * | 2003-05-17 | 2010-07-07 | 마이크로소프트 코포레이션 | 보안 위험을 평가하는 메카니즘 |
KR200329618Y1 (ko) | 2003-07-01 | 2003-10-10 | 배병철 | 척추 교정 및 복부 맛사지기 |
-
2003
- 2003-05-17 KR KR1020047010654A patent/KR100968003B1/ko not_active IP Right Cessation
- 2003-05-17 AU AU2003233574A patent/AU2003233574B9/en not_active Ceased
- 2003-05-17 WO PCT/US2003/015709 patent/WO2004107647A1/en active Application Filing
- 2003-05-17 EP EP03729010A patent/EP1625687A4/en not_active Withdrawn
- 2003-05-17 BR BR0307030-1A patent/BR0307030A/pt not_active IP Right Cessation
- 2003-05-17 CA CA002472366A patent/CA2472366A1/en not_active Abandoned
- 2003-05-17 US US10/440,518 patent/US8156558B2/en not_active Expired - Fee Related
- 2003-05-17 JP JP2005500406A patent/JP2006526193A/ja active Pending
- 2003-05-17 CN CNA03801954XA patent/CN1618198A/zh active Pending
- 2003-05-17 MX MXPA04007406A patent/MXPA04007406A/es not_active Application Discontinuation
-
2010
- 2010-05-06 JP JP2010106615A patent/JP4908611B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CA2472366A1 (en) | 2004-11-17 |
KR20060079854A (ko) | 2006-07-07 |
AU2003233574B2 (en) | 2010-02-18 |
US20040230835A1 (en) | 2004-11-18 |
AU2003233574A1 (en) | 2005-01-21 |
BR0307030A (pt) | 2005-03-08 |
EP1625687A4 (en) | 2011-11-23 |
AU2003233574B8 (en) | 2010-03-18 |
US8156558B2 (en) | 2012-04-10 |
KR100968003B1 (ko) | 2010-07-07 |
CN1618198A (zh) | 2005-05-18 |
JP2006526193A (ja) | 2006-11-16 |
AU2003233574B9 (en) | 2010-03-25 |
EP1625687A1 (en) | 2006-02-15 |
JP2010205287A (ja) | 2010-09-16 |
WO2004107647A1 (en) | 2004-12-09 |
JP4908611B2 (ja) | 2012-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
MXPA04007406A (es) | Mecanismo para evaluar riesgos de seguridad. | |
US9836608B2 (en) | System, method and apparatus for simultaneous definition and enforcement of access-control and integrity policies | |
US11714884B1 (en) | Systems and methods for establishing and managing computer network access privileges | |
US8117441B2 (en) | Integrating security protection tools with computer device integrity and privacy policy | |
US8341736B2 (en) | Detection and dynamic alteration of execution of potential software threats | |
EP1674960B1 (en) | Reverse engineering access control | |
US20070226773A1 (en) | System and method for using sandboxes in a managed shell | |
US20070277222A1 (en) | System and method for executing a permissions recorder analyzer | |
US11706220B2 (en) | Securing application behavior in serverless computing | |
US20100100929A1 (en) | Apparatus and method for security managing of information terminal | |
US20070050369A1 (en) | Accessing file under confinement | |
JP5990646B2 (ja) | 仮想マシンにおける強制保護制御 | |
US7797727B1 (en) | Launching an application in a restricted user account | |
EP3651430A1 (en) | A system and method for controlling policy distribution with partial evaluation | |
MXPA05009332A (es) | Autorizacion de acceso integrado. | |
US8788845B1 (en) | Data access security | |
RU2334363C2 (ru) | Механизм для оценки рисков безопасности | |
US8627068B1 (en) | Selecting access authorities | |
ZA200405127B (en) | Mechanism for evaluating security risks. | |
Schreuders et al. | The functionality-based application confinement model | |
Corregedor et al. | ATE: Anti-malware technique evaluator |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FC | Refusal |