De Go-bou, de Composer-ynstallaasje en de Python-klant wurkje allegear thús en mislearje allegear binnen it bedriuws-VPN. Dat patroan fertelt dy oer it paad, net oer de applikaasje. Iets op de tunnel hat de sertifikaatkeatling feroare dy’t dyn proses sjocht, of hat de hânskudding weromset foardat der hielendal in keatling oankaam. De twa flaters sjogge der yn in terminal itselde út en freegje hiel oare antwurden.

Trije berjochten, trije meganismen

De flater x509 certificate signed by unknown authority betsjut dat der in keatling boud is en dat syn woartel ûntbrekt yn de fertrouwensopslach dy’t dat proses brûkt. De flater self-signed certificate in certificate chain betsjut meast dat in ynspeksje-proxy mei syn eigen sertifikaat antwurde, en dat is in keatling dy’t dyn útfieromjouwing net ken. In SSL EOF by de hânskudding betsjut dat de ferbining sletten waard foardat der ea in brûkber sertifikaat stjoerd wie, en dat is in tuskenapparaat dat de ClientHello wegeret, hielendal gjin fertrouwensprobleem.

It tafoegjen fan in ûnfeilige flagge lit alle trije berjochten ferdwine wylst de ûnderskepping bliuwt, en it hellet de kontrôle fuort dy’t in echte oanfaller pakke soe.

Fyn de bondel dy’t dat proses echt lêst

De bedriuwswoartel dy’t yn de Windows-opslach ynstallearre is, makket browsers en .NET-applikaasjes klear dy’t de systeemopslach rieplachtsje. Hy docht neat foar in bou dy’t yn in container rint, dy’t syn eigen CA-bondel meinimt, en neat foar in Python-proses mei certifi of in Node-proses mei syn mei-levere list. Go lêst de systeembondel fan ’e omjouwing dêr’t it binary yn rint, dus de container, net de laptop. Ien masine jout dêrom tagelyk in wurkjende browser en in mislearjend boupark.

Freegje it ark ynstee fan oan te nimmen. python3 -c "import ssl; print(ssl.get_default_verify_paths())" prints de bestannen dy’t Python rieplachtsje sil, en node -e "console.log(process.env.NODE_EXTRA_CA_CERTS)" lit sjen oft der al in oerskriuwing ynsteld is. Foar in container, rin deselde kontrôle binnen de image, want dat is de omjouwing dy’t de bou echt brûkt.

Ynstallearje ien woartel dêr’t de bou rint

Krij de ynspeksjewoartel fan IT as PEM-bestân en kontrolearje syn fingerprint fia in apart kanaal foardatsto it fertroust. Op Debian-ôflate images, kopiearje it nei /usr/local/share/ca-certificates/ en rin update-ca-certificates; images fan ’e RHEL-famylje brûke update-ca-trust nei’t it bestân yn /etc/pki/ca-trust/source/anchors/ pleatst is. Yn in containerbou, foegje dy stappen ta foar it mislearjende kommando, sadat de laach boppe de ynstallaasje fan ’e ôfhinklikheden cachet wurdt.

Foar in lokale devcontainer, mount de PEM en rin itselde bywurkjenkommando by de start ynstee fan it yn in persoanlike image te bakken dy’t nimmen oars reprodusearje kin. Ark dat syn eigen bondel meinimt hat syn eigen dokumintearre oerskriuwing nedich: pip hat in sertifikaatynstelling, npm hat in cafile-ynstelling, en de measte oaren akseptearje de standert omjouwingsfariabelen.

Dit is net itselde as elk sertifikaat akseptearje. Do foegest ien beskaat woartel, krigen fan ’e partij dy’t de ynspeksje docht, ta oan ien omjouwing, en ferifikaasje bliuwt oan foar elke oare keatling. Skriuw op hokker bestân tafoege is en wannear’t it ferfalt, want in ynspeksjewoartel wurdt fernijd lykas elke oare CA.

Wannear’t de hânskudding stjert foar in sertifikaat

As der neat oanbean wurdt, sil gjin feroaring yn ’e fertrouwensopslach helpe. Fergelykje deselde oanfraach mei de tunnel oan en út, en besjoch dan de keatling direkt mei openssl s_client -connect host:443 -servername host -showcerts. In ferbining dy’t bûten it VPN foltôget en binnen weromset, is in beliedsbeslút fan it tuskenapparaat, en it middel is in útsûndering foar dy host, net noch in sertifikaat. Freegje om it pakketregister of it API-einpunt ûnferoare troch te litten.

It tunnel splitsje sadat it ark it VPN omgiet, foarkomt ynspeksje foar dat ferkear, wat belied oertrêdzje kin en it ark net betrouber makket.

Skriuw de útkomst per ark op

In koarte notysje mei it binary, it fertrouwensbestân dat it lêst, de omjouwingsfariabele yn ’t spul en de goedkarde útsûndering sparret de folgjende persoan de hiele diagnoaze. Hâld de notysje per ark ynstee fan per laptop, want de laptop is selden it ding dat feroare is.

En hâld twa sinnen apart yn it ticket: wy hawwe in beskaat bedriuwswoartel ynstallearre, en wy hawwe ferifikaasje útset. Mar ien fan dy twa is in stipe-aksje.

Relatearre artikelen