Ochrana nastavení zabezpečení macOS pomocí ochrany před falšováním

Platí pro:

Chcete používat Defender pro Endpoint? Zaregistrujte se a získejte bezplatnou zkušební verzi,

Ochrana před falšováním v macOS pomáhá zabránit nechtěným změnám nastavení zabezpečení neoprávněnými uživateli. Ochrana před neoprávněným odstraněním Microsoft Defender for Endpoint v systému macOS pomáhá zabránit neoprávněnému odstranění. Tato funkce také pomáhá manipulovat s důležitými soubory zabezpečení, procesy a nastaveními konfigurace.

Důležité

Od března 2023 začnou Microsoft Defender for Endpoint v systému macOS respektovat výběr ochrany před neoprávněnou manipulací použitý prostřednictvím globálního přepínače ochrany před falšováním v rozšířených nastaveních na portálu Microsoft Defender (https://security.microsoft.com). Můžete se rozhodnout vynutit (blokovat,auditovat/zakázat) vlastní nastavení ochrany před falšováním v macOS pomocí řešení mdm (Mobile Správa zařízení), jako je Intune nebo JAMF (doporučeno). Pokud nebylo nastavení ochrany před falšováním vynuceno prostřednictvím MDM, může místní správce pokračovat v ruční změně nastavení pomocí následujícího příkazu: sudo mdatp config tamper-protection enforcement-level --value (chosen mode).

Ochranu před falšováním můžete nastavit v následujících režimech:

Téma Popis
Zakázáno Ochrana před falšováním je zcela vypnutá.
Auditu Operace manipulace se protokolují, ale neblokují se. Tento režim je po instalaci výchozí.
Blokování Ochrana před falšováním je zapnutá; Operace manipulace jsou blokované.

Pokud je ochrana před falšováním nastavená na režim auditování nebo blokování, můžete očekávat následující výsledky:

Režim auditování:

  • Akce pro odinstalaci agenta Defenderu for Endpoint jsou protokolované (auditované)
  • Úpravy a úpravy souborů Defenderu for Endpoint se protokolují (auditují)
  • Vytváření nových souborů v umístění Defenderu for Endpoint se protokoluje (audituje)
  • Odstranění souborů Defenderu for Endpoint se protokoluje (audituje se).
  • Přejmenování souborů Defenderu for Endpoint je protokolované (auditované)

Režim blokování:

  • Akce pro odinstalaci agenta Defenderu for Endpoint jsou blokované
  • Úpravy a úpravy souborů Defenderu for Endpoint jsou blokované
  • Vytváření nových souborů v umístění Defenderu for Endpoint je zablokované
  • Odstranění souborů Defenderu for Endpoint je zablokované
  • Přejmenování souborů Defenderu for Endpoint je zablokované
  • Příkazy k zastavení agenta (wdavdaemon) selžou

Tady je příklad systémové zprávy v reakci na blokovanou akci:

Snímek obrazovky se zprávou o zablokování operace

Režim ochrany před falšováním můžete nakonfigurovat tak, že název režimu nastavíte na úrovni vynucení.

Poznámka

  • Změna režimu se projeví okamžitě.
  • Pokud jste při počáteční konfiguraci použili JAMF, budete muset konfiguraci aktualizovat také pomocí JAMF.

Než začnete

  • Podporované verze macOS: Big Sur (11) nebo novější.
  • Minimální požadovaná verze pro Defender for Endpoint: 101.70.19.

Důrazně doporučujeme nastavení:

  • Je povolená ochrana integrity systému (SIP). Další informace najdete v tématu Zakázání a povolení ochrany integrity systému.

  • Ke konfiguraci Microsoft Defender for Endpoint použijte nástroj pro správu mobilních zařízení (MDM).

  • Ujistěte se, že Defender for Endpoint má plnou autorizaci přístupu k disku .

    Poznámka

    Povolení PROTOKOLU SIP i veškerá konfigurace provedená přes MDM nejsou povinné, ale vyžadují se pro plně zabezpečený počítač, jinak může místní správce pořád provádět změny manipulace, které spravuje macOS. Pokud například povolíte TCC (Transparency, Consent & Control) prostřednictvím řešení pro mobilní Správa zařízení, jako je Intune, eliminujete riziko, že globální správce zruší autorizaci přístupu k úplnému disku místním správcem.

Konfigurace ochrany před falšováním na zařízeních s macOS

Microsoft Defender vyhodnotí tato nastavení v následujícím pořadí. Pokud je nakonfigurované nastavení s vyšší prioritou, ostatní se ignorují:

  1. Spravovaný konfigurační profil (nastavení tamperProtection/enforcementLevel):
  2. Ruční konfigurace (s mdatp config tamper-protection enforcement-level --value { disabled|audit|block })
  3. Pokud je na portálu Zabezpečení nastavený příznak Ochrana před neoprávněnou manipulací, použije se režim blokování (ve verzi Preview, který není dostupný pro všechny zákazníky).
  4. Pokud je počítač licencovaný, použije se ve výchozím nastavení režim auditování.
  5. Pokud počítač není licencovaný, je ochrana proti falšování v režimu blokování.

Než začnete

Ujistěte se, že je váš počítač licencovaný a v pořádku (sestava trueodpovídajících hodnot ):

mdatp health
healthy                                     : true
health_issues                               : []
licensed                                    : true
...
tamper_protection                           : "audit"

tamper_protection hlásí efektivní úroveň vynucování.

Ruční konfigurace

  1. Pomocí následujícího příkazu přepněte do nejvíce omezujícího režimu:
sudo mdatp config tamper-protection enforcement-level --value block

Obrázek příkazu ruční konfigurace

Poznámka

Na produkčních počítačích musíte použít spravovaný konfigurační profil (nasazený prostřednictvím MDM). Pokud místní správce změnil režim ochrany před falšováním prostřednictvím ruční konfigurace, může ho kdykoli také změnit na méně omezující režim. Pokud byl režim ochrany před falšováním nastavený prostřednictvím spravovaného profilu, bude ho moct vrátit zpět jenom globální správce.

  1. Ověřte výsledek.
healthy                                     : true
health_issues                               : []
licensed                                    : true
engine_version                              : "1.1.19300.3"
app_version                                 : "101.70.19"
org_id                                      : "..."
log_level                                   : "info"
machine_guid                                : "..."
release_ring                                : "InsiderFast"
product_expiration                          : Dec 29, 2022 at 09:48:37 PM
cloud_enabled                               : true
cloud_automatic_sample_submission_consent   : "safe"
cloud_diagnostic_enabled                    : false
passive_mode_enabled                        : false
real_time_protection_enabled                : true
real_time_protection_available              : true
real_time_protection_subsystem              : "endpoint_security_extension"
network_events_subsystem                    : "network_filter_extension"
device_control_enforcement_level            : "audit"
tamper_protection                           : "block"
automatic_definition_update_enabled         : true
definitions_updated                         : Jul 06, 2022 at 01:57:03 PM
definitions_updated_minutes_ago             : 5
definitions_version                         : "1.369.896.0"
definitions_status                          : "up_to_date"
edr_early_preview_enabled                   : "disabled"
edr_device_tags                             : []
edr_group_ids                               : ""
edr_configuration_version                   : "20.199999.main.2022.07.05.02-ac10b0623fd381e28133debe14b39bb2dc5b61af"
edr_machine_id                              : "..."
conflicting_applications                    : []
network_protection_status                   : "stopped"
data_loss_prevention_status                 : "disabled"
full_disk_access_enabled                    : true

Všimněte si, že tamper_protection je teď nastavená na blokovat.

JAMF

V konfiguračním profilu Microsoft Defender for Endpoint nakonfigurujte režim ochrany před falšováním přidáním následujících nastavení:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>tamperProtection</key>
    <dict>
      <key>enforcementLevel</key>
      <string>block</string>
    </dict>
  </dict>
</plist>

Poznámka

Pokud už máte konfigurační profil pro Microsoft Defender for Endpoint musíte do něj přidat nastavení. Druhý konfigurační profil byste neměli vytvářet.

Intune

Katalog nastavení

Můžete vytvořit nový profil katalogu nastavení, který přidá konfiguraci ochrany před falšováním, nebo ho můžete přidat do existujícího profilu. Nastavení Úroveň vynucení najdete v kategoriích "Microsoft Defender" a podkategorii "Ochrana před falšováním". Potom zvolte požadovanou úroveň.

Vlastní profil

Alternativně můžete také nakonfigurovat ochranu před falšováním prostřednictvím vlastního profilu. Další informace najdete v tématu Nastavení předvoleb pro Microsoft Defender for Endpoint v macOS.

Poznámka

Pro Intune konfiguraci můžete vytvořit nový konfigurační soubor profilu, který přidá konfiguraci ochrany před falšováním, nebo můžete tyto parametry přidat do existujícího. Zvolte požadovanou úroveň.

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1">
    <dict>
        <key>PayloadUUID</key>
        <string>C4E6A782-0C8D-44AB-A025-EB893987A295</string>
        <key>PayloadType</key>
        <string>Configuration</string>
        <key>PayloadOrganization</key>
        <string>Microsoft</string>
        <key>PayloadIdentifier</key>
        <string>com.microsoft.wdav</string>
        <key>PayloadDisplayName</key>
        <string>Microsoft Defender for Endpoint settings</string>
        <key>PayloadDescription</key>
        <string>Microsoft Defender for Endpoint configuration settings</string>
        <key>PayloadVersion</key>
        <integer>1</integer>
        <key>PayloadEnabled</key>
        <true/>
        <key>PayloadRemovalDisallowed</key>
        <true/>
        <key>PayloadScope</key>
        <string>System</string>
        <key>PayloadContent</key>
        <array>
            <dict>
                <key>PayloadUUID</key>
                <string>99DBC2BC-3B3A-46A2-A413-C8F9BB9A7295</string>
                <key>PayloadType</key>
                <string>com.microsoft.wdav</string>
                <key>PayloadOrganization</key>
                <string>Microsoft</string>
                <key>PayloadIdentifier</key>
                <string>com.microsoft.wdav</string>
                <key>PayloadDisplayName</key>
                <string>Microsoft Defender for Endpoint configuration settings</string>
                <key>PayloadDescription</key>
                <string/>
                <key>PayloadVersion</key>
                <integer>1</integer>
                <key>PayloadEnabled</key>
                <true/>
                <key>tamperProtection</key>
                <dict>
                             <key>enforcementLevel</key>
                             <string>block</string>
                </dict>
            </dict>
        </array>
    </dict>
</plist>

Zkontrolovat stav

Spuštěním následujícího příkazu zkontrolujte stav ochrany před falšováním:

mdatp health --field tamper_protection

Pokud je zapnutá ochrana před neoprávněnou manipulací, zobrazí se výsledek "blokovat":

Obrázek ochrany před neoprávněnou manipulací v režimu blokování

Můžete také spustit úplné mdatp health spuštění a vyhledat "tamper_protection" ve výstupu.

Rozšířené informace o stavu ochrany před falšováním získáte spuštěním příkazu mdatp health --details tamper_protection.

Ověření preventivních možností ochrany před falšováním

Ochranu před falšováním můžete ověřit různými způsoby.

Ověření režimu blokování

Upozornění na manipulaci se vyvolává na portálu Microsoft Defender

Snímek obrazovky s upozorněním na manipulaci vyvolanou na portálu Microsoft Defender

Ověření režimu blokování a režimů auditu

  • Při použití rozšířeného proaktivního vyhledávání se zobrazí upozornění na manipulaci.
  • Události manipulace najdete v protokolech místního zařízení: sudo grep -F '[{tamperProtection}]' /Library/Logs/Microsoft/mdatp/microsoft_defender_core.log

Snímek obrazovky s protokolem ochrany před falšováním

Diy scénáře

  • Pokud je ochrana před falšováním nastavená na blokovat, zkuste defender for Endpoint odinstalovat různými metodami. Můžete například přetáhnout dlaždici aplikace do koše nebo odinstalovat ochranu před falšováním pomocí příkazového řádku.

  • Zkuste zastavit proces Defenderu for Endpoint (kill).

  • Zkuste odstranit, přejmenovat, upravit a přesunout soubory Defenderu for Endpoint (podobně jako by to udělal uživatel se zlými úmysly), například:

    • /Applications/Microsoft Defender ATP.app/
    • /Library/LaunchDaemons/com.microsoft.fresno.plist
    • /Library/LaunchDaemons/com.microsoft.fresno.uninstall.plist
    • /Library/LaunchAgents/com.microsoft.wdav.tray.plist
    • /Library/Managed Preferences/com.microsoft.wdav.ext.plist
    • /Library/Managed Preferences/mdatp_managed.json
    • /Library/Managed Preferences/com.microsoft.wdav.atp.plist
    • /Library/Managed Preferences/com.microsoft.wdav.atp.offboarding.plist
    • /usr/local/bin/mdatp

Vypnutí ochrany před falšováním

Ochranu před falšováním můžete vypnout některým z následujících způsobů.

Ruční konfigurace

Použijte následující příkaz:

sudo mdatp config tamper-protection enforcement-level --value disabled

JAMF

Ve svém konfiguračním enforcementLevelprofilu změňte hodnotu na zakázáno a nasdílejte ji do počítače:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>tamperProtection</key>
    <dict>
      <key>enforcementLevel</key>
      <string>disabled</string>
    </dict>
  </dict>
</plist>

Intune

Do profilu Intune přidejte následující konfiguraci:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1">
    <dict>
        <key>PayloadUUID</key>
        <string>C4E6A782-0C8D-44AB-A025-EB893987A295</string>
        <key>PayloadType</key>
        <string>Configuration</string>
        <key>PayloadOrganization</key>
        <string>Microsoft</string>
        <key>PayloadIdentifier</key>
        <string>com.microsoft.wdav</string>
        <key>PayloadDisplayName</key>
        <string>Microsoft Defender for Endpoint settings</string>
        <key>PayloadDescription</key>
        <string>Microsoft Defender for Endpoint configuration settings</string>
        <key>PayloadVersion</key>
        <integer>1</integer>
        <key>PayloadEnabled</key>
        <true/>
        <key>PayloadRemovalDisallowed</key>
        <true/>
        <key>PayloadScope</key>
        <string>System</string>
        <key>PayloadContent</key>
        <array>
            <dict>
                <key>PayloadUUID</key>
                <string>99DBC2BC-3B3A-46A2-A413-C8F9BB9A7295</string>
                <key>PayloadType</key>
                <string>com.microsoft.wdav</string>
                <key>PayloadOrganization</key>
                <string>Microsoft</string>
                <key>PayloadIdentifier</key>
                <string>com.microsoft.wdav</string>
                <key>PayloadDisplayName</key>
                <string>Microsoft Defender for Endpoint configuration settings</string>
                <key>PayloadDescription</key>
                <string/>
                <key>PayloadVersion</key>
                <integer>1</integer>
                <key>PayloadEnabled</key>
                <true/>
                <key>tamperProtection</key>
                <dict>
                  <key>enforcementLevel</key>
                  <string>disabled</string>
                </dict>
            </dict>
        </array>
    </dict>
</plist>

Vyloučení

Poznámka

K dispozici ve verzi 101.98.71 nebo novější.

Ochrana před falšováním zabraňuje jakémukoli procesu macOS v provádění změn prostředků Microsoft Defender nebo ukončení procesů Microsoft Defender. Mezi chráněné prostředky patří instalační a konfigurační soubory.

Interně Microsoft Defender za určitých okolností provádí výjimky pro určité procesy macOS. Například macOS může upgradovat balíček Defenderu, pokud ochrana před falšováním ověří pravost balíčků. Existují i další vyloučení. Například proces MDM pro macOS může nahradit konfigurační soubory spravované Microsoft Defenderem.

V některých situacích musí globální správce restartovat Defender na všech nebo některých spravovaných počítačích. Obvykle se to provádí vytvořením a spuštěním zásady JAMF, která spouští skript na vzdálených počítačích (nebo podobné operace pro jiné dodavatele MDM).

Aby se zabránilo označení operací iniciovaných zásadami, Microsoft Defender zjistí tyto procesy zásad MDM pro JAMF a Intune a povolí z nich operace manipulace. Ochrana před falšováním současně zablokuje restartování Microsoft Defender stejného skriptu, pokud je spuštěný místně z terminálu.

Tyto spuštěné procesy zásad jsou však specifické pro dodavatele. I když Microsoft Defender poskytuje předdefinované vyloučení pro JAMF a Intune, nemůže tato vyloučení poskytnout všem možným dodavatelům MDM. Místo toho může globální správce do ochrany před falšováním přidat vlastní vyloučení. Vyloučení je možné provádět pouze prostřednictvím profilu MDM, nikoli místní konfigurace.

K tomu je potřeba nejprve zjistit cestu k pomocnému procesu MDM, který spouští zásady. Můžete to udělat buď podle dokumentace dodavatele MDM. Můžete také zahájit manipulaci s testovacími zásadami, získat výstrahu na portálu Zabezpečení, zkontrolovat hierarchii procesů, které útok iniciovaly, a vybrat proces, který vypadá jako kandidát pomocníka MDM.

Po identifikaci cesty procesu máte několik možností, jak nakonfigurovat vyloučení:

  • Cestou samotnou. Je to nejjednodušší (tuto cestu už máte) a nejméně bezpečný způsob, jak to udělat, jinými slovy, nedoporučuje se.
  • Získáním ID podpisu ze spustitelného souboru teamidentifier nebo podpisového identifikátoru spuštěním codesign -dv --verbose=4 path_to_helper příkazu (vyhledejte Identifikátor a TeamIdentifier, druhý identifikátor není k dispozici pro vlastní nástroje Společnosti Apple).
  • Nebo pomocí kombinace těchto atributů.

Příklad:

codesign -dv --verbose=4 /usr/bin/ruby
Executable=/usr/bin/ruby
Identifier=com.apple.ruby
Format=Mach-O universal (x86_64 arm64e)
CodeDirectory v=20400 size=583 flags=0x0(none) hashes=13+2 location=embedded
Platform identifier=14
VersionPlatform=1
VersionMin=852992
VersionSDK=852992
Hash type=sha256 size=32
CandidateCDHash sha256=335c10d40db9417d80db87f658f6565018a4c3d6
CandidateCDHashFull sha256=335c10d40db9417d80db87f658f6565018a4c3d65ea3b850fc76c59e0e137e20
Hash choices=sha256
CMSDigest=335c10d40db9417d80db87f658f6565018a4c3d65ea3b850fc76c59e0e137e20
CMSDigestType=2
Executable Segment base=0
Executable Segment limit=16384
Executable Segment flags=0x1
Page size=4096
Launch Constraints:
  None
CDHash=335c10d40db9417d80db87f658f6565018a4c3d6
Signature size=4442
Authority=Software Signing
Authority=Apple Code Signing Certification Authority
Authority=Apple Root CA
Signed Time=Apr 15, 2023 at 4:45:52 AM
Info.plist=not bound
TeamIdentifier=not set
Sealed Resources=none
Internal requirements count=1 size=64

Nakonfigurujte předvolby, například pro JAMF:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>tamperProtection</key>
    <dict>
      <key>enforcementLevel</key>
      <string>block</string>
      <key>exclusions</key>
      <array>
        <dict>
          <key>path</key>
          <string>/usr/bin/ruby</string>
          <key>teamId</key>
          <string/>
          <key>signingId</key>
          <string>com.apple.ruby</string>
          <key>args</key>
          <array>
            <string>/usr/local/bin/global_mdatp_restarted.rb</string>
          </array>
        </dict>
      </array>
    </dict>
  </dict>
</plist>

Všimněte si, že vyloučení interpreta skriptování (jako Je Ruby z výše uvedeného příkladu) místo zkompilovaného spustitelného souboru není bezpečné, protože může spustit jakýkoli skript, ne jenom ten, který používá globální správce.

Pokud chcete minimalizovat riziko, doporučujeme použít další args a povolit spouštění pouze konkrétních skriptů se skriptovacími interprety. Ve výše uvedeném příkladu je povoleno restartovat jenom /usr/bin/ruby /usr/local/bin/global_mdatp_restarted.rb Defender. Ale například /usr/bin/ruby /Library/Application Support/Global Manager/global_mdatp_restarted.rb , nebo dokonce nejsou /usr/bin/ruby /usr/local/bin/global_mdatp_restarted.rb $USER povoleny.

Upozornění

Abyste zabránili neočekávaným útokům, vždy používejte ta nejpřísnější kritéria.

Řešení potíží s konfigurací

Problém: Ochrana před falšováním se hlásí jako zakázaná

Pokud spuštění příkazu mdatp health hlásí, že ochrana proti manipulaci je zakázaná, i když jste ji povolili a od onboardingu uplynula více než hodina, můžete zkontrolovat, jestli máte správnou konfiguraci, spuštěním následujícího příkazu:

mdatp health --details tamper_protection
tamper_protection                           : "audit"
exclusions                                  : [{"path":"/usr/bin/ruby","team_id":"","signing_id":"com.apple.ruby","args":["/usr/local/bin/global_mdatp_restarted.rb"]}] [managed]
feature_enabled_protection                  : true
feature_enabled_portal                      : true
configuration_source                        : "local"
configuration_local                         : "audit"
configuration_portal                        : "block"
configuration_default                       : "audit"
configuration_is_managed                    : false
  • tamper_protection je efektivní režim. Pokud je tento režim režim, který jste chtěli použít, máte všechno nastavené.
  • configuration_source určuje, jak je nastavena úroveň vynucení ochrany před falšováním. Musí odpovídat způsobu, jakým jste nakonfigurovali ochranu před falšováním. (Pokud jste jeho režim nastavili prostřednictvím spravovaného profilu a configuration_source zobrazuje něco jiného, pravděpodobně jste svůj profil chybně nakonfigurovali.)
    • mdm – konfiguruje se prostřednictvím spravovaného profilu. Jenom globální správce ho může změnit aktualizací profilu.
    • local – je nakonfigurovaný pomocí mdatp config příkazu
    • portal – výchozí úroveň vynucení nastavená na portálu Zabezpečení
    • defaults – nenakonfigurováno, použije se výchozí režim
  • Pokud feature_enabled_protection je hodnota false, není pro vaši organizaci povolená ochrana před falšováním (stává se to, když Defender nehlásí licencovanou ochranu).
  • Pokud feature_enabled_portal je nepravda, nastavení výchozího režimu přes portál Security Portal pro vás zatím není povolené.
  • configuration_local, sděluje režim, který by se použil, pokud byl použit odpovídající kanál konfigurace. configuration_portalconfiguration_default (Jako příklad můžete nakonfigurovat ochranu před falšováním do režimu blokování prostřednictvím profilu MDM a configuration_default sdělovat . audit Znamená to jenom, že pokud odeberete svůj profil a režim nebyl nastaven pomocí mdatp config portálu zabezpečení nebo prostřednictvím něj, použije se výchozí režim, kterým je audit.)

Poznámka

Abyste získali stejné informace před verzí 101.98.71, musíte zkontrolovat protokoly Microsoft Defender. Příklad najdete níže.

$ sudo grep -F '[{tamperProtection}]: Feature state:' /Library/Logs/Microsoft/mdatp/microsoft_defender_core.log | tail -n 1

Tip

Chcete se dozvědět více? Engage s komunitou Microsoft Security v naší technické komunitě: Microsoft Defender for Endpoint Tech Community.