Drie miljoen iOS- en macOS-apps werden getroffen door grote aanvallen op de toeleveringsketen

Drie miljoen iOS- en macOS-apps werden getroffen door grote aanvallen op de toeleveringsketen

Urich Lawson

Door kwetsbaarheden die tien jaar lang onopgemerkt bleven, zijn duizenden macOS- en iOS-applicaties kwetsbaar voor supply chain-aanvallen. Onderzoekers zeiden maandag dat hackers mogelijk kwaadaardige code hebben toegevoegd die de veiligheid van miljoenen of miljarden mensen die deze hebben geïnstalleerd in gevaar brengt.

De kwetsbaarheden, die afgelopen oktober zijn verholpen, bevonden zich in een ‘trunk’-server die werd gebruikt voor het beheer van… Cacao peulen, een opslagplaats van open source Swift- en Objective-C-projecten waarop bijna 3 miljoen macOS- en iOS-applicaties zijn gebaseerd. Wanneer ontwikkelaars wijzigingen aanbrengen in een van hun ‘pakketten’ (de CocoaPods-taal voor individuele codepakketten), integreren goedgekeurde apps deze doorgaans automatisch via app-updates, meestal zonder dat daarvoor interactie van eindgebruikers nodig is.

Kwetsbaarheden in code-injectie

“Veel apps hebben toegang tot de meest gevoelige informatie van een gebruiker: creditcardgegevens, medische dossiers, privémateriaal en meer.” boeken “Door code in deze applicaties te injecteren, kunnen aanvallers toegang krijgen tot deze informatie voor vrijwel elk denkbaar kwaadaardig doel – ransomware, fraude, afpersing, bedrijfsspionage…”, zeggen onderzoekers van EVA Information Security, het bedrijf dat de kwetsbaarheid in het proces ontdekte kan dit bedrijven blootstellen aan aanzienlijke juridische aansprakelijkheden en reputatierisico’s.”

De drie door EVA ontdekte kwetsbaarheden komen voort uit een onveilig e-mailmechanisme dat wordt gebruikt om de identiteit van individuele volumeontwikkelaars te valideren. Waar de ontwikkelaar het e-mailadres invoert dat aan zijn opslageenheid is gekoppeld. De trunkserver reageert door een link naar het adres te sturen. Wanneer iemand op de link klikt, krijgt deze toegang tot het account.

READ  Pokémon Scarlet & Violet: Hoe ontgrendel je 6-sterren raids

In één geval kan een aanvaller de URL in de link manipuleren, zodat deze verwijst naar een server die onder controle van de aanvaller staat. De server accepteert een valse URL XFH, wat een HTTP-header is om de doelhost te identificeren die is opgegeven in het HTTP-verzoek. EVA-onderzoekers hebben ontdekt dat ze vervalste XFH kunnen gebruiken om URL’s van hun keuze te maken.

Normaal gesproken bevat de e-mail een geldige link die op de CocoaPods.org-server moet worden gepubliceerd, zoals:

Hoe ziet een verificatie-e-mail eruit?
In zoomen / Hoe ziet een verificatie-e-mail eruit?

Informatiebeveiliging bij EVA

Onderzoekers kunnen als alternatief de URL wijzigen zodat deze naar hun eigen server leidt:

E-mail verifiëren nadat ermee is geknoeid.
In zoomen / E-mail verifiëren nadat ermee is geknoeid.

Informatiebeveiliging bij EVA

Deze kwetsbaarheid, bijgehouden als CVE-2024-38367, bevond zich in de session_controller-klasse van de broncode van de hoofdserver, die de sessievalidatie-URL verwerkt. De klasse gebruikt het session_controller.rb-mechanisme, dat prioriteit geeft aan XFH boven de oorspronkelijke host-header. De exploitcode die door onderzoekers werd gebruikt, was:

POST /api/v1/sessions HTTP/1.1
Host: trunk.cococapods.org
Content-Type: application/json; charset=utf-8
Accept: application/json; charset=utf-8
User-Agent: CocoaPods/1.12.1
Accept-Encoding: gzip, deflate
X-Forwarded-Host: research.evasec.io
Content-Length: 78

{
  "email":"[email protected]",
  "name":"EVAResearch",
  "description":null
}

Een afzonderlijke kwetsbaarheid, bijgehouden als CVE-2024-38368, stelde aanvallers in staat de controle over modules over te nemen die door hun ontwikkelaars waren verlaten, maar nog steeds door applicaties werden gebruikt. Een API waarmee ontwikkelaars hun modules kunnen herstellen, bleef ongeveer tien jaar actief nadat deze voor het eerst was geïmplementeerd. De onderzoekers ontdekten dat iedereen die een verweesde module-interface vindt, deze kan activeren om er de controle over te krijgen, zonder dat hij of zij de eigenaar hoeft te bewijzen.

READ  The Pokémon Company denkt na over hoe ze Pokémon-spellen van hoge kwaliteit kunnen garanderen en tegelijkertijd het tempo van hun release kunnen handhaven

eenvoudig rollen Het enige dat nodig was, was een verzoek met de podnaam:

# Curl request for changing ownership of a targeted orphaned pod
curl -X 'POST' \
  -H 'Host: trunk.cocoapods.org' \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  --data-binary 'owner[name]=EVA&[email protected]'
  --data-binary 'pods[]=[TARGET_UNCLAIMED_POD]&button=SEND'
  'https://trunk.cocoapods.org/claims'

Door de derde kwetsbaarheid, CVE-2024-38366, konden aanvallers code uitvoeren op de hoofdserver. De masterserver is afhankelijk van RFC822 Het werd in 1982 geformaliseerd om de uniciteit van de e-mailadressen van geregistreerde ontwikkelaars te verifiëren en te controleren of ze het juiste formaat volgen. Een deel van het proces omvat een onderzoek MX-record Voor het e-mailadresbereik zoals geïmplementeerd door dit RFC822-implementatie.

You May Also Like

About the Author: Ebert Brink

'Reader. Furious humble travel enthusiast. Extreme food scientist. Writer. Communicator.'

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *