Translated ['network-services-pentesting/8009-pentesting-apache-jserv-pr

This commit is contained in:
Translator 2024-12-12 18:37:37 +00:00
parent 31d14b2558
commit 9712cc5b9d
6 changed files with 46 additions and 49 deletions

View file

@ -1,46 +1,46 @@
# 8009 - Pentesting Apache JServ Protocol (AJP)
{% hint style="success" %}
Learn & practice AWS Hacking:<img src="../.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="../.gitbook/assets/arte.png" alt="" data-size="line">\
Learn & practice GCP Hacking: <img src="../.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="../.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
Aprenda e pratique Hacking AWS:<img src="../.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="../.gitbook/assets/arte.png" alt="" data-size="line">\
Aprenda e pratique Hacking GCP: <img src="../.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="../.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Support HackTricks</summary>
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**.**
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
* Confira os [**planos de assinatura**](https://github.com/sponsors/carlospolop)!
* **Junte-se ao** 💬 [**grupo do Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga**-nos no **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**.**
* **Compartilhe truques de hacking enviando PRs para os repositórios do** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
</details>
{% endhint %}
<figure><img src="../.gitbook/assets/image (3).png" alt=""><figcaption></figcaption></figure>
Join [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) server to communicate with experienced hackers and bug bounty hunters!
Junte-se ao [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) para se comunicar com hackers experientes e caçadores de bugs!
**Hacking Insights**\
Engage with content that delves into the thrill and challenges of hacking
**Insights de Hacking**\
Engaje-se com conteúdo que mergulha na emoção e nos desafios do hacking
**Real-Time Hack News**\
Keep up-to-date with fast-paced hacking world through real-time news and insights
**Notícias de Hacking em Tempo Real**\
Mantenha-se atualizado com o mundo acelerado do hacking através de notícias e insights em tempo real
**Latest Announcements**\
Stay informed with the newest bug bounties launching and crucial platform updates
**Últimos Anúncios**\
Fique informado sobre as novas recompensas de bugs lançadas e atualizações cruciais da plataforma
**Join us on** [**Discord**](https://discord.com/invite/N3FrSbmwdy) and start collaborating with top hackers today!
**Junte-se a nós no** [**Discord**](https://discord.com/invite/N3FrSbmwdy) e comece a colaborar com os melhores hackers hoje!
## Basic Information
## Informações Básicas
From [https://diablohorn.com/2011/10/19/8009-the-forgotten-tomcat-port/](https://diablohorn.com/2011/10/19/8009-the-forgotten-tomcat-port/)
De [https://diablohorn.com/2011/10/19/8009-the-forgotten-tomcat-port/](https://diablohorn.com/2011/10/19/8009-the-forgotten-tomcat-port/)
> AJP é um protocolo de rede. É uma versão otimizada do protocolo HTTP para permitir que um servidor web autônomo, como o [Apache](http://httpd.apache.org/), se comunique com o Tomcat. Historicamente, o Apache tem sido muito mais rápido que o Tomcat ao servir conteúdo estático. A ideia é permitir que o Apache sirva o conteúdo estático sempre que possível, mas faça proxy da solicitação para o Tomcat para conteúdo relacionado ao Tomcat.
Also interesting:
Também interessante:
> O protocolo ajp13 é orientado a pacotes. Um formato binário foi presumivelmente escolhido em vez do texto simples mais legível por razões de desempenho. O servidor web se comunica com o contêiner de servlets por meio de conexões TCP. Para reduzir o caro processo de criação de soquetes, o servidor web tentará manter conexões TCP persistentes com o contêiner de servlets e reutilizar uma conexão para múltiplos ciclos de solicitação/resposta.
**Default port:** 8009
**Porta padrão:** 8009
```
PORT STATE SERVICE
8009/tcp open ajp13
@ -117,13 +117,13 @@ Também é possível usar um **proxy Apache AJP** para acessar essa porta em vez
Junte-se ao [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) para se comunicar com hackers experientes e caçadores de bugs!
**Insights de Hacking**\
Engaje-se com conteúdo que explora a emoção e os desafios do hacking
Engaje-se com conteúdo que mergulha na emoção e nos desafios do hacking
**Notícias de Hack em Tempo Real**\
Mantenha-se atualizado com o mundo acelerado do hacking através de notícias e insights em tempo real
Mantenha-se atualizado com o mundo do hacking em ritmo acelerado através de notícias e insights em tempo real
**Últimos Anúncios**\
Fique informado sobre os novos programas de recompensas por bugs lançados e atualizações cruciais da plataforma
Fique informado sobre as novas recompensas de bugs que estão sendo lançadas e atualizações cruciais da plataforma
**Junte-se a nós no** [**Discord**](https://discord.com/invite/N3FrSbmwdy) e comece a colaborar com os melhores hackers hoje!
@ -131,7 +131,6 @@ Fique informado sobre os novos programas de recompensas por bugs lançados e atu
Aprenda e pratique Hacking AWS:<img src="../.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="../.gitbook/assets/arte.png" alt="" data-size="line">\
Aprenda e pratique Hacking GCP: <img src="../.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="../.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Support HackTricks</summary>

View file

@ -15,7 +15,6 @@ Learn & practice GCP Hacking: <img src="../.gitbook/assets/grte.png" alt="" data
</details>
{% endhint %}
## **Informações Básicas**
* Ferramenta de análise de logs usada para coleta, análise e visualização de dados
@ -119,7 +118,7 @@ pty.spawn('/bin/bash')
```
### RCE & Escalação de Privilégios
Na página seguinte, você pode encontrar uma explicação de como este serviço pode ser abusado para escalar privilégios e obter persistência:
Na página a seguir, você pode encontrar uma explicação de como este serviço pode ser abusado para escalar privilégios e obter persistência:
{% content-ref url="../linux-hardening/privilege-escalation/splunk-lpe-and-persistence.md" %}
[splunk-lpe-and-persistence.md](../linux-hardening/privilege-escalation/splunk-lpe-and-persistence.md)

View file

@ -88,7 +88,7 @@ password: PA$$W0RD!Z
Servidores POP com a configuração **`auth_debug`** habilitada aumentarão os logs gerados. No entanto, se **`auth_debug_passwords`** ou **`auth_verbose_passwords`** estiverem definidos como **`true`**, as senhas também podem ser registradas em texto claro nesses logs.&#x20;
## HackTricks Comandos Automáticos
## Comandos Automáticos HackTricks
```
Protocol_Name: POP #Protocol Abbreviation if there is one.
Port_Number: 110 #Comma separated if there is more than one.
@ -135,7 +135,7 @@ Aprenda e pratique Hacking GCP: <img src="../.gitbook/assets/grte.png" alt="" da
<details>
<summary>Support HackTricks</summary>
<summary>Supporte o HackTricks</summary>
* Confira os [**planos de assinatura**](https://github.com/sponsors/carlospolop)!
* **Junte-se ao** 💬 [**grupo do Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga**-nos no **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**.**

View file

@ -85,7 +85,7 @@ Se você tiver acesso ao console da web do Drupal, verifique estas opções para
## De XSS a RCE
* [**Drupalwned**](https://github.com/nowak0x01/Drupalwned): Script de Exploração do Drupal que **eleva XSS a RCE ou Outras Vulnerabilidades Críticas.** Para mais informações, consulte [**este post**](https://nowak0x01.github.io/papers/76bc0832a8f682a7e0ed921627f85d1d.html). Ele fornece **suporte para as versões do Drupal 7.X.X, 8.X.X, 9.X.X e 10.X.X, e permite:**
* [**Drupalwned**](https://github.com/nowak0x01/Drupalwned): Script de Exploração do Drupal que **eleva XSS a RCE ou Outras Vulnerabilidades Críticas.** Para mais informações, consulte [**este post**](https://nowak0x01.github.io/papers/76bc0832a8f682a7e0ed921627f85d1d.html). Ele fornece **suporte para as Versões do Drupal 7.X.X, 8.X.X, 9.X.X e 10.X.X, e permite:**
* _**Escalação de Privilégios:**_ Cria um usuário administrativo no Drupal.
* _**(RCE) Carregar Template:**_ Carrega templates personalizados com backdoor para o Drupal.
@ -113,14 +113,13 @@ mysql -u drupaluser --password='2r9u8hu23t532erew' -e 'use drupal; select * from
Aprenda e pratique Hacking AWS:<img src="../../../.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="../../../.gitbook/assets/arte.png" alt="" data-size="line">\
Aprenda e pratique Hacking GCP: <img src="../../../.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="../../../.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Support HackTricks</summary>
<summary>Supporte o HackTricks</summary>
* Confira os [**planos de assinatura**](https://github.com/sponsors/carlospolop)!
* **Junte-se ao** 💬 [**grupo do Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga**-nos no **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**.**
* **Compartilhe 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.
* **Compartilhe truques de hacking enviando PRs para os repositórios do** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
</details>
{% endhint %}

View file

@ -1,16 +1,16 @@
# Drupal RCE
{% hint style="success" %}
Aprenda e pratique Hacking AWS:<img src="../../../.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="../../../.gitbook/assets/arte.png" alt="" data-size="line">\
Aprenda e pratique Hacking GCP: <img src="../../../.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="../../../.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
Learn & practice AWS Hacking:<img src="../../../.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="../../../.gitbook/assets/arte.png" alt="" data-size="line">\
Learn & practice GCP Hacking: <img src="../../../.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="../../../.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Support HackTricks</summary>
* Confira os [**planos de assinatura**](https://github.com/sponsors/carlospolop)!
* **Junte-se ao** 💬 [**grupo do Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga**-nos no **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**.**
* **Compartilhe truques de hacking enviando PRs para os repositórios do** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks_live)**.**
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
</details>
{% endhint %}
@ -34,7 +34,7 @@ curl http://drupal.local/node/3
Nas versões atuais, não é mais possível instalar plugins apenas tendo acesso à web após a instalação padrão.
{% endhint %}
A partir da versão **8**, o **[PHP Filter](https://www.drupal.org/project/php/releases/8.x-1.1)** **não é instalado por padrão**. Para aproveitar essa funcionalidade, teríamos que **instalar o módulo nós mesmos**.
A partir da versão **8**, o [**PHP Filter**](https://www.drupal.org/project/php/releases/8.x-1.1) **não é instalado por padrão**. Para aproveitar essa funcionalidade, teríamos que **instalar o módulo nós mesmos**.
1. Baixe a versão mais recente do módulo no site do Drupal.
1. `wget https://ftp.drupal.org/files/projects/php-8.x-1.1.tar.gz`
@ -48,7 +48,7 @@ A partir da versão **8**, o **[PHP Filter](https://www.drupal.org/project/php/r
Nas versões atuais, não é mais possível instalar plugins apenas tendo acesso à web após a instalação padrão.
{% endhint %}
Era possível **baixar** um **módulo**, adicionar um **backdoor** a ele e **instalá-lo**. Por exemplo, baixando o módulo **[Trurnstile](https://www.drupal.org/project/turnstile)** em formato comprimido, criando um novo arquivo de backdoor PHP dentro dele, permitindo o acesso ao arquivo PHP com um arquivo `.htaccess`:
Era possível **baixar** um **módulo**, adicionar um **backdoor** a ele e **instalá-lo**. Por exemplo, baixando o módulo [**Trurnstile**](https://www.drupal.org/project/turnstile) em formato comprimido, criando um novo arquivo de backdoor PHP dentro dele, permitindo o acesso ao arquivo PHP com um arquivo `.htaccess`:
```html
<IfModule mod_rewrite.c>
RewriteEngine On
@ -57,7 +57,7 @@ RewriteBase /
```
E então indo para **`http://drupal.local/admin/modules/install`** para instalar o módulo com backdoor e acessar **`/modules/turnstile/back.php`** para executá-lo.
## Backdooring Drupal com sincronização de configuração <a href="#backdooring-drupal" id="backdooring-drupal"></a>
## Backdooring Drupal com Sincronização de Configuração <a href="#backdooring-drupal" id="backdooring-drupal"></a>
**Post compartilhado por** [**Coiffeur0x90**](https://twitter.com/Coiffeur0x90)
@ -75,16 +75,16 @@ Após a ativação:
<figure><img src="../../../.gitbook/assets/image (2) (1) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
### Parte 2 (aproveitando o recurso _Configuração de sincronização_) <a href="#part-2-leveraging-feature-configuration-synchronization" id="part-2-leveraging-feature-configuration-synchronization"></a>
### Parte 2 (aproveitando a funcionalidade _Sincronização de Configuração_) <a href="#part-2-leveraging-feature-configuration-synchronization" id="part-2-leveraging-feature-configuration-synchronization"></a>
Vamos aproveitar o recurso _Configuração de sincronização_ para despejar (exportar) e fazer upload (importar) entradas de configuração do Drupal:
Vamos aproveitar a funcionalidade _Sincronização de Configuração_ para despejar (exportar) e fazer upload (importar) entradas de configuração do Drupal:
* /admin/config/development/configuration/single/export
* /admin/config/development/configuration/single/import
**Patch system.file.yml**
Vamos começar fazendo patch na primeira entrada `allow_insecure_uploads` de:
Vamos começar patchando a primeira entrada `allow_insecure_uploads` de:
Arquivo: system.file.yml
```
@ -114,7 +114,7 @@ allow_insecure_uploads: true
**Patch field.field.media.document.field\_media\_document.yml**
Em seguida, aplique o patch na segunda entrada `file_extensions` de:
Em seguida, aplique o patch na segunda entrada `file_extensions` de:
Arquivo: field.field.media.document.field\_media\_document.yml
```
@ -247,6 +247,7 @@ Obrigado por dedicar seu tempo para ler este artigo, espero que ele ajude você
Learn & practice AWS Hacking:<img src="../../../.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="../../../.gitbook/assets/arte.png" alt="" data-size="line">\
Learn & practice GCP Hacking: <img src="../../../.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="../../../.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Support HackTricks</summary>

View file

@ -69,10 +69,10 @@ Uma expressão SSI típica tem o seguinte formato:
```
## Edge Side Inclusion
Há um problema **de cache de informações ou aplicações dinâmicas**, pois parte do conteúdo pode ter **variado** para a próxima vez que o conteúdo for recuperado. É para isso que o **ESI** é usado, para indicar usando tags ESI o **conteúdo dinâmico que precisa ser gerado** antes de enviar a versão em cache.\
Se um **atacante** conseguir **injetar uma tag ESI** dentro do conteúdo em cache, então, ele poderá **injetar conteúdo arbitrário** no documento antes que ele seja enviado aos usuários.
Há um problema **com o cache de informações ou aplicações dinâmicas**, pois parte do conteúdo pode ter **variado** na próxima vez que o conteúdo for recuperado. É para isso que o **ESI** é usado, para indicar usando tags ESI o **conteúdo dinâmico que precisa ser gerado** antes de enviar a versão em cache.\
Se um **atacante** conseguir **injetar uma tag ESI** dentro do conteúdo em cache, então, ele poderá **injetar conteúdo arbitrário** no documento antes que seja enviado aos usuários.
### ESI Detection
### Detecção de ESI
O seguinte **cabeçalho** em uma resposta do servidor significa que o servidor está usando ESI:
```
@ -107,17 +107,17 @@ hell<!--esi-->o
* **Includes**: Suporta a diretiva `<esi:includes>`
* **Vars**: Suporta a diretiva `<esi:vars>`. Útil para contornar Filtros XSS
* **Cookie**: Cookies do documento são acessíveis ao mecanismo ESI
* **Cabeçalhos Upstream Necessários**: Aplicações substitutas não processarão declarações ESI a menos que a aplicação upstream forneça os cabeçalhos
* **Cabeçalhos Upstream Necessários**: Aplicações de substituição não processarão declarações ESI a menos que a aplicação upstream forneça os cabeçalhos
* **Lista de Permissão de Hosts**: Neste caso, inclusões ESI só são possíveis a partir de hosts de servidor permitidos, tornando SSRF, por exemplo, apenas possível contra esses hosts
| **Software** | **Includes** | **Vars** | **Cookies** | **Cabeçalhos Upstream Necessários** | **Lista de Permissão de Hosts** |
| :--------------------------: | :----------: | :------: | :---------: | :-------------------------------: | :-----------------------------: |
| Squid3 | Sim | Sim | Sim | Sim | Não |
| Varnish Cache | Sim | Não | Não | Sim | Sim |
| Fastly | Sim | Não | Não | Não | Sim |
| Varnish Cache | Sim | Não | Não | Sim | Sim |
| Fastly | Sim | Não | Não | Não | Sim |
| Akamai ESI Test Server (ETS) | Sim | Sim | Sim | Não | Não |
| NodeJS esi | Sim | Sim | Sim | Não | Não |
| NodeJS nodesi | Sim | Não | Não | Não | Opcional |
| NodeJS nodesi | Sim | Não | Não | Não | Opcional |
#### XSS
@ -220,7 +220,6 @@ Verifique a página XSLT:
[xslt-server-side-injection-extensible-stylesheet-language-transformations.md](xslt-server-side-injection-extensible-stylesheet-language-transformations.md)
{% endcontent-ref %}
### Referências
* [https://www.gosecure.net/blog/2018/04/03/beyond-xss-edge-side-include-injection/](https://www.gosecure.net/blog/2018/04/03/beyond-xss-edge-side-include-injection/)