Novidades: |
|
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,…). |