Novidades:

2009/07/01
Slides da apresentação do fast-abstract "Finding Vulnerabilities in Software Ported from 32 to 64-bit CPUs" durante a 39ª IEEE/IFIP Conferência International sobre Redes e Sistemas Fiáveis - DSN'09 -, Lisboa, Portugal, sobre a ferramenta DEEEP.
2009/07/01
Apresentação do fast-abstract "Finding Vulnerabilities in Software Ported from 32 to 64-bit CPUs" durante a 39ª IEEE/IFIP Conferência International sobre Redes e Sistemas Fiáveis - DSN'09 -, Lisboa, Portugal, sobre a ferramenta DEEEP.
2008/03/05
Apresentação da Tese de Mestrado "Detecção de Vulnerabilidades de Inteiros na Adaptação de Software de 32 para 64 bits". Faculdade de Ciências da Universidade de Lisboa, Lisboa, Março de 2008.
2008/03/04
Nova versão disponível. Deeep compativel com Linux.
2007/11/21
Lançamento do site deeep.homeunix.org.
2007/11/8
Apresentação do artigo "Detecção de Vulnerabilidades de Inteiros na Adaptação de Software de 32 para 64 bits" durante a 3ª Conferência Nacional sobre Segurança Informática nas Organizações - SINO'07 onde se propõe a ferramenta DEEEP - Detector of integEr vulnerabilitiEs in softwarE Portability.

O que é o DEEEP?

Com o objectivo de detectar vulnerabilidades de inteiros causadas pela má adaptação de aplicações de ILP32 para LP64 foi concebida a ferramenta de análise estática de código DEEEP - Detector of integEr vulnerabilitiEs in softwarE Portability (de código aberto), tendo por base as ferramentas Lint e Splint, sobre os sistemas operativos Open Solaris e Linux.

A ferramenta efectua análise semântica de código fonte. Mais concretamente, faz verificação de tipos de dados (type checking), análise de fluxo de dados (data flow analysis), e correlaciona automaticamente o resultado dessas duas formas de análise. A primeira forma de análise tem o intuito de detectar bugs na manipulação de inteiros, enquanto que a segunda analisa o fluxo de dados de forma a detectar se dados vindos de fora do programa atingem funções de biblioteca perigosas, como memcpy ou strcpy.

Após estas duas análises, a ferramenta faz o correlacionamento automático dos resultados das fases anteriores de forma a perceber se dados que vêm dos inputs do programa são afectados pelas vulnerabilidades da adaptação para LP64, e depois chegam a funções de biblioteca perigosas (memcpy, strcpy,…).