EnglishFrenchGermanPolishSpanishTurkishRussianItalianDutchDutch

Il bug nel cliente Android PPTPP VPN

Note: Starting with 2014/12/17 the PPTP service was discontinued... Read more

SecurityKISS mette a disposizione il collegamento PPTP sui suoi server, tenendo presente che gli utenti possono anche aver voglia di collegarsi in modo sicuro dai loro tablet e smartphone dove il cliente PPTP è disponibile.

Gli utenti di Android sono una grande quota di questo gruppo. Purtroppo il software PPTP VPN per la piattaforma Android ha un difetto: se configuri il tuo PPTP VPN usando l'opzione 'Enable Encryption' nel menù 'Properties', il collegamento viene stabilito ma il trasferimento non è possibile o si blocca dopo un momento.

La causa di questo problema è il bug nell'implementazione MPPE (Microsoft Point-to-Point Encryption) nei programmi Android. Anche se PPTP VPN sembra la funzionalità di base e viene pubblicizzata sui telefoni con Android, non funziona in modo corretto. Inoltre, il difetto è stato scoperto almeno 2 anni fa, ma Google non l'ha sistemato in nessune delle recenti versioni di Android.

Anche se l'opzione 'Enable Encryption' è raccomandata nella maggior parte delle configurazioni, abbiamo messo a disposizione alcuni server di SecurityKISS senza la criptazione MPPE per permettere agli utenti di Android per usare PPTP.

L'unica differenza è che l'utente (cioè ciascuno senzo la criptazione MPPE) deve scegliere il server PPTP giusto dalla lista nel pannello del cliente:





e configurare il collegamento VPN con il server con l'opzione 'Enable Encryption' non segnata:





Dettagli tecnici del difetto:

L'errore riportato dai server PPTP suggerisce che il cliente Android PPTP cerca di negoziare un protocollo non supportato:

pppd: Protocol-Reject for unsupported protocol 0xxx

questo messaggio però può essere capito male, dato che all'inizio il protocollo viene negoziato nel modo corretto e il collegamento viene stabilito. Solo dopo qualche decina di sequenze appare un errore che si ripete con valori diversi del protocollo non supportato nel messaggio.

Questo causa la mancata sincronizzazione del tunnel PPTP e il cliente Android di conseguenza invia i byte a caso dal modulo di criptografia MPPE.