Wat is XOR-obfuscatie? Een gids voor alles over OpenVPN scramble

OpenVPN Scramble is een manier om OpenVPN-verkeer te verbergen (verdoezelen) zodat het niet lijkt op OpenVPN-verkeer. Het is zeer effectief tegen vele DPI-technieken (Deep Packet Inspection) en is goed in het omzeilen van zelfs geavanceerde VPN-blokken.

OpenVPN Scramble maakt gebruik van het XOR-coderingsalgoritme. Het is heel gemakkelijk aan te brengen en ook erg licht. Veel VPN-diensten wenden zich tot OpenVPN Scramble om geavanceerde VPN-blokken van het soort dat wordt gebruikt door China en Egypte te verslaan.

Het XOR-cijfer

XOR wordt meestal uitgesproken als Ex-of en staat voor Exclusief of, een soort wiskundige bewerking die door het XOR-cijfer wordt gebruikt. Het XOR-algoritme is in feite een eenvoudig vervangingscijfer. Met andere woorden, het vervangt gewoon elke alfanumeriek in een string die erin wordt ingevoerd door een ander nummer.

Cruciaal is dat het algoritme omkeerbaar is. Dus als u de uitvoertekenreeks terugvoert in hetzelfde algoritme, krijgt u de oorspronkelijke tekenreeks met het cijfer verwijderd.

Dit soort cijfer wordt ook een additief cijfer genoemd en is het eenvoudigste type dat er is. Het is het soort ROT13-codering dat slimme kinderen vaak gebruiken om geheime berichten te maken. Behalve dat het een veel geavanceerder algoritme gebruikt dan de meeste kinderen kunnen bedenken.

Wat is het XOR-cijfer

OpenVPN Scramble

Als dit niet erg veilig klinkt, is het dat niet. Een eenvoudig XOR-cijfer kan inderdaad gemakkelijk worden verbroken met behulp van eenvoudige frequentieanalysetechnieken (op zoek naar patronen in de uitvoertekenreeks).

OpenVPN Scramble gebruikt de XOR-codering niet om uw gegevens te beveiligen. OpenVPN doet dat.

OpenVPN geeft echter gecodeerde gegevens een onderscheidende handtekening die kan worden gedetecteerd met DPI. Door de waarde van elke bit van gegevens die worden beschermd door OpenVPN te vervangen door een andere waarde, versleutelt XOR de gegevens op een manier die deze handtekening zeer moeilijk te detecteren maakt.

En voor VPN-services houdt het XOR-goud hier niet op. De open source openvpn_xor scramble-patch maakt het voor hen bijna triviaal eenvoudig om XOR Scramble te implementeren en aan hun klanten aan te bieden.

Hoe effectief is OpenVPN Scramble?

Scrambling van OpenVPN-gecodeerde gegevens met de XOR-codering maakt het moeilijker voor systemen zoals de Great Firewall of China om.

XOR-verduistering heeft een bepaald niveau van bekendheid bereikt. Het kleine formaat en de eenvoudige implementatie maken het een populaire keuze voor malware-ontwikkelaars die hun vervelende stukjes code willen verbergen voor detectie van anti-malware.

Veel malware-ontwikkelaars gebruiken graag een waarde van 1 byte om als sleutel te fungeren. De code die door deze sleutel wordt verdoezeld, doorloopt vervolgens elke byte van de gegevens die moeten worden gecodeerd, waarbij elke byte wordt XOR met de geselecteerde sleutel.

Gegevens die zijn verborgen met een waardetoets van 1 byte, zijn relatief eenvoudig te herkennen, omdat deze repetitieve patronen creëert in de anders willekeurig ogende code. Hiervoor is een aantal programma's ontwikkeld.

Het is echter mogelijk om langere sleutels te kiezen tot de bytewaarde van de gegevens die worden verborgen. De effectiviteit van de XOR-functie bij het versleutelen van gegevens is volledig afhankelijk van hoe willekeurig de sleutel is die wordt gebruikt.

Wat betekent dit allemaal? Welnu, het wijdverbreide gebruik van XOR-obfuscatie voor malware is een bewijs van de effectiviteit ervan.

NordVPN is een VPN-bedrijf dat XOR-codering aanbiedt, dus we hebben zijn expert op het gebied van digitale privacy, Daniel Markuson, gevraagd om commentaar te geven over hoe effectief het is om VPN-blokken te verslaan. Hij stelt voor het volgende experiment uit te voeren met behulp van de Wireshark-pakketanalysator:

1. Schakel gewone VPN in. Wireshark ziet het verkeer als OpenVPN.

Open VPN scramble XOR

2. Schakel Obfuscated VPN via TCP in (de XOR-optie van NordVPN). Wireshark identificeert het verkeer niet langer als OpenVPN.

Verblufte VPN via TCP

“XOR werkt absoluut. Is het altijd effectief tegen overheidsinspanningen om OpenVPN-verkeer te blokkeren? Nee helemaal niet. Maar zoals uit het bovenstaande experiment blijkt, is het ingewikkelder om VPN-verkeer te identificeren als XOR wordt gebruikt. Het is daarom moeilijker te blokkeren. ”

Controverse

Ondanks zijn voordelen is de openvpn_xorpatch enigszins controversieel. De OpenVPN-ontwikkelaars hebben inderdaad geweigerd om het in een officiële versie van OpenVPN te implementeren en raden het gebruik af.

“Wij (OpenVPN-ontwikkelaars) moedigen mensen die hun eigen versies van OpenVPN bouwen niet aan om het draad-protocol op deze manier te wijzigen, zonder dat de patch een goede patch-review doorloopt en mogelijke beveiligingsrisico's met betrekking tot een dergelijke wijziging heeft geëvalueerd.

En we raden vooral af om een ​​dergelijke aanpak te gebruiken wanneer er een veel betere oplossing bestaat die door de TOR-gemeenschap wordt gebruikt. Het wordt obfsproxy genoemd en kan samen met OpenVPN worden gebruikt zonder opnieuw compileren van OpenVPN. ”

Ondanks deze waarschuwingen hebben de ontwikkelaars van open source macOS VPN-client, Tunnelblick, ervoor gekozen om een ​​aangepaste versie van de XOR-patch in hun software op te nemen:

“Ongeacht de beslissing van de OpenVPN-ontwikkelaars om de patch niet in OpenVPN op te nemen, is de patch aantrekkelijk omdat deze zo eenvoudig te implementeren is: pas de patch eenvoudig toe op zowel de OpenVPN-server als de OpenVPN-client en voeg een enkele, identieke optie toe aan de configuratiebestanden voor elk. Het gebruik van obfsproxy is ingewikkelder omdat het een ander, afzonderlijk programma op zowel de server als de client uitvoert.

Omdat de patch zo eenvoudig te implementeren is, is de patch opgenomen in alle versies van OpenVPN die zijn opgenomen in Tunnelblick vanaf build 4420. "

Het is vermeldenswaard dat de Tunnelblick-ontwikkelaars de oorspronkelijke XOR-patch hebben geconstateerd met kritieke fouten en daarom een ​​bijgewerkte versie van de patch hebben uitgebracht die alle gevonden problemen heeft opgelost:

"Grote organisaties hebben het vermogen en de kracht om verkeer te" decoderen "en te detecteren als OpenVPN-verkeer, en de verwarring die deze patch biedt, is zo rudimentair dat relatief eenvoudige cryptanalyse de inhoud waarschijnlijk ook kan decoderen."

We hopen absoluut dat VPN-providers die OpenVPN Scramble aanbieden deze verbeterde XOR-patch gebruiken, of soortgelijke wijzigingen hebben aangebracht in het origineel.

Alternatieven voor OpenVPN Scramble

Obfsproxy

De OpenVPN-ontwikkelaars hebben duidelijk hun favoriete obfuscatietactiek obsfproxy, een hulpmiddel dat is ontworpen om gegevens in een obfuscatielaag te verpakken.

Obfsproxy is ontwikkeld door het Tor-netwerk, grotendeels als reactie op China die de toegang tot openbare Tor-knooppunten blokkeert. Het is echter onafhankelijk van Tor en kan worden geconfigureerd voor OpenVPN.

Obfsproxy wordt gebruikt om inplugbare transporten uit te voeren die het VPN- (of Tor) verkeer door elkaar gooien. Het ondersteunt een aantal van deze inplugbare transporten, maar obfs4 is het nieuwste state-of-the-art "look-like nothing" obfuscation-protocol van Tor Project.

stunnel

Dit is nog een goede VPN-verduisteringstactiek. Het werkt door VPN-verkeer door een TLS / SSL-tunnel te leiden. TLS / SSL is de codering die wordt gebruikt door HTTPS, dus VPN-verbindingen (meestal OpenVPN) die worden gerouteerd via deze TLS / SSL-tunnels zijn daarom zeer moeilijk te onderscheiden van regulier HTTPS-verkeer. Raadpleeg onze HTTPS-gids voor meer informatie.

Dit komt omdat de OpenVPN-gegevens zijn ingepakt in een extra laag TLS / SSL-codering. Omdat DPI-technieken niet in deze 'buitenste' coderingslaag kunnen doordringen, kunnen ze de OpenVPN-codering die in de tunnel is verborgen niet detecteren.

Conclusie

OpenVPN Scramble is eenvoudig in te zetten voor VPN-services en kan zeer effectief zijn bij het ontwijken van VPN-blokken, maar het is niet zo robuust in het verbergen van VPN-verkeer als obfsproxy of stunnel.

Simpelweg proberen om een ​​VPN te gebruiken is illegaal op zeer weinig plaatsen in de wereld, dus als uw VPN-verbinding wordt geblokkeerd, is het weinig kwaad om te zien of OpenVPN Scramble het zal deblokkeren, waarschijnlijk.

In die zeldzame omstandigheden waarin u daadwerkelijk in de problemen kunt komen als VPN-gebruik wordt ontdekt, zijn obfsproxy of stunnel echter veiliger.

Brayan Jackson
Brayan Jackson Administrator
Sorry! The Author has not filled his profile.
follow me