Installasjonsprogrammet for VPN-portalen: pakke, profil eller gjenoppbygging?
Ei nedlasting frå portalen kan vere eit signert installasjonsprogram frå leverandøren, ei pakke med berre profil eller ei intern gjenoppbygging. Sjekk utgjevar, innhald og eigar av oppdateringar før utrulling.
Nedlastingsknappen på ein VPN-portal returnerer nøyaktig éi fil, og den fila kan vere to svært ulike ting: eit ferdig installasjonsprogram frå leverandøren med ein konfigurasjonsprofil som reiser ved sida av, eller eit bygg som organisasjonen har sett saman sjølv. Sida ser lik ut i begge tilfelle, så knappen kan ikkje fortelje deg kva du har. Bak han står tre spørsmål — kven som publiserte den køyrbare fila, kva konfigurasjon installasjonen skriv, og kven som reparerer han når neste klientversjon kjem. Du svarar på det første frå metadataa til artefakten, det andre frå innhaldet i pakka, og det tredje berre frå teamet som eig utrullinga.
Hengelåsen i nettlesaren dekkjer overføringa, ikkje artefakten.
Kva nedlastingsendepunktet faktisk returnerer
Dei fleste portalar gir ein nedlastingsførespurnad til ein liten behandlar som anten strøymer ei lagra fil eller set saman ei fil på staden, og set deretter eit filnamn og ein innhaldstype før svaret går ut. Det som kjem, er ein behaldar: ein MSI, ein PKG, ein DEB eller RPM, eller ei sjølvutpakkande innpakning rundt ein av dei. Inne ligg den binære fila til klienten, og ingenting i filnamnet seier påliteleg om den binære fila kom frå leverandøren eller frå ein intern byggjepipeline. Ei fil som heiter client-setup.exe registrerer eit namnevedtak, ikkje eit faktum om opphav.
Samanlikn dei nedlasta byta med den publiserte sjekksummen til leverandøren. Avvik beviser ikkje vondskap; det beviser at fila ikkje er bygget til leverandøren, og det er den skilnaden det er verdt å handle på.
Kvar profilen kjem inn i klienten
Førehandsfylte innstillingar reiser vanlegvis som ei separat fil som installasjonsprogrammet kopierer til ein bane per brukar eller per maskin: ein JSON- eller XML-profil på Windows, ein konfigurasjonsprofil på macOS, eit fragment under /etc på Linux. Verdiane i den fila — vertsnamn for gatewayen, tillitsanker, stundom registreringsmateriale — blir standardverdiane til klienten ved første oppstart. Derfor kan éi nedlasting bere løyndomar så vel som kode.
Spør kva oppgraderingsbanen gjer med profilen. Avhengig av pakkinga kan han overleve ein klientoppdatering, bli overstyrt av han, eller mislykkast i skjemavalidering i den nye versjonen.
Kva signaturkjeda ikkje beviser
Kodesignering bind ein utgjevaridentitet til ein filhash, og på Windows lèt Authenticode-tidsstempelet ein signatur leve lengre enn sertifikatet som laga han. Eit gyldig resultat svarar på to spørsmål: kven utgjevar som signerte desse byta, og om dei endra seg etterpå. Det listar ikkje opp tenestene, registerskrivingar eller medfølgjande drivarar til installasjonsprogrammet, og det avgjer ikkje om den utgjevaren bør stolast på her. Microsofts Authenticode-dokumentasjon skildrar mekanismen og er tydeleg om dette smale omfanget.
Portalautentisering svarar på eit tredje spørsmål: at økta nådde den tiltenkte tenaren. Tre ulike kontrollar, tre ulike feilmodus.
Verifiser artefakten før nokon køyrer han
Legg fila på ein isolert maskin og les metadataa før du køyrer noko. Desse kommandoane svarar på utgjevarsprørsmålet på dei tre vanlegaste plattformane.
# Windows PowerShell Get-AuthenticodeSignature .\client-setup.exe | Format-List Status, SignerCertificate, TimeStamperCertificate # macOS pkgutil --check-signature ./Client.pkg codesign -dv --verbose=4 /Applications/Client.app # Debian/Ubuntu dpkg-deb -I ./client_amd64.deb sha256sum ./client_amd64.deb
Les subjektet til signeraren i staden for berre statusordet. Ein intern sertifikatstyresmakt som signerer eit internt bygg er venta; det same sertifikatet på ei pakke som hevdar å vere utgjevinga til leverandøren er det ikkje.
For ei pakke med berre profil, opne arkivet og handsam kvart innebygde vertsnamn og kvar nøkkel som data det må gjerast greie for. Viss profilen inneheld noko gjenbrukbart, gjer portaldistribusjon det til ein delt løyndom med ein utrullingsplan.
Fastslå eigarskap før utrulling
Det siste spørsmålet har ingen kommando bak seg. Finn ut kven som oppdaterer artefakten når leverandøren sender ein ny klient, kven som har signeringsnøkkelen for eit internt bygg, og korleis profilen vert rotert når eit endepunkt flyttar seg. Skriv namna ved sida av nedlastingslenka.
Viss ingen eig det svaret, er nedlastinga ein distribusjonskanal utan vedlikehaldsavtale, og det er funnet som er verdt å rapportere.