Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Fantom Opery, "VPN" a Secure Proxy v Opeře

664 views

Published on

Jak jsem pomocí prohlížeče přišel na to, že Opera VPN není VPN aneb co všechno na sebe Chrome prozradí v chrome://net-internals/ a jak to můžete použít pro ladění nebo zkoumání různých udělátek a extenzí.

Published in: Internet
  • Login to see the comments

  • Be the first to like this

Fantom Opery, "VPN" a Secure Proxy v Opeře

  1. 1. Jak jsem přišel na to, že „VPN“ v prohlížeči Opera celkem pochopitelně není VPN. A jak stejný postup můžete použít i vy třeba pro zkoumání extenzí nebo jiných vnitřností browserů. Slajdy obsahují poznámky, které v původní prezentaci nejsou. Michal ŠpačekMichal Špaček www.michalspacek.czwww.michalspacek.cz @spazef0rze@spazef0rze
  2. 2. Operu milovalo a používalo hodně webových vývojářů, včetně mě. Od tohoto původně norského prohlížeče se často inspirovali i výrobci ostatních browserů, z Opery převzali například „taby“. Počátkem roku 2008 byla v Praze otevřena vývojová pobočka Opera Software (a o pár let později zase v tichosti zavřena). V létě 2013 vyšla verze 15 a od té doby je prohlížeč Opera postaven na projektu Chromium a používá jádro Blink, stejně jako Chrome a další browsery.
  3. 3. V roce 2016 se v Opeře objevil vestavěný „ad-blocker“ a „VPN“. Software pro tvorbu Virtual private network zpřístupňuje privátní sítě přes Internet. VPN se také používají pro ochranu připojení v případě používání veřejných Wi-Fi, umí chránit veškerý provoz z a do zařízení, nehledě na program, který data posílá nebo přijímá. VPN pracují na 2. (spojové) nebo 3. (síťové) vrstvě OSI modelu.
  4. 4. Ondrej Galbavý mě upozornil, že v Opeře by to tak být nemuselo. Jeho tweet adresovaný tehdejšímu zástupci CTO Opery říkal, že v Opeře je proxy, ne VPN. Bruce Lawson ho ovšem ujistil, že to opravdu je VPN. To mě zaujalo a vydal jsem se nalézt pravdu, Deputy CTO by přece měl vědět, co tam mají. Důvěřuj, ale…
  5. 5. Toto je drobný text pod checkboxem, kterým v nastavení Opery povolujete „VPN“.
  6. 6. PROXY WEB HTTPS (TLS 1.2) HTTP/HTTPS DNS „VPN“ v Opeře je opravdu proxy, přesněji secure proxy. Provoz mezi prohlížečem a proxy serverem je vždy šifrovaný pomocí HTTPS, nehledě na to, na jaký web se nakonec pošle požadavek. DNS překlad na IP adresu provádí také proxy server.
  7. 7. Přišel jsem na to pomocí prohlížeče samotného, zkoumal jsem co a kam posílá. V Developer Tools (F12) ale nevidíte všechno, musíte jít trochu hlouběji, do chrome://net-internals. Požadavky, nejen ty interní, najdete v Events, pro zobrazení celých POST požadavků musíte v Capture povolit Include the actual bytes. Seznam speciálních chrome URL pro prohlížeč Chrome najdete na chrome://chrome-urls/, ale v Opeře všechny nefungují. Firefox má seznam na about:about a v popisu protokolu about na Mozilla Developer Network.
  8. 8. Když v nastavení poprvé povolíte „VPN“, tak Opera pošle čtyři POST požadavky na api.surfeasy.com. Nejdříve zaregistruje uživatele (register_subscriber), poté zařízení (register_device), pak získá seznam zemí (geo_list), ve kterých jsou proxy servery, a nakonec zjistí IP adresy těch proxy serverů (discover).
  9. 9. Source Type: URL_REQUEST Rozkliknutím událostí typu URL_REQUEST zjistíte hlavičky těch požadavků. V současné Opeře verze 44 již obsah podstatných hlaviček výrobce skryl, v dřívějších verzích („VPN“ je ve vývojářské Opeře od verze 38) byl API klíč vypsán.
  10. 10. Source Type: SOCKET Když výrobce skryl API klíč v URL_REQUEST, tak se dal ještě najít v události typu SOCKET, společně s tělem POST požadavku, pokud jste povolili zobrazování všech bajtů na záložce Capture. Od února 2017 (Opera 43) už je skrytý i tam.
  11. 11. Source Type: HTTP_STREAM_JOB Jak tedy ověřit, že „VPN“ v Opeře je vlastně proxy? V detailu události typu HTTP_STREAM_JOB najdete nastavení Proxy auto-config (PAC), určující proxy servery, z nichž browser vybere jeden, který se pro vybraný požadavek použije.
  12. 12. Source Type: SOCKET V události SOCKET je pak vidět i připojení na proxy server a poslání žádosti o otevření spojení na cílový web (zde ifconfig.co) metodou CONNECT. Ta se používá právě k tunelování HTTP požadavků. Všimněte si i dalších „proxy“ hlaviček.
  13. 13. Registraci uživatele a získání IP adres proxy serverů jsem pro studijní účely reimplementoval. Vytvořil jsem v Pythonu skript, který vypíše IP adresy proxy serverů i jméno a heslo potřebné pro připojení k nim. Jmenuje se The Oprah Proxy a najdete ho na GitHubu. Oprah Winfrey v jedné show rozdávala auta, můj skript rozdává proxy servery. Název se asi zalíbil i v SurfEasy, VPN divizi Opery :-)
  14. 14. Takto můj skript vypíše jméno a heslo pro proxy servery, které můžete použít třeba i ve Firefoxu. Na GitHubu naleznete ukázkový soubor pac.js a popis, jak ho využít. Secure proxy podporuje i curl od verze 7.52.0, která vyšla v prosinci 2016. Asi by bylo dobré upozornit, že při použití těchto proxy serverů se vygenerované username posílá s každým požadavkem, a že to celé může kdykoliv přestat fungovat.
  15. 15. Opera tuhle „VPN“ technologii nevytvořila úplně sama, ale v březnu 2015 ji koupila společně s kanadskou firmou SurfEasy. Ta se stala „VPN divizí Opery“.
  16. 16. Od července 2016 vlastní Operu (prohlížeč a jméno, ne celou firmu) konsorcium čínských společností. (Transakce byla dokončena v listopadu 2016.) Do prodaného balíčku patří i divize SurfEasy a její produkty.
  17. 17. Jen si to představte: vaši firmu na VPN a proxy koupí norská společnost. Tu obratem koupí skupina čínských firem, včetně vás. No a pak v Číně zakážou VPN, resp. použití VPN musí schválit čínská vláda. To je ale pech, co?
  18. 18. Opera nabízí také VPN aplikace pro iOS i Android. Obojí jsou klasické VPN, ne jen proxy servery. Asi by bylo dobré dodat, že „secure proxy“ v Opeře na zabezpečení prohlížení stránek proti hackerům v kavárnách a na konferencích stačí, jen není fér tomu říkat VPN. Nezapomeňte, že na anonymitu na Internetu VPN nestačí, a že ne každá VPN aplikace je stejně dobrá a bezpečná. MichalMichal ŠpačekŠpaček www.michalspacek.czwww.michalspacek.cz @spazef0rze@spazef0rze

×