Jira & Confluence
Reading time: 5 minutes
tip
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Υποστηρίξτε το HackTricks
- Ελέγξτε τα σχέδια συνδρομής!
- Εγγραφείτε στην 💬 ομάδα Discord ή στην ομάδα telegram ή ακολουθήστε μας στο Twitter 🐦 @hacktricks_live.
- Μοιραστείτε κόλπα hacking υποβάλλοντας PRs στα HackTricks και HackTricks Cloud github repos.
Έλεγχος Δικαιωμάτων
Στο Jira, τα δικαιώματα μπορούν να ελεγχθούν από οποιονδήποτε χρήστη, αυθεντικοποιημένο ή όχι, μέσω των endpoints /rest/api/2/mypermissions
ή /rest/api/3/mypermissions
. Αυτά τα endpoints αποκαλύπτουν τα τρέχοντα δικαιώματα του χρήστη. Ένα σημαντικό ζήτημα προκύπτει όταν μη αυθεντικοποιημένοι χρήστες κατέχουν δικαιώματα, υποδεικνύοντας μια ευπάθεια ασφαλείας που θα μπορούσε ενδεχομένως να είναι επιλέξιμη για βραβείο. Ομοίως, αναπάντεχα δικαιώματα για αυθεντικοποιημένους χρήστες επισημαίνουν επίσης μια ευπάθεια.
Μια σημαντική ενημέρωση έγινε στις 1 Φεβρουαρίου 2019, απαιτώντας το endpoint 'mypermissions' να περιλαμβάνει μια παράμετρο 'permission'. Αυτή η απαίτηση στοχεύει να ενισχύσει την ασφάλεια καθορίζοντας τα δικαιώματα που ερωτώνται: check it here
- 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
Example: 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'
Αυτοματοποιημένη αρίθμηση
Plugins της Atlassian
Όπως αναφέρεται σε αυτό το blog, στην τεκμηρίωση σχετικά με τα Plugin modules ↗ είναι δυνατή η εξέταση των διαφορετικών τύπων plugins, όπως:
- REST Plugin Module ↗: Εκθέτει RESTful API endpoints
- Servlet Plugin Module ↗: Αναπτύσσει Java servlets ως μέρος ενός plugin
- Macro Plugin Module ↗: Υλοποιεί Confluence Macros, δηλαδή παραμετροποιημένα HTML templates
Αυτό είναι ένα παράδειγμα του τύπου macro plugin:
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; }
}
Είναι δυνατόν να παρατηρηθεί ότι αυτά τα πρόσθετα μπορεί να είναι ευάλωτα σε κοινές διαδικτυακές ευπάθειες όπως το XSS. Για παράδειγμα, το προηγούμενο παράδειγμα είναι ευάλωτο επειδή ανακλά δεδομένα που παρέχονται από τον χρήστη.
Μόλις βρεθεί ένα XSS, στο αυτό το github repo μπορείτε να βρείτε μερικά payloads για να αυξήσετε τον αντίκτυπο του XSS.
Backdoor Plugin
Αυτή η ανάρτηση περιγράφει διάφορες (κακόβουλες) ενέργειες που θα μπορούσε να εκτελέσει ένα κακόβουλο πρόσθετο Jira. Μπορείτε να βρείτε παράδειγμα κώδικα σε αυτό το repo.
Αυτές είναι μερικές από τις ενέργειες που θα μπορούσε να εκτελέσει ένα κακόβουλο πρόσθετο:
- Απόκρυψη Προσθέτων από Διαχειριστές: Είναι δυνατόν να αποκρυφθεί το κακόβουλο πρόσθετο εισάγοντας κάποιο front-end javascript.
- Εξαγωγή Συνημμένων και Σελίδων: Επιτρέπει την πρόσβαση και την εξαγωγή όλων των δεδομένων.
- Κλοπή Διαπιστευτηρίων Συνεδρίας: Προσθέτει ένα endpoint που θα ανακλά τις κεφαλίδες στην απάντηση (με το cookie) και κάποιο javascript που θα επικοινωνεί μαζί του και θα διαρρέει τα cookies.
- Εκτέλεση Εντολών: Φυσικά είναι δυνατόν να δημιουργηθεί ένα πρόσθετο που θα εκτελεί κώδικα.
- Αντίστροφη Σέλ: Ή να αποκτήσει μια αντίστροφη σέλ.
- DOM Proxying: Εάν το confluence είναι μέσα σε ιδιωτικό δίκτυο, θα ήταν δυνατόν να καθιερωθεί μια σύνδεση μέσω του προγράμματος περιήγησης κάποιου χρήστη με πρόσβαση σε αυτό και για παράδειγμα να επικοινωνήσει με τον διακομιστή εκτελώντας εντολές μέσω αυτού.
tip
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Υποστηρίξτε το HackTricks
- Ελέγξτε τα σχέδια συνδρομής!
- Εγγραφείτε στην 💬 ομάδα Discord ή στην ομάδα telegram ή ακολουθήστε μας στο Twitter 🐦 @hacktricks_live.
- Μοιραστείτε κόλπα hacking υποβάλλοντας PRs στα HackTricks και HackTricks Cloud github repos.