Jira & Confluence

Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks

If you are interested in hacking career and hack the unhackable - we are hiring! (fluent polish written and spoken required).

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 ispituju: 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'

Automated enumeration

Atlasian Plugins

Kao što je navedeno u ovom blogu, u dokumentaciji o Plugin modules ↗ moguće je proveriti različite tipove plugina, kao što su:

Ovo je primer tipa macro plugina:

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 daje korisnik.

Kada se pronađe XSS, u ovoj 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 da izvrši maliciozni Jira dodatak. Možete pronaći primer koda u ovom repozitorijumu.

Ovo su neke od radnji koje bi maliciozni dodatak mogao da izvrši:

  • 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 procuriti 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.

Ako ste zainteresovani za karijeru u hakovanju i hakovanje nehakovanog - zapošljavamo! (potrebno je tečno pisanje i govorenje poljskog).

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ška HackTricks

Last updated