Pesquisadores curiosos com exploração de NULL pointers bugs

Essa historia começou um bocado como todas as outras (Quem nao se lembra dos problemas com format string ?) ou seja é descoberta uma falha de segurança num software e a tecnica de exploração introduz um novo conceito de exploitação de bugs tratando-se de gestão de memoria.

Tudo começou por meio duma falha de segurança descoberta no Adobe Flash e divulgada por meio deste paper por um pesquisador. A partir daí alguns pesquisadores chegaram a conclusao de que esta pesquisa pode originar um novo metodo de exploração de falhas em softwares. A falha é da Action Script Virtual Machine que é o motor por detras da interpretação da linguagem Action Script com a qual sao criados aplicativos flash, sendo um factor independente a plataforma em causa.

Vejamos, se um determinado arquivo SWF for manipulado, por meio de alterações ao seu formato constituido por campos chamados de tags, por exemplo a tag DefineSceneAndFrameLabelData (tag ID 0x56)  cuja estrutura segue abaixo:

// supporting structures
SceneData
{
UI32 FrameOffset
String SceneName
}
FrameData
{
UI32 FrameNumber
String FrameLabel
}
// Tag structure
DefineSceneAndFrameLabelData
{
RecordHeader Header
UI32 SceneCount
SceneData Scenes[SceneCount]
UI32 FrameCount
FrameData Frames[FrameCount]
}

Notar que RecordHeader e UI32 sao tipos de dados.

Continuando, (Ver um artigo meu sobre tipos de dados avançados) a tag DefineSceneAndFrameLabelData é uma tag cujo tamanho varia e que recebe o inteiro ‘Scene Count’. Existem algumas funções que realizam a valiação de dados como a função “ProcessSFLData” que le o valor ‘Scene Count’ realiza algumas validações basicas e aloca uma estrutura para ler os proximos valores um a um, mas o problema é que nao existe validação para uma falha de alocação de memoria.

Mais informações podem ser encontradas aqui.

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s