☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]

CVE-2025-22171

CVE-2025-22171 Improper Access Control in Jira align
📅 PUBLISHED: 2025-10-22 16:30 UTC 🔄 UPDATED: 2026-08-18 17:12 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.18%
👁️
0.18% probability
4.5× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS SEVERITY SCALE
9.0–10.0 CRITICAL
7.0–8.9 HIGH
4.0–6.9 MEDIUM
0.1–3.9 LOW
0.0 NONE
5.3
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-22171 is an authorization vulnerability in Jira Align that allows a low-privilege user to alter the private checklists of other users. This flaw stems from missing or improper authorization checks on the server side, enabling an attacker with minimal access to tamper with sensitive checklist data belonging to other users. The vulnerability has a CVSS score of 0.0 (placeholder) and no known public exploit or patch details at this time. The EPSS score is 0.0%, indicating low exploitation likelihood currently, but the impact on data integrity and confidentiality within Jira Align environments is significant.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Supply Chain & Package Security

Jira Align is a proprietary SaaS/on-premise product from Atlassian. There is no open-source package (NPM, PyPI, Go, Ruby) associated with this CVE. The vulnerability is in the application’s authorization logic, not in a third-party library.

CVSS Breakdown & Threat Level

  • CVSS Score: 0.0 (placeholder – likely to be assigned later)
  • Attack Vector (AV): Network (likely)
  • Attack Complexity (AC): Low (likely)
  • Privileges Required (PR): Low (confirmed)
  • User Interaction (UI): None (likely)
  • Scope (S): Unchanged (likely)
  • Confidentiality (C): Low (checklist content exposed)
  • Integrity (I): High (checklist can be altered)
  • Availability (A): None

Threat Level: Medium to High. While exploitation requires low privileges, the ability to alter private checklists of other users can lead to data integrity issues, workflow disruption, and potential privilege escalation if checklists contain sensitive instructions or credentials.

Deep Dive & Mechanics

The vulnerability is an authorization bypass (CWE-862: Missing Authorization). In Jira Align, private checklists are intended to be accessible only by their owner or users with specific administrative roles. The flaw allows a low-privilege user to send crafted API requests to modify checklists belonging to other users. The server fails to validate that the requesting user has the necessary permissions to alter the target checklist.

Attack Flow:

  1. Attacker authenticates as a low-privilege user (e.g., a regular project member).
  2. Attacker identifies the ID of another user’s private checklist (e.g., via enumeration or by observing shared checklists).
  3. Attacker sends a PUT/PATCH request to the checklist endpoint with the target checklist ID and modified content.
  4. The server processes the request without verifying ownership or permissions, altering the checklist.

Root Cause: The application’s authorization middleware or business logic does not enforce a check that the user making the request is the owner of the checklist or has a role that permits modification.

Vulnerable vs. Patched Code

No specific code snippets are available. However, the vulnerable pattern is:

Vulnerable (pseudo-code):

@app.route('/api/checklist/<checklist_id>', methods=['PATCH'])
def update_checklist(checklist_id):
    data = request.get_json()
    # Missing authorization check
    checklist = Checklist.query.get(checklist_id)
    checklist.content = data['content']
    db.session.commit()
    return jsonify(success=True)

Patched (pseudo-code):

@app.route('/api/checklist/<checklist_id>', methods=['PATCH'])
def update_checklist(checklist_id):
    data = request.get_json()
    checklist = Checklist.query.get(checklist_id)
    # Authorization check
    if checklist.owner_id != current_user.id and not current_user.is_admin:
        abort(403)
    checklist.content = data['content']
    db.session.commit()
    return jsonify(success=True)

Exploitation & Lab Setup

Red Team

Prerequisites:

  • A Jira Align instance (on-premise or SaaS) with at least two user accounts: one low-privilege (attacker) and one target user with private checklists.
  • Knowledge of the target checklist ID (can be obtained via API enumeration or by observing shared checklists).

Exploitation Steps:

  1. Log in as the low-privilege user and obtain a session token.
  2. Enumerate checklist IDs by sending GET requests to /api/checklist or similar endpoints.
  3. Identify a checklist belonging to another user (e.g., checklist ID 123).
  4. Send a PATCH request to modify the checklist:
    curl -X PATCH https://jira-align.example.com/api/checklist/123 \
      -H "Authorization: Bearer <token>" \
      -H "Content-Type: application/json" \
      -d '{"content": "Malicious content inserted"}'
    
  5. Verify the change by viewing the checklist as the target user.

Expected Outcome: The attacker successfully alters the private checklist of another user.

Blue Team

Detection:

  • Monitor API logs for PATCH/PUT requests to /api/checklist endpoints where the requesting user is not the owner of the checklist.
  • Alert on multiple failed authorization attempts (403 errors) followed by a successful 200 response to the same endpoint.
  • Use user behavior analytics to detect anomalous checklist modifications.

Hunting:

  • Search for checklist IDs that are modified by users other than their owners.
  • Review audit logs for checklist changes and correlate with user roles.

Mitigation:

  • Apply server-side authorization checks immediately.
  • Implement rate limiting on checklist modification endpoints.
  • Enable logging of all checklist modifications with user and timestamp.

Indicators of Compromise (IOCs)

  • Network: Unusual PATCH requests to /api/checklist/<id> from low-privilege users.
  • Logs: Audit log entries showing checklist modifications by non-owner users.
  • File System: No file-based IOCs.
  • Registry: No registry-based IOCs.

Detection Engineering

YARA Rule

rule CVE_2025_22171_Jira_Align_Checklist_Modification
{
    meta:
        description = "Detects unauthorized checklist modification attempts in Jira Align logs"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-22171"
    strings:
        $s1 = "PATCH /api/checklist/" ascii wide nocase
        $s2 = "HTTP/1.1 200" ascii wide nocase
        $s3 = "user_id" ascii wide nocase
        $s4 = "checklist_id" ascii wide nocase
    condition:
        all of ($s1, $s2, $s3, $s4)
}

Sigma Rule

title: Unauthorized Checklist Modification in Jira Align
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects PATCH requests to checklist endpoints by non-owner users
author: Valters IT
date: 2025-04-10
references:
    - CVE-2025-22171
logsource:
    category: web
    product: jira_align
detection:
    selection:
        http.method: "PATCH"
        http.url|contains: "/api/checklist/"
        http.response.status_code: 200
    condition: selection
falsepositives:
    - Legitimate admin actions
level: high

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (
    msg:"CVE-2025-22171 - Jira Align Unauthorized Checklist Modification";
    flow:to_server,established;
    content:"PATCH"; http_method;
    content:"/api/checklist/"; http_uri;
    pcre:"/\/api\/checklist\/\d+/";
    sid:10000001;
    rev:1;
    reference:cve,2025-22171;
    classtype:attempted-admin;
    priority:1;
)

Remediation & Mitigation

Immediate Actions:

  1. Isolate affected Jira Align instances if possible.
  2. Apply any vendor-provided patches or workarounds (check Atlassian support).
  3. Review and revoke excessive permissions for low-privilege users.
  4. Enable detailed audit logging for checklist modifications.

Long-term Fix:

  • Implement proper authorization checks on all checklist-related API endpoints.
  • Conduct a security review of the application’s authorization logic.
  • Deploy a Web Application Firewall (WAF) with rules to block unauthorized checklist modifications.

Workaround:

  • If patching is not possible, disable the checklist feature temporarily or restrict access to it via network segmentation.

Valters IT
DevSecOps & Cyber Threat Intelligence Expert

◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2025-22171/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.