Visual Studio mājās startē normāli, tad tas pats portatīvais dators pievienojas uzņēmuma tunelim un katra palaišana pusminūti stāv starta ekrānā. Noņemiet politiku, un aizkave pazūd kopā ar to; noņemiet tuneli, un notiek tas pats. Abi novērojumi ir precīzi, tāpēc abas komponentes pastāvīgi vaino viena otru. Izšķirošais jautājums ir, vai sertifikāta atsaukšanas vaicājums gaida ceļu, ko piedāvā tikai tunelis, vai arī neatrod nevienu.

Mēriet ielādi, nevis palaišanu

Viena WDAC politika, izvietota kā parakstīts SiPolicy.p7b fails, nosaka, kuri attēli drīkst darboties datorā. Koda integritāte pirms izpildes validē attēla parakstu ķēdi, un šī validācija var ietvert atsaukšanas jautājumu. Atbilde ir atkarīga no CRL izplatīšanas punkta vai OCSP atbildētāja, ko sertifikāts nosauc sevī.

Tie ir parasti tīkla pieprasījumi, tāpēc to izmaksas ir atkarīgas no tā, kur atrodas atbildētājs. Kad tas ir sasniedzams tikai caur tuneli, vai tā nosaukums tiek atrisināts tikai caur DNS serveri aiz tuneļa, validācija gaida, līdz tunelis ir gatavs. Visual Studio palaišanas laikā ielādē lielu skaitu parakstītu komplektu un paplašinājumu, un neliela aizkave uz katru attēlu kļūst par redzamu apstāšanos. Nekas nav bojāts un politika uzvedas tieši tā, kā konfigurēta, tāpēc šķiet, ka politikas noņemšana problēmu atrisina.

Katrs parakstīts attēls var izraisīt tīkla izsaukumu

Sāciet ar parakstītu bināro failu, kas jau ir diskā, un palūdziet platformai to pārbaudīt ar tādu pašu ielādes uzvedību, kādu izmanto palaišana. Izpildiet komandu vienreiz tunelī un vienreiz ārpus tā, pēc tam salīdziniet ielādes rindas, nevis galīgo spriedumu.

certutil -verify -urlfetch C:\Tools\Contoso.Editor.dll
nslookup ocsp.contoso.example
Test-NetConnection ocsp.contoso.example -Port 80

Izvade uzskaita ķēdi, CRL un OCSP adreses un to, vai katra ielāde izdevās. Atbildētājs, kuram tunelī beidzas laiks un ārpus tā atbild, ir vajadzīgais pierādījums, un tas sver daudz vairāk nekā lēnuma iespaids. Ja ielāde izdodas lēni, pierakstiet adresi, lai nākamais solis varētu pārbaudīt šo resursdatoru tieši.

Atrisiniet atbildētāja resursdatora nosaukumu un pārbaudiet sasniedzamību ārpus lietojumprogrammas, jo neatrisināmu nosaukumu nekad neizlabos neviena klienta iestatījums. CodeIntegrity darbības žurnāls nodrošina otru pierādījuma pusi, saistot validācijas notikumu ar lēnās palaišanas laika zīmogu.

Saīsiniet aizkavi, nenoņemot kontroli

Politikas atspējošana vai pārslēgšana audita režīmā novērš aizkavi un noņem organizācijas ieviesto kontroli, tāpēc uzskatiet to par nepareizu labojumu. Šaurākās iespējas ir maršrutēšanas izmaiņa, lai atbildētājs būtu sasniedzams caur tuneli, izņēmums sadalītajā tunelī atbildētāja resursdatoriem, DNS labojums, kad nosaukums tiek atrisināts uz nesasniedzamu adresi, vai atbalstīts kešatmiņas starpniekserveris atsaukšanas datiem. Katrai ir cits īpašnieks: PKI komanda pārvalda atbildētāja sasniedzamību, tīkla komanda – tuneļa sadalījumu, bet galapunktu komanda – politiku.

Katra atsaukšanas resursdatora izslēgšana no tuneļa nav automātiski droša, jo iekšējais atbildētājs var būt iekšējs tīši. Apstipriniet izņēmumu ar komandu, kas pārvalda PKI, pirms rakstāt noteikumu, kas klusi sūta sertifikātu pārbaudes uz publisko internetu. Izmaiņa bez šī apstiprinājuma ir tā, kas tiek atsaukta nākamajā politikas atjaunināšanā.

Pēc izmaiņām pārbaudiet aukstu palaišanu

Izmēriet aukstu palaišanu abos stāvokļos un saglabājiet skaitļus, jo silta palaišana gandrīz neko nepierāda, kad komplekti jau ir kešatmiņā. Atkārtojiet palaišanu no jaunas sesijas, lai paplašinājumu ielādes ceļš atkal tiktu izmēģināts.

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

Salabota konfigurācija joprojām sazinās ar atbildētāju vai izmanto kešatmiņas ceļu, ko apstiprinājusi jūsu PKI komanda, un žurnāls rāda, ka validācija tiek pabeigta, nevis beidzas laiks. Apstipriniet, ka nesen parakstīta lietojumprogramma joprojām startē, jo politika, kas atļauj visu, nav veiksmīgs labojums. Pārbaudiet arī aktīvās politikas mapi un izpildes stāvokli, lai būtu zināms, ka atkļūdojamā politika ir tā, kas darbojas. Turiet sertifikātu ķēdi, atbildētāja adresi un palaišanas laika zīmogus vienā biļetē, jo atjaunošana parasti pārvieto atbildētāju un atstāj izņēmuma vai DNS noteikumu novecojušu.

Saistītie raksti