antiblock
Elveron
  • Chatbox

    You don't have permission to chat.
    Load More
Sign in to follow this  
V¡®u§

Invadir sites usando XPath Injection

2 posts in this topic

Imagem colocada

Muitos site todos os dias são invadidos por hackers, mas a maioria dos hackers , hack site só para ganhar mais popularidade. Hoje eu estou escrevendo este tutorial sobre Injeção XPath, em que eu vou explicar, Como Hackear sitecom Injection Usando XPath.

Em uma arquitetura típica de aplicativos da Web, todos os dados são armazenados em um servidor de banco de dados. Este banco de dados de dados servidor de armazenamento em vários formatos como um banco de dados LDAP, XML ou RDBMS. O aplicativo consulta o servidor e acessa as informações com base na entrada do usuário.

Normalmente atacantes tentar extrair mais informações do que o permitido pela manipulação ou usando a consulta com inputs.E especialmente criado, neste tutorial vamos estar discutindo técnicas de injeção XPATH para extrair dados de bancos de dados XML.

Tutorial XPath Injection Para Hack Websites Banco de Dados

Antes de ir mais fundo na injeção de XPATH vamos dar uma breve olhada em o que o XML e XPath.


O que é XML?
XML significa Extensible Markup Language e foi concebido ou utilizado para descrever dados. é fornecer a plataforma para os programadores a criar as suas próprias marcas personalizadas para armazenar dados no servidor de banco de dados. Um documento XML é mais semelhante a um banco de dados RDBMS, exceto pela maneira como os dados são armazenados neles. No caso de um banco de dados normal, os dados são armazenados em uma tabela linhas e colunas e em XML os dados são armazenados em nós em forma de árvore.


O que é XPath?
XPath é uma linguagem de consulta usada para selecionar os dados a partir de fontes de dados XML. é cada vez mais comum para aplicações web para usar arquivos de dados XML no back-end, usando XPath para realizar consultas SQL muito o mesmo modo seria usado contra um banco de dados relacional.
XPath injeção, bem como injeção de SQL, existe quando um usuário malicioso pode inserir o código XPath arbitrária nos campos de formulário e parâmetros URL de consulta, a fim de injetar este código diretamente no mecanismo de avaliação de consulta XPath. Fazer isso seria permitir que um usuário malicioso para ignorar a autenticação
(se um sistema de autenticação baseado em XML é usado) ou para acessar dados restritos da fonte de dados XML.

Permite aprender com a ajuda de exemplos que mostram como
obras em XPath, Vamos supor que nosso banco de dados é representado pelo seguinte arquivo XML:

<?xml version="1.0" encoding="ISO-8859-1"?>
<users>
<user>
<username>
cyber-gamers</username>
<password>
123</password>
<account>admin</account>
</user>
<user>
<username>cutler</username>
<password>jay</password>
<account>guest</account>
</user>
<user>
<username>ronie</username>
<password>coleman</password>
<account>guest</account>
</user>
</users>





O show código acima como detalhes de contas de usuário, senha e do usuário armazenadas no arquivo XML.

Após consulta XPath é usado para retorna a conta cujo nome é "cyber-gamers" ea senha é "123":,

string(//user[username/text()=gandalf' and password/text()='!c3]/account/text())




Se o desenvolvedor do aplicativo não entrada do usuário adequadamente filtro, o testador ou hacker será facilmente capaz de injetar código XPath e interferir com o resultado da consulta. Por exemplo, o hacker ou testador poderia introduzir os seguintes valores:

Username: ' or '1' = '1
Password: ' or '1' = '1





Usando esses parâmetros acima, a consulta torna-se:

string(//user[username/text()=' or '1' = '1' and password/text()='' or '1' = '1]/account/text())




Como na maioria dos ataques comuns de injeção de SQL, criamos uma consulta que sempre é avaliada como verdadeira, o que significa que o aplicativo irá autenticar o usuário, mesmo que um nome de usuário ou senha não foram fornecidos.

E, como em um ataque comum de SQL Injection, com XPath injeção, o primeiro passo é inserir um apóstrofo (') no campo a ser testado, introduzindo um erro de sintaxe na consulta, e para verificar se o aplicativo retorna uma mensagem de erro .

Se não há conhecimento sobre os detalhes XML de dados internos e se o aplicativo não fornece mensagens de erro úteis que nos ajudam a reconstituir a sua lógica interna, é possível executar um ataque de injeção de Blind

XPath (eu vou explicar isso outro dia), cujo objetivo é reconstruir a estrutura de dados inteiro. A técnica é semelhante à SQL Injection inferência baseada, como a abordagem é injetar código que cria uma consulta que retorna um bit de informação.
Então é isso Bye....

Share this post


Link to post
Share on other sites
antiblock
Rodnia | Alpha & Omega

Muito bom, um bom começo para adequirir conhecimentos acerca da linguagem que é falada ao longo do toturial, e sobre o assunto que é referido no titulo.Parabens.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this