Auditando Aplicações: Análise Estática de Códigos

Cada vez mais serviços estão sendo direcionados para plataforma web, sendo assim acabamos ficando dependentes ainda mais destas aplicações. Estes sistemas tem que ser cada vez mais onipresentes (quero acessá-los de qualquer lugar – cloud) confiáveis (quero que ele faça o que ele precisa fazer) e ágeis (quero que façam isso rápido!).

Qual a consequência disto? A consequência imediata é: sistemas cada vez mais complexos. Quando digo complexo não me refiro tão somente a complexidade do código fonte ou o seu desenvolvimento, mas também a complexidade inerente ao serviço em si. Cada vez mais APIs, cada vez mais plugins, cada vez mais sistemas interconectados e interdependentes.

Uma vez que a complexidade entrou na equação ela traz o seu efeito colateral: situações inesperadas.  Quando temos um ciclo de vida em nossa aplicação que não contempla o devido cuidado com segurança, temos implicações de diversos níveis. A maior delas é que em geral problemas que a primeira vista são simples e pequenos, acabam se tornando  verdadeiros pesadelos.

Análise Estática do Código consiste basicamente em antever problemas de segurança efetuando uma auditoria no código, sem executá-lo. Isso pode se tornar uma tarefa muito trabalhosa, especialmente quando o desenvolvedor não tem experiência com segurança e se não existe um framework de desenvolvimento seguro em uso no projeto.

As aplicações web são alvos constantes de ataques, quase que 24 horas por dia. Temos estatiscas de que muitas vezes, 60% do tráfego diário que chega a um website é gerado por bots que em sua grande maioria estão procurando por scripts vulneráveis para efetuar ataques, comprometer o servidor e a aplicação e fazê-la parte de sua rede de zumbis. Não seria nada legal ter seu e-Commerce em uma lista de hosts que estão disseminando Malwares para os usuários. Isto pode comprometer gravemente seus negócios.

Para auxiliar desenvolvedores neste árduo processo de análise estática, temos algumas aplicações muito interessantes e que podem realmente trazer a tona, muitas vezes problemas de segurança que não eram imaginados durante o desenvolvimento. Talvez aquele “warning” que seu compilador cuspiu na tela e você pensou “ah mas é apenas um warning, não tem nada de grave ai..” esconda muito mais do que imagina J

RIPS – Analisador Estático de vulnerabilidades em código fonte de Scripts PHP

RIPS é uma ferramenta escrita em PHP para encontrar vulnerabilidades em aplicações PHP utilizando o conceito de análise estática do código. Utilizando tokenização e parseando todos os arquivos de código PHP, ele consegue transformar seu código fonte PHP em program model e detectar sinks sensíveis (pontecialmente funções vulneráveis) que poderiam ser manipuladas por um userinput (influenciada por um usuário malicioso) durante o fluxo do programa. Além disto, baseado  na estrutura de output de uma vulnerabilidade encontrada, RIPS também oferece um framework integrado de code audit  para que você possa fazer uma análise manual.

Entre algumas das features apresentas pelo RIPS temos:

RIPS consegue identificar por padrão diversas vulnerabilidades em sua aplicação, em sua grande maioria as listadas no OWASP Top 10 são identificadas. Segue abaixo uma pequena lista das principais vulnerabilidades identificadas pela aplicação:

  • Code Execution
  • Command Execution
  • Cross-Site Scripting
  • Header Injection
  • File Disclosure
  • File Inclusion
  • File Manipulation
  • LDAP Injection
  • SQL Injection
  • XPath Injection

A interface de auditoria de código do RIPS consiste de algumas funcionalidades muito interessantes, entre elas podemos citar:

  • Estatísticas referentes ao Scans e as vulnerabilidades da aplicação
  • Linhas de código vulneraveis são agrupadas
  • Descrição das Vulnerabilidades com exemplo de código, PoC e patch
  • Engine que permite a criação do Exploit para explorer a vulnerabilidade encontrada
  • Exibição gráfica de arquivos (conectada pelos includes)
  • Exibição gráfica de funções (conectadas pelas calls)
  • userinput list (parámetros da aplicação)
  • visualização do código fonte com destaque em funções e parametros

Entre muitas outras que permitem que você faça o debug da aplicação utilizando inclusive expressões regulares. Efetuando a análise estática do código com RIPs, você consegue rapidez ao executar a análise (executar uma análise estática manualmente pode ser dolorosamente demorado).  Você consegue identificar blind/non-blind SQL exploitation, detectar backdoors em seu código entre outras vantagens.

Aplicação sendo analisada – Temos os resultados Preliminares com o número de funções vulneráveis.

Visualização gráfica dos Arquivos  – Interligação ocorre através dos Includes.

Engine permite criar Exploits para gerar PoC da vulnerabilidade.

Download + Instalação

O Download pode ser feito a partir do site http://rips-scanner.sourceforge.net

Para utilizar o RIPs você precisa primeiramente de um webserver local com suporte a PHP (tendo em vista que você é um desenvolvedor PHP, você já deve ter um J ).

Feito isto basta baixar a ultima versão estável , extrair os arquivos em seu Document Root do servidor web e acessar a interface, disponível em: <http://ip_servidor/rips>, e iniciar as análises.

Fonte:y2h4ck

Livro WEB Penetration Testing with Kali Linux

Dica do meu colega de trabalho, Luiz Vieira:

Há pouco tempo saiu um livro bem interessante sobre teste de invasão em aplicações web utilizando o Kali Linux e as ferramentas já existentes no mesmo.

Os tópicos abordados no livro são:

  • Perform vulnerability reconnaissance to gather information on your targets
  • Expose server vulnerabilities and take advantage of them to gain privileged access
  • Exploit client-based systems using web application protocols
  • Learn how to use SQL and cross-site scripting (XSS) attacks
  • Steal authentications through session hijacking techniques
  • Harden systems so other attackers do not exploit them easily
  • Generate reports for penetration testers
  • Learn tips and trade secrets from real world penetration testers

E para quem quiser consultá-lo, já está disponível na web no seguinte link: http://www.it-ebooks.info/book/3000/

Controle de games para Iphone

 

moga_ace_power

A MOGA deve lançar em breve um controle de games com design bem interessante para iPhone, pelo menos é o que diz esta imagem do usuário @EvLeaks, que sempre acerta em cheio nas suas “previsões”. Além dos botões e de dois joysticks analógicos, o controle MOGA Ace Power, teria bateria auxiliar de 1800mAH, para aumentar a duração da brincadeira.

A MOGA já tem um produto similar para Android, o Power Series, mas neste o smartphone fica posicionado acima da tela, algo compreensível se lembrarmos da vasta opção de aparelhos com o sistema no mercado. No caso do controle para iOS, o encaixe é lateral, como você pode ver na imagem “vazada” acima.

 

logitech_powershell

A Logitech também tem seu próprio controle de jogos com botões para o iPhone, o PowerShell, que como o nome indica, também terá uma bateria extra integrada, assim como o controle da MOGA, vazado pelo mesmo @Evleaks.

Ainda não sabemos qual será a duração da bateria, mas o interessante deste modelo da Logitech é a parte de trás, com curvas ergonômicas para tornar a pegada do controle mais confortável.

Fonte:DigitalDrops

[CINE DE HACKERS] REBOOT (2012)

Com muita publicidade, Reiniciar ” filme de hacking 2012, que inclui um jogo de guerra “, pelo menos para mim, eu criei um brutal expectativas …. Sem dúvida, muito mais do que realmente merecia.
Em um período de 40 minutos (35 se você remover os inúmeros créditos) desenvolve uma ação com um argumento praticamente inexistente.
Embora seja muito difícil ter uma parte desse filme sem spoilearla também, como eu tenho certeza que depois de ler este post, você não vai querer ver o filme, porque não importa. Assim SPOILERRSSSSSS … São avisados

Basicamente é um “hacker” que acorda com os olhos cheios de choque e nariz enfaixado e perceber que você tem um iPhone preso à mão direita. O iPhone não parece ter um sistema operacional IOS, exibe um contador de minutos e desça um terminal que exibe vários códigos.

Eu imagino que o viés profissional em filmes técnicos, procuramos sempre que nmap tcpdump ou terminal e os vacilos que eles cometeram.
A menina decide conectar via USB para o seu mac iphone e incluíram uma atividade Metasploit cena em que “supostamente” para se conectar a partir de um Mac OSX para iPhone e envia um shell reverso. No entanto, a vulnerabilidade está usando MS05-39 , ou seja, um exploit de 2005 para máquinas com Windows XP, 2000 e 2003.
Além disso, embora não conhecia a chave SSH do iphone, lança um brute forcede conexões (o que é visto como Aircrack-NG, usado para senhas de rede sem fio WTF!) E em um tempo obter uma senha de 9 caracteres alfanuméricos.
E a partir daí, é capaz de se conectar com o iphone (não me pergunte o que o SSH com vunerabilidad MS-05-39, que é PNP), ea menina aparece em C: \ Windows \ system32> A partir dai lá começa a olhar para os processos abertos e descobre um Timer.exe suspeito … Normal, um programa chamado Timer.exe rodando em um iPhone é mais suspeito do que Urdangarín jogar Monopoly …
Curiosamente editar o arquivo de origem, você vê o mesmo rolo que está sendo visto na tela do iPhone, como resultado da execução!
Até que, finalmente, é o que você vê na figura abaixo:
Eu não tenho palavras para dizer o que eu sinto ao ver esse código … mas o que eu tenho certeza é que ninguém nunca o corrigiu . Para mim, o hacker que desenvolveu esse filme ao invés de ciência da computação estudaram na Faculdade de Turismo.
Se você quiser vê-lo, apenas continue procurando vacilos, vale a pena. Além disso, em tudo!
FOLHA:
Rigor técnico: 1/5
História: 1/5
Classificação geral: 1/5

Utilitário cria log de computadores conectados/desconectados na sua rede

NetworkConnectLog is a new utility that repeatedly scans your local area network (Using ARP and Netbios protocols) and add a new log line every time that a new computer or device connects to your network, and when a computer or device disconnects from your network.
After the connect/disconnect log lines are accumulated, you can easily export the log lines to comma-delimited/tab-delimited/html/xml file.

NetworkConnectLog

NetworkConnectLog

You can download this new utility from this Web page.

Wi-Fis: Tipos de ataque e recomendações de segurança

O que é uma rede wireless?

Por definição, é uma rede que utiliza uma frequência de rádio ou de infravermelhos, como um meio para transmitir a informação. Eles são compostos de um AP (ponto de acesso), que conecte todos os dispositivos sem fio. Eles usam a banda ISM (Industrial, Scientific and Medical) de 2,4 GHz, compartilhá-lo com dispositivos como microondas ou telefones celulares. As normas que o regem são criados pelo IEEE. (802.11a, 802.11b, 802.11g, 802.11n), o padrão mais utilizado é o 802.11n.

Ou seja, a informação viaja através do ar por isso, se não fizermos as diretrizes de segurança apropriadas podem ser muito vulneráveis.Considere quais são os diferentes tipos de ataque:

Ponto de Acesso Spoofing

Este é um ataque que está se passando por um AP real. O cliente entende que você está se conectando a uma rede real e todas as informações serão capturadas. Depois, você pode redirecionar o tráfego para o ataque passa despercebida.

ARP Poisoning

Este ataque é um protocolo ARP (Addres Resolution Protocol). Um exemplo deste tipo de ataque é o “Man in the Midle” ou “man in the middle”. Seu funcionamento é relativamente simples:

Uma equipe invadindo A envia um repy ARP para B dizendo que o endereço MAC dos pontos X da máquina para A. A máquina X envia outra resposta ARP, indicando que os pontos de endereço IP para o MAC B de A.

Desta forma, a máquina B pensa X envia pacotes, quando, na verdade, ele faz para A. O mesmo se aplica às transferências de X para B. Assim, toda a comunicação entre as duas máquinas é passado através de uma primeira (homem no meio).

Isso é possível porque o protocolo não impede Estados e, ao receber um pacote de resposta, ele assume que enviou previamente um pacote solicitando este pedido de informação.

Spoofing MAC

Este ataque é uma paródia o endereço MAC de um cliente autorizado. É possível porque a placa de rede MAC permitir a mudança.

Negação de serviço (DoS)

A ideia deste ataque é para saturar a rede com os pedidos, tornando o serviço não pode ser utilizada por clientes legítima.Normalmete em redes sem fio, é feita com ordens de dissociação.

WLAN scanners

Na verdade, não é por si só um ataque. O que você deve fazer é ir a algum lugar e tentar descobrir por que as WLANs são, se possível, com informações sobre as instalações físicas, tipos de criptografia usados, etc. para, em seguida, realizar um ataque.

O wardriving é explorar uma área, tal como um carro, e, utilizando um aparelho (ou qualquer outro dispositivo portátil), pesquisar e armazenar os pontos de acesso de redes sem fios, juntamente com os dados que podem ser extraídos. Alguns aplicativos permitem que o posicionamento GPS móvel usando o ponto exato e executar esta operação automaticamente. Em seguida, gerar um mapa com todas as informações extraídas.

Sniffing

Este tipo de ataque é interceptar o tráfego da rede. Para fazer isso, tanto vítima atacante deve estar na mesma rede, o que geralmente é um ataque típico em redes não seguras, tais como redes abertas ou fornecidas em locais públicos (hotéis, cafés, etc.)

Recomendações de Segurança

Para proteger a nossa rede Wi-Fi é recomendado:

➢ Atualização Tanto o sistema operacional, como drivers Wi-Fi e firmware do roteador.

➢ Se você não estiver usando a interface Wi-Fi,  deve desabilitar.

➢ É melhor não configurar a rede Wi-Fi como oculto.

➢ Embora existam várias técnicas de criptografia (WEP, WPA, WPA2), o mais recomendado é WPA2 (Wireless Protected Access 2), temos duas variantes:

PSK Pessoal ou WPA2 com AES (Advanced Encryption Standard) para residências e pequenas empresas pode ser uma boa opção de usar senhas mais de 20 caracteres, devem ser robustos.

WPA2 – Enterprise é uma opção muito boa para as empresas e corporações, como o usado para criptografia AES (Advanced Encryption Standard) e para gerar senhas aleatórias e servidor robusto usa RADIUS (Remote Authentication Dial In User Service), juntamente com os protocolos 802.1X e EAP (Extensible Authentication Protocol) para autenticação. Existem várias implementações de EAP, com diferentes credenciais de nome de usuário / senha, aos cartões inteligentes, o que exigirá um estudo detalhado da infra-estrutura para escolher o protocolo mais adequado.

➢ Evite conectar a redes Wi-Fi não seguras (redes abertas e públicas). Estas redes nos oferecem acesso gratuito à Internet (taxa extra) e são um ambiente perfeito para os atacantes. Normalmente, eles não vão usar WPA Empresarial, até mesmo, em muitos casos, qualquer segurança. Isso significa que vamos continuar fazendo cheirar ou ARP podem sofrer ataques de veneno facilmente, por exemplo. Mesmo que a intenção de se conectar a uma VPN (Virtual Private Network), não é nada seguro fazê-lo através dessas redes porque VPNs proteger o tráfego na comunicação camadas de nível 3 (se IPSec) ou Nível 5 (para SSL ), para que possamos ser atacados por envenenamento de cache ARP, que está no nível 2, por exemplo.

➢ Não use redes de “outsiders”. Além de ser um crime, não sei quem está por trás. Se a criptografia WEP é, pode ser a acreditar cociencia ter “invadido” o wi-fi e nós suspeitamos atacantes, deixe o ataque.

➢ Alterar a senha padrão do nosso router. Apesar de vir por padrão com o WPA2, devemos tomar cuidado com a chave padrão.Existem muitas aplicações para smartphones que devolver a chave padrão de muitos roteadores, mesmo com WPA. Além disso, há também aplicativos para smartphones que permitem, a partir do mesmo motivo, fazer ataques de negação de serviço, controle de dispositivos que podem ou não podem ir para a Internet, etc.

➢ Alterar o nome da rede (SSID), que vem como padrão no roteador, e administração de senha.

➢ Se você tiver seu roteador configurado para atribuir dinamicamente para clientes de IP (DHCP), que geralmente vem por padrão, limitar o número de IP é atribuído.

➢ Desligue o roteador não utilização de tecnologias, tais como a WPS (Wi-Fi Protected Setup).

Nokia Lumia 1020 chega ao Brasil com sua incrível câmera de 41 megapixels

Texto por Digital Drops

Fernanda Camargo da Nokia apresentando o Lumia 1020

A Nokia lançou oficialmente ontem no Brasil seus smartphones com tecnologia PureView, o Lumia 1020 e o Lumia 925, com destaque para a câmera do 1020, com estabilizador de imagens e sensor de 41 megapixels. Tive a oportunidade de testar na prática o smartphone por algumas horas, participando de um tour pelo Rio de Janeiro em um belíssimo dia de sol.

Foto de Nick Ellis, feita com o Lumia 1020

A câmera do Lumia 1020 conta com 6 lentes Carl Zeiss e a tecnologia PureView, o que resulta em uma qualidade de imagens impressionante. Ela é tão boa que conseguiu resultados plenamente satisfatórios mesmo com um leigo como eu por trás da câmera, afinal como eu sempre digo, como fotógrafo, eu sou um ótimo blogueiro.

nokia_pro_cam

Depois da lente, a melhor coisa do 1020 é o software. Usando o Nokia SmartCam é possível colocar efeitos de movimento, escolher a melhor foto de uma sequência, mas o grande destaque é o Nokia Pro Cam, que permite acesso direto a vários controles para poder tirar a melhor foto em qualquer circunstância. Esse foi meu segundo contato com o Lumia 1020, fiz um hands-on rápido (leia no meu outro blog, o Meio Bit) em um stand da T-Mobile na IFA em Berlim, mas desta vez tive tempo e liberdade para testar o aparelho com calma.

Para entender melhor o Lumia 1020, é preciso voltar no tempo. Quem conhece a Nokia sabe que a empresa sempre criou celulares que tiveram a fotografia como maior destaque, desde o Nokia 7650, passando pelo N90, primeiro com lentes Carl Zeiss, o clássico N95, o primeiro com câmera de 5 megapixels, até o PureView 808, lançado no ano passado. O que faltava nessa história era um aparelho com uma câmera PureView mas rodando o Windows Phone, e este é o Lumia 1020.

lumia_1020

O smartphone tem tela AMOLED de 4.5” com Gorilla Glass 3, processador dual-core de 1.5 GHz e 2GB de RAM, especificações que dão conta da câmera com tranquilidade. O Lumia 1020 tem uma câmera realmente impressionante, mas que vai precisar de muito espaço para guardar todas estas imagens, felizmente ele está disponível em versões de 32 e 64GB (esta última exclusiva da operadora Vivo no Brasil).

nokia_camera_grip

O acessório Camera Grip aumenta bastante o volume do aparelho, mas isto é plenamente compensado pelo botão de disparo dedicado que ajuda a tirar fotos com mais precisão e pela bateria extra embutida, que tem carga para mais ou menos 5 horas.

Foto de Nick Ellis, feita com o Lumia 1020

O teste prático feito com fotos no Solar Real e Parque das Ruínas, em Santa Teresa, e nos morros da Urca e Pão de Açúcar, pude comprovar a qualidade da câmera e das imagens, mesmo sem estar usando o Camera Grip. Como disse no começo do texto, não sou fotógrafo e não tenho a pretensão de me considerar especialista sobre assunto, mas como um entusiasta da fotografia e da tecnologia, é impossível não ficar empolgado com o Lumia 1020 e sua câmera, que é um autêntico feito de maestria em engenharia. Sob o risco de soar repetitivo, é simplesmente impressionante que imagens de qualidade tão boa tenham sido feitas pela câmera de um smartphone.

lumia_925

Lumia 925 produzido no Brasil

Quem também está chegando ao Brasil é o Lumia 925, que está sendo produzido em Manaus, enquanto o Lumia 1020, será vendido em versão importada. O Lumia 925 se destaca na linha Lumia pelo case de alumínio, o que permite que ele seja bem leve e fino, com apenas 8.5 mm de espessura. A câmera de 8.7 megapixels do 925 também conta com tecnologia PureView, e tira ótimas fotos, o que torna o aparelho uma ótima opção para quem quer um smartphone com câmera de excelente qualidade, mas não precisa de algo tão avançado quanto a lente do Lumia 1020. Ele tem tela de 4.5” e processador dual-core de 1.5 GHz, com 1GB de RAM e 16GB de capacidade.

Preços

Os smartphones Lumia 1020 e 925 já estão sendo vendidos nas principais lojas do país por R$ 2.399 e R$ 1.799, ambos nas cores preta e branca (o 1020 amarelo chega em breve).

Queria agradecer a Fernanda Camargo (gerente de produtos da Nokia, foto do início do post) e ao Celso Winik (gerente de Windows Phone da Microsoft Brasil) pela oportunidade de testar o Lumia 1020 em primeira mão em sua chegada ao Brasil. As fotos que ilustram este post foram feitas com o Nokia Lumia 1020, com exceção da primeira, feita antes que a bateria do meu iPhone 5 acabasse.

Foto de Nick Ellis, feita com o Lumia 1020

Saiba mais sobre o Lumia 1020 e sobre o Lumia 925 no Nokia Conversations.

Office 365 – Não permite senhas muito longas!?Como assim!

Imagem inline 1

 

Deve ser para a NSA conseguir quebrar.

 

Vejam a resposata da equipe da Microsoft:

“Please note our research has shown uniqueness is more important than length and (like all major account systems) we see criminals attempt to victimize our customers in various ways; however, while we agree that in general longer is better, we’ve found the vast majority of attacks are through phishing, malware infected machines and the reuse of passwords on third-party sites – none of which are helped by very long passwords.

Sixteen characters has been the limit for years now. We will always prioritize the protection needs of users’ accounts and we will continue to monitor the new ways hijackers and spammers attempt to compromise accounts, and we design innovative features based on this. At this time, we encourage customers to frequently reset their Microsoft account passwords and use unique passwords that are different from other services. More information is available here: http://aka.ms/cantsignin.

Gruia

[edit] Adding on: We are working on increasing the password length. Unfortunately, for historical reasons, the password validation logic is decentralized across different products, so it’s a bigger change than it should be and takes longer to get to market. It’s also worth noting that the vast majority of compromised accounts are through malware and phishing. The small fraction of brute force is primarily common passwords like “123456” not due to a lack of complexity.”

 

Creditos ao pessoal da lista Underground Brasil, achei no mínimo curioso quando vi isso.