Visual Studio yn araf dim ond ar VPN? Gwiriwch CRL ac OCSP
Pan fydd polisi WDAC yn cael ei orfodi, gall un lansiad araf fod yn ymholiad dirymu yn hytrach na’r twnnel. Profwch pa gam sy’n rhwystro cyn llacio’r polisi.
Mae Visual Studio yn cychwyn yn normal gartref, yna mae’r un gliniadur yn ymuno â thwnnel y gorfforaeth ac mae pob lansiad yn eistedd ar y sgrin groeso am hanner munud. Tynnwch y polisi ac mae’r oedi yn mynd gydag ef; tynnwch y twnnel ac mae’r un peth yn digwydd. Mae’r ddau sylwad yn gywir, a dyna pam mae’r ddau gydran yn beio’i gilydd. Y cwestiwn penderfynol yw a yw ymholiad dirymu tystysgrif yn aros am lwybr nad yw ond y twnnel yn ei gynnig, neu’n methu â dod o hyd i unrhyw un o gwbl.
Mesurwch y nôl, nid y lansiad
Mae polisi WDAC, a osodir fel SiPolicy.p7b wedi’i lofnodi, yn penderfynu pa ddelweddau y gellir eu rhedeg ar y peiriant. Mae integriti cod yn dilysu cadwyn llofnod delwedd cyn ei gweithredu, a gall y dilysu hwnnw gynnwys cwestiwn dirymu. Mae’r ateb yn dibynnu ar bwynt dosbarthu CRL neu’r ymatebydd OCSP a enwir gan y dystysgrif y tu mewn iddi.
Mae’r rhain yn geisiadau rhwydwaith cyffredin, felly mae eu cost yn dibynnu ar le mae’r ymatebydd yn byw. Pan nad yw ond yn gyrraeddadwy drwy’r twnnel, neu pan nad yw ei enw ond yn cael ei ddatrys drwy weinydd DNS y tu ôl i’r twnnel, mae’r dilysu yn aros i’r twnnel fod yn barod. Mae Visual Studio yn llwytho nifer fawr o gynulliadau a estyniadau llofnodedig wrth gychwyn, ac mae oedi bach fesul delwedd yn dod yn ataliad gweladwy. Nid oes unrhyw beth wedi’i lygru ac mae’r polisi yn ymddwyn yn union fel y’i ffurfweddwyd, a dyna pam mae tynnu’r polisi yn ymddangos fel pe bai’n trwsio’r broblem.
Gall pob delwedd llofnodedig sbarduno galwad rwydwaith
Dechreuwch gyda ffeil ddeuaidd lofnodedig sydd eisoes ar y disg a gofynnwch i’r platfform ei dilysu gyda’r un ymddygiad nôl ag y mae lansiad yn ei ddefnyddio. Rhedegwch y gorchymyn unwaith ar y twnnel ac unwaith oddi arno, yna cymharwch y llinellau nôl yn lle’r dyfarniad terfynol.
certutil -verify -urlfetch C:\Tools\Contoso.Editor.dll
nslookup ocsp.contoso.example
Test-NetConnection ocsp.contoso.example -Port 80
Mae’r allbwn yn rhestru’r gadwyn, cyfeiriadau CRL ac OCSP, ac a oedd pob nôl yn llwyddiannus. Ymatebydd sy’n amseru allan ar y twnnel ac yn ateb oddi arno yw’r dystiolaeth sydd ei hangen arnoch, ac mae’n pwyso llawer mwy na’r argraff o arafwch. Os yw’r nôl yn llwyddo’n araf, nodwch y cyfeiriad fel y gall y cam nesaf brofi’r gwesteiwr hwnnw’n uniongyrchol.
Datryswch enw gwesteiwr yr ymatebydd a phrofwch gyrraeddadwyedd y tu allan i’r rhaglen, oherwydd na fydd enw sy’n methu â datrys byth yn cael ei drwsio gan osodiad cleient. Mae log gweithredol CodeIntegrity yn darparu’r hanner arall o’r dystiolaeth, gan gysylltu digwyddiad dilysu â stamp amser y lansiad araf.
Lleihau’r oedi heb dynnu’r rheolaeth
Mae anablu’r polisi neu ei newid i fodd archwilio yn gwneud i’r oedi ddiflannu ac yn tynnu’r rheolaeth a osodwyd gan y sefydliad, felly triniwch hynny fel y trwsio anghywir. Y dewisiadau culach yw newid llwybro fel bod yr ymatebydd yn gyrraeddadwy drwy’r twnnel, eithriad twnnel hollt ar gyfer gwesteiwyr yr ymatebydd, cywiriad DNS pan fo’r enw’n datrys i gyfeiriad anghyrraeddadwy, neu ddirprwy cachu a gefnogir ar gyfer data dirymu. Mae gan bob un berchennog gwahanol: mae’r tîm PKI yn berchen ar gyrraeddadwyedd yr ymatebydd, mae’r tîm rhwydwaith yn berchen ar hollt y twnnel, ac mae’r tîm pen draw yn berchen ar y polisi.
Nid yw eithrio pob gwesteiwr dirymu o’r twnnel yn awtomatig yn ddiogel, gan y gall ymatebydd mewnol fod yn fewnol yn fwriadol. Cadarnhewch yr eithriad gyda’r tîm sy’n rhedeg y PKI cyn ysgrifennu rheol sy’n anfon gwiriadau tystysgrif yn dawel i’r rhyngrwyd cyhoeddus. Newid a wneir heb y cadarnhad hwnnw yw’r math sy’n cael ei wrthdroi yn ystod yr adnewyddiad polisi nesaf.
Gwiriwch gychwyn oer ar ôl y newid
Mesurwch gychwyn oer yn y ddau gyflwr a chadwch y rhifau, oherwydd nid yw cychwyn cynnes yn profi bron ddim unwaith y bydd y cynulliadau wedi’u cachu. Ailadroddwch y lansiad o sesiwn newydd fel bod y llwybr llwytho estyniadau’n cael ei arfer eto.
Get-WinEvent -LogName Microsoft-Windows-CodeIntegrity/Operational -MaxEvents 40 |
Where-Object { $_.TimeCreated -gt (Get-Date).AddMinutes(-10) }
Get-ChildItem C:\Windows\System32\CodeIntegrity\CiPolicies\Active
Get-CimInstance -ClassName Win32_DeviceGuard -Namespace root\Microsoft\Windows\DeviceGuard
Mae ffurfweddiad wedi’i drwsio yn dal i gysylltu â’r ymatebydd, neu’n defnyddio llwybr cachu a gymeradwywyd gan eich tîm PKI, ac mae’r log yn dangos bod dilysu yn cwblhau yn hytrach nag amseru allan. Cadarnhewch fod rhaglen sydd newydd gael ei llofnodi yn dal i lansio, gan nad yw polisi sy’n caniatáu popeth yn drwsio llwyddiannus. Gwiriwch y ffolder polisi gweithredol a’r cyflwr gorfodi hefyd, fel y gwyddys mai’r polisi rydych yn ei ddadfygio yw’r un sy’n rhedeg. Cadwch y gadwyn dystysgrif, cyfeiriad yr ymatebydd a stampiau amser y lansiad yn yr un tocyn, oherwydd mae adnewyddiad fel arfer yn symud yr ymatebydd ac yn gadael y rheol eithrio neu DNS yn hen.