mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-23 05:03:35 +00:00
151 lines
8.3 KiB
Markdown
151 lines
8.3 KiB
Markdown
# Jira & Confluence
|
|
|
|
{% 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)
|
|
|
|
<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.
|
|
|
|
</details>
|
|
{% endhint %}
|
|
|
|
<figure><img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
If you are interested in **hacking career** and hack the unhackable - **we are hiring!** (_wymagana biegła znajomość języka polskiego w mowie i piśmie_).
|
|
|
|
{% embed url="https://www.stmcyber.com/careers" %}
|
|
|
|
## Sprawdź uprawnienia
|
|
|
|
W Jira, **uprawnienia mogą być sprawdzane** przez każdego użytkownika, uwierzytelnionego lub nie, za pośrednictwem punktów końcowych `/rest/api/2/mypermissions` lub `/rest/api/3/mypermissions`. Te punkty końcowe ujawniają aktualne uprawnienia użytkownika. Szczególną obawą jest sytuacja, gdy **użytkownicy nieautoryzowani posiadają uprawnienia**, co wskazuje na **lukę w zabezpieczeniach**, która może kwalifikować się do **nagrody**. Podobnie, **nieoczekiwane uprawnienia dla użytkowników uwierzytelnionych** również podkreślają **lukę**.
|
|
|
|
Ważna **aktualizacja** miała miejsce **1 lutego 2019**, wymagając, aby punkt końcowy 'mypermissions' zawierał **parametr 'permission'**. Wymóg ten ma na celu **zwiększenie bezpieczeństwa** poprzez określenie uprawnień, które są sprawdzane: [sprawdź to tutaj](https://developer.atlassian.com/cloud/jira/platform/change-notice-get-my-permissions-requires-permissions-query-parameter/#change-notice---get-my-permissions-resource-will-require-a-permissions-query-parameter)
|
|
|
|
* ADD\_COMMENTS
|
|
* ADMINISTER
|
|
* ADMINISTER\_PROJECTS
|
|
* ASSIGNABLE\_USER
|
|
* ASSIGN\_ISSUES
|
|
* BROWSE\_PROJECTS
|
|
* BULK\_CHANGE
|
|
* CLOSE\_ISSUES
|
|
* CREATE\_ATTACHMENTS
|
|
* CREATE\_ISSUES
|
|
* CREATE\_PROJECT
|
|
* CREATE\_SHARED\_OBJECTS
|
|
* DELETE\_ALL\_ATTACHMENTS
|
|
* DELETE\_ALL\_COMMENTS
|
|
* DELETE\_ALL\_WORKLOGS
|
|
* DELETE\_ISSUES
|
|
* DELETE\_OWN\_ATTACHMENTS
|
|
* DELETE\_OWN\_COMMENTS
|
|
* DELETE\_OWN\_WORKLOGS
|
|
* EDIT\_ALL\_COMMENTS
|
|
* EDIT\_ALL\_WORKLOGS
|
|
* EDIT\_ISSUES
|
|
* EDIT\_OWN\_COMMENTS
|
|
* EDIT\_OWN\_WORKLOGS
|
|
* LINK\_ISSUES
|
|
* MANAGE\_GROUP\_FILTER\_SUBSCRIPTIONS
|
|
* MANAGE\_SPRINTS\_PERMISSION
|
|
* MANAGE\_WATCHERS
|
|
* MODIFY\_REPORTER
|
|
* MOVE\_ISSUES
|
|
* RESOLVE\_ISSUES
|
|
* SCHEDULE\_ISSUES
|
|
* SET\_ISSUE\_SECURITY
|
|
* SYSTEM\_ADMIN
|
|
* TRANSITION\_ISSUES
|
|
* USER\_PICKER
|
|
* VIEW\_AGGREGATED\_DATA
|
|
* VIEW\_DEV\_TOOLS
|
|
* VIEW\_READONLY\_WORKFLOW
|
|
* VIEW\_VOTERS\_AND\_WATCHERS
|
|
* WORK\_ON\_ISSUES
|
|
|
|
Przykład: `https://your-domain.atlassian.net/rest/api/2/mypermissions?permissions=BROWSE_PROJECTS,CREATE_ISSUES,ADMINISTER_PROJECTS`
|
|
```bash
|
|
#Check non-authenticated privileges
|
|
curl https://jira.some.example.com/rest/api/2/mypermissions | jq | grep -iB6 '"havePermission": true'
|
|
```
|
|
## Automatyczna enumeracja
|
|
|
|
* [https://github.com/0x48piraj/Jiraffe](https://github.com/0x48piraj/Jiraffe)
|
|
* [https://github.com/bcoles/jira\_scan](https://github.com/bcoles/jira\_scan)
|
|
|
|
## Wtyczki Atlassian
|
|
|
|
Jak wskazano w tym [**blogu**](https://cyllective.com/blog/posts/atlassian-audit-plugins), w dokumentacji dotyczącej [Modułów wtyczek ↗](https://developer.atlassian.com/server/framework/atlassian-sdk/plugin-modules/) można sprawdzić różne typy wtyczek, takie jak:
|
|
|
|
* [Moduł wtyczki REST ↗](https://developer.atlassian.com/server/framework/atlassian-sdk/rest-plugin-module): Ekspozycja punktów końcowych API RESTful
|
|
* [Moduł wtyczki Servlet ↗](https://developer.atlassian.com/server/framework/atlassian-sdk/servlet-plugin-module/): Wdrażanie serwletów Java jako część wtyczki
|
|
* [Moduł wtyczki Makro ↗](https://developer.atlassian.com/server/confluence/macro-module/): Implementacja Makr Confluence, tj. parametryzowane szablony HTML
|
|
|
|
To jest przykład typu wtyczki makro:
|
|
```java
|
|
package com.atlassian.tutorial.macro;
|
|
|
|
import com.atlassian.confluence.content.render.xhtml.ConversionContext;
|
|
import com.atlassian.confluence.macro.Macro;
|
|
import com.atlassian.confluence.macro.MacroExecutionException;
|
|
|
|
import java.util.Map;
|
|
|
|
public class helloworld implements Macro {
|
|
|
|
public String execute(Map<String, String> map, String body, ConversionContext conversionContext) throws MacroExecutionException {
|
|
if (map.get("Name") != null) {
|
|
return ("<h1>Hello " + map.get("Name") + "!</h1>");
|
|
} else {
|
|
return "<h1>Hello World!<h1>";
|
|
}
|
|
}
|
|
|
|
public BodyType getBodyType() { return BodyType.NONE; }
|
|
|
|
public OutputType getOutputType() { return OutputType.BLOCK; }
|
|
}
|
|
```
|
|
Możliwe jest zaobserwowanie, że te wtyczki mogą być podatne na powszechne luki w zabezpieczeniach, takie jak XSS. Na przykład poprzedni przykład jest podatny, ponieważ odzwierciedla dane podane przez użytkownika. 
|
|
|
|
Gdy znajdziesz XSS, w [**tej repozytorium github**](https://github.com/cyllective/XSS-Payloads/tree/main/Confluence) możesz znaleźć kilka ładunków, aby zwiększyć wpływ XSS.
|
|
|
|
## Wtyczka Backdoor
|
|
|
|
[**Ten post**](https://cyllective.com/blog/posts/atlassian-malicious-plugin) opisuje różne (złośliwe) działania, które może wykonać złośliwa wtyczka Jira. Możesz znaleźć [**przykład kodu w tym repozytorium**](https://github.com/cyllective/malfluence).
|
|
|
|
Oto niektóre z działań, które mogłaby wykonać złośliwa wtyczka:
|
|
|
|
* **Ukrywanie wtyczek przed administratorami**: Możliwe jest ukrycie złośliwej wtyczki, wstrzykując jakiś front-end javascript.
|
|
* **Ekstrakcja załączników i stron**: Umożliwia dostęp i ekstrakcję wszystkich danych.
|
|
* **Kradzież tokenów sesji**: Dodaj punkt końcowy, który odzwierciedli nagłówki w odpowiedzi (z ciasteczkiem) oraz jakiś javascript, który się z nim skontaktuje i wycieknie ciasteczka.
|
|
* **Wykonanie polecenia**: Oczywiście możliwe jest stworzenie wtyczki, która wykona kod.
|
|
* **Reverse Shell**: Lub uzyskanie reverse shell.
|
|
* **Proxy DOM**: Jeśli confluence znajduje się w prywatnej sieci, możliwe byłoby nawiązanie połączenia przez przeglądarkę jakiegoś użytkownika z dostępem do niej i na przykład skontaktowanie się z serwerem, wykonując polecenia przez to.
|
|
|
|
<figure><img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
Jeśli jesteś zainteresowany **karierą w hackingu** i chcesz złamać to, co nie do złamania - **zatrudniamy!** (_wymagana biegła znajomość polskiego w mowie i piśmie_).
|
|
|
|
{% embed url="https://www.stmcyber.com/careers" %}
|
|
|
|
{% hint style="success" %}
|
|
Ucz się i ćwicz 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">\
|
|
Ucz się i ćwicz 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>Wsparcie HackTricks</summary>
|
|
|
|
* Sprawdź [**plany subskrypcyjne**](https://github.com/sponsors/carlospolop)!
|
|
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegram**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
|
* **Dziel się sztuczkami hackingowymi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów github.
|
|
|
|
</details>
|
|
{% endhint %}
|