hacktricks/network-services-pentesting/pentesting-web/jira.md

151 lines
8.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Jira & Confluence
{% hint style="success" %}
AWS Hacking öğrenin ve pratik yapın:<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">\
GCP Hacking öğrenin ve pratik yapın: <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>HackTricks'i Destekleyin</summary>
* [**abonelik planlarını**](https://github.com/sponsors/carlospolop) kontrol edin!
* **💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) katılın ya da **Twitter**'da **bizi takip edin** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Hacking ipuçlarını paylaşmak için** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github reposuna PR gönderin.
</details>
{% endhint %}
<figure><img src="../../.gitbook/assets/image (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
Eğer **hacking kariyeri** ile ilgileniyorsanız ve hacklenemez olanı hacklemek istiyorsanız - **işe alıyoruz!** (_akıcı Lehçe yazılı ve sözlü gereklidir_).
{% embed url="https://www.stmcyber.com/careers" %}
## Yetkileri Kontrol Et
Jira'da, **yetkiler herhangi bir kullanıcı tarafından** doğrulanmış ya da doğrulanmamış olarak `/rest/api/2/mypermissions` veya `/rest/api/3/mypermissions` uç noktaları aracılığıyla kontrol edilebilir. Bu uç noktalar kullanıcının mevcut yetkilerini ortaya koyar. **Doğrulanmamış kullanıcıların yetkilere sahip olması** önemli bir endişe yaratır ve bu, potansiyel olarak bir **güvenlik açığı** için uygun olabilir. Benzer şekilde, **doğrulanmış kullanıcılar için beklenmedik yetkiler** de bir **açığı** vurgular.
**1 Şubat 2019**'da önemli bir **güncelleme** yapıldı ve 'mypermissions' uç noktasının bir **'permission' parametresi** içermesi gerektiği belirtildi. Bu gereklilik, sorgulanan yetkilerin belirtilmesiyle **güvenliği artırmayı** amaçlamaktadır: [buradan kontrol edin](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
Örnek: `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'
```
## Otomatik numaralandırma
* [https://github.com/0x48piraj/Jiraffe](https://github.com/0x48piraj/Jiraffe)
* [https://github.com/bcoles/jira\_scan](https://github.com/bcoles/jira\_scan)
## Atlasian Eklentileri
Bu [**blogda**](https://cyllective.com/blog/posts/atlassian-audit-plugins) belirtildiği gibi, [Eklenti modülleri ↗](https://developer.atlassian.com/server/framework/atlassian-sdk/plugin-modules/) hakkında belgelerde, aşağıdaki gibi farklı eklenti türlerini kontrol etmek mümkündür:
* [REST Eklenti Modülü ↗](https://developer.atlassian.com/server/framework/atlassian-sdk/rest-plugin-module): RESTful API uç noktalarınıığa çıkarır
* [Servlet Eklenti Modülü ↗](https://developer.atlassian.com/server/framework/atlassian-sdk/servlet-plugin-module/): Bir eklenti parçası olarak Java servletlerini dağıtır
* [Makro Eklenti Modülü ↗](https://developer.atlassian.com/server/confluence/macro-module/): Confluence Makrolarını uygular, yani parametreli HTML şablonları
Bu, makro eklenti türüne bir örnektir:
```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; }
}
```
Bu eklentilerin, XSS gibi yaygın web güvenlik açıklarına karşı savunmasız olabileceği gözlemlenebilir. Örneğin, önceki örnek, kullanıcının verdiği verileri yansıttığı için savunmasızdır.&#x20;
Bir XSS bulunduğunda, [**bu github repo**](https://github.com/cyllective/XSS-Payloads/tree/main/Confluence) XSS'nin etkisini artırmak için bazı payload'lar bulabilirsiniz.
## Arka Kapı Eklentisi
[**Bu yazı**](https://cyllective.com/blog/posts/atlassian-malicious-plugin), kötü niyetli bir Jira eklentisinin gerçekleştirebileceği farklı (kötü niyetli) eylemleri tanımlamaktadır. [**Bu repoda kod örneği bulabilirsiniz**](https://github.com/cyllective/malfluence).
Kötü niyetli bir eklentinin gerçekleştirebileceği bazı eylemler şunlardır:
* **Yönetimcilerden Eklentileri Gizleme**: Kötü niyetli eklentiyi bazı ön yüz javascript'i enjekte ederek gizlemek mümkündür.
* **Ekleri ve Sayfaları Sızdırma**: Tüm verilere erişim sağlamak ve sızdırmak.
* **Oturum Token'larını Çalma**: Yanıt içinde başlıkları (çerezle birlikte) yansıtan bir uç nokta eklemek ve bunu iletişim kuracak bazı javascript'ler ekleyerek çerezleri sızdırmak.
* **Komut Çalıştırma**: Elbette, kod çalıştıracak bir eklenti oluşturmak mümkündür.
* **Ters Shell**: Ya da ters bir shell almak.
* **DOM Proxying**: Eğer confluence özel bir ağ içindeyse, buna erişimi olan bir kullanıcının tarayıcısı aracılığıyla bir bağlantı kurmak ve örneğin sunucu komutunu çalıştırmak mümkündür.
<figure><img src="../../.gitbook/assets/image (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
**Hacking kariyeri** ile ilgileniyorsanız ve hacklenemez olanı hacklemek istiyorsanız - **işe alıyoruz!** (_akıcı Lehçe yazılı ve sözlü gereklidir_).
{% embed url="https://www.stmcyber.com/careers" %}
{% hint style="success" %}
AWS Hacking'i öğrenin ve pratik yapın:<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">\
GCP Hacking'i öğrenin ve pratik yapın: <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>HackTricks'i Destekleyin</summary>
* [**abonelik planlarını**](https://github.com/sponsors/carlospolop) kontrol edin!
* **💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) katılın ya da **Twitter'da** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**'ı takip edin.**
* **Hacking ipuçlarını paylaşarak [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repolarına PR gönderin.**
</details>
{% endhint %}