Jira & Confluence
Reading time: 4 minutes
tip
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
Proverite privilegije
U Jiri, privilegije se mogu proveriti od strane bilo kog korisnika, autentifikovanog ili ne, putem krajnjih tačaka /rest/api/2/mypermissions
ili /rest/api/3/mypermissions
. Ove krajnje tačke otkrivaju trenutne privilegije korisnika. Značajna zabrinutost se javlja kada neautentifikovani korisnici imaju privilegije, što ukazuje na bezbednosnu ranjivost koja bi mogla biti podobna za nagradu. Slično tome, neočekivane privilegije za autentifikovane korisnike takođe ističu ranjivost.
Važna ažuriranja su izvršena 1. februara 2019., zahtevajući da 'mypermissions' krajnja tačka uključuje 'permission' parametar. Ovaj zahtev ima za cilj da poboljša bezbednost preciziranjem privilegija koje se pretražuju: proverite ovde
- 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
Primer: https://your-domain.atlassian.net/rest/api/2/mypermissions?permissions=BROWSE_PROJECTS,CREATE_ISSUES,ADMINISTER_PROJECTS
#Check non-authenticated privileges
curl https://jira.some.example.com/rest/api/2/mypermissions | jq | grep -iB6 '"havePermission": true'
Automatizovana enumeracija
Atlasian dodaci
Kao što je navedeno u ovom blogu, u dokumentaciji o modulima dodataka ↗ moguće je proveriti različite tipove dodataka, kao što su:
- REST modul dodatka ↗: Izložite RESTful API krajnje tačke
- Servlet modul dodatka ↗: Implementirajte Java servlete kao deo dodatka
- Makro modul dodatka ↗: Implementirajte Confluence makroe, tj. parametarske HTML šablone
Ovo je primer tipa makro dodatka:
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; }
}
Moguće je primetiti da bi ovi dodaci mogli biti ranjivi na uobičajene web ranjivosti poput XSS. Na primer, prethodni primer je ranjiv jer reflektuje podatke koje je dao korisnik.
Kada se pronađe XSS, u ovom github repozitorijumu možete pronaći neke payload-ove za povećanje uticaja XSS-a.
Backdoor Plugin
Ova objava opisuje različite (maliciozne) radnje koje bi mogao izvršiti maliciozni Jira dodatak. Možete pronaći primer koda u ovom repozitorijumu.
Ovo su neke od radnji koje bi maliciozni dodatak mogao izvršiti:
- Skrivanje dodataka od administratora: Moguće je sakriti maliciozni dodatak injektovanjem nekog front-end javascript-a.
- Ekstrakcija priloga i stranica: Omogućava pristup i ekstrakciju svih podataka.
- Krađa sesion tokena: Dodajte endpoint koji će echo-ovati zaglavlja u odgovoru (sa kolačićem) i neki javascript koji će kontaktirati taj endpoint i otkriti kolačiće.
- Izvršavanje komandi: Naravno, moguće je kreirati dodatak koji će izvršavati kod.
- Obrnuta ljuska: Ili dobiti obrnutu ljusku.
- DOM proksiranje: Ako je Confluence unutar privatne mreže, bilo bi moguće uspostaviti vezu kroz pregledač nekog korisnika koji ima pristup i, na primer, kontaktirati server za izvršavanje komandi kroz njega.
tip
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.