He oído hablar un poco sobre el uso de demostradores de teoremas automatizados para intentar demostrar que las vulnerabilidades de seguridad no existen en un sistema de software. En general, esto es diabólicamente difícil de hacer.Uso de demostradores de teoremas para encontrar ataques
Mi pregunta es si alguien ha trabajado en el uso de herramientas similares a encontrar vulnerabilidades en los sistemas existentes o propuestos?
Eidt: Soy NO preguntando por demostrando que es un sistema de software seguro. Pregunto sobre la búsqueda de vulnerabilidades (idealmente desconocidas previamente) (o incluso clases de ellas). Estoy pensando (pero no) en un sombrero negro: describo la semántica formal del sistema, describo lo que quiero atacar y luego dejo que la computadora descubra qué cadena de acciones necesito usar para controlar su sistema.
Creo que el cliente nativo de google podría facilitar esto; engañaron al requerir un compilador especial (que se compila en un subconjunto del conjunto de instrucciones de destino que hace que sea más fácil verificar el código). Consulte NaCl en http://www.chromium.org/nativeclient/reference/research-papers – sehe