Er werd ingebroken in servers van LineageOS, Ghost, DataCert en Xen Orchestra. Nieuwe IoT-malware verspreidt zich via brute-forcen van ssh-wachtwoorden. En OpenWrt-updates waren drie jaar lang uit te buiten via een man-in-the-middle-aanval. Deze en andere beveiligingsnieuwtjes lees je in Focus op veiligheid.

Koen Vervloesem

Inbraken door fout in Salt

F-Secure ontdekte twee belangrijke beveiligingsfouten in de opensource configuratiebeheertool Salt, met CVE-codes CVE-2020-11651 en CVE-2020-11652. Die eerste liet niet-geauthenticeerde gebruikers zelfs toe om op afstand willekeurige code op Salt-minions te draaien en kreeg dan ook de CVSS-score 9.8, wat kritiek is. En de tweede fout gaf zelfs toegang tot het volledige bestandssysteem van de Salt-server. Door de combinatie van beide fouten uit te buiten, kon je op afstand willekeurige opdrachten met rootrechten uitvoeren op zowel de master als alle minions die ermee verbonden zijn. Beide fouten waren aanwezig in Salts standaard communicatiekanaal ZeroMQ. F-Secure identificeerde initieel 6000 kwetsbare Salt-masters, met dus een veelvoud aan kwetsbare Salt-minions. F-Secure gaf eerst de tijd aan SaltStack om een patch uit te brengen (Salt 2019.2.4 en 3000.2), maar na de release van de patch waren er toch enkele organisaties die hun zaken niet op orde hadden en het slachtoffer werden van een aanval op een niet bijgewerkte Salt-versie. Zo werd enkele dagen erna ingebroken in de systemen van de Android-firmware LineageOS, het blogplatform Ghost, de certificaatautoriteit DataCert en het beheerplatform Xen Orchestra. Al deze projecten hadden hun Salt-installatie nog niet bijgewerkt naar de nieuwste versie. De aanvaller installeerde er cryptominingsoftware op en schakelde de firewall uit.

IoT-malware logt in via ssh

De beveiligingsonderzoekers van MalwareMustDie en Intezer ontdekten Chinese Linux-malware die een botnet vormde. In tegenstelling tot vele andere malware die gebaseerd is op de code van bestaande botnets zoals Mirai, was deze from scratch geschreven in de programmeertaal Go. Ze werd Kaiji gedoopt, naar de naam van een van de gebruikte functies. Kaiji verspreidt zich door het proberen brute-forcen van het root-wachtwoord via ssh. Zodra de malware binnen is geraakt, installeert ze zich onder de naam van een systeemtool zoals netstat, ps of ls. Daarnaast kan ze DDoS-aanvallen uitvoeren en zich verder proberen te verspreiden via brute-force aanvallen of het gebruik van lokale ssh-sleutels. Uit een analyse bleek dat Kaiji nog in vroege ontwikkeling was en waarschijnlijk nog een demo. Voorlopig lijkt de schade dus beperkt, maar wie weet horen we nog van een volgende versie van deze nieuwe malware.

Nieuwe beveiligingsdistro’s

De op privacy en anonimiteit gerichte Linux-distributie Tails (The Amnesic Incognito Live System) heeft weer enkele van zijn maandelijkse nieuwe versies uit. Tails 4.5 start nu ook op computers met Secure Boot ingeschakeld en Tails 4.6 ondersteunt FIDO U2F-beveiligingssleutels zoals de YubiKey. Uiteraard heeft ook heel wat software een upgrade gekregen.

Kali Linux 2020.2 heeft zijn KDE Plasma-thema’s een nieuwe look & feel gegeven. Voor de installatie-images is er nu een opslagcapaciteit van 16 GB nodig. En de ARM-images vereisen nu net zoals de amd64-versies niet meer dat je als root inlogt. Parrot 4.9, gebaseerd op Linux-kernel 5.5, heeft heel wat verwaarloosde pentestingtools verwijderd die nog gebaseerd waren op Python 2, dat sinds het begin van dit jaar niet meer ondersteund wordt. En BackBox Linux, dat ondertussen ook al tien jaar bestaat, heeft versie 7 uitgebracht, gebaseerd op Linux-kernel 5.4.

OpenWrt-updates uit te buiten

Beveiligingsonderzoeker Guido Vranken van ForAllSecure ontdekte dat kwaadwilligen gecompromitteerde updates kunnen aanbieden aan een OpenWrt-systeem op een draadloze router. De pakketbeheerder opkg haalt de lijst van beschikbare pakketten van downloads.openwrt.org via een onversleutelde http-verbinding. De lijsten met pakketten zijn digitaal ondertekend, zodat opkg kan controleren of de lijst effectief van de OpenWrt-beheerders komt. Maar sinds februari 2017 zit er al een fout in de functie die de SHA256-hash verifieert, waardoor de controle niet gebeurt als het SHA256-veld in het bestand met beschikbare pakketten niet gedecodeerd kan worden. En toevallig staat er in de officiële pakketlijsten een spatie op die plaats, waardoor de verificatie niet uitgevoerd wordt. De fout kreeg CVE-code CVE-2020-7982.

Om deze exploit uit te voeren, moet de aanvaller zich wel op hetzelfde netwerk bevinden of de controle hebben over de dns-server die door de OpenWrt-router gebruikt wordt. De aanvaller moet zijn gecompromitteerde pakketten op een webserver aanbieden waarnaar hij dan de aanvragen naar downloads.openwrt.org omleidt. De enige beperking is dat het gecompromitteerde bestand even groot moet zijn als het originele bestand. Hij moet dus een kleiner bestand maken en het einde aanvullen met nulbytes (een binaire waarde 0).

De meeste toepassingen bevatten kwetsbare opensourcecode

In zijn rapport “State of Software Security: Open Source Edition” meldt het applicatiebeveiligingsbedrijf Veracode dat zeven op tien toepassingen minstens één opensourcebibliotheek met een beveiligingslek gebruikt. Voor het rapport werden 351.000 unieke opensourcebibliotheken geanalyseerd in de database van 85.000 toepassingen die de software van Veracode gebruiken.

Opvallend: bijna de helft van de kwetsbare bibliotheken waren geen rechtstreekse afhankelijkheid van de toepassing, maar werden indirect gebruikt via een andere bibliotheek. Dat maakt het voor ontwikkelaars van een toepassing moeilijk om een overzicht te houden op de veiligheid van hun afhankelijkheden. Het rapport had ook goed nieuws: drie vierde van de toepassingen met kwetsbare bibliotheken is niet meer kwetsbaar door gewoon de bibliotheken bij te werken naar de nieuwste versie.

Ook Synopsys liet zijn licht schijnen op de veiligheid van het gebruik van opensourcesoftware in zijn “Open Source Security and Risk Analysis report” van 2020. Een gelijkaardig cijfer daar: 75% van de onderzochte toepassingen gebruikte minstens één kwetsbare opensourcebibliotheek, de helft zelfs met een kritieke kwetsbaarheid. En wat ook zorgwekkend was: 90 procent van de toepassingen gebruikte minstens één opensourcecomponent van vier jaar oud of die al twee jaar geen ontwikkeling meer gekend had.

En verder

Hui Peng van Purdue University en Mathias Payer van EFPL hebben USBFuzz ontwikkeld, een ‘fuzzer’ om potentieel uit te buiten fouten in usb-drivers te ontdekken. De tool is cross-platform en heeft al 10 CVE’s in Linux en meerdere crashes in Windows en macOS ontdekt. De onderzoekers publiceren de broncode later dit jaar. Chrome 83 schakelt dns-over-https (DoH) standaard in. En in qmail werd een 15 jaar oud lek (her)ontdekt dat toeliet om op afstand code uit te voeren.

Microsoft heeft een beloning van $ 100.000 uitgeloofd voor wie erin slaagt in te breken in Azure Sphere, zijn beveiligingssysteem voor IoT-apparaten. Het is gebaseerd op Sphere OS, een door Microsoft ontwikkelde Linux-distributie. Mozilla verhoogt dan weer zijn beloning voor het melden van kwetsbaarheden in Firefox. De beloning wordt nu bovendien verdeeld tussen elke melder in de eerste 72 uur na de eerste melding, terwijl voorheen de eerste melder met de volledige prijzenpot ging lopen.