Üks lisanewline võib pärast CONNECTi TLS-i rikkuda
Kontrollige HTTP-päiste raamimist, kui käsitsi kirjutatud puhverserveri konnektor avab tunneli ja annab kohe TLS-i dekodeerimisvea.
Kui CONNECT tagastab 200 ja TLS ei suuda kohe dekodeerida, kontrollige konnektori piiribaite enne sertifikaatide või šifrite vahetamist.
Genereeritud autoriseerimisväärtus võib juba lõppeda reavahetusega. Veel ühe reavahetuse lisamine võib HTTP-päised enneaegu lõpetada, jättes kavandatud Host välja või muu lihtteksti päringu taha.
Minimaalne HTTP/1.1 CONNECT päring kasutab ridade vahel CRLF-i ja lõpus tühja rida:
b"CONNECT example.com:443 HTTP/1.1\r\nHost: example.com:443\r\n\r\n"Asetage mis tahes autoriseerimisväli enne seda viimast tühja rida, ilma manustatud reavahetuseta. Pythonis tähistab "\n" reavahetust; toorstring, mis sisaldab kurakriipsu ja tähte n, mitte. Kontrollige, milliseid baite kodeerimisabiline loob, enne kui proovite neid eemaldada—vanemad abilised võisid reavahetusi lisada.
Kui CONNECT õnnestub, kuuluvad need ülejäänud baidid tunneli protokollile. Eksinud lihttekst võib jõuda TLS-i ootava partnerini. Õnnestunud olek ei saa parandada baite, mis on juba vigase päringu järel järjekorda pandud.
Kontrollige ka vastuvõtupiiri. Lugege täielik puhverserveri vastus enne pistiku TLS-ile üleandmist, käsitlege osalisi lugemisi ja säilitage kõik, mis loetakse päistest kaugemale. Üks pistiku lugemine ei pea sisaldama ühte tervet sõnumit.
Kui see parser kuulub teile, võrrelge redigeeritud baidiesitust traadi grammatikaga; hoidke pikkused ja reapiirid nähtavad, varjates samal ajal parooli. Rakendusele, mis vajab ainult puhverserveri ühendust, väldib hooldatud konnektor vajadust selle raamimiskoodi omada.