HTTP headers, HTTP por força bruta

Publicado por Danilo em 06/05/2006

[ Hits: 9.410 ]

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

Montando uma imagem de CD (iso)

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

CD's do Ubuntu de graça!

Problemas com DELETE no WINE

Sockets em shell script

Leitura recomendada

Como instalar o Coyote Linux em um disco rígido IDE ou em uma Memory Key USB

VirtualBox sem conexão Wireless [Resolvido]

Instalando e configurando o modem HSF Conexant no SuSE 10.1

Como criar rede local e compartilhar a Internet no Gnu/Linux

Youtube - Resolvendo problema dos vídeos que congelam em tela cheia

  

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