A lenda dos notórios App Testers do IBM Black Team

18 11 2012

Ao participar do seminário de testes de software “Test Day 2012”  me chamou muito a atenção coisas que não vi,e uma única palestra que comentou algo sobre o tratamento de aspectos de segurança em testes de software, e  conversando com um colega que lá estava que me comentou que ele já não dava conta de fazer o trabalho dele, quanto mais ter que cuidar de segurança e que isto ele deixava para os especialistas em Security Testing  feito eu, que este não era o campo dele. Confesso que na hora lembrei muito da lendária história do IBM Black Team, que fiquei conhecendo  pela primeira vez no livro Peopleware – Productive Projects and Teams – de Tom DeMarco e Timothy Lister.

Este time, tem uma história muito peculiar, muito lendária pois há poucos registros históricos sobre eles. Mas mesmos assim, eles tem gerado admiração por aqueles que ouvem falar sobre eles. Principalmente porque em sua época muitos desenvolvedores aspiravam participar do time e o que acontece hoje é o contrário, muitos testers tem como sonho se “qualificar” para se tornar desenvolvedor, o que por um certo lado é uma grande distorção senão um grande desequilíbrio da força.

Continue lendo »





Tratando Falhas Conhecidas em Código – Juliet Test Case

14 11 2012

Apoiando o  desenvolvimento de software seguro e de qualidade, muito se fala da OWASP, porém ela é muito focada em Web Applications e nem só de Web vive a indústria de desenvolvimento de software.

Há algumas  iniciativas interessantes, como o da SEI  (Software Engineering Institute),  SafeCode, mas uma que vem me chamando muito a atenção são as do  NSA’s Center for Assured Software (CAS) via o  NIST que mantém o projeto SAMATE (Software Assurance Metrics And Tool Evaluation) Reference Dataset (SRD).

A fim de resolver a crescente falta de qualidade dos softwares utilizados no governo dos EUA, o CAS  foi criado em 2005 com a missão de melhorar a segurança de software empregado por eles. E o CAS tenta cumprir esta missão, entre outras coisas, ajudando as organizações nos processos de implantação de ferramentas para tratar de garantia de todo o ciclo de vida de desenvolvimento de software.

Continue lendo »





Malware Bypasses Process Monitoring & Colonização Marciana

24 06 2012
Computer security rings (Note that Ring 1 is n...

Computer security rings (Note that Ring 1 is not shown) (Photo credit: Wikipedia)

Em alguns produtos de segurança o domínio dos “anéis” do sistema operacional é fundamental e para alguns malwares, conquistar o poder do “anel” é torná-lo quase invencível.

Tá, anel pode ser um termo muito sinistro para você, no fundo para mim também, por isto que prefiro utilizar o termo “ring”. Há um tipo de malware (considerado advanced) que costuma render bastante trabalho que são os Rootkits; principalmente aqueles que sabem explorar o poder destes rings, OS Internals, processors internals ou até instruction sets bugadas e ou desconhecidas como  Likhachev Nikolay encontrou em alguns rootkits (e trojans) em 2007 e revelou no paper “Remote Code Execution through Intel CPU Bugs“.

Rootkits podem ser de Ring 3 (User Land), de Ring 0 (Kernel Land),  Ring -1  (Hypervisor), Ring -2 (SMM) e até de Ring -3, estando em iminência os de EFI  que tem sucesso apenas em firmwares que não empregam algumas boas práticas de segurança, mas em tempos onde malwares já estão utilizando ataques desconhecidos de colisão de hash para forjar certificados digitais, muitos princípios começam a entrar em xeque.

Para muitos o desenvolvimento de rootkits é uma arte negra, até porque há várias técnicas relacionadas a eles que não são muito simples mesmo. Por isto outro dia fiquei admirado com um  post  no blog de uma  empresa  de segurança que tem produtos anti-malware, mostrando como realizar by-pass via kernel rootkit  (ring 0) de um dos pilares da monitoração real-time por endpoint protections no Windows.  Obviamente, esta empresa não é afetada por tal técnica, visto que seus engines de captura são de  in-network e o conteúdo do tal post era direcionado para bypass de kernel mode driver callback, enfim outra categoria de AVs.

O post pareceu-me mais FUD (Fear, Uncertainty and Doubt) e uma peça de marketing, e isto levou-me a fazer uma série de questionamentos e  deixou-me muito pensativo.

Continue lendo »





Mistérios do SMS – bits, bytes, mitos e modelos mentais

10 06 2012

Ainda sobre mitos

Call flow for the Mobile Terminated short mess...

Call flow for the Mobile Terminated short message service (Photo credit: Wikipedia)

Quando eu atuava com desenvolvimento de soluções para  Telematics Security, certa vez, conversando com um engenheiro de suporte que me apresentaram como o papa dos SMS (Short Message Service) de uma representante local de um fabricante de módulos de comunicação GSM, perguntei a ele o quanto o  módulo dele era compliance com o  padrão 3GPP TS 23.040 (Technical Realization of the Short Message Service) e a resposta dele foi que não tinha nada a ver uma coisa com a outra, que o manual do produto deveria ser seguido sempre.  Eu repeti a questão de uma outra forma e  a resposta foi similar! Aquela resposta não fazia sentido algum, até poucos meses antes eu havia testado um módulo de comunicação de um outro fabricante e encontrei problemas de aderência que reportei ao fabricante;  ele comentou que era um problema conhecido e que em breve isto seria corrigido, de verdade levou 3 anos para isto ocorrer, mas tudo bem. Porém preferi  ignorar a resposta deste engenheiro brasileiro e preferi falar sobre outros assuntos, que de verdade estavam mais ligados a nossa pauta.

Noutro momento, perguntei para um engenheiro de suporte de um outro fornecedor, como eu ativava o MUX do módulo para operar com canais simultâneos de GPRS e SMS, o mesmo falou que isto não era possível; bom olhando o manual do módulo dele em alguns minutos vi referências ao MUX e pedi exatamente o manual no qual aquela linha daquela página do manual estava se referindo, ele me perguntou para que eu queria aquele documento? Pois tudo o que eu precisava estava no manual no qual eu estava lendo. Com o tempo fui descobrir que entre application notes, datasheets e manuais, o produto dele tinha cerca de 9 documentos e só aquele manual era insuficiente.

Continue lendo »