美文网首页
用批处理更改本地安全策略

用批处理更改本地安全策略

作者: 禾白小三飘 | 来源:发表于2016-06-19 22:34 被阅读7708次

    批处理修改本地安全策略中的:拒绝从网络访问计算机,将里面的Guest删除。

    echo [Version]>mm.inf
    echo signature="$CHICAGO$">>mm.inf
    echo Revision=1>>mm.inf
    echo [Privilege Rights]>>mm.inf
    echo SeDenyNetworkLogonRight =>>mm.inf
    
    secedit /configure /db mm.sdb /cfg mm.inf
    
    del mm.inf /q
    del mm.sdb /q
    pause
    

    参考:
    http://www.cnblogs.com/SummerRain/archive/2011/04/10/2011246.html

    以下是原文:
    在窗口界面下访问组策略用gpedit.msc
    命令行下用secedit.exe。

    secedit命令语法:
    secedit /analyze
    secedit /configure
    secedit /export
    secedit /validate
    secedit /refreshpolicy
    5个命令的功能分别是分析组策略、配置组策略、导出组策略、验证模板语法和更新组策略。其中secedit /refreshpolicy 在XP/2003下被gpupdate代替。这些命令具体的语法自己在命令行下查看就知道了。

    与访问注册表只需reg文件不同的是,访问组策略除了要有个模板文件(还是inf),还需要一个安全数据库文件(sdb)。要修改组策略,必须先将模板导入安全数据库,再通过应用安全数据库来刷新组策略。来看个例子:

    假设我要将密码长度最小值设置为6,并启用“密码必须符合复杂性要求”,那么先写这么一个模板:

    [version]
    signature="$CHICAGO$"
    [System Access]
    MinimumPasswordLength = 6
    PasswordComplexity = 1

    保存为gp.inf,然后导入:

    secedit /configure /db gp.sdb /cfg gp.inf /quiet

    这个命令执行完成后,将在当前目录产生一个gp.sdb,它是“中间产品”,你可以删除它。
    /quiet参数表示“安静模式”,不产生日志。但根据我的试验,在2000sp4下该参数似乎不起作用,XP下正常。日志总是保存在%windir%\security\logs\scesrv.log。你也可以自己指定日志以便随后删除它。比如:

    secedit /configure /db gp.sdb /cfg gp.inf /log gp.log
    del gp.*

    另外,在导入模板前,还可以先分析语法是否正确:

    secedit /validate gp.inf

    那么,如何知道具体的语法呢?当然到MSDN里找啦。也有偷懒的办法,因为系统自带了一些安全模板,在%windir%\security\templates目录下。打开这些模板,基本上包含了常用的安全设置语法,一看就懂。

    再举个例子——关闭所有的“审核策略”。(它所审核的事件将记录在事件查看器的“安全性”里)。
    echo版:

    echo [version] >1.inf
    echo signature="$CHICAGO$" >>1.inf
    echo [Event Audit] >>1.inf
    echo AuditSystemEvents=0 >>1.inf
    echo AuditObjectAccess=0 >>1.inf
    echo AuditPrivilegeUse=0 >>1.inf
    echo AuditPolicyChange=0 >>1.inf
    echo AuditAccountManage=0 >>1.inf
    echo AuditProcessTracking=0 >>1.inf
    echo AuditDSAccess=0 >>1.inf
    echo AuditAccountLogon=0 >>1.inf
    echo AuditLogonEvents=0 >>1.inf
    secedit /configure /db 1.sdb /cfg 1.inf /log 1.log /quiet
    del 1.*

    也许有人会说:组策略不是保存在注册表中吗,为什么不直接修改注册表?因为不是所有的组策略都保存在注册表中。比如“审核策略”就不是。你可以用 regsnap比较修改该策略前后注册表的变化。我测试的结果是什么都没有改变。只有“管理模板”这一部分是完全基于注册表的。而且,知道了具体位置,用哪个方法都不复杂。

    比如,XP和2003的“本地策略”-》“安全选项”增加了一个“本地帐户的共享和安全模式”策略。XP下默认的设置是“仅来宾”。这就是为什么用管理员帐号连接XP的ipc$仍然只有Guest权限的原因。可以通过导入reg文件修改它为“经典”:

    echo Windows Registry Editor Version 5.00 >1.reg
    echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa] >>1.reg
    echo "forceguest"=dword:00000000 >>1.reg
    regedit /s 1.reg
    del 1.reg

    而相应的用inf,应该是:

    echo [version] >1.inf
    echo signature="$CHICAGO$" >>1.inf
    echo [Registry Values] >>1.inf
    echo MACHINE\System\CurrentControlSet\Control\Lsa\ForceGuest=4,0 >>1.inf
    secedit /configure /db 1.sdb /cfg 1.inf /log 1.log
    del 1.*

    关于命令行下读取组策略的问题。
    系统默认的安全数据库位于%windir%\security\database\secedit.sdb,将它导出至inf文件:

    secedit /export /cfg gp.inf /log 1.log

    没有用/db参数指定数据库就是采用默认的。然后查看gp.inf。

    不过,这样得到的只是组策略的一部分(即“Windows设置”)。而且,某个策略如果未配置,是不会被导出的。比如“重命名系统管理员帐户”,只有被定义了才会在inf文件中出现NewAdministratorName="xxx"。对于无法导出的其他的组策略只有通过访问注册表来获得了。

    此办法在XP和2003下无效——可以导出但内容基本是空的。原因不明。根据官方的资料,XP和2003显示组策略用RSoP(组策略结果集)。相应的命令行工具是gpresult。但是,它获得的是在系统启动时被附加(来自域)的组策略,单机测试结果还是“空”。所以,如果想知道某些组策略是否被设置,只有先写一个inf,再用secedit /analyze,然后查看日志了

    组策略的计算机安全策略
    可以使用secedit,具体帮助参考secedit /?
    其它内容,一般都存在与注册表,只要修改注册表就可以了,具体内容参考 *.adm文件(windows\inf或\windows\system32\GroupPolicy\Adm下)
    注册表可以使用 regedit -s yourreg.reg 来导入自己定义的值

    secedit /export /cfg gp.inf /log 1.log
    导出文件内容示例:
    =====================gp.inf================================
    [Unicode]
    Unicode=yes
    [System Access]
    MinimumPasswordAge = 0
    MaximumPasswordAge = 42
    MinimumPasswordLength = 6
    PasswordComplexity = 0
    PasswordHistorySize = 0
    LockoutBadCount = 6
    ResetLockoutCount = 30
    LockoutDuration = 30
    RequireLogonToChangePassword = 0
    ForceLogoffWhenHourExpire = 0
    NewAdministratorName = "Administrator"
    NewGuestName = "Guest"
    ClearTextPassword = 0
    LSAAnonymousNameLookup = 0
    EnableAdminAccount = 1
    EnableGuestAccount = 0
    [Event Audit]
    AuditSystemEvents = 0
    AuditLogonEvents = 1
    AuditObjectAccess = 0
    AuditPrivilegeUse = 0
    AuditPolicyChange = 0
    AuditAccountManage = 0
    AuditProcessTracking = 0
    AuditDSAccess = 0
    AuditAccountLogon = 1
    [Version]
    signature="$CHICAGO$"
    Revision=1
    [Registry Values]
    MACHINE\Software\Microsoft\Driver Signing\Policy=3,1
    MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Setup\RecoveryConsole\SecurityLevel=4,0
    MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Setup\RecoveryConsole\SetCommand=4,0
    MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\AllocateCDRoms=1,"0"
    MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\AllocateDASD=1,"0"
    MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\AllocateFloppies=1,"0"
    MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\CachedLogonsCount=1,"10"
    MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\ForceUnlockLogon=4,0
    MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\PasswordExpiryWarning=4,14
    MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\ScRemoveOption=1,"0"
    MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableCAD=4,0
    MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System\DontDisplayLastUserName=4,0
    MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System\LegalNoticeText=7,
    MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System\ScForceOption=4,0
    MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System\ShutdownWithoutLogon=4,0
    MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System\UndockWithoutLogon=4,1
    MACHINE\Software\Policies\Microsoft\Windows\Safer\CodeIdentifiers\AuthenticodeEnabled=4,0
    MACHINE\System\CurrentControlSet\Control\Lsa\AuditBaseObjects=4,0
    MACHINE\System\CurrentControlSet\Control\Lsa\CrashOnAuditFail=4,0
    MACHINE\System\CurrentControlSet\Control\Lsa\DisableDomainCreds=4,0
    MACHINE\System\CurrentControlSet\Control\Lsa\EveryoneIncludesAnonymous=4,0
    MACHINE\System\CurrentControlSet\Control\Lsa\FIPSAlgorithmPolicy=4,0
    MACHINE\System\CurrentControlSet\Control\Lsa\ForceGuest=4,0
    MACHINE\System\CurrentControlSet\Control\Lsa\FullPrivilegeAuditing=3,0
    MACHINE\System\CurrentControlSet\Control\Lsa\LimitBlankPasswordUse=4,1
    MACHINE\System\CurrentControlSet\Control\Lsa\LmCompatibilityLevel=4,2
    MACHINE\System\CurrentControlSet\Control\Lsa\MSV1_0\NTLMMinClientSec=4,0
    MACHINE\System\CurrentControlSet\Control\Lsa\MSV1_0\NTLMMinServerSec=4,0
    MACHINE\System\CurrentControlSet\Control\Lsa\NoDefaultAdminOwner=4,0
    MACHINE\System\CurrentControlSet\Control\Lsa\NoLMHash=4,0
    MACHINE\System\CurrentControlSet\Control\Lsa\RestrictAnonymous=4,0
    MACHINE\System\CurrentControlSet\Control\Lsa\RestrictAnonymousSAM=4,1
    MACHINE\System\CurrentControlSet\Control\Print\Providers\LanMan Print Services\Servers\AddPrinterDrivers=4,1
    MACHINE\System\CurrentControlSet\Control\SecurePipeServers\Winreg\AllowedExactPaths\Machine=7,System\CurrentControlSet\Control\ProductOptions,System\CurrentControlSet\Control\Server Applications,Software\Microsoft\Windows NT\CurrentVersion
    MACHINE\System\CurrentControlSet\Control\SecurePipeServers\Winreg\AllowedPaths\Machine=7,System\CurrentControlSet\Control\Print\Printers,System\CurrentControlSet\Services\Eventlog,Software\Microsoft\OLAP Server,Software\Microsoft\Windows NT\CurrentVersion\Print,Software\Microsoft\Windows NT\CurrentVersion\Windows,System\CurrentControlSet\Control\ContentIndex,System\CurrentControlSet\Control\Terminal Server,System\CurrentControlSet\Control\Terminal Server\UserConfig,System\CurrentControlSet\Control\Terminal Server\DefaultUserConfiguration,Software\Microsoft\Windows NT\CurrentVersion\Perflib,System\CurrentControlSet\Services\SysmonLog
    MACHINE\System\CurrentControlSet\Control\Session Manager\Kernel\ObCaseInsensitive=4,1
    MACHINE\System\CurrentControlSet\Control\Session Manager\ProtectionMode=4,1
    MACHINE\System\CurrentControlSet\Control\Session Manager\SubSystems\optional=7,Posix
    MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters\AutoDisconnect=4,15
    MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters\EnableForcedLogOff=4,1
    MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters\EnableSecuritySignature=4,0
    MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters\NullSessionPipes=7,COMNAP,COMNODE,SQL\QUERY,SPOOLSS,NETLOGON,LSARPC,SAMR,BROWSER
    MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters\NullSessionShares=7,COMCFG,DFS$
    MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters\RequireSecuritySignature=4,0
    MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters\RestrictNullSessAccess=4,1
    MACHINE\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\EnablePlainTextPassword=4,0
    MACHINE\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\EnableSecuritySignature=4,1
    MACHINE\System\CurrentControlSet\Services\LanmanWorkstation\Parameters\RequireSecuritySignature=4,0
    MACHINE\System\CurrentControlSet\Services\LDAP\LDAPClientIntegrity=4,1
    MACHINE\System\CurrentControlSet\Services\Netlogon\Parameters\DisablePasswordChange=4,0
    MACHINE\System\CurrentControlSet\Services\Netlogon\Parameters\MaximumPasswordAge=4,30
    MACHINE\System\CurrentControlSet\Services\Netlogon\Parameters\RequireSignOrSeal=4,1
    MACHINE\System\CurrentControlSet\Services\Netlogon\Parameters\RequireStrongKey=4,0
    MACHINE\System\CurrentControlSet\Services\Netlogon\Parameters\SealSecureChannel=4,1
    MACHINE\System\CurrentControlSet\Services\Netlogon\Parameters\SignSecureChannel=4,1
    [Privilege Rights]
    SeNetworkLogonRight = S-1-1-0,S-1-5-32-544,S-1-5-32-545,S-1-5-32-547,S-1-5-32-551
    SeBackupPrivilege = S-1-5-32-544,S-1-5-32-551
    SeChangeNotifyPrivilege = S-1-1-0,S-1-5-32-544,
    S-1-5-32-545,S-1-5-32-547,S-1-5-32-551
    SeSystemtimePrivilege = S-1-5-19,S-1-5-32-544,*S-1-5-32-547
    SeCreatePagefilePrivilege = *S-1-5-32-544
    SeDebugPrivilege = *S-1-5-32-544
    SeRemoteShutdownPrivilege = S-1-5-32-544
    SeAuditPrivilege = S-1-5-19,S-1-5-20
    SeIncreaseQuotaPrivilege = S-1-5-19,S-1-5-20,
    S-1-5-32-544
    SeIncreaseBasePriorityPrivilege = *S-1-5-32-544
    SeLoadDriverPrivilege = *S-1-5-32-544
    SeBatchLogonRight = S-1-5-19,SUPPORT_388945a0
    SeServiceLogonRight = S-1-5-20
    SeInteractiveLogonRight = S-1-5-32-544,S-1-5-32-545,
    S-1-5-32-547,
    S-1-5-32-551
    SeSecurityPrivilege = *S-1-5-32-544
    SeSystemEnvironmentPrivilege = *S-1-5-32-544
    SeProfileSingleProcessPrivilege = S-1-5-32-544,S-1-5-32-547
    SeSystemProfilePrivilege = S-1-5-32-544
    SeAssignPrimaryTokenPrivilege = S-1-5-19,S-1-5-20
    SeRestorePrivilege = S-1-5-32-544,S-1-5-32-551
    SeShutdownPrivilege = S-1-5-32-544,S-1-5-32-547,
    S-1-5-32-551
    SeTakeOwnershipPrivilege = *S-1-5-32-544
    SeDenyNetworkLogonRight = SUPPORT_388945a0
    SeDenyInteractiveLogonRight = SUPPORT_388945a0
    SeUndockPrivilege = S-1-5-32-544,S-1-5-32-547
    SeManageVolumePrivilege = *S-1-5-32-544
    SeRemoteInteractiveLogonRight = S-1-5-32-544,S-1-5-32-555
    SeImpersonatePrivilege = S-1-5-32-544,S-1-5-6
    SeCreateGlobalPrivilege = S-1-5-32-544,S-1-5-6


    以下内容转自:
    http://soft.aizhan.com/wzzx/67174.html

    [Privilege Rights]这一组就是本地策略里的用户权利指派
    ,下面是一些与用户登陆有关的项:
    sedenyinteractivelogonright 拒绝从本地登陆
    sedenynetworklogonright 拒绝从网络访问这台计算机
    sedenyservicelogonright 拒绝作为服务登陆
    sedenybatchlogonright 拒绝作为批处理作业登陆
    seinteractivelogonright 在本地登陆
    senetworklogonright 从网络访问此计算机
    seservicelogonright 作为服务登陆
    sebatchlogonright 作为批处理作业登陆
    每一项后面的值是用户或用户组的SID号,每个用户的SID号用逗号隔开,要知道用户的SID号可以用getsid.exe这个工具。注意,拒绝的优先级最高。以前总是有人发现,得到了一个用户的密码,想登陆上去却发现此用户不允许交互式登陆。现在就可以用此方法来更改安全策略,至于怎么改就不在本文的讨论范围了。

    相关文章

      网友评论

          本文标题:用批处理更改本地安全策略

          本文链接:https://www.haomeiwen.com/subject/zjnbdttx.html