Deaktivieren Sie Windows Defender in Windows 10

32

Ich kann in Windows 10 keine Informationen zum Deaktivieren von Windows Defender finden. In den Voransichten finden Sie einige Informationen zur Vorgehensweise. Die Konfigurationsseiten haben sich jedoch mit der endgültigen Version geändert.

Insbesondere möchte ich den Windows Defender-Dienst beenden und deaktivieren.

  • Über net stop windefendeine Eingabeaufforderung mit erhöhten Rechten erhalten Sie "Zugriff verweigert".
  • Stopp- und Starttyp sind in sevices.msc ausgegraut, auch wenn Sie als Administrator angemeldet sind
  • Es scheint keine GUI-Möglichkeit zu geben, um die Benutzerkontensteuerung in Windows 10 zu deaktivieren

Hat jemand herausgefunden, wie man Defender in Windows 10 deaktiviert?

Todd Wilcox
quelle
3
Einfachste Methode. Installieren Sie einfach eine kostenpflichtige / kostenlose Sicherheitssuite und sie wird automatisch deaktiviert. Gehen Sie ansonsten zu "Update and Security" und deaktivieren Sie den Echtzeitschutz. Sie können die Benutzerkontensteuerung in Windows 8 und höher nicht in demselben Maße deaktivieren wie in Windows 7. Natürlich bin ich mir nicht sicher, was die Benutzerkontensteuerung mit Windows Defender zu tun hat.
Ramhound
Ich erwähnte UAC, weil es möglich schien, dass UAC mich daran hinderte, Defender zu deaktivieren. Ich habe noch nicht das neueste Kaspersky-Produkt bereitgestellt, das Windows 10 unterstützt, und ehrlich gesagt bin ich nicht so sicher, dass Kaspersky bei laufendem Defender problemlos installiert werden kann. Außerdem möchte ich es grundsätzlich deaktivieren können, falls ich es aus anderen Gründen benötige oder möchte.
Todd Wilcox
Ich habe Update & SecurityWindows Defender geöffnet und kann es deaktivieren. Persönlich konnte ich den Dienst jedoch deaktivieren, nachdem ich das getan habe.
Ramhound
Windows Defender lässt sich problemlos austauschen. Installieren Sie einfach einen anderen AV-Player und er sollte sich automatisch ausschalten.
Gronostaj
3
@gronostaj Wenn meine Frage wäre, wie man Windows Defender durch eine andere A / V-Lösung ersetzt, würde ich vorschlagen, dass Sie Ihren Kommentar als Antwort posten und ich würde ihn akzeptieren, außer dass Ihr Kommentar der gleiche ist wie der von Ramhound, also würde ich wirklich vorschlagen er macht es. Aber das versuche ich nicht.
Todd Wilcox

Antworten:

22

Sie können dies mithilfe einer Gruppenrichtlinie tun .

öffnen gpedit.msc

navigiere zu Computer Configuration > Administrative Templates > Windows Components > Windows Defender

Turn off Windows Defender = Aktiviert

Wenn Sie dann versuchen, Windows Defender zu öffnen, wird Folgendes angezeigt: Bildbeschreibung hier eingeben

Und obwohl der Dienst in den Einstellungen aktiviert zu sein scheint, wird er nicht ausgeführt:Bildbeschreibung hier eingeben

Mehr Info:

http://aaron-hoffman.blogspot.com/2015/08/install-and-setup-windows-10-for.html

und http://www.download3k.com/articles/How-to-Turn-Off-Windows-Defender-Permanently-inWindows-10-01350

Aaron Hoffman
quelle
Ich kann nicht glauben, dass ich das nicht alleine gefunden habe. Vielen Dank!
Todd Wilcox
2
Gilt das auch für Windows Home? Ich kann nicht findengpedit.msc
Stijn de Witt
2
Nein, es funktioniert nicht für Heimanwender. Nur Pro / Enterprise / Education
Sloosecannon
2
Versucht dies ... jedoch wird der Dienst noch im Task-Manager ausgeführt.
Brig
12

Ich habe einen anderen Weg mit der Registrierung gefunden.

In diesem Artikel habe ich den Starttyp für die Defender-Dienste und -Treiber (!!) in der Registrierung geändert, während ich als Administrator angemeldet war. Hier ist ein kurzer Abriss:

  1. Durchsuchen Sie die Registrierung nach HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services.
  2. Suchen Sie nach Diensten, die mit "wd" beginnen und im Wert "Description" "Windows Defender" enthalten. Eine möglicherweise unvollständige Liste ist: wdboot, wdfilter, wdnisdrv, wdnissvc, windefend.
  3. Ändern Sie den StartWert für jeden Dienst in 0x4(Hex 4, Dezimal 4).
  4. Starten Sie neu.
Todd Wilcox
quelle
4
Ich bin als Administrator angemeldet und erhalte weiterhin die Fehlermeldung "Fehler beim Schreiben. Fehler beim Schreiben des neuen Inhalts des Werts."
Mark
1
Ich auch mit dem gleichen Fehler "Error writing start. Error writing the value's new contents. Irgendwelche Arbeiten für uns @Todd Wilcox?
Nam G VU
1
Haben Sie versucht, mit der rechten Maustaste auf regedit zu klicken und als Administrator zu arbeiten?
Todd Wilcox
2
Leider erhalte ich unter Win10 Home Single Language den gleichen Fehler, auch wenn ich als Administrator regedit gestartet habe. Ich fange jetzt wirklich an, Windows 10 zu entwerfen.
Gideon
Wenn Sie dazu aufgefordert werden Error writing (...), schließen Sie regedit und öffnen Sie es erneut.
Marc.2377,
11

Kurze Version

  1. Herunterladen
  2. Extrakt
  3. Doppelklick DisableDefender.reg

Erläuterung

Die bei weitem effektivste und sauberste Möglichkeit, Windows Defender in Windows 10 dauerhaft zu deaktivieren, ist die von Aaron Hoffman beschriebene Gruppenrichtlinie. Leider fehlen Windows 10 Home die notwendigen Tools.

Hier ist eine Registrierungsdatei, die die Änderungen enthält, die von gpedit.msc auf einem Windows 10 Pro-Computer vorgenommen wurden. Es wurde auch unter Windows 10 Home getestet. Speichern Sie die Datei wie DisableDefender.regmit Windows-Linienenden und doppelklicken Sie darauf, um sie in Ihre Registrierung zu importieren.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender]
"DisableAntiSpyware"=dword:00000001
"DisableRoutinelyTakingAction"=dword:00000001

Wenn Sie Defender jemals wieder aktivieren möchten, wechseln Sie 00000001in 00000000beide Zeilen.

Sie können die Dateien herunterladen, um Defender von Gist zu deaktivieren und wieder zu aktivieren .

Zenexer
quelle
1
Sie gewinnen heute das Internet, Sir.
ivan_bilan
Ich hatte WD wieder aktiviert, indem ich den Wert auf 00000000 regeditierte. Ergebnisse WD Der Echtzeitschutz ist deaktiviert, da Sie einen anderen AV verwenden. Tatsächlich habe ich kein Antivirus installiert. Wie kann man das beheben? Vielen Dank
Santosa Sandy
@SantosaSandy Dies kann verschiedene Ursachen haben, einschließlich Malware. Sie sollten eine separate Frage starten.
Zenexer
Danke Herr PB. Im Notfall und ohne Fehler bei der Suche nach Hinweisen aktualisiere ich einfach die Fenster und starte den Registry Cleaner (zB CCleaner). Der Windows Defender ist wieder aktiv. Vielen Dank
Santosa Sandy
4

Um Windows Defender vollständig zu deaktivieren (nicht nur den Echtzeitschutz), können Sie:

  1. Installieren Sie eine andere Sicherheitssuite (wie von Ramhound erwähnt).
  2. Wenn Sie bereit sind, eine Drittanbieteranwendung zu verwenden, können Sie NoDefender verwenden: http://msft.gq/pub/apps/NoDefender.zip

Weitere Informationen zu NoDefender finden Sie hier: http://winaero.com/blog/nodefender-disable-windows-defender-in-windows-10-with-few-clicks/

user5071535
quelle
Ich vermute, dass NoDefender nur eine automatisierte Möglichkeit ist, die Registrierung zu bearbeiten, die ich manuell durchgeführt habe.
Todd Wilcox
@ToddWilcox, Deine Methode ist dann besser als meine! Eine Drittanbieteranwendung weniger, über die Sie sich Sorgen machen müssen.
user5071535
1
Ich sehe immer noch einen Antimalwaredienst, der Windows Defender ausführt. Ich habe Avg Free Edition installiert
Shorif2000
2
Genau, @Sharif Ich möchte alle Bestätigungen sehen, dass der Antimalwaredienst ebenfalls deaktiviert ist.
Mark
2

Ich habe die Batch-Datei und Registrierungsdateien geschrieben, die Windows Defender in Windows 10 vollständig deaktivieren sollen.

  1. Speichern Sie die folgenden Dateien in demselben Ordner.
  2. Disable Windows Defender.batAls Administrator ausführen .
  3. Nachdem die Batch-Datei fertig ist, starten Sie neu.
  4. Führen Sie Disable Windows Defender.baterneut als Administrator.
  5. Windows Defender sollte jetzt vollständig deaktiviert sein.

Disable Windows Defender.bat

@echo off

call :main %*
goto :eof

:main
    setlocal EnableDelayedExpansion

    rem Check if Windows Defender is running.
    tasklist /fi "imageName eq "MsMpEng.exe"" | find /i "MsMpEng.exe" > nul 2> nul
    if %errorLevel% equ 0 (
        rem Windows Defender is running.
        echo Windows Defender is running.

        rem Performable operations while Windows Defender is running.
        rem Disable Windows Defender drivers.
        echo Disabling Windows Defender drivers...
        set "drivers="%SystemRoot%\System32\drivers\WdBoot.sys";"%SystemRoot%\System32\drivers\WdFilter.sys";"%SystemRoot%\System32\drivers\WdNisDrv.sys""
        set "drivers=!drivers:""="!"

        set "wasDriverDisabled=false"
        for %%d in (!drivers!) do (
            if exist "%%~d" (
                echo Disabling Windows Defender driver "%%~d"...
                call :disableFile "%%~d"
                set "wasDriverDisabled=true"
            )
        )

        rem Disable Windows Defender objects.
        echo Disabling Windows Defender objects...
        call :importRegistry "Disable Windows Defender objects.reg"

        rem Require restart to unload Windows Defender drivers and objects.
        echo.
        echo Restart required.
    ) else (
        rem Windows Defender is not running.
        echo Windows Defender is not running.

        rem Performable operations while Windows Defender is not running.
        rem Disable Windows Defender features.
        echo Disabling Windows Defender features...
        call :importRegistry "Disable Windows Defender features.reg"
        rem Disable Windows Defender services.
        echo Disabling Windows Defender services...
        call :importRegistry "Disable Windows Defender services.reg"

        rem Disable Windows Defender files.
        echo Disabling Windows Defender files...
        ren "%ProgramFiles%\Windows Defender" "Windows Defender.bak"
        ren "%ProgramFiles(x86)%\Windows Defender" "Windows Defender.bak"
        ren "%ProgramData%\Microsoft\Windows Defender" "Windows Defender.bak"
    )

    endlocal
    goto :eof

:ownFile
    setlocal
    set "filePath=%~1"
    set "user=%~2"
    takeown /f "%filePath%" /a
    icacls "%filePath%" /grant "%user%:F"
    endlocal
    goto :eof

:disableFile
    setlocal
    set "filePath=%~1"
    call :ownFile "%filePath%" "Administrators"
    ren "%filePath%" "%~nx1.bak"
    endlocal
    goto :eof

:importRegistry
    setlocal
    set "filePath=%~1"
    call OwnRegistryKeys.bat "%filePath%"
    @echo off
    regedit /s "%filePath%"
    endlocal
    goto :eof

Disable Windows Defender objects.reg

Windows Registry Editor Version 5.00

; Disable "Scan with Windows Defender..." right click context menu.
[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{09A47860-11B0-4DA5-AFA5-26D86198A780}]
[-HKEY_LOCAL_MACHINE\Software\Classes\Wow6432Node\CLSID\{09A47860-11B0-4DA5-AFA5-26D86198A780}]
[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{D8559EB9-20C0-410E-BEDA-7ED416AECC2A}]
[-HKEY_LOCAL_MACHINE\Software\Classes\Wow6432Node\CLSID\{D8559EB9-20C0-410E-BEDA-7ED416AECC2A}]

; Disable PSFactoryBuffer ("mpuxhostproxy.dll").
[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{13F6A0B6-57AF-4BA7-ACAA-614BC89CA9D8}]
[-HKEY_LOCAL_MACHINE\Software\Classes\Wow6432Node\CLSID\{13F6A0B6-57AF-4BA7-ACAA-614BC89CA9D8}]

; Disable "DefenderCSP.dll".
[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{195B4D07-3DE2-4744-BBF2-D90121AE785B}]
[-HKEY_LOCAL_MACHINE\Software\Classes\Wow6432Node\CLSID\{195B4D07-3DE2-4744-BBF2-D90121AE785B}]

; Disable Windows Defender IOfficeAntiVirus implementation ("MpOav.dll").
[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{2781761E-28E0-4109-99FE-B9D127C57AFE}]
[-HKEY_LOCAL_MACHINE\Software\Classes\Wow6432Node\CLSID\{2781761E-28E0-4109-99FE-B9D127C57AFE}]

; Disable InfectionState WMI Provider ("MpProvider.dll").
[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{361290c0-cb1b-49ae-9f3e-ba1cbe5dab35}]
[-HKEY_LOCAL_MACHINE\Software\Classes\Wow6432Node\CLSID\{361290c0-cb1b-49ae-9f3e-ba1cbe5dab35}]

; Disable Status WMI Provider ("MpProvider.dll").
[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{8a696d12-576b-422e-9712-01b9dd84b446}]
[-HKEY_LOCAL_MACHINE\Software\Classes\Wow6432Node\CLSID\{8a696d12-576b-422e-9712-01b9dd84b446}]

; Disable PSFactoryBuffer ("mpuxhostproxy.dll").
[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{94F35585-C5D7-4D95-BA71-A745AE76E2E2}]
[-HKEY_LOCAL_MACHINE\Software\Classes\Wow6432Node\CLSID\{94F35585-C5D7-4D95-BA71-A745AE76E2E2}]

; Disable Microsoft Windows Defender ("MsMpCom.dll").
[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{A2D75874-6750-4931-94C1-C99D3BC9D0C7}]
[-HKEY_LOCAL_MACHINE\Software\Classes\Wow6432Node\CLSID\{A2D75874-6750-4931-94C1-C99D3BC9D0C7}]
[-HKEY_LOCAL_MACHINE\Software\Classes\TypeLib\{8C389764-F036-48F2-9AE2-88C260DCF43B}]
[-HKEY_LOCAL_MACHINE\Software\Classes\Wow6432Node\TypeLib\{8C389764-F036-48F2-9AE2-88C260DCF43B}]

; Disable Windows Defender WMI Provider ("ProtectionManagement.dll").
[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{A7C452EF-8E9F-42EB-9F2B-245613CA0DC9}]
[-HKEY_LOCAL_MACHINE\Software\Classes\Wow6432Node\CLSID\{A7C452EF-8E9F-42EB-9F2B-245613CA0DC9}]

; Disable AMMonitoring WMI Provider ("AMMonitoringProvider.dll").
[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{DACA056E-216A-4FD1-84A6-C306A017ECEC}]
[-HKEY_LOCAL_MACHINE\Software\Classes\Wow6432Node\CLSID\{DACA056E-216A-4FD1-84A6-C306A017ECEC}]

; Disable MP UX Host ("MpUxSrv.exe").
[-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{FDA74D11-C4A6-4577-9F73-D7CA8586E10D}]
[-HKEY_LOCAL_MACHINE\Software\Classes\Wow6432Node\CLSID\{FDA74D11-C4A6-4577-9F73-D7CA8586E10D}]

Disable Windows Defender features.reg

Windows Registry Editor Version 5.00

; Disable Windows Defender features.
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Defender]
"DisableAntiSpyware"=dword:00000001
"DisableRoutinelyTakingAction"=dword:00000001
"ProductStatus"=dword:00000000

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Defender\Real-Time Protection]
"DisableAntiSpywareRealtimeProtection"=dword:00000001
"DisableRealtimeMonitoring"=dword:00000001

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Defender\Scan]
"AutomaticallyCleanAfterScan"=dword:00000000
"ScheduleDay"=dword:00000008

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Defender\UX Configuration]
"AllowNonAdminFunctionality"=dword:00000000
"DisablePrivacyMode"=dword:00000001

[HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows Defender]
"DisableAntiSpyware"=dword:00000001
"DisableRoutinelyTakingAction"=dword:00000001
"ProductStatus"=dword:00000000

[HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows Defender\Real-Time Protection]
"DisableAntiSpywareRealtimeProtection"=dword:00000001
"DisableRealtimeMonitoring"=dword:00000001

[HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows Defender\Scan]
"AutomaticallyCleanAfterScan"=dword:00000000
"ScheduleDay"=dword:00000008

[HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows Defender\UX Configuration]
"AllowNonAdminFunctionality"=dword:00000000
"DisablePrivacyMode"=dword:00000001

Disable Windows Defender services.reg

Windows Registry Editor Version 5.00

; Disable "Windows Defender" services.
[HKEY_LOCAL_MACHINE\System\ControlSet001\Services\WinDefend]
"Start"=dword:00000004
[HKEY_LOCAL_MACHINE\System\ControlSet002\Services\WinDefend]
"Start"=dword:00000004
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\WinDefend]
"Start"=dword:00000004
[HKEY_LOCAL_MACHINE\System\ControlSet001\Services\WdBoot]
"Start"=dword:00000004
[HKEY_LOCAL_MACHINE\System\ControlSet002\Services\WdBoot]
"Start"=dword:00000004
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\WdBoot]
"Start"=dword:00000004
[HKEY_LOCAL_MACHINE\System\ControlSet001\Services\WdFilter]
"Start"=dword:00000004
[HKEY_LOCAL_MACHINE\System\ControlSet002\Services\WdFilter]
"Start"=dword:00000004
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\WdFilter]
"Start"=dword:00000004
[HKEY_LOCAL_MACHINE\System\ControlSet001\Services\WdNisDrv]
"Start"=dword:00000004
[HKEY_LOCAL_MACHINE\System\ControlSet002\Services\WdNisDrv]
"Start"=dword:00000004
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\WdNisDrv]
"Start"=dword:00000004
[HKEY_LOCAL_MACHINE\System\ControlSet001\Services\WdNisSvc]
"Start"=dword:00000004
[HKEY_LOCAL_MACHINE\System\ControlSet002\Services\WdNisSvc]
"Start"=dword:00000004
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\WdNisSvc]
"Start"=dword:00000004

OwnRegistryKeys.bat

@echo off

rem Get the location of the PowerShell file.
for /f "usebackq tokens=*" %%f in (`where "OwnRegistryKeys.ps1"`) do (
    rem Run command for each argument.
    for %%a in (%*) do (
        powershell -executionPolicy bypass -file "%%~f" "%%~a"
    )
)

OwnRegistryKeys.ps1

$script:baseKey = @{
    "HKEY_CLASSES_ROOT" = @{
        "name" = "HKEY_CLASSES_ROOT";
        "shortName" = "HKCR";
        "key" = [Microsoft.Win32.Registry]::ClassesRoot
    };
    "HKEY_CURRENT_CONFIG" = @{
        "name" = "HKEY_CURRENT_CONFIG";
        "shortName" = "HKCC";
        "key" = [Microsoft.Win32.Registry]::CurrentConfig
    };
    "HKEY_CURRENT_USER" = @{
        "name" = "HKEY_CURRENT_USER";
        "shortName" = "HKCU";
        "key" = [Microsoft.Win32.Registry]::CurrentUser
    };
    "HKEY_DYN_DATA" = @{
        "name" = "HKEY_DYN_DATA";
        "shortName" = "HKDD";
        "key" = [Microsoft.Win32.Registry]::DynData
    };
    "HKEY_LOCAL_MACHINE" = @{
        "name" = "HKEY_LOCAL_MACHINE";
        "shortName" = "HKLM";
        "key" = [Microsoft.Win32.Registry]::LocalMachine
    };
    "HKEY_PERFORMANCE_DATA" = @{
        "name" = "HKEY_PERFORMANCE_DATA";
        "shortName" = "HKPD";
        "key" = [Microsoft.Win32.Registry]::PerformanceData
    };
    "HKEY_USERS" = @{
        "name" = "HKEY_USERS";
        "shortName" = "HKU";
        "key" = [Microsoft.Win32.Registry]::Users
    }
}

function enablePrivilege {
    param(
        # The privilege to adjust. This set is taken from:
        # http://msdn.microsoft.com/en-us/library/bb530716(VS.85).aspx
        [validateSet(
            "SeAssignPrimaryTokenPrivilege",
            "SeAuditPrivilege",
            "SeBackupPrivilege",
            "SeChangeNotifyPrivilege",
            "SeCreateGlobalPrivilege",
            "SeCreatePagefilePrivilege",
            "SeCreatePermanentPrivilege",
            "SeCreateSymbolicLinkPrivilege",
            "SeCreateTokenPrivilege",
            "SeDebugPrivilege",
            "SeEnableDelegationPrivilege",
            "SeImpersonatePrivilege",
            "SeIncreaseBasePriorityPrivilege",
            "SeIncreaseQuotaPrivilege",
            "SeIncreaseWorkingSetPrivilege",
            "SeLoadDriverPrivilege",
            "SeLockMemoryPrivilege",
            "SeMachineAccountPrivilege",
            "SeManageVolumePrivilege",
            "SeProfileSingleProcessPrivilege",
            "SeRelabelPrivilege",
            "SeRemoteShutdownPrivilege",
            "SeRestorePrivilege",
            "SeSecurityPrivilege",
            "SeShutdownPrivilege",
            "SeSyncAgentPrivilege",
            "SeSystemEnvironmentPrivilege",
            "SeSystemProfilePrivilege",
            "SeSystemtimePrivilege",
            "SeTakeOwnershipPrivilege",
            "SeTcbPrivilege",
            "SeTimeZonePrivilege",
            "SeTrustedCredManAccessPrivilege",
            "SeUndockPrivilege",
            "SeUnsolicitedInputPrivilege"
        )]
        $privilege,

        # The process on which to adjust the privilege. Defaults to the current process.
        $processId = $pid,

        # Switch to disable the privilege, rather than enable it.
        [switch] $disable
    )

    # Taken from P/Invoke.NET with minor adjustments.
    $definition = @'
using System;
using System.Runtime.InteropServices;

public class AdjustPrivilege {
    [DllImport("advapi32.dll", ExactSpelling = true, SetLastError = true)]
    internal static extern bool AdjustTokenPrivileges(IntPtr htok, bool disall, ref TokPriv1Luid newst, int len, IntPtr prev, IntPtr relen);

    [DllImport("advapi32.dll", ExactSpelling = true, SetLastError = true)]
    internal static extern bool OpenProcessToken(IntPtr h, int acc, ref IntPtr phtok);

    [DllImport("advapi32.dll", SetLastError = true)]
    internal static extern bool LookupPrivilegeValue(string host, string name, ref long pluid);

    [StructLayout(LayoutKind.Sequential, Pack = 1)]
    internal struct TokPriv1Luid {
        public int Count;
        public long Luid;
        public int Attr;
    }

    internal const int SE_PRIVILEGE_ENABLED = 0x00000002;
    internal const int SE_PRIVILEGE_DISABLED = 0x00000000;
    internal const int TOKEN_QUERY = 0x00000008;
    internal const int TOKEN_ADJUST_PRIVILEGES = 0x00000020;

    public static bool EnablePrivilege(long processHandle, string privilege, bool disable) {
        bool result;
        TokPriv1Luid tp;
        IntPtr hproc = new IntPtr(processHandle);
        IntPtr htok = IntPtr.Zero;
        result = OpenProcessToken(hproc, TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, ref htok);
        tp.Count = 1;
        tp.Luid = 0;
        if (disable) {
            tp.Attr = SE_PRIVILEGE_DISABLED;
        } else {
            tp.Attr = SE_PRIVILEGE_ENABLED;
        }
        result = LookupPrivilegeValue(null, privilege, ref tp.Luid);
        result = AdjustTokenPrivileges(htok, false, ref tp, 0, IntPtr.Zero, IntPtr.Zero);
        return result;
    }
}
'@

    $processHandle = (get-process -id $processId).handle
    $type = add-type $definition -passThru
    $type[0]::EnablePrivilege($processHandle, $privilege, $disable)
}

function getKeyNames {
    param(
        [parameter(mandatory = $true)]
        [string[]] $filePaths = $null
    )

    return (get-content $filePaths | select-string -pattern "\[\-?(.*)\]" -allMatches | forEach-object {$_.matches.groups[1].value} | get-unique)
}

function splitKeyName {
    param(
        [parameter(mandatory = $true)]
        [string] $keyName = $null
    )

    $names = $keyName.split("\\/", 2)

    $rootKeyName = $names[0]
    $subKeyName = $names[1]

    $keyPart = @{
        root = $baseKey[$rootKeyName];
        subKey = @{
            name = $subKeyName
        }
    }

    return $keyPart
}

function ownRegistryKey {
    param(
        [parameter(mandatory = $true)]
        [string] $keyName = $null
    )

    write-host """$keyName"""

    # Check if the key exists.
    if ($(try { test-path -path "Registry::$keyName".trim() } catch { $false })) {
        write-host "    Opening..."

        $keyPart = splitKeyName -keyName $keyName
        $ownableKey = $keyPart.root.key.openSubKey($keyPart.subKey.name, [Microsoft.Win32.RegistryKeyPermissionCheck]::ReadWriteSubTree, [System.Security.AccessControl.RegistryRights]::TakeOwnership)
        if ($ownableKey -ne $null) {
            # Set the owner.
            write-host "    Setting owner..."
            $acl = $ownableKey.getAccessControl([System.Security.AccessControl.AccessControlSections]::None)
            $owner = [System.Security.Principal.NTAccount] "Administrators"
            $acl.setOwner($owner)
            $ownableKey.setAccessControl($acl)

            # Set the permissions.
            write-host "    Setting permissions..."
            $acl = $ownableKey.getAccessControl()
            $person = [System.Security.Principal.NTAccount] "Administrators"
            $access = [System.Security.AccessControl.RegistryRights] "FullControl"
            $inheritance = [System.Security.AccessControl.InheritanceFlags] "ContainerInherit"
            $propagation = [System.Security.AccessControl.PropagationFlags] "None"
            $type = [System.Security.AccessControl.AccessControlType] "Allow"

            $rule = new-object System.Security.AccessControl.RegistryAccessRule($person, $access, $inheritance, $propagation, $type)
            $acl.setAccessRule($rule)
            $ownableKey.setAccessControl($acl)

            $ownableKey.close()

            write-host "    Done."

            # Own children subkeys.
            $readableKey = $keyPart.root.key.openSubKey($keyPart.subKey.name, [Microsoft.Win32.RegistryKeyPermissionCheck]::ReadSubTree, [System.Security.AccessControl.RegistryRights]::ReadKey)
            if ($readableKey -ne $null) {
                $subKeyNames = ($readableKey.getSubKeyNames() | forEach-object { "$keyName\$_" })
                $readableKey.close()
                if ($subKeyNames -ne $null) {
                    ownRegistryKeys -keyNames $subKeyNames
                }
            } else {
                write-host "    Unable to open children subkeys."
            }
        } else {
            write-host "    Unable to open subkey."
        }
    } else {
        write-host "    Key does not exist."
    }

    write-host
}

function ownRegistryKeys {
    param(
        [parameter(mandatory = $true)]
        [string[]] $keyNames = $null
    )

    $keyName = $null
    foreach ($keyName in $keyNames) {
        # Own parent key and children subkeys.
        ownRegistryKey -keyName $keyName
    }
}

function requestPrivileges {
    $numberOfRetries = 10

    $privilegeResult = $false
    for ($r = 0; !$privilegeResult -band $r -lt $numberOfRetries; $r += 1) {
        $privilegeResult = enablePrivilege -privilege "SeTakeOwnershipPrivilege"
    }

    if (!$privilegeResult) {
        write-host "Unable to receive privilege."
        exit 1
    }
}

function main {
    param(
        [parameter(mandatory = $true)]
        [string[]] $filePaths = $null
    )

    requestPrivileges

    $keyNames = getKeyNames -filePaths $filePaths
    ownRegistryKeys -keyNames $keyNames
}

main $args
XP1
quelle
Vielen Dank! Übrigens: Dies setzt voraus, dass die englische Version von Windows korrekt funktioniert
M. Abdelhafid,
2

Es wäre hilfreich zu verstehen, warum Sie einen bestimmten Dienst nicht beenden können.

  • Ich bin der Administrator. schlimmer als Scheitern kann nicht der Administrator administrate ?!

Dies liegt an den Sicherheitsberechtigungen für den WinDefend- Dienst.

Hinweis : WinDefendIst der tatsächliche Name des "Windows Defender Antivirus-Dienstes".

Bildbeschreibung hier eingeben

Berechtigungen anzeigen

Wenn Sie von einer Befehlszeile aus ausführen:

>sc sdshow WinDefend

woher

  • sdshowbedeutet "Zeigt die Sicherheitsbeschreibung eines Dienstes an."

Sie erhalten die Sicherheitsbeschreibung :

C:\Users\Ian>sc sdshow WinDefend

D:(A;;CCLCSWRPLOCRRC;;;BU)(A;;CCLCSWRPLOCRRC;;;SY)(A;;CCLCSWRPLOCRRC;;;BA)(A;;CCLCSWRPLOCRRC;;;IU)(A;;CCLCSWRPLOCRRC;;;SU)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;S-1-5-80-1913148863-3492339771-4165695881-2087618961-4109116736)

Dies ist ein ziemlich hässlicher Blob, der von Microsoft völlig undokumentiert ist, aber wir werden versuchen, ihn zu entschlüsseln. Zuerst durch Zeilenumbruch:

D:
   (A;;CCLCSWRPLOCRRC;;;BU)
   (A;;CCLCSWRPLOCRRC;;;SY)
   (A;;CCLCSWRPLOCRRC;;;BA)
   (A;;CCLCSWRPLOCRRC;;;IU)
   (A;;CCLCSWRPLOCRRC;;;SU)
   (A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464)
   (A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;S-1-5-80-1913148863-3492339771-4165695881-2087618961-4109116736)

Das D:bedeutet , das ist eine DACL . Eine Zugriffskontrollliste besteht aus einer Reihe von Zugriffskontrolleinträgen (Access Control Entries, ACE):

  • D: diskretionäre Zugangskontrollliste
    • ACE1: A;;CCLCSWRPLOCRRC;;;BU
    • ACE2: A;;CCLCSWRPLOCRRC;;;SY
    • ACE3: A;;CCLCSWRPLOCRRC;;;BA
    • ACE4: A;;CCLCSWRPLOCRRC;;;IU
    • ACE5: A;;CCLCSWRPLOCRRC;;;SU
    • ACE6: A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464
    • ACE7: A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;S-1-5-80-1913148863-3492339771-4165695881-2087618961-4109116736

Jeder ACE besteht aus 5 mit Semikolon abgeschlossenen Einstellungen, gefolgt von who er gilt.

Ein zufälliger Blog-Artikel entschlüsselt zunächst, auf wen sie sich bewerben ( archive.is ) :

  • BU: Eingebaute Benutzer
  • SY: Lokales System
  • BA: Eingebaute Administratoren
  • UI: Interaktiv angemeldeter Benutzer
  • SU: Dienstanmeldebenutzer
  • S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464: Vertrauenswürdiger Installer
  • S-1-5-80-1913148863-3492339771-4165695881-2087618961-4109116736:

Sie können den Namen einer SID abrufen, indem Sie Folgendes ausführen:

>wmic useraccount where sid='S-1-5-80-1913148863-3492339771-4165695881-2087618961-4109116736' get name

Jeder ACE enthält eine Liste von Berechtigungen, die dem Benutzer gewährt oder verweigert werden.

  • D: diskretionäre Zugangskontrollliste
    • ACE 1: A;;CCLCSWRPLOCRRC;;; Eingebaute Benutzer
    • ACE 2: A;;CCLCSWRPLOCRRC;;; Lokales System
    • ACE 3: A;;CCLCSWRPLOCRRC;;; Eingebaute Administratoren
    • ACE 4: A;;CCLCSWRPLOCRRC;;; Interaktiver Benutzer
    • ACE 5: A;;CCLCSWRPLOCRRC;;; Dienstanmeldebenutzer
    • ACE 6: A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;; Vertrauenswürdiges Installationsprogramm
    • ACE 7: A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;; S-1-5-80-1913148863-3492339771-4165695881-2087618961-4109116736

Aufteilen der verbleibenden durch Semikolons getrennten Abschnitte in einem ACE:

  • AS: A;;CCLCSWRPLOCRRC;;;
    • AceType: AACCESS_ALLOWED_ACE_TYPE
    • AceFlags: (keine)
    • AccessMask: CC LC SW RP LO CR RC
      • CC: CREATE_CHILD
      • LC: LIST_CHILDREN
      • SW: SELF_WRITE
      • RP: READ_PROPERTY
      • LO: LIST_OBJECT
      • CR: CONTROL_ACCESS
      • RC: READ_CONTROL
    • ObjectGuid: (keine)
    • InheritObjectGuid: (keine)

Das führende AMittel ist zulässig , und die Berechtigungen bestehen aus zwei Buchstaben:

  • D: diskretionäre Zugangskontrollliste
    • ACE 1 : CC LC SW RP LO CR RCEingebaute Benutzer zulassen
    • ACE 2 : Zulassen,, CC LC SW RP LO CR RCLokales System
    • ACE 3 : CC LC SW RP LO CR RCIntegrierte Administratoren zulassen
    • ACE 4 : CC LC SW RP LO CR RCInteraktiver Benutzer zulassen
    • ACE 5 : CC LC SW RP LO CR RCDienstanmeldebenutzer zulassen
    • ACE 6 : CC LC SW RP LO CR RC DC WP DT SD WD WOVertrauenswürdiges Installationsprogramm zulassen
    • ACE 7 : Allow CC LC SW RP LO CR RC DC WP DT SD WD WO, S-1-5-80-1913148863-3492339771-4165695881-2087618961-4109116736

Und hier muss ich aufhören, um meine Arbeit zu retten. Dieser Umweg über das Beenden des Windows Defender-Dienstes ist interessant: Aber ich habe ihn bereits beendet und mein PC verhält sich immer noch schlecht.

Spoiler:

sc sdset WinDefend [newSDLString]

Bonus Lesung

Ian Boyd
quelle
1

Die einfache Powershell-Methode geht aus einer Antwort hervor, die ich auf eine Frage gepostet habe, die später als Duplikat markiert wurde.

Der einfachste Weg, dies zu tun, wäre die Verwendung von Powershell, um es zu deaktivieren. Der Befehl, den Sie wahrscheinlich wollen, ist dieser

Set-MpPreference -DisableRealtimeMonitoring $true
Get-Service WinDefend | stop-service 

Einen Artikel über die Verwendung von Powershell zum Deaktivieren / Aktivieren von Windows Defender finden Sie hier: http://wmug.co.uk/wmug/b/pwin/archive/2015/05/12/quickly-disable-windows-defender-on-windows -10-mit-Powershell

Im folgenden Technet-Artikel werden die verfügbaren Defender-Cmdlets genauer beschrieben: https://technet.microsoft.com/en-us/library/dn433280.aspx

Abraxas
quelle
Ich glaube nicht, dass dies den Dienst selbst stoppen und deaktivieren würde. Es deaktiviert lediglich die Echtzeitfunktionen von Windows Defender, die einfach über Einstellungen ausgeführt werden können, ohne dass ein PowerShell-Applet erforderlich ist.
Ramhound
@Ramhound bearbeitet für Service MGMT mit Powershell. Ich bin nicht zu 100% davon überzeugt, dass der Dienst ohne dasselbe Problem wie der Netzstopp-Dienst gestoppt wird, aber ich habe mehr Glück mit Powershell gehabt und glaube nicht, dass der Alias ​​"Get / Stop-Service" für "Netzstopp" gilt
Abraxas
1

Ich fand, dass das folgende Verfahren gut funktioniert; Windows Defender wird nicht entfernt oder deaktiviert, Windows Defender-SERVICE wird jedoch deaktiviert, der gesamte Start und die Echtzeitsuche werden gestoppt, und es wird verhindert, dass Windows Defender-Echtzeitsuche sich selbst wieder einschaltet. (Windows Defender bleibt an Ort und Stelle, sodass Sie verdächtige Dateien bei Bedarf scannen können.)

VERFAHREN:

  1. Suchen, herunterladen und installieren Sie die Programmsuite "SysInternals".
  2. Führen Sie das Programm "AutoRuns" aus.
  3. Suchen Sie nach "Windows Defender Service".
  4. Deaktivieren Sie das Kontrollkästchen.
  5. Starte deinen Computer neu.

Danach verringerte sich meine Startzeit von 20 Minuten auf 5 Minuten, und die Speichernutzung nach dem Start (vor dem Starten von Apps) verringerte sich von 2,1 GB auf 1,2 GB. Und als ich in "Dienste" nachgesehen habe, stellte ich fest, dass "Windows Defender-Dienst", während er noch vorhanden ist, jetzt als "NICHT aktiv, Deaktiviert" markiert ist.

Robbie Hatley
quelle
Gibt "Zugriff verweigert", auch als Administrator ausgeführt
pgr
1

Es ist nicht so einfach, den Windows Defender zuverlässig und vollständig zu deaktivieren. Es gibt ein PowerShell-Skript, mit dem Windows Defender deinstalliert wird, das Sie jedoch möglicherweise später nicht wieder installieren können. Dieses Skript erfordert zwei Neustarts.

Laden Sie einfach die Sie Debloat-Windows-10 und folgen Sie Anweisungen des Autors:

  1. Entpacke das Archiv.
  2. Aktivieren Sie die Ausführung von PowerShell-Skripten:

    PS> Set-ExecutionPolicy Uneingeschränkt

  3. Entsperren Sie PowerShell-Skripte und -Module in diesem Verzeichnis:

    PS> ls -Recurse * .ps1 | Datei entsperren PS> ls -Recurse * .psm1 | Datei entsperren

  4. Lauf scripts\disable-windows-defender.ps1

  5. Starten Sie den Computer neu (entweder wie gewohnt oder über die PS > Restart-Computer ).
  6. Lauf scripts\disable-windows-defender.ps1 noch einmal.
  7. Starten Sie den Computer erneut.

Dies ist nicht der einfachste Weg, aber sehr zuverlässig und belastbar.

Es gibt auch Skripte, mit denen Sie nicht benötigte Programme wie BingFinance, Skype, OneDrive usw. entfernen können, sofern Sie diese nicht benötigen.

Das Archiv enthält auch viele Skripte, die Sie möglicherweise nützlich finden.

Bitte beachten Sie, dass diese Skripte Dateien irreversibel löschen und wichtige Funktionen von Windows löschen können. Beispielsweise können sie das Startmenü vollständig deaktivieren!

Führen Sie disable-ShellExperienceHost.batdieses Paket nicht aus, da sich sonst das Startmenü nicht mehr öffnet.

Maxim Masiutin
quelle
0

Ich konnte es mit Autoruns deaktivieren. Auf der Registerkarte "Dienste" befindet sich der Eintrag "WinDefend". Deaktivieren Sie das Kontrollkästchen und starten Sie den Computer neu.

FreddyFlares
quelle
Gibt "Zugriff verweigert", auch als Administrator ausgeführt
pgr
0

Der einfachste Weg, den ich gefunden habe, ist, eine Administrator-Eingabeaufforderung zu öffnen und auszuführen:

reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender" /t REG_DWORD /v DisableAntiSpyware /f /d 1

Starten Sie dann neu. Es ist mir nicht gelungen, den Dienst herunterzufahren, nachdem er ohne Neustart gestartet wurde.

jcoffland
quelle
0

Nach meiner Erfahrung ist das Festlegen von Gruppenrichtlinien die zuverlässigste Methode, um Windows Defender und die ausführbare Datei des Antimalwaredienstes zu stoppen. Vor kurzem trat jedoch eine Situation auf, in der das Festlegen einer Gruppenrichtlinie keine Auswirkungen hatte und die ausführbare Antimalware-Datei weiterhin ausgeführt wurde und meine CPU belastete.

Am Ende habe ich ein kleines Skript geschrieben, um den Besitz der ausführbaren Datei zu übernehmen und Lese- und Ausführungsrechte für diese zu verweigern. Dies löste das Problem. Das Skript ist unten.

@echo off

echo.
echo Disabling Windows Defender Antimalware Executable
echo Note: must be run with Admin permissions
echo.

rem taking ownership of Windows Defender files so that we can change their permissions
takeown /f "%PROGRAMDATA%\Microsoft\Windows Defender\Platform" /A /r /d y > takeown-result.txt

rem denying read and execute for all MsMpEng.exe files found in the directory structure (there may be multiple versions)
icacls %PROGRAMDATA%"\Microsoft\Windows Defender\Platform\*MsMpEng.exe" /deny SYSTEM:(RX) /T /C  /deny Administrators:(RX) /T /C   /deny Users:(RX) /T /C

@echo on
Andy
quelle
Dies funktionierte für mich unter Windows 10 Pro [Version 10.0.18362.476] und überstand einen Neustart. Aber mein Weg warc:\Program Files\Windows Defender\MsMpEng.exe
pgr