
CLI em Python que explora a CVE-2026-48907 no Joomla JCE por meio de upload de importação de perfil, verifica caminhos de shell e abre um canal de comando interativo em alvos autorizados.
E.L.V — Exploit Loader & Vulnerability Firmware
Utilitário de pesquisa em cibersegurança para avaliação de vulnerabilidades autorizada.
O E.L.V CVE Research & Assessment Framework é um utilitário de linha de comando baseado em Python destinado a pesquisa de segurança controlada e avaliação de vulnerabilidades autorizada.
A implementação fornecida contém funcionalidades para:
O código-fonte atual identifica seu alvo de pesquisa como:
CVE-2026-48907 Joomla! JCE Extension < 2.9.99.5 Unauthenticated RCE
Essa alegação de CVE/produto é metadado fornecido pelo código-fonte e não foi verificada de forma independente por este README. Antes de publicar uma alegação de segurança, valide o identificador, as versões afetadas, o aviso, o componente afetado e as informações de remediação junto a uma fonte confiável de fornecedor/CVE.
Este projeto interage com aplicações web remotas e a implementação fornecida inclui funcionalidade destinada a enviar um payload personalizado do lado do servidor e comunicar-se com um shell enviado.
Use-o apenas contra sistemas para os quais você possui autorização explícita.
Não use este projeto para:
Para um laboratório seguro, use um ambiente isolado de VM/contêiner local ou um alvo de treinamento deliberadamente vulnerável.
| Campo | Valor |
|---|---|
| Projeto | E.L.V CVE Research & Assessment Framework |
| Autor / Engine | HxN / E.L.V |
| Versão | 1.0.0 |
| Linguagem | Python |
| Plataforma | Sistemas *nix / Unix-like |
| Licença | GNU GPL v3 |
| Interface | Linha de comando |
| Cliente HTTP | requests |
| Concorrência | ThreadPoolExecutor |
| Propósito Principal | Pesquisa e avaliação de segurança autorizada |
O código-fonte fornecido elv-cve.py contém os seguintes componentes principais.
O script lê um arquivo local fornecido através da opção --shell.
O código-fonte descreve isso como um arquivo de shell/uploader personalizado e encerra quando o arquivo especificado não pode ser lido.
O programa suporta dois modos de alvo mutuamente exclusivos:
Para cada alvo, o script realiza uma requisição GET contra a raiz do alvo e espera uma resposta HTTP 200 antes de continuar.
A implementação procura no HTML retornado um valor relacionado a CSRF usando expressões regulares.
Dois padrões estão atualmente implementados.
O script constrói uma requisição de upload multipart contra:```text /index.php?option=com_jce
A solicitação inclui a tarefa de importação de perfil e o token extraído.
### 6. Verificação do caminho candidato
Após a solicitação de upload, o programa verifica vários locais possíveis para o arquivo resultante.
O código-fonte atual contém estes caminhos candidatos:```text
/tmp/
/images/
/images/stories/
/media/
Para um único alvo, o programa atual invoca uma interface de comando interativa quando reporta um caminho de shell carregado com sucesso.
A fonte envia comandos usando parâmetros POST nomeados:```text cmd c
Como essa funcionalidade pode resultar em execução remota de comandos, ela deve ser restrita a ambientes isolados e explicitamente autorizados.
### 8. Processamento de múltiplos alvos
Quando um arquivo de alvos é fornecido, o programa usa um `ThreadPoolExecutor` e processa os alvos simultaneamente.
A contagem padrão de threads no código-fonte é:```text
10
Em alto nível, a implementação atual segue este fluxo:```text Start │ ├── Parse command-line arguments │ ├── Load local payload file │ ├── Load one target OR target list │ ├── Create ELV_CVE output directory │ ├── Target processing │ │ │ ├── GET target │ ├── Check HTTP response │ ├── Extract token │ ├── Submit profile-import request │ ├── Check candidate file paths │ └── Record result │ └── Write results / display summary
---
## Requisitos
A fonte fornecida importa:
- Módulos da biblioteca padrão do Python:
- `random`
- `re`
- `time`
- `argparse`
- `sys`
- `os`
- `json`
- `threading`
- `concurrent.futures`
- Módulos de terceiros:
- `requests`
- `urllib3`
Uma instalação mínima de dependências é, portanto:```bash
python3 -m pip install requests urllib3
Para implantações reproduzíveis, fixe as dependências em um arquivo requirements.txt.
Exemplo:```text requests urllib3
---
## Instalação
Clone ou copie o projeto para um ambiente de avaliação isolado.
Exemplo:```bash
git clone <YOUR-REPOSITORY-URL>
cd <YOUR-REPOSITORY-DIRECTORY>
Crie um ambiente virtual:```bash python3 -m venv .venv
Ative-o:```bash
source .venv/bin/activate
Instale as dependências:```bash python3 -m pip install -r requirements.txt
Verifique o Python:```bash
python3 --version
Verifique a dependência:```bash python3 -c "import requests, urllib3; print('Dependencies OK')"
> Substitua `<YOUR-REPOSITORY-URL>` e `<YOUR-REPOSITORY-DIRECTORY>` pelos valores usados pelo seu repositório.
---
## Interface de Linha de Comando
A fonte define as seguintes opções de linha de comando.