Zephyrnet-logo

Deze week in beveiliging: Secure Boot Bypass, Attack on Titan M, KASLR Weakness

Datum:

Het is de vraag hoe nuttig Secure Boot is voor eindgebruikers, maar nu is er nog een ander probleem met Secure Boot, of meer specifiek, een drietal ondertekende bootloaders. Onderzoekers van Eclypsium hebben problemen vastgesteld in de Eurosoft-, CryptoPro- en New Horizon-bootloaders. In de eerste twee gevallen maakt een veel te flexibele UEFI-shell onbewerkte geheugentoegang mogelijk. Een opstartscript hoeft niet ondertekend te zijn en kan het opstartproces gemakkelijk naar believen manipuleren. Het laatste probleem zit in het New Horizon Datasys-product, dat elke handtekeningcontrole voor de rest van het opstartproces uitschakelt, terwijl nog steeds wordt gemeld dat veilig opstarten is ingeschakeld. Het is onduidelijk of dit een configuratieoptie vereist, of gewoon standaard volledig is verbroken.

Het echte probleem is dat als malware of een aanvaller schrijftoegang tot de EFI-partitie kan krijgen, een van deze ondertekende bootloaders kan worden toegevoegd aan de opstartketen, samen met een vervelende payload, en het besturingssysteem dat uiteindelijk wordt opgestart, ziet Secure Boot nog steeds ingeschakeld . Het is het perfecte voertuig voor echt sluipende infecties, vergelijkbaar met CosmicStrand, de kwaadaardige firmware die we een paar weken geleden hebben behandeld.

Gokken?

Online gokken. Net als gokken in een casino, wint het huis eigenlijk altijd. Maar net als in een echt casino zijn er enkele slimme technieken, zoals kaarten tellen bij Blackjack, dat is net genoeg om de kansen weer in uw voordeel te veranderen. In dat geval houd je bij hoeveel grote en kleine kaarten er gespeeld zijn en pas je je inzet daarop aan. NCC Group onderzocht een "Big Six" online casinospel - deze is een beetje anders dan de meeste online gokken, omdat er een echte persoon is die als croupier fungeert. De Croupier draait aan het wiel dat de uitkomst van de geplaatste inzetten bepaalt. Mensen hebben iets gemeen met computers, in die zin dat we allebei intrinsiek slecht zijn in het produceren van goede willekeur.

Ze begonnen met het verzamelen van gegevens en analyseerden deze vervolgens op opvallende patronen. Een spreiding van meer dan 7000 rondes van het spel werd gekraakt, en wat eruit kwam was een correlatie tussen de positie van het wiel net voordat het inzetten werd gesloten, en het winnende nummer. Simpel gezegd, de croupier had de neiging om het wiel elke keer met dezelfde kracht te laten draaien. Een beetje computervisie en gescripte weddenschappen, en ze hadden een winnende combinatie. Hoeveel winnen? Iets meer dan 20% rendement op uw investering na 1000 ronden.

Aanval op Titan

Het team van Quarkslab heb iets van een fascinatie voor de Titan M, de beveiligingschip van Google op hun Pixel-telefoons. Naast zijn andere functies biedt de Titan een veilige enclave voor geheimen. Het communiceert via SPI met de hoofdprocessor van de telefoon en heeft alle verwachte beveiligingsfuncties en -beperkingen om geheimen veilig te houden. Nou ja, bijna allemaal. Het eenvoudige ontwerp van deze speciale processor betekent ook dat deze geen van de complexe beveiligingen tegen geheugenbeschadiging heeft die een meer gecompliceerde processor zou kunnen hebben. Het is ook eenvoudig genoeg dat de geheugenlay-out nogal statisch is.

De eerste aanval van Quarkslab was het gebruik van hun noscliënt om willekeurige berichten naar de Titan te sturen - black box fuzzing. Zie dit als spaghetti van alle soorten en maten tegen de virtuele muur gooien om te zien of er iets blijft plakken, of liever crasht. Het is zeker een waardevolle techniek, en soms is het alles wat beschikbaar is, maar je kunt op deze manier meestal niet bij de interessantere codepaden komen. Deze jongens weten echt hun weg in de Titan M, dus gingen met een andere aanpak, emuleren delen van de firmware en fuzzen het geëmuleerde apparaat. Het is lastig om het voor elkaar te krijgen en er zijn beperkingen omdat je emulatie meestal niet perfect overeenkomt met de echte hardware, maar het voordeel is dat je bij codepaden kunt komen die heel moeilijk zouden zijn om willekeurig op te landen met alleen fuzzen.

En vind een bug die ze hebben gedaan. Door een te sturen ImportKeyRequest, een 0x01 kan worden geschreven naar een niet geheel willekeurige locatie buiten het bereik. Door meerdere tags in de aanvraag op te nemen, kan dit meerdere keren in één klap. Het was een zeer beperkte, maar solide start. De sleutel was om een ​​aanwijzer te overschrijven die door een andere routine, de Keymaster-verzoekhandler, wordt gebruikt. De pointer was waar inkomende verzoeken naartoe zouden worden gekopieerd, en zo begint de aanval vorm te krijgen. Gebruik de primitief van één byte om de keymaster te vergiftigen en stuur vervolgens een verzoek dat naar deze nieuwe locatie wordt geschreven. Door te experimenteren ontdekten ze dat ze 556 willekeurige bytes konden verzenden, gevolgd door een geheugenadres, en de uitvoering zou naar dat adres springen. Het kostte wat moeite, maar met wat Return Oriented Programming was dit genoeg om geheugen van overal op de chip te lezen en het terug te sturen via de SPI-bus naar hun client. De beveiligingsronde van juni van Google bevat de oplossing voor deze zeer slimme kwetsbaarheid.

KASLR Bypass op MacOS

Een van de oplossingen die ontbreekt in de Titan M is Kernel Randomisatie van adresruimte-indeling, maar KASLR is behoorlijk aanwezig in MacOS, waardoor exploits op kernelniveau veel moeilijker uit te voeren zijn. Of het zou moeten, behalve dat er een behoorlijk grote is gat in de MacOS KASLR door ontwerp. Die functie is de slaapstand, of beter gezegd, het ontwaken uit de slaapstand. Er is een __HIB kernelsegment dat altijd is toegewezen aan hetzelfde adres en wordt aangeroepen als onderdeel van wakeup. Onderdeel van dit segment is de dblmap geheugenblok, dat in feite twee keer wordt toegewezen aan de virtuele geheugenruimte. Het wordt onder andere gebruikt in de context-switch userspace/kernelspace. Vanwege de beschikbaarheid in de gebruikersmodus, is het kwetsbaar voor het lezen door een Meltdown-aanval, en de wijzers daar geven de "slide" -waarde weg - het KASLR-basisadres. Zelfs op een kernsmeltbestendige CPU, de __HIB sector heeft een aantal andere toepassingen. Er staat nog veel meer in de post en het wordt waarschijnlijk niet snel opgelost, dus als MacOS-exploitatie jouw ding is, veel plezier!

Wie is? WTFIS?!

Als XNU-hacking hoger is dan je salaris, zoals het mijne is, dan is deze tool misschien meer onze snelheid. wftis is een nieuwe tool die uit meerdere bronnen put, en werkt als een opgevoerde iteratie of whois. Het haalt informatie uit Virustotal, Passivetotal en IPWhois om gegevens over de opgegeven domeinnaam te krijgen. Als er een raar domein in uw logboeken verschijnt, is wtfis misschien het hulpmiddel om naar toe te gaan. Het vereist wel API-sleutels voor de eerste twee services, maar zou prima moeten werken op hun gratis niveau.

Sonic aanval

En tot slot, het vreemdste stukje internetkennis dat ik onlangs ben tegengekomen. Veel dank aan [mtxyz] op Discord voor het wijzen op CVE-2022-38392een oud probleem dat nu pas aan het licht komt. Een OEM van een laptop ontdekte dat de muziekvideo voor Rhythm Nation hun laptops op betrouwbare wijze zou laten crashen. Nog vreemder, het spelen van het nummer op één laptop zou ook een laptop in de buurt laten crashen. Uiteindelijk werd ontdekt dat de 5400 RPM harde schijf die in die laptops werd geleverd een resonantiefrequentie had die werd geactiveerd door het nummer, wat leidde tot een tijdelijke storing. De oplossing was een hardgecodeerd frequentiefilter om die frequentie eruit te halen. Klinkt een beetje als schreeuwen tegen harde schijven in het datacenter. Genieten van:

[Ingesloten inhoud]

spot_img

Laatste intelligentie

spot_img

Chat met ons

Hallo daar! Hoe kan ik u helpen?