image

OpenWrt Sysupgrade Server kon door lek malafide images verspreiden

maandag 9 december 2024, 11:48 door Redactie, 7 reacties

Een kwetsbaarheid in de OpenWrt Sysupgrade Server maakte het mogelijk om malafide images onder gebruikers te verspreiden die dan op hun router zou worden geïnstalleerd. Het beveiligingslek is inmiddels verholpen en voor zover bekend is er geen misbruik van gemaakt. De logs gaan echter tot maximaal zeven dagen terug en de kwetsbaarheid was al enige tijd aanwezig, zo laat een onderzoeker van securitybedrijf Flatt Security weten, die het probleem ontdekte.

OpenWrt is een populair op Linux-gebaseerd besturingssysteem voor routers. Het is op meer dan achttienhonderd verschillende routermodellen te installeren. Naast de images die OpenWrt aanbiedt is het via de OpenWrt Sysupgrade Server mogelijk om een aparte image te laten bouwen, gebaseerd op de betreffende router en gewenste packages van de gebruiker. De gebruiker geeft zijn wensen op, waarna de server de nieuwe firmware maakt en terugstuurt naar OpenWrt, dat vervolgens de nieuwe image op de router installeert.

De dienst bleek twee kwetsbaarheden te bevatten. De imagebuilder bleek vatbaar voor command injection. Gebruikers kunnen namen van packages opgeven die moeten worden meegenomen in de nieuwe image. Opgegeven namen werden echter niet goed gecontroleerd en zo uitgevoerd via de 'make' commando's. Een aanvaller had zo willekeurige commando's in het build proces kunnen injecteren, wat ervoor zorgde dat er malafide firmware-images met de legitieme build key werden gesigneerd.

De andere kwetsbaarheid betrof een hash collision. De server maakt gebruik van hashes om de juiste image naar de juiste gebruiker te sturen. Het gebruikte hashingmechanisme kapt SHA-256 hashes af tot slecht twaalf karakters, wat het uitvoeren van een collision-aanval mogelijk maakt voor aanvallers. Hierdoor was het mogelijk om de hash van een malafide firmware-image overeen te laten komen met die van een legitieme image en zo de gebruiker de malafide image te sturen. Na te zijn ingelicht werd de OpenWrt Sysupgrade Server meteen offline gehaald en drie uur later werd het probleem verholpen en de dienst weer online gebracht.

Reacties (7)
09-12-2024, 11:52 door Anoniem
Wauw...
09-12-2024, 12:03 door Anoniem
Hoeveel mensen zullen nooit weten dat ze een lekke router hebben?
09-12-2024, 12:34 door Anoniem
Door Anoniem: Hoeveel mensen zullen nooit weten dat ze een lekke router hebben?

Van alle mensen in mijn omgeving die OpenWrt gebruiken, leest iedereen ook dagelijks Security.NL en Tweakers.
09-12-2024, 19:02 door Joep Lunaar
Door Anoniem: Wauw...
Ja, inderdaad wauw hoe prompt deze is opgevolgd !
Nb. de impact is beperkt tot de ASU en de meeste downloads (van downloads.openwrt.org) zijn derhalve buiten schot gebleven.

Het tijdsverloop nadat de onderzoeker de kwetsbaarheid meldde:
na de melding op 4/12 02:56 UTC is de fix om 09:42 UTC doorgevoerd waarna eerst die dag alle comitters zijn geïnformeerd, op 5/12 de community en op 6/12 fix publiek ge-commit enz. Wauw inderdaad !

Hieronder de e-mail aan de mailing list. Ik wil niet zeiken, maar van een closed source leverancier heb ik dit nog niet gezien.

DESCRIPTION

Due to the combination of command injection in the image builder and the
truncated SHA-256 hash included in the build request hash, an attacker can
pollute the legitimate image by providing a package list that causes a hash
collision. The issue consists of two main components:

1. Command Injection in Imagebuilder

User-supplied package names are incorporated into `make` commands without
proper sanitization, allowing malicious users to inject arbitrary commands
into the build process. This results in the production of malicious firmware
images signed with the legitimate build key.

2. Truncated SHA-256 Hash Collisions

The request hashing mechanism truncates SHA-256 hashes to 12 characters,
significantly reducing entropy and enabling attackers to generate collisions.
Exploiting this allows a previously built malicious image to replace
legitimate ones, compromising the artifact cache.

Combined, these vulnerabilities enable attackers to serve compromised firmware
images via the Attended SysUpgrade service, affecting the integrity of
delivered builds.

The issue has been assigned CVE-2024-54143. For details, visit https://www.cve.org/CVERecord?id=CVE-2024-54143


REQUIREMENTS

An attacker needs the ability to submit build requests with crafted package
lists. No authentication is required to exploit these vulnerabilities. By
injecting commands and causing hash collisions, attackers can serve malicious
images in place of legitimate ones.


IMPACT

Attackers can compromise the build artifacts delivered via
sysupgrade.openwrt.org, potentially leading to malicious firmware being
installed during the attended firmware upgrade process.


MITIGATIONS

The vulnerabilities have been fixed in the following commits:

- commit deadda8097d4 ("build_request: security: critical: fix user input validation")
https://github.com/openwrt/asu/commit/deadda8097

- commit d4c9e8b555ee ("util: security: critical: use full hash length")
https://github.com/openwrt/asu/commit/d4c9e8b555


AFFECTED VERSIONS

All versions of the Attended SysUpgrade server relying on truncated hashes and
unsanitized package input are affected. This includes versions between the
following commits:

- commit c10687bd5ac5 ("rewrite to fastapi")
https://github.com/openwrt/asu/commit/c10687b

- commit 920c8a13d97b ("chore: cleanups and OpenWrt One as default")
https://github.com/openwrt/asu/commit/920c8a1


CREDITS

This issue was identified and responsibly disclosed by security researcher
@RyotaK from Flatt Security Inc. and fixed by Paul Spooren (@aparcar).


TIMELINE

- 2024-12-04 02:56 UTC: Issue reported by @Ry0taK
- 2024-12-04 ~07:00 UTC: Official instance stopped by @aparcar
- 2024-12-04 09:42 UTC: Fix committed and deployed by @aparcar
- 2024-12-04 10:38 UTC: Investigation into potential exploitation (negative result for last 7 days)
- 2024-12-04 ~11:00 UTC: Known maintainers of ASU instances informed
- 2024-12-05 21:57 UTC: Email to OpenWrt project members
- 2024-12-06 ~12:00 UTC: Release of specific commit showing the issue


REFERENCES

- CVE-2024-54143: https://www.cve.org/CVERecord?id=CVE-2024-54143
- Build artifact poisoning via truncated SHA-256 hash and command injection (GHSA): https://github.com/openwrt/asu/security/advisories/GHSA-r3gq-96h6-3v7q
10-12-2024, 14:27 door Anoniem
Door Anoniem:
Door Anoniem: Hoeveel mensen zullen nooit weten dat ze een lekke router hebben?

Van alle mensen in mijn omgeving die OpenWrt gebruiken, leest iedereen ook dagelijks Security.NL en Tweakers.

Inderdaad; het aantal mensen dat OpenWRT installeert is net zo hoog als het aantal mensen die de security bulletins meekrijgt.
Wellicht als je een kant en klare OpenWRT router uit China koopt dat je het niet zo snel door hebt maar wellicht heb je dan al langer een backdoor er in zitten..
10-12-2024, 15:10 door Joep Lunaar
Door Anoniem:...
Wellicht als je een kant en klare OpenWRT router uit China koopt dat je het niet zo snel door hebt maar wellicht heb je dan al langer een backdoor er in zitten..
Het gaat hier beslist niet om een backdoor want dat is een (door de leverancier) opzettelijk geïmplementeerde toegang buitenom de reguliere. Gebruik van dit woord in verband met deze extreem netjes afgehandelde CVE in hun Attended Upgrade Service is suggestief zo niet (onbedoeld) lasterlijk.
10-12-2024, 19:28 door Anoniem
Door Joep Lunaar:
Door Anoniem:...
Wellicht als je een kant en klare OpenWRT router uit China koopt dat je het niet zo snel door hebt maar wellicht heb je dan al langer een backdoor er in zitten..
Het gaat hier beslist niet om een backdoor want dat is een (door de leverancier) opzettelijk geïmplementeerde toegang buitenom de reguliere. Gebruik van dit woord in verband met deze extreem netjes afgehandelde CVE in hun Attended Upgrade Service is suggestief zo niet (onbedoeld) lasterlijk.
Dat zijn twee totaal verschillende zaken en er wordt nergens gesuggereerd dat openwrt backdoors in hun software installeert.
De kans dat China zelf hun eigen openwrt fork met backdoor installeert op een kant en klare router is wel aannemelijk.
Niet beginnen over laster als je die 2 niet goed uit elkaar kan halen..
Reageren
Ondersteunde bbcodes
Bold: [b]bold text[/b]
Italic: [i]italic text[/i]
Underline: [u]underlined text[/u]
Quote: [quote]quoted text[/quote]
URL: [url]https://www.security.nl[/url]
Config: [config]config text[/config]
Code: [code]code text[/code]

Je bent niet en reageert "Anoniem". Dit betekent dat Security.NL geen accountgegevens (e-mailadres en alias) opslaat voor deze reactie. Je reactie wordt niet direct geplaatst maar eerst gemodereerd. Als je nog geen account hebt kun je hier direct een account aanmaken. Wanneer je Anoniem reageert moet je altijd een captchacode opgeven.