HTTP headers, HTTP por força bruta

Publicado por Danilo em 06/05/2006

[ Hits: 9.580 ]

Blog: http://www.danilocesar.com

 


HTTP headers, HTTP por força bruta



Escrevi em meu site um artigo sobre força bruta em HTTP.

Para o artigo completo, segue o link:
Vou demonstrar aqui como fazer posts, uploads para páginas Web através de linha de comando. Para posts simples existe o comando:

$ echo "nome=danilo&idade=20" | \
> lynx –post-data http://www.meusite.com.br/meu_post.php

Mas você fica limitado ao Lynx e aos seus padrões. Já pensou se precisasse fazer upload de arquivo por exemplo? Solução: manipular os headers do HTTP.

Para isso, utilizarei o pacote TCPUtils do Debian (existe outra dica minha falando sobre ele).

Como exemplo: quero enviar meu sources.list para uma página PHP manipular.

Crie um arquivo chamado headers.txt, com o seguinte conteúdo:

POST /CAMINHO/PAGINA.php HTTP/1.1
Host: www.meu_dominio.com.br
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.1) Gecko/20060209 Debian/1.5.dfsg+1.5.0.1-2 Firefox/1.5.0.1
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8, image/png,*/*;q=0.5
Accept-Language: pt-br
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Content-Type: multipart/form-data; boundary=–BoRdEr_Signature-00253658974569–
Content-Length: 700

—-BoRdEr_Signature-00253658974569–
Content-Disposition: form-data; name=”teste”; filename=”source.list”
Content-Type: text/plain

#deb cdrom:[Debian GNU/Linux testing _Etch_ - Official Snapshot i386 Binary-1 (20051212)]/ etch contrib main

#deb cdrom:[Debian GNU/Linux testing _Etch_ - Official Snapshot i386 Binary-1 (20051212)]/ etch contrib main

#deb file:/ apt/

#deb http://security.debian.org/ testing/updates main contrib
deb http://security.debian.org/ etch/updates main contrib non-free

#deb http://ftp.debian.org/debian/ unstable main
#deb-src http://ftp.pucpr.br/debian/ testing main

deb http://ftp.debian.org/debian/ testing main
deb-src http://ftp.debian.org/debian/ testing main

—-BoRdEr_Signature-00253658974569—-

Algumas informações que podem mudar de programador para programador:
  • /CAMINHO/PAGINA.php: é a página que vai receber meu upload;
  • meudominio.com.br: o domínio do seu site;
  • Content-Length: 700: tamanho do meu arquivo;
  • filename=”source.list”: nome do meu arquivo;
  • Content-Type: text/plain: tipo do meu arquivo;
  • E, lógico, o conteúdo do arquivo (no meu caso, está o meu source.list).

Depois disso, utilize o comando tcpconnect da seguinte forma:

$ tcpconnect meu_host 80 < headers.txt

E será feita uma requisição HTTP da mesma forma como um browser o faria, com a vantagem de se manipular tudo: cookies, sessões, referers e até mesmo uploads.

Da mesma forma pode ser usado para testar segurança dos seus sites. Para a matéria completa, repito o link:
Outras dicas deste autor

Problemas com DELETE no WINE

Anjuta 1.2.4 e Ubuntu Edgy: Sim, é possível

Rodando o Quanta em uma única instância

Montando uma imagem de CD (iso)

Funções de data usando time.h

Leitura recomendada

Gerenciador de download veloz (de várias fontes simultâneas)

Resolvendo problemas de navegação do Velox no Mandriva

Rádio UOL (Debian Linux - Gnome - Iceweasel)

Corrigindo problemas para conexão Speedy no Slackware 10.2

Como fazer o Chrome abrir Magnet Links

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts