Google gebruikt Clang Sanitizers om Android te beschermen tegen kwetsbaarheden in de mobiele basisband

Google benadrukt de rol die Clang-ontsmettingsmiddelen spelen bij het versterken van de beveiliging van de mobiele basisband in het Android-besturingssysteem en het voorkomen van specifieke soorten kwetsbaarheden.

Dit omvat Integer Overflow Sanitizer (IntSan) en BoundsSanitizer (BoundSan), die beide deel uitmaken van UndefinedBehaviorSanitizer (UBSan), een tool die is ontworpen om verschillende soorten ongedefinieerd gedrag tijdens de uitvoering van programma’s op te vangen.

“Ze zijn architectuur-agnostisch, geschikt voor bare-metal-implementatie en zouden moeten worden ingeschakeld in bestaande C/C++-codebases om onbekende kwetsbaarheden te verminderen”, zeiden Ivan Lozano en Roger Piqueras Jover dinsdag in een post.

De ontwikkeling komt maanden nadat de technologiegigant zei dat het samenwerkt met ecosysteempartners om de beveiliging van firmware die met Android communiceert te vergroten, waardoor het voor bedreigingsactoren moeilijk wordt om op afstand code uit te voeren binnen de Wi-Fi SoC of de mobiele basisband.

IntSan en BoundSan zijn twee van de op compilers gebaseerde ontsmettingsmiddelen die Google heeft ingeschakeld als maatregel om exploits te beperken om respectievelijk rekenkundige overflows te detecteren en grenscontroles uit te voeren rond array-toegangen.

Google erkende dat, hoewel zowel BoundSan als IntSan een substantiële prestatieoverhead met zich meebrengen, het hen in staat heeft gesteld op veiligheidskritische aanvalsoppervlakken te komen, voorafgaand aan een volwaardige uitrol over de gehele codebase. Dit omvat –

  • Functies voor het parseren van berichten die via de ether worden verzonden in 2G, 3G, 4G en 5G
  • Bibliotheken coderen/decoderen van complexe formaten (bijv. ASN.1, XML, DNS, etc.)
  • IMS-, TCP- en IP-stacks, en
  • Berichtenfuncties (SMS, MMS)

“In het specifieke geval van 2G is de beste strategie om de stack helemaal uit te schakelen door de ‘2G-toggle’ van Android te ondersteunen”, aldus de onderzoekers. “2G is echter nog steeds een noodzakelijke mobiele toegangstechnologie in bepaalde delen van de wereld en sommige gebruikers moeten dit verouderde protocol mogelijk ingeschakeld hebben.”

Het is vermeldenswaard dat de ’tastbare’ voordelen die voortkomen uit het inzetten van ontsmettingsmiddelen, niettegenstaande andere soorten kwetsbaarheden worden aangepakt, zoals die gerelateerd aan geheugenveiligheid, waardoor een transitie van de codebase naar een geheugenveilige taal zoals Rust noodzakelijk is.

Begin oktober 2023 kondigde Google aan dat het de door Android Virtualization Framework (AVF) beschermde VM (pVM) -firmware in Rust had herschreven om een ​​geheugenveilige basis te bieden voor de pVM-wortel van vertrouwen.

“Naarmate het besturingssysteem op hoog niveau een moeilijker doelwit wordt voor aanvallers om succesvol te exploiteren, verwachten we dat componenten op een lager niveau, zoals de basisband, meer aandacht zullen trekken”, concludeerden de onderzoekers.

“Door moderne toolchains te gebruiken en technologieën voor het beperken van exploits in te zetten, kan de lat voor het aanvallen van de basisband ook hoger worden gelegd.”

Thijs Van der Does