አንድ ተጨማሪ አዲስ መስመር ከCONNECT በኋላ TLSን ሊያበላሽ ይችላል
በእጅ የተጻፈ የፕሮክሲ አገናኝ ዋሻ ሲከፍትና ወዲያውኑ የTLS ዲኮድ ስህተት ሲያስከትል የHTTP ራስጌ አቀራረብን ይመርምሩ።
CONNECT 200 ሲመልስና TLS ወዲያውኑ ማስተካከል ሲያቅተው፣ ሰርተፊኬቶችን ወይም ሲፈሮችን ከመቀየርዎ በፊት በአገናኙ ውስጥ ያሉትን የድንበር ባይቶች ይመርምሩ።
የተፈጠረ የፈቃድ ዋጋ አስቀድሞ በአዲስ መስመር ሊጠናቀቅ ይችላል። ሌላ የመስመር መጨረሻ መጨመር የHTTP ራስጌዎችን በጊዜው ሊያጠናቅቅና የታሰበውን Host መስክ ወይም ሌላ ግልጽ ጽሑፍ ከጥያቄው በስተጀርባ ሊተው ይችላል።
አነስተኛ የHTTP/1.1 CONNECT ጥያቄ በመስመሮች መካከል CRLF እና በመጨረሻ ባዶ መስመር ይጠቀማል፦
b"CONNECT example.com:443 HTTP/1.1\r\nHost: example.com:443\r\n\r\n"ማንኛውንም የፈቃድ መስክ ከዚያ የመጨረሻ ባዶ መስመር በፊት ያስቀምጡ፣ ያለ ውስጥ የመስመር መቋረጥ። በPython "\n" አዲስ መስመርን ይወክላል፤ backslash እና n ፊደል የያዘ ጥሬ ሕብረቁምፊ ግን አይወክልም። ከማጥፋት መሞከርዎ በፊት የኢንኮዲንግ አጋዥ የሚያመነጫቸውን ባይቶች ይመልከቱ—የቆዩ አጋዥዎች የመስመር መቋረጦችን ሊጨምሩ ይችላሉ።
CONNECT ከተሳካ በኋላ፣ እነዚያ ቀሪ ባይቶች የዋሻው ፕሮቶኮል ናቸው። የጠፋ ግልጽ ጽሑፍ TLS ን ወደሚጠብቅ አጋር ሊደርስ ይችላል። የተሳካው ሁኔታ ከተበላሸ ጥያቄ በኋላ ተሰልፈው ያሉትን ባይቶች ማስተካከል አይችልም።
የመቀበያ ድንበሩንም ይመርምሩ። ሶኬቱን ለTLS ከማስረከብዎ በፊት ሙሉውን የፕሮክሲ ምላሽ ያንብቡ፣ ከፊል ንባቦችን ያስተናግዱ እና ከራስጌዎቹ በላይ የተነበበውን ሁሉ ይጠብቁ። አንድ የሶኬት ንባብ አንድ ሙሉ መልእክት ሊይዝ አይገባም።
ይህን ተንታኝ ካለዎት፣ የተራቀቀ የባይት ውክልናን ከሽቦ ሰዋሰው ጋር ያወዳድሩ፤ የይለፍ ቃሉን እየደበቁ ርዝመቶችንና የመስመር ድንበሮችን እንዲታዩ ያድርጉ። የፕሮክሲ ግንኙነት ብቻ ለሚፈልግ መተግበሪያ፣ የተጠበቀ አገናኝ ይህን የክፈፍ ኮድ መያዝን ያስወግዳል።