DNATech :: 🚨 Falha de Segurança Crítica no TOTVS Microsiga Protheus
_Créditos das imagens: ChatGPT
# 🚨 Falha de Segurança Crítica no TOTVS Microsiga Protheus
Recentemente, durante um teste em ambiente controlado, identifiquei uma vulnerabilidade grave no **TOTVS Microsiga Protheus**: é possível obter **qualquer arquivo armazenado no servidor** diretamente a partir do cliente.
Essa falha expõe informações sensíveis, como configurações, certificados e até logs internos do sistema — um prato cheio para invasores 👾.
---
## 🔬 A Demonstração
Para deixar tudo claro e seguro, executei os testes dentro do **Windows Sandbox** 🛡️, garantindo isolamento total do ambiente.
Além disso, utilizei uma camada extra com **integração em IA** 🤖.
Ela não é necessária para explorar a falha, mas ajuda a tornar a apresentação mais interessante e a proteger os processos vulneráveis de exposição direta 🔒.
Outro detalhe: como utilizo o **tema escuro no Protheus** 🌑, forcei o modo dark também no navegador Edge 🌐, via configuração:
```text
edge://flags/#enable-force-dark
```
---
## 📂 Arquivos Obtidos
Durante a exploração, foi possível acessar os seguintes arquivos:
* `totvs_microsiga_protheus.falha.de.seguranca.md`
* `error.log`
* `appserver.ini` → que, por sua vez, deu acesso a:
* `totvs_certificate.crt`
* `dbaccess.ini`
Ou seja: arquivos críticos de configuração e até certificados de segurança ficaram expostos 😱.
---
## 🧩 O Código da POC
Um dos trechos usados para interagir com a IA e buscar arquivos foi este:
```xBase
#PRAGMA @__BEGINPROMPT@
Encontre e abra o arquivo appserver.ini
#PRAGMA @__ENDPROMPT@
cUserPrompt:=DNATechPlayTools():GetUserPrompt()
oTMCPAgent:=TMCPAgent():New(;
"search_and_open_file";
,dna.tech.MCPFileFindAndOpen():GetPrompt();
,dna.tech.MCPFileFindAndOpen():GetPurpose();
)
cToolName:="search_and_open_file"
cToolDesc:="Tool for search and open files"
oFindFilesTool:=oTMCPAgent:AddTool(;
cToolName;
,cToolDesc;
,{;
|jParam|;
oTMCPAgent:CallBackTool(;
jParam;
,{;
|oTMCPAgent,jParam|;
dna.tech.MCPFileFindAndOpen():OpenFile(;
oTMCPAgent;
,jParam;
);
};
);
};
)
jSchema:=JSONObject():New()
jSchema["filePath"]:="File Name"
oFindFilesTool:SetMemberData("jInputSchema",jSchema)
cLLMURL:="http://192.168.1.141:11435/v1/chat/completions/"
oHTTPConnector:=TFWRestHTTPConnector():New(cLLMURL)
cLLMModel:=if(;
.T.;
,"mungert/qwen2.5-7b-instruct-1m";
,"gemma-3-4b-it";
)
oTLMStudio:=TLMStudio():New(;
cLLMModel;
,cLLMURL;
,oHTTPConnector;
)
oTLMStudio:AddAgent(oTMCPAgent)
oTLMStudio:Send(cUserPrompt)
```
Esse fluxo simples demonstra como é possível **navegar e abrir arquivos sensíveis no servidor**.
---
## ⚠️ Conclusão
A vulnerabilidade mostra que **qualquer cliente conectado ao Protheus pode acessar arquivos internos do servidor**, o que representa um risco gigantesco de:
* **Exposição de credenciais**
* **Roubo de certificados**
* **Manipulação de logs e configurações**
---
## 🛡️ Recomendações
* Revisar permissões de acesso no servidor Protheus.
* Isolar os diretórios de configuração e certificados.
* Aplicar hardening imediato nos ambientes de produção.
* Pressionar a TOTVS por uma correção oficial.
---
🔒 **Segurança não é opcional.** Uma brecha como essa pode comprometer toda a operação de uma empresa.
---
🔒 **Nota de Segurança**
Por motivos óbvios, não é possível compartilhar de forma pública ou individual os detalhes técnicos utilizados na exploração demonstrada. O importante é destacar que **não houve uso de acessos externos, scripts ou ferramentas especiais**. Toda a prova de conceito foi realizada apenas com **funções padrão do próprio sistema**.
--
#SegurancaDaInformacao #CyberSecurity #ERP #Protheus #TOTVS #Vulnerabilidade #DataProtection #LGPD #InfoSec #Governanca
Comentários
Postar um comentário