Kivinjari hufungua jina la mwenyeji wa VPN kwa HTTPS bila malalamiko, na mteja wa SSTP bado anakataa kuunganishwa. Hakuna kitu kinachopingana katika jozi hilo. SSTP hutumia TLS kama usafirishaji wa nje kisha huendesha ombi lake mwenyewe na mzigo wa PPP ndani ya muunganisho huo, kwa hiyo upakiaji wa ukurasa uliofanikiwa unathibitisha jambo moja jembamba tu: mwenyeji anajibu GET kwenye bandari 443. Mteja anauliza swali lingine, na seva inaweza kulijibu vibaya.

Ukurasa hupakia na handaki haipaki

Watu huelekea jaribio la kivinjari kwa sababu ni la haraka, kisha huchukua matokeo kama ushahidi kwamba seva inafikiwa na imesanidiwa. Ni ushahidi kuhusu GET kwenye njia ambayo upau wa anwani ulifungua, si zaidi. Mazungumzo ya VPN huanza baada ya kupeana mkono sawa wa TLS, lakini hutuma mbinu na njia ambayo ukurasa wa wavuti hautumii kamwe. Kwa hiyo jibu la 200 kwa kivinjari halisemi chochote kuhusu kama kiishio cha SSTP kipo.

Tenganisha uchunguzi huo miwili na utafutaji unakuwa mfupi. Usafirishaji na mnyororo wa vyeti hufanya kazi, na kitu katika mabadilishano ya itifaki juu yao hakifanyi kazi. Hii ni uchunguzi tofauti na bandari iliyovunjika au cheti kilichoisha muda, na unahitaji ushahidi tofauti.

Mteja wa SSTP hutuma nini kwa kweli

Mteja hutuma ombi la HTTP kwa mbinu ya SSTP_DUPLEX_POST kwenye njia /sra_{GUID}/, kisha huweka mwili wa muunganisho wazi kama mkondo wa pande mbili unaobeba fremu za PPP. Seva inayotii hujibu HTTP/1.1 200 na huacha kujifanya kama seva ya wavuti. Kitu kingine chochote ni sahihi: 405 au 404 inamaanisha kiishio hakipo, 301 au 302 inamaanisha kitu kinaelekeza ombi mahali pengine, na FIN ya papo hapo inamaanisha proksi au seva ilifunga mkondo.

Ndiyo sababu lengo lazima liwe seva ya SSTP na si seva ya wavuti iliyobandikwa cheti cha TLS. Mbinu, njia na mwili wa muda mrefu ni mahitaji ya itifaki, kwa hiyo proksi ya kinyume haiwezi kuziongeza kwa usanidi pekee. Proksi inayopeleka HTTPS ya kawaida kikamilifu bado inaweza kukataa mbinu ambayo haijui.

Mahali proksi au seva ya wavuti inapovunja mkondo

Mpatanishi hukagua mstari wa ombi la HTTP kabla ya kupeleka kitu chochote, na mbinu maalum yenye njia isiyo ya kawaida inaweza kushindwa katika kanuni zake. Baadhi ya vifaa huwasilisha ukurasa wa kawaida huku vikikataa au kukatiza handaki, kwa hiyo mteja huripoti muunganisho unaoanza kisha kufa badala ya kukataliwa safi. Vingine hukubali ombi, kisha hutumia muda wa mwili au kutokuwa na shughuli ambao keepalive za PPP haziwezi kustahimili. Zote mbili zinaonekana sawa kutoka upande wa mteja, ndiyo sababu hatua iliyoshindwa ni muhimu zaidi kuliko maandishi ya hitilafu.

Kushiriki bandari 443 kati ya tovuti na SSTP ni uchaguzi wa uelekezaji, si ahadi kwamba kila hatua itashughulikia mazungumzo yote mawili kwa njia moja. Ikiwa kipo kwenye njia kipimo cha mzigo, ukuta wa moto au kimaliza TLS, kiongeze kwenye orodha ya washukiwa kabla ya kugusa usanidi wa VPN.

Jaribu hatua tofauti

Endesha ukaguzi kwa mpangilio na usimame kwenye kushindwa kwa kwanza, kwa sababu kila hatua huondoa tabaka tofauti. Kichunguzi cha TLS hapa chini hutenganisha utambulisho wa cheti na kila kitu ambacho SSTP hufanya. Badilisha jina la mwenyeji na kiishio chako na usome subject na mnyororo inaoichapisha.

openssl s_client -connect vpn.example.com:443 -servername vpn.example.com

Kisha linganisha ushahidi uliobaki na hatua badala ya kukisia kutoka hitilafu ya mteja. Jedwali hapa chini ni orodha ya ukaguzi ya kunukuu kwenye tiketi, pamoja na sahihi inayotenganisha kushindwa moja na inayofuata.

StageWhat it provesFailure signature
TCP to 443A listener exists and the path is openTimeout or connection refused
TLS with SNIThe certificate matches the name you useName mismatch or untrusted chain
SSTP_DUPLEX_POST exchangeThe endpoint is an SSTP server405, 404, 301 or an early FIN
PPP authenticationThe user credential was acceptedAuth failure after a 200 response
Inner routingA permitted destination is reachableTunnel up, no reply from the target

Rekodi hatua ya mwisho iliyofanikiwa kwenye tiketi badala ya kuandika "haiwezi kuunganisha". Vipimo vya MS-SSTP huandika ombi na mabadilishano ya PPP yanayofuata kupeana mkono wa TLS, na ni rejeleo la kwa nini jaribio la kivinjari haliwezi kuchukua nafasi ya yoyote kati yao.

Kwanza utambulisho, kisha PPP

Utambulisho wa TLS na uthibitishaji wa PPP hufuatana, si mbadala, na kuchanganya kwao huwapeleka watu kwenye mpangilio mbaya wa seva. Mteja huthibitisha kwanza cheti cha seva na madhumuni yake yaliyokusudiwa, kisha PPP hujadili hali yake mwenyewe na kumthibitisha mtumiaji kwa mbinu ya changamoto-jibu au EAP. Tatizo la cheti hutoa hitilafu tofauti na nenosiri lililokataliwa, na hakuna hitilafu inayoelezea hatua ambayo nyingine inashughulikia.

Kubadilisha jina la mwenyeji na anwani, au kubofya kupita onyo la cheti, huondoa ukaguzi ambao ungegundua hatua inayoshindwa badala ya kuirekebisha. Weka onyo na ulisome. Pia usiweke upya nenosiri la PPP wakati mabadilishano ya HTTP hayakufikia tabia ya SSTP, kwa sababu vitambulisho havikuwahi kuombwa.

Makala zinazohusiana