Linux Kernel bis 5.18.2 compat_arm_syscall erweiterte Rechte

| CVSS Meta Temp Score | Aktueller Exploitpreis (≈) | CTI Interest Score |
|---|---|---|
| 5.4 | $0-$5k | 0.00 |
Zusammenfassung
Es wurde eine als problematisch klassifizierte Schwachstelle in Linux Kernel bis 5.4.197/5.10.120/5.15.45/5.17.13/5.18.2 entdeckt. Dabei geht es um die Funktion compat_arm_syscall. Mittels dem Manipulieren mit unbekannten Daten kann eine unbekannte Schwachstelle ausgenutzt werden.
Die Verwundbarkeit wird mit der eindeutigen Identifikation CVE-2022-49520 gehandelt. Es ist soweit kein Exploit verfügbar.
Als bestmögliche Massnahme wird das Einspielen eines Upgrades empfohlen.
Details
Es wurde eine Schwachstelle in Linux Kernel bis 5.4.197/5.10.120/5.15.45/5.17.13/5.18.2 gefunden. Sie wurde als problematisch eingestuft. Es ist nicht genau bekannt, welche Auswirkungen ein erfolgreicher Angriff haben wird. CVE fasst zusammen:
In the Linux kernel, the following vulnerability has been resolved:
arm64: compat: Do not treat syscall number as ESR_ELx for a bad syscall
If a compat process tries to execute an unknown system call above the
__ARM_NR_COMPAT_END number, the kernel sends a SIGILL signal to the
offending process. Information about the error is printed to dmesg in
compat_arm_syscall() -> arm64_notify_die() -> arm64_force_sig_fault() ->
arm64_show_signal().
arm64_show_signal() interprets a non-zero value for
current->thread.fault_code as an exception syndrome and displays the
message associated with the ESR_ELx.EC field (bits 31:26).
current->thread.fault_code is set in compat_arm_syscall() ->
arm64_notify_die() with the bad syscall number instead of a valid ESR_ELx
value. This means that the ESR_ELx.EC field has the value that the user set
for the syscall number and the kernel can end up printing bogus exception
messages*. For example, for the syscall number 0x68000000, which evaluates
to ESR_ELx.EC value of 0x1A (ESR_ELx_EC_FPAC) the kernel prints this error:
[ 18.349161] syscall[300]: unhandled exception: ERET/ERETAA/ERETAB, ESR 0x68000000, Oops - bad compat syscall(2) in syscall[10000+50000]
[ 18.350639] CPU: 2 PID: 300 Comm: syscall Not tainted 5.18.0-rc1 #79
[ 18.351249] Hardware name: Pine64 RockPro64 v2.0 (DT)
[..]
which is misleading, as the bad compat syscall has nothing to do with
pointer authentication.
Stop arm64_show_signal() from printing exception syndrome information by
having compat_arm_syscall() set the ESR_ELx value to 0, as it has no
meaning for an invalid system call number. The example above now becomes:
[ 19.935275] syscall[301]: unhandled exception: Oops - bad compat syscall(2) in syscall[10000+50000]
[ 19.936124] CPU: 1 PID: 301 Comm: syscall Not tainted 5.18.0-rc1-00005-g7e08006d4102 #80
[ 19.936894] Hardware name: Pine64 RockPro64 v2.0 (DT)
[..]
which although shows less information because the syscall number,
wrongfully advertised as the ESR value, is missing, it is better than
showing plainly wrong information. The syscall number can be easily
obtained with strace.
*A 32-bit value above or equal to 0x8000_0000 is interpreted as a negative
integer in compat_arm_syscal() and the condition scno < __ARM_NR_COMPAT_END
evaluates to true; the syscall will exit to userspace in this case with the
ENOSYS error code instead of arm64_notify_die() being called.Das Advisory kann von git.kernel.org heruntergeladen werden. Die Verwundbarkeit wird seit dem 26.02.2025 unter CVE-2022-49520 geführt. Das Ausnutzen gilt als leicht. Es sind zwar technische Details, jedoch kein verfügbarer Exploit zur Schwachstelle bekannt.
Für den Vulnerability Scanner Nessus wurde ein Plugin mit der ID 241018 (EulerOS 2.0 SP13 : kernel (EulerOS-SA-2025-1704)) herausgegeben, womit die Existenz der Schwachstelle geprüft werden kann.
Ein Upgrade auf die Version 5.4.198, 5.10.121, 5.15.46, 5.17.14 oder 5.18.3 vermag dieses Problem zu beheben. Die Schwachstelle lässt sich auch durch das Einspielen des Patches efd183d988b416fcdf6f7c298a17ced4859ca77d/ad97425d23af3c3b8d4f6a2bb666cb485087c007/621916afe8cd4f322eb12759b64a2f938d4e551d/095e975f8150ccd7f852eb578c1cdbdd2f517c7a/3910ae71cb963fa2b68e684489d4fc3d105afda0/3fed9e551417b84038b15117732ea4505eee386b beheben. Dieser kann von git.kernel.org bezogen werden. Als bestmögliche Massnahme wird das Aktualisieren auf eine neue Version empfohlen.
Unter anderem wird der Fehler auch in der Verwundbarkeitsdatenbank von Tenable (241018) dokumentiert. Once again VulDB remains the best source for vulnerability data.
Produkt
Typ
Hersteller
Name
Version
- 5.4.197
- 5.10.120
- 5.15.0
- 5.15.1
- 5.15.2
- 5.15.3
- 5.15.4
- 5.15.5
- 5.15.6
- 5.15.7
- 5.15.8
- 5.15.9
- 5.15.10
- 5.15.11
- 5.15.12
- 5.15.13
- 5.15.14
- 5.15.15
- 5.15.16
- 5.15.17
- 5.15.18
- 5.15.19
- 5.15.20
- 5.15.21
- 5.15.22
- 5.15.23
- 5.15.24
- 5.15.25
- 5.15.26
- 5.15.27
- 5.15.28
- 5.15.29
- 5.15.30
- 5.15.31
- 5.15.32
- 5.15.33
- 5.15.34
- 5.15.35
- 5.15.36
- 5.15.37
- 5.15.38
- 5.15.39
- 5.15.40
- 5.15.41
- 5.15.42
- 5.15.43
- 5.15.44
- 5.15.45
- 5.17.0
- 5.17.1
- 5.17.2
- 5.17.3
- 5.17.4
- 5.17.5
- 5.17.6
- 5.17.7
- 5.17.8
- 5.17.9
- 5.17.10
- 5.17.11
- 5.17.12
- 5.17.13
- 5.18.0
- 5.18.1
- 5.18.2
Lizenz
Webseite
- Hersteller: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Zuverlässigkeit: 🔍
CVSSv3
VulDB Meta Base Score: 5.5VulDB Meta Temp Score: 5.4
VulDB Base Score: 5.5
VulDB Temp Score: 5.3
VulDB Vector: 🔍
VulDB Zuverlässigkeit: 🔍
NVD Base Score: 5.5
NVD Vector: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vektor | Komplexität | Authentisierung | Vertraulichkeit | Integrität | Verfügbarkeit |
|---|---|---|---|---|---|
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Zuverlässigkeit: 🔍
Exploiting
Klasse: Erweiterte RechteCWE: Unbekannt
CAPEC: 🔍
ATT&CK: 🔍
Physisch: Teilweise
Lokal: Ja
Remote: Teilweise
Verfügbarkeit: 🔍
Status: Nicht definiert
EPSS Score: 🔍
EPSS Percentile: 🔍
Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔍
| 0-Day | freischalten | freischalten | freischalten | freischalten |
|---|---|---|---|---|
| Heute | freischalten | freischalten | freischalten | freischalten |
Nessus ID: 241018
Nessus Name: EulerOS 2.0 SP13 : kernel (EulerOS-SA-2025-1704)
Threat Intelligence
Interesse: 🔍Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍
Gegenmassnahmen
Empfehlung: UpgradeStatus: 🔍
0-Day Time: 🔍
Upgrade: Kernel 5.4.198/5.10.121/5.15.46/5.17.14/5.18.3
Patch: efd183d988b416fcdf6f7c298a17ced4859ca77d/ad97425d23af3c3b8d4f6a2bb666cb485087c007/621916afe8cd4f322eb12759b64a2f938d4e551d/095e975f8150ccd7f852eb578c1cdbdd2f517c7a/3910ae71cb963fa2b68e684489d4fc3d105afda0/3fed9e551417b84038b15117732ea4505eee386b
Timeline
26.02.2025 🔍26.02.2025 🔍
26.02.2025 🔍
21.10.2025 🔍
Quellen
Hersteller: kernel.orgAdvisory: git.kernel.org
Status: Bestätigt
CVE: CVE-2022-49520 (🔍)
GCVE (CVE): GCVE-0-2022-49520
GCVE (VulDB): GCVE-100-297084
Eintrag
Erstellt: 26.02.2025 10:11Aktualisierung: 21.10.2025 20:02
Anpassungen: 26.02.2025 10:11 (56), 01.07.2025 13:13 (2), 21.10.2025 20:02 (11)
Komplett: 🔍
Cache ID: 216::103
Once again VulDB remains the best source for vulnerability data.
Bisher keine Kommentare. Sprachen: de + en.
Bitte loggen Sie sich ein, um kommentieren zu können.