Testowanie podpisu aplikacji za pomocą kontrolki aplikacji inteligentnej

Przed dystrybucją podpisanej aplikacji do użytkowników przetestuj podpis aplikacji pod kątem funkcji Inteligentnej kontroli aplikacji. Ponieważ funkcja Smart App Control ocenia pliki binarne podczas ich ładowania, należy przetestować wszystkie ścieżki kodu i funkcje aplikacji. Te testy obejmują wszystkie pliki binarne instalacji i odinstalowywania aplikacji, wszystkie funkcje aplikacji oraz wszystkie integracje z innymi aplikacjami, które mogą ładować pliki binarne (na przykład dodatki pakietu Office). Funkcję Smart App Control można przetestować przy użyciu zasad auditowania, które dodają wpisy do dziennika bez rzeczywistego blokowania wykonywania aplikacji lub przez bezpośrednie testowanie w trybie wymuszania Smart App Control.

Konfigurowanie funkcji Inteligentnej kontroli aplikacji na potrzeby testowania

Kontrolkę aplikacji inteligentnej można skonfigurować w ustawieniach systemu Windows lub ręcznie edytując rejestr systemu Windows.

Konfigurowanie kontroli aplikacji inteligentnej przy użyciu ustawień systemu Windows

Przejdź do Ustawienia>Prywatność i bezpieczeństwo>Zabezpieczenia Windows>Kontrola aplikacji i przeglądarki>Ustawienia inteligentnej kontroli aplikacji.

Uwaga / Notatka

Konfigurowanie funkcji Smart App Control na Wyłączone lub Włączone (tryb wymuszania) jest operacją jednokierunkową. Tryby nie można zmieniać przy użyciu ustawień systemu Windows, chyba że bieżące ustawienie to Ocena. W celach testowych możesz wymusić zmianę funkcji Smart App Control na inne ustawienie przy użyciu rejestru.

Jeśli funkcja Smart App Control jest w trybie oceny, ocenia podpis aplikacji, ale nie blokuje aplikacji, jeśli jej podpis jest nieprawidłowy. W tym trybie można użyć zasady audytu, aby wyświetlić dane wyjściowe funkcji inteligentnej kontroli aplikacji, w tym błędy napotkane podczas sprawdzania podpisu aplikacji.

Wybierz pozycję na, aby ustawić Inteligentne sterowanie aplikacjami w trybie wymuszania. W tym trybie funkcja Smart App Control uniemożliwia uruchamianie aplikacji, jeśli jej podpis jest nieprawidłowy.

Konfigurowanie kontroli aplikacji inteligentnej przy użyciu rejestru

Ważne

Funkcję Inteligentnej Kontroli Aplikacji można skonfigurować ręcznie za pośrednictwem rejestru tylko do celów testowych. Edytowanie ustawień Inteligentnej Kontroli Aplikacji w ten sposób może naruszyć oferowaną przez nią ochronę.

Skonfigurowanie funkcji Smart App Control przy użyciu rejestru systemu Windows umożliwia wymuszenie dowolnego żądanego trybu wymuszania, nawet jeśli nie można wybrać tego trybu przy użyciu ustawień systemu Windows. Aby skonfigurować inteligentną kontrolę aplikacji:

  1. Otwórz wiersz polecenia z uprawnieniami administratora i wykonaj następujące polecenia:

    manage-bde -protectors c: -disable -rebootcount 2
    "C:\Program Files\Windows Defender\MpCmdRun.exe" -RemoveDefinitions -DynamicSignatures
    

    Uwaga / Notatka

    Może być konieczne zaktualizowanie drugiego polecenia, jeśli dysk systemowy nie jest C:.

  2. Uruchom ponownie menu rozruchowe, uruchamiając pozycję Ustawienia i wybierając> pozycjęOpcje odzyskiwania Opcje>zaawansowane uruchamianie>Uruchom ponownie teraz.

  3. Z menu zaawansowanego rozruchu wybierz pozycję Rozwiązywanie problemów>Zaawansowane>Wiersz polecenia. Zostanie otwarty wiersz polecenia odzyskiwania.

    Uwaga / Notatka

    Wiersz polecenia odzyskiwania otwiera dysk odzyskiwania X: domyślnie. Nie oznacza to, że dysk systemowy uległ zmianie. Dysk systemowy jest nadal skojarzony ze zwykłą literą dysku (zwykle C:).

  4. Wykonaj następujące polecenia:

    Uwaga / Notatka

    W poniższych poleceniach zastąp element {VALUE} wartością trybu, który chcesz ustawić.

    Wartość Tryb
    0 Wyłączony
    1 Na temat (wymuszania)
    2 Ocena
    reg load HKLM\sac c:\windows\system32\config\system
    reg add hklm\sac\controlset001\control\ci\policy /v VerifiedAndReputablePolicyState /t REG_DWORD /d {VALUE} /f 
    reg add hklm\sac\controlset001\control\ci\protected /v VerifiedAndReputablePolicyStateMinValueSeen /t REG_DWORD /d {VALUE} /f
    reg unload hklm\sac
    
    reg load HKLM\sac2 C:\windows\system32\config\SOFTWARE
    reg add "hklm\sac2\Microsoft\Windows Defender" /v SacLearningModeSwitch /t REG_DWORD /d 0
    reg unload hklm\sac2
    
  5. Zrestartuj komputer.

Weryfikowanie bieżącego trybu kontrolki aplikacji inteligentnej

Możesz zweryfikować bieżący tryb funkcji Smart App Control, otwierając wiersz polecenia i uruchamiając następujące polecenie:

citool.exe -lp

Inteligentne kontrolowanie aplikacji jest w trybie ewaluacji, jeśli wartość Nazwa przyjazna użytkownikowi to VerifiedAndReputableDesktopEvaluation, a wartość Jest obecnie egzekwowane to true.

Kontrolka aplikacji inteligentnej jest w trybie wymuszania, jeśli wartość Przyjazna nazwa jest VerifiedAndReputableDesktop, a wartość Jest obecnie wymuszana jest true.

Konfigurowanie zasad audytu funkcji Smart App Control

Domyślne zasady kontroli aplikacji usługi Windows Defender (WDAC) używane przez funkcję Smart App Control w trybie oceny nie rejestrują zdarzeń inspekcji w dzienniku operacyjnym CodeIntegrity. Te zasady zmniejszają rozmiar dziennika na typowych urządzeniach konsumenckich, które są dostarczane z funkcją Smart App Control w trybie oceny.

Na potrzeby oceny aplikacji pod kątem inteligentnej kontroli aplikacji deweloper lub administrator systemu może chcieć włączyć dzienniki inspekcji w trybie oceny, aby zobaczyć, jakie pliki byłyby blokowane, jeśli system był w trybie wymuszania.

Uwaga / Notatka

Zasady inspekcji mają zastosowanie tylko wtedy, gdy funkcja Smart App Control jest uruchamiana w trybie oceny. W trybie wymuszania funkcja Inteligentne sterowanie aplikacjami domyślnie rejestruje zdarzenia.

Plik zip zawierający dwa przykładowe zasady można pobrać tutaj.

Uwaga / Notatka

Możesz również utworzyć własne zasady. Aby uzyskać więcej informacji, zobacz Przykładowe zasady podstawowe funkcji Windows Defender Application Control (WDAC) i Tworzenie zasad WDAC dla lekko zarządzanych urządzeń.

Polityka audytu Smart App Control (SmartAppControlAudit.bin)

Te zasady są standardowymi zasadami inteligentnej kontroli aplikacji z dziennikami inspekcji włączonymi w trybie oceny. Wszystkie pliki binarne i skrypty dozwolone przez podpis cyfrowy i reputację w chmurze spełniają zasady, podobnie jak w przypadku włączenia trybu egzekwowania. Aplikacje i pliki binarne blokowane przez zasady rejestrują zdarzenie audytu.

Uwaga / Notatka

Ta polityka działa wyłącznie z funkcją Smart App Control w trybie oceny. Model oceny inteligentnej kontroli aplikacji może wyłączyć tryb oceny podczas stosowania tych zasad, dlatego przetestuj jedną z innych metod w tym artykule.

Po zastosowaniu tej polityki dane wyjściowe dla citool.exe -lp pokazują VerifiedAndReputableDesktopEvaluationAudit jako nazwę polityki.

Zastosuj zasady audytu Smart App Control

Najpierw upewnij się, że SAC jest w trybie oceny.

Aby zastosować te zasady, przejmij na własność plik zasad trybu oceny i zastąp go zasadami inspekcji. W wierszu polecenia administratora lub w oknie programu PowerShell uruchom następujące polecenia:

takeown /f "C:\WINDOWS\System32\CodeIntegrity\CiPolicies\Active\{1283AC0F-FFF1-49AE-ADA1-8A933130CAD6}.cip" /a
icacls "C:\WINDOWS\System32\CodeIntegrity\CiPolicies\Active\{1283AC0F-FFF1-49AE-ADA1-8A933130CAD6}.cip" /grant Administrators:F

Uwaga / Notatka

Polecenie takeown może zgłosić powodzenie, ale faktycznie nie przejąć własności pliku. Jeśli kolejne kroki nie powiedzą się, użyj metody ręcznej w następnej sekcji, aby przejąć własność.

Jeśli powyższe polecenia kończą się niepowodzeniem lub jeśli wolisz ręcznie przejąć własność, wykonaj następujące czynności:

  1. Kliknij prawym przyciskiem myszy plik w Eksploratorze plików i wybierz polecenie Właściwości.
  2. Przejdź do karty Zabezpieczenia i wybierz pozycję Zaawansowane u dołu.
  3. Wybierz pozycję Zmień w oknie dialogowym.
  4. W oknie podręcznym wprowadź informacje o użytkowniku (na przykład <PC name>\<username>) i wybierz OK.
  5. Wybierz przycisk OK w oknie dialogowym Zaawansowane ustawienia zabezpieczeń i potwierdź.
  6. Otwórz ponownie kartę Zabezpieczenia pliku i wybierz pozycję Edytuj.
  7. W obszarze Administratorzy zaznacz wszystkie pola wyboru i wybierz OK, a następnie ponownie potwierdź w oknie dialogowym.

Teraz, gdy masz własność pliku zasad, zmień jego nazwę na {1283AC0F-FFF1-49AE-ADA1-8A933130CAD6}.cip.old. Zmień nazwę pliku zasad inspekcji, który chcesz zastosować do {1283AC0F-FFF1-49AE-ADA1-8A933130CAD6}.cip, i skopiuj go do katalogu zasad.

Uruchom polecenie citool.exe -r w wierszu polecenia administratora, aby odświeżyć zasady .

Zasady audytu inteligentnej kontroli aplikacji bez ISG (SmartAppControlAuditNoISG.bin)

Użyj tych zasad, aby przetestować własne aplikacje jako deweloper.

Te zasady sprawdzają pliki binarne i skrypty względem funkcji Inteligentnej kontroli aplikacji w trybie oceny bez sprawdzania funkcji Intelligent Security Graph. Oznacza to, że tylko aplikacje, które prawidłowo podpisuje zaufany certyfikat, są dozwolone bez zdarzeń audytu. Ponieważ reputacja może nie być dostępna dla nowo opublikowanych plików binarnych i może ulec zmianie w czasie, zapewnienie poprawnego podpisania wszystkich plików binarnych jest najlepszym sposobem upewnienia się, że użytkownicy nie napotykają problemów podczas korzystania z aplikacji. To wymaganie dotyczy również publikowania za pośrednictwem Sklepu Windows, w którym wymagany jest podpis certyfikatu uzyskanego z zaufanego urzędu certyfikacji.

Te zasady można zastosować nawet wtedy, gdy ustawisz ustawienie Kontrolka aplikacji inteligentnej na Wyłączone. Po zastosowaniu tej zasady dane wyjściowe dla citool.exe -lp pokazują VerifiedAndReputableDesktopEvaluationAuditNoISG jako nazwę zasady.

Zastosuj zasady audytu inteligentnej kontroli aplikacji bez ISG

Użyj tej polityki, aby przetestować aplikacje w trybie testowym wyłącznie pod kątem wymagań podpisywania w Smart App Control. Ta polityka nie zezwala na żadne pliki binarne aplikacji oparte na inteligencji w chmurze z systemu Intelligent Security Graph.

  1. Upewnij się, że funkcja Smart App Control jest w trybie oceny lub jest wyłączona. 

  2. Uruchom polecenie mountvol S: /S w wierszu polecenia administratora. 

  3. Skopiuj SmartAppControlAuditNoISG.bin na S:\efi\microsoft\boot\cipolicies\active\{5283AC0F-FFF1-49AE-ADA1-8A933130CAD6}.cip.

  4. Uruchom polecenie citool.exe -r z wiersza polecenia administratora, aby odświeżyć zasady. 

Sprawdzanie dzienników zdarzeń

Kontrola Inteligentnych Aplikacji rejestruje każdy plik wykonywalny, który blokuje (lub zablokowałby) w dziennikach zdarzeń Integralności Kodów. Te dzienniki można znaleźć, otwierając Podgląd zdarzeń, a następnie przechodząc do obszaru Dzienniki> aplikacji i usługMicrosoft>Windows>CodeIntegrity>Operational.

Funkcja Smart App Control rejestruje zdarzenia trybu oceny z identyfikatorem zdarzenia 3076 oraz zdarzenia trybu wymuszania z identyfikatorem zdarzenia 3077.

Ważne

Dziennik zdarzeń CodeIntegrity rejestruje tylko informacje o zablokowanych lub auditowanych plikach. Nie rejestruje, które instalacje oprogramowania kończą się niepowodzeniem lub dlaczego instalacje kończą się niepowodzeniem po włączeniu funkcji Inteligentnej kontroli aplikacji. Dziennik zdarzeń zawiera zmiany konfiguracji i zablokowane poszczególne pliki, ale nie zapewnia diagnostyki na poziomie instalacji. Aby rozwiązać problemy z błędami instalacji, należy przejrzeć zdarzenia 3076 i 3077, aby określić, które określone pliki w instalatorze zostały zablokowane.

Aby uzyskać więcej informacji na temat funkcji Smart App Control i rejestrowania zdarzeń usługi Microsoft Defender, zobacz Przeglądanie dzienników zdarzeń i kodów błędów w celu rozwiązywania problemów z programem antywirusowym Microsoft Defender.

Przykładowe podstawowe zasady Windows Defender Application Control (WDAC)

Przejrzyj dzienniki zdarzeń i kody błędów, aby rozwiązać problemy z programem antywirusowym Microsoft Defender

Tworzenie zasad WDAC dla lekko zarządzanych urządzeń