(Koen Vervloesem) Een fout in Linux maakte het mogelijk om vpn-verbindingen te kapen. Enkele Python-pakketten waren slachtoffer van typosquatting. En wie kwetsbaarheden in opensourcesoftware vindt, krijgt grotere beloningen. Deze en andere beveiligingsnieuwtjes lees je in Focus op veiligheid.

Fout in Linux laat toe om vpn-verbinding te kapen

Onderzoekers van de University of New Mexico ontdekten een fout (CVE-2019-14899) in Linux en andere Unixachtige besturingssystemen (inclusief de BSD’s, macOS, iOS en Android) waarmee een aanvaller een vpn-verbinding kan kapen. De exploit is met succes getest op OpenVPN, WireGuard en IKEv2/IPSec, maar buit geen zwakheid in een specifiek vpn-systeem uit maar in het onderliggende besturingssysteem.

Iemand die de controle heeft over een draadloos toegangspunt kan door de fout detecteren of een verbonden gebruiker van een vpn gebruikmaakt. Dat doet hij door pakketten naar de hele ip-adresruimte van een vpn (onder OpenVPN standaard 10.8.0.0/24) te sturen: de vpn-client reageert op een SYN-ACK pakket met een RST-pakket, waardoor de aanvaller het ip-adres van het slachtoffer te weten komt.

Maar er kan nog meer: de aanvaller kan ook te weten komen of het slachtoffer via het vpn een specifieke website bezoekt. Daarvoor spooft hij pakketjes van de website waarin hij geïnteresseerd is. Een SYN-ACK van het ip-adres van de website en poort 80 of 443 naar het ip-adres van het slachtoffer op het vpn en de juiste poort levert een ACK op, terwijl elke andere combinatie een RST oplevert.

En tot slot slaagden de onderzoekers er ook in om door het tellen van versleutelde pakketten en het analyseren van hun grootte de SEQ- en ACK-getallen van de actieve tcp-verbinding te verkrijgen om zo data in de tcp-stream te injecteren en dus de vpn-verbinding te kapen.

Tot de kwetsbare Linux-distributies behoorden onder andere Ubuntu 19.10, Fedora, Debian 10.2, Arch 2019.05 en Manjaro 18.1.1. Het gaat daarbij onder andere over alle Linux-distributies met een systemd-versie van na 28 november 2018, die de modus voor reverse path filtering van strict naar loose veranderde.

https://seclists.org/oss-sec/2019/q4/122

Python-pakketten slachtoffer van typosquatting

Typosquatting is een praktijk waarbij oplichters een domeinnaam registreren die maar één letter verschilt van die van een bekende website. Ze rekenen erop dat mensen zich weleens vergissen bij het intypen van het adres.

Onlangs ontdekte een contributor van het Python-pakket dateutil dat iemand met het project iets gelijkaardigs had gedaan. Op PyPI (Python Package Index) staat het pakket als python-dateutil, maar iemand had op PyPI een pakket met de naam python3-dateutil geüpload dat kwaadaardige code bevat. Dat was wel sluw, want nu Python 2 sinds 1 januari 2020 niet meer ondersteund is, gaat iemand die op zoek gaat naar dateutil wellicht denken dat python3-dateutil het correcte pakket voor Python 3 is.

Het kwaadaardige pakket paste het trucje overigens nog een keer toe door een pakket jeIlyfish (met hoofdletter i) te importeren dat op zijn beurt een kwaadaardige versie van jellyfish was. Het programma zocht naar gevoelige bestanden in de home-directory van de gebruiker, waaronder sleuels voor ssh en gpg. Het kwaadaardige jeIlyfish-pakket stond overigens al bijna een jaar in PyPI. Beide pakketten werden na de ontdekking onmiddellijk verwijderd door de beheerders van PyPI.

Google, Mozilla en GitHub helpen opensourceprojecten te beveiligen

Google looft al sinds 2013 een beloning uit voor het oplossen van belangrijke beveiligingskwetsbaarheden in veel gebruikte opensourceprojecten. Dit is het Patch Rewards Program en onder andere OpenSSH, OpenSSL, de Linux-kernel, Apache, Nginx, jQuery en OpenVPN hebben er de vruchten van kunnen plukken.

Maar tot nu toe bleef dat reactief: iemand ontdekte een fout in een project, loste die op en kreeg daarvoor een beloning. Google wil nu ook teams proactief financieel ondersteunen als ze de beveiliging van een opensourceproject willen verbeteren. Kleine teams kunnen $ 5.000 krijgen om een boel beveiligingskwetsbaarheden op te lossen. Grote teams kunnen $ 30.000 krijgen om een project te refactoren of nieuwe functionaliteit te implementeren en zo de veiligheid te verbeteren.

Google zal maandelijks de aanvragen bekijken en daaruit projecten selecteren die aan de voorwaarden voldoen. De voorkeur zal uitgaan naar projecten die vitaal zijn voor de gezondheid van internet of veel gebruikers hebben.

Ook Mozilla updatet zijn bugbountyprogramma. Wie een kwetsbaarheid in een website of webdienst van Mozilla ontdekt, krijgt nu een dubbel zo hoge beloning. De beloning voor een op afstand uit te buiten kwetsbaarheid in een kritieke website, zoals addons.mozilla.org of bugzilla.mozilla.org, wordt verdrievoudigd tot $ 15.000. Bovendien heeft Mozilla de lijst met in aanmerking komende websites uitgebreid.

Tot slot doet ook Microsoft met GitHub een duit in het zakje: het heeft GitHub Security Lab geopend, een platform om beveiligingskwetsbaarheden in opensourceprojecten te rapporteren en op te lossen. Als onderdeel van dit Security Lab maakt GitHub ook het analyseprogramma CodeQL beschikbaar. Wie met behulp van CodeQL een kwetsbaarheid in opensourcesoftware vindt, komt in aanmerking voor een beloning.

https://goo.gle/patchz-nomination

https://www.mozilla.org/en-US/security/web-bug-bounty/

https://securitylab.github.com

OpenBSD op afstand uit te buiten

OpenBSD, dat op zijn homepage adverteert met de slogan “Only two remote holes in the default install, in a heck of a long time!”, werd geplaagd door een authenticatiezwakheid die op afstand uit te buiten was. Door de fout, CVE-2019-19521, kon een aanvaller die een gebruikersnaam van de vorm -option invoerde de authenticatie omzeilen. Dat kon op afstand door smtpd, ldapd en radiusd.

Sshd valt ook voor deze truc, maar controleert daarna of de gebruiker wel geldig is, waardoor het programma niet uit te buiten is. Iets gelijkaardigs gebeurt met su: de authenticatie wordt omzeild, maar onmiddellijk erna crasht het programma. Naast deze fout vonden de onderzoekers van Qualys ook enkele lokaal uit te buiten privilege escalations.

https://www.qualys.com/2019/12/04/cve-2019-19521/authentication-vulnerabilities-openbsd.txt

En verder

Er is weer een nieuwe aanval op Intel-processoren ontdekt, Plundervolt. Door de spanning van de processor nauwkeurig te verlagen, wordt de integriteit van Intel Software Guard Extensions (SGX) aangetast, terwijl de processor wel blijft werken. Op die manier kunnen gevoelige gegevens zoals aes-sleutels gestolen worden. Webmin lag dan weer onder vuur door een botnet, dat een al gepubliceerde kwetsbaarheid uitbuitte. Het botnet Roboto werkte niet met een centrale command & control server, maar peer-to-peer.

Er is ransomware opgedoken voor Nextcloud-systemen: NextCry. De malware versleutelde de gegevens van de gebruiker door misbruik te maken van een eerder ontdekt beveiligingslek in Nginx/php-fpm. De ransomware Ryuk voor Windows viel dan weer op doordat ze stopte met Linux-mappen zoals bin, boot, lib, etc enzovoort te versleutelen. Nu blijkt dat dit is om WSL-omgevingen (Windows Subsystem for Linux) links te laten liggen, zodat de gebruiker niet met een niet-werkend systeem geconfronteerd wordt.

Mozilla voegt NextDNS toe aan zijn lijst van dns-over-https-providers. Voorheen stond alleen Cloudflare op de lijst. NextDNS is een interessante toevoeging, maar helaas weer een Amerikaans bedrijf. Cloudflare lanceert met Flan een gebruiksvriendelijkere versie van de beveiligingsscanner Nmap. En Kali Linux vervangt zijn desktopomgeving GNOME door Xfce.