Is die VPN-app de officiële build of een kopie?
Een gekopieerde naam, een geldige handtekening en een werkende tunnel bewijzen minder dan ze lijken. Vergelijk de uitgever, het pakket en het updatepad met de pagina van de ontwikkelaar.
Nabootsingssoftware kopieert namen, pictogrammen en schermafbeeldingen, en ze maakt verbinding goed genoeg om overtuigend te lijken. Dat de tunnel werkt is geen bewijs voor iets, want de vraag is wie de binaire file heeft geschreven. Behandel dit als een identiteitscontrole en niet als een beveiligingsaudit, en haal elke referentiewaarde uit een kanaal dat je zelf hebt gekozen, niet van de pagina van de app zelf. Er volgen vijf controles, en elk daarvan kan mislukken terwijl de andere slagen. Werk ze in volgorde af, want een latere controle kan een eerdere niet redden.
Haal je referentiewaarden uit een kanaal dat je zelf hebt gekozen
Open de officiële downloadinstructies van het project, of het beheerde softwarekanaal van je organisatie, voordat je kijkt wat er is geïnstalleerd. Noteer de verwachte winkeluitgever, de identiteit van het pakket of de installer en de ondersteunde platforms, en bewaar die notitie waar je hem bij de volgende update terugvindt. Een zoekresultaat of een gesponsorde plaatsing is dat kanaal niet, en de betaalde plaatsing staat juist boven het organische resultaat omdat mensen op de eerste treffer klikken. Zet de pagina in je bladwijzers zodra je hem hebt geverifieerd, zodat de volgende download begint met een beslissing en niet met een herhaalde zoekopdracht.
Een spiegel of een pakketrepository van derden is ook een kanaal, en het is alleen zo betrouwbaar als de beheerder ervan. Schrijf op welke je hebt gebruikt, want precies dat detail vergeten mensen tussen updates.
Vergelijk de geïnstalleerde uitgever, niet de naam
Vertrouw op de eigen handtekening- en applicatierecords van het platform waar die bestaan, en lees daarna de versie, het updatepad en de machtigingen die de app heeft aangevraagd. Een geldige handtekening opmerken is niet hetzelfde als de uitgever opmerken die je verwachtte, want een certificaat bevestigt alleen dat een binair bestand is ondertekend door wie het bezit. Een handtekening van een bedrijf waar je nog nooit van hebt gehoord is nog steeds een geldige handtekening, en daarom moet de test de partij noemen die je bedoelde. Een installer die extra software meebrengt, vraagt om een certificaat of opent een accountvenster dat je niet verwachtte, heeft een uitleg nodig uit de documentatie van het product zelf.
# Windows: inspect the installed signature
Get-AuthenticodeSignature "C:\Program Files\WireGuard\wireguard.exe"
# macOS: check the bundle identity
codesign -dv --verbose=2 /Applications/WireGuard.app
# Linux: confirm the package origin
apt-cache policy wireguardVoer de controle uit die bij het platform past, en vergelijk de uitvoer met de referentienotitie die je in de eerste stap hebt gemaakt. Een afwijking in het veld van de uitgever is informatiever dan welke visuele gelijkenis dan ook, want een pictogram kost niets om te kopiëren. Als de uitvoer een organisatie noemt die nergens in de documentatie van het project voorkomt, stop daar dan en log niet in.
Wat de geïnstalleerde handtekening werkelijk bewijst
Wanneer een project controlesommen, handtekeningen of releasesleutels publiceert, doorloop dan de hele gedocumenteerde procedure, inclusief het deel over het verkrijgen van de referentiesleutel. Een controlesom die op dezelfde pagina als de download is afgedrukt, bewijst alleen dat het bestand bij die pagina past, wat een zwakkere bewering is dan het lijkt. De nuttige vraag is of de handtekening aansluit op de identiteit die het project documenteert, via een pad dat de nabootsing niet beheert. Dit is de stap die mensen afkorten tot of het bestand überhaupt een handtekening heeft.
Een sleutel die van een sleutelserver is gehaald en een vingerafdruk die in een README is afgedrukt, zijn geen gelijkwaardige bewijzen. Bepaal welke je werkelijk hebt gebruikt voordat je het bestand geverifieerd noemt.
Wanneer de app echt is maar het profiel niet
Een client en een serverprofiel komen van twee verschillende uitgevers, en ze door elkaar halen is een andere fout dan de verkeerde binaire file installeren. Een OpenVPN-build die door één project wordt onderhouden, laadt met plezier een configuratie die door een onbetrokken beheerder is geschreven, en dat is normaal gedrag en geen bewijs van compromittering. Het omgekeerde geldt ook: een legitiem profiel maakt een onofficiële client niet betrouwbaar. Verifieer elk object tegen zijn eigen bron, en laat nooit toe dat een werkende verbinding twee controles tot één samenvoegt.
Vraag welk van de twee objecten werkelijk in twijfel staat voordat je handelt, want de oplossing verschilt. Een slechte client betekent opnieuw installeren, terwijl een slecht profiel betekent dat je één bestand verwijdert en opnieuw uitgeeft.
Handel bij onzekerheid en ruim daarna goed op
Als de identiteit onzeker blijft, stop dan met het verstrekken van inloggegevens en haal de software onafhankelijk binnen via het geverifieerde kanaal dat je hebt gebladwijzerd. Volg de richtlijnen van het platform voor ongewenste toepassingen in plaats van een map te verwijderen en te hopen. Noteer daarna de uitgever, de versie en de verificatiemethode die je hebt geaccepteerd, zodat de volgende update met een feit kan worden vergeleken en niet met het geheugen.
Na een legitieme vervanging, loop de oude profielen en verleende machtigingen na in zowel de client als het besturingssysteem. Het verwijderen van het gedownloade bestand laat de geïnstalleerde toepassing staan, en een oud profiel kan de client die het heeft gemaakt overleven terwijl het nog steeds naar een eindpunt wijst dat niemand onderhoudt. De officiële installatiepagina van WireGuard is een goed voorbeeld van het soort referentie dat de moeite waard is om te bewaren: het is de eigen lijst van de ontwikkelaar en geen spiegel.