您的位置:首页 > 其它

关于Windows系统白名单程序(自动提权autoElevate)

2015-04-11 23:49 627 查看
参考资料:

https://technet.microsoft.com/zh-cn/magazine/2009.07.uac.aspx

http://withinwindows.com/blog/2009/02/05/list-of-windows-7-beta-build-7000-auto-elevated-binaries

工具:

Strings.exe

Sigcheck.exe

Procexp.exe

Procmon.exe

知识点:

Manifest文件

UAC

 

         一直想怎么才能找到类似sysprep.exe这样可以有UAC权限但是运行的时候不会触发UAC弹框(即我们常说的Windows白名单程序),在网络上搜寻良久也未成发现有什么可用的信息。最后只有重头看看UAC相关信息,终于在MSDN上发现相关信息即参考资料1。

         从参考资料1中我们可以获得很多信息,由于vista在启用uac时貌似平等对待不管是Windows系统的还是第三方应用获得uac权限都要弹框获得用户许可,所以在win7上微软启用了白名单机制,对于某些系统应用可以直接获得uac权限。

条件就是:

1.      该可执行文件必须经过 Windows Publisher 的数字签名,Windows Publisher 是用于对 Windows 附带的所有代码进行签名的证书(仅由 Microsoft 进行签名是不够的,因此 Windows 未附带的 Microsoft 软件不包括在内);

2.      该可执行文件必须位于其中一个为数不多的“安全”目录中。安全目录是指标准用户无法修改的目录,并且它们包括 %SystemRoot%\System32(例如,\Windows\System32)及其大多数子目录、%SystemRoot%\Ehome,以及 %ProgramFiles% 下的少许目录(其中包括 Windows Defender 和 Windows 日记本)。

而要能够autoElevate还必须满足的一点就是要在程序的manifest文件中申明成类似这个样子的<autoElevate>true</autoElevate>,而且参考资料1还提供了两个工具来获得这个manifest文件搜寻满足条件的exe。

下面说的我获得的方法:

strings.exe  -s *.exe | findstr /i "autoElevate">"D:\Program Files (x86)\SysinternalsS

uite\autoevate.txt"

 

最后贴个win7 64位system32下面的结果:

c:\Windows\System32\AdapterTroubleshooter.exe:         <autoElevatexmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</autoElevate>
c:\Windows\System32\BitLockerWizardElev.exe:       <autoElevatexmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</autoElevate>
c:\Windows\System32\bthudtask.exe:          <autoElevate>true</autoElevate>
c:\Windows\System32\chkntfs.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\cleanmgr.exe:         <autoElevatexmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</autoElevate>
c:\Windows\System32\cliconfg.exe:         <autoElevate>true</autoElevate>
c:\Windows\System32\CompMgmtLauncher.exe:            <autoElevate>true</autoElevate>
c:\Windows\System32\ComputerDefaults.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\dccw.exe:      <autoElevate>true</autoElevate>
c:\Windows\System32\dcomcnfg.exe:          <autoElevate>true</autoElevate>
c:\Windows\System32\DeviceEject.exe:            <autoElevate>true</autoElevate>
c:\Windows\System32\DeviceProperties.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\dfrgui.exe:        <autoElevate xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</autoElevate>
c:\Windows\System32\djoin.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\eudcedit.exe:         <autoElevate>true</autoElevate>
c:\Windows\System32\eventvwr.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\FXSUNATD.exe:          <autoElevate>true</autoElevate>
c:\Windows\System32\hdwwiz.exe:            <autoElevate>true</autoElevate>
c:\Windows\System32\ieUnatt.exe:            <autoElevate>true</autoElevate>
c:\Windows\System32\iscsicli.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\iscsicpl.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\lpksetup.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\MdSched.exe:             <autoElevatexmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</autoElevate>
c:\Windows\System32\msconfig.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\msdt.exe:      <autoElevatexmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</autoElevate>
c:\Windows\System32\msra.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\MultiDigiMon.exe:         <autoElevate>true</autoElevate>
c:\Windows\System32\Netplwiz.exe:         <autoElevate xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</autoElevate>
c:\Windows\System32\newdev.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\ntprint.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\ocsetup.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\odbcad32.exe:            <autoElevate>true</autoElevate>
c:\Windows\System32\OptionalFeatures.exe:         <autoElevate  xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</autoElevate>
c:\Windows\System32\perfmon.exe:      <autoElevate>true</autoElevate>
c:\Windows\System32\printui.exe:             <autoElevate xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</autoElevate>
c:\Windows\System32\rdpshell.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\recdisc.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\rrinstaller.exe:             <autoElevate>true</autoElevate>
c:\Windows\System32\rstrui.exe:        <autoElevate xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</autoElevate>
c:\Windows\System32\sdbinst.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\sdclt.exe:        <autoElevate xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</autoElevate>
c:\Windows\System32\shrpubw.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\slui.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\SndVol.exe:             <autoElevatexmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</autoElevate>
c:\Windows\System32\SystemPropertiesAdvanced.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\SystemPropertiesComputerName.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\SystemPropertiesDataExecutionPrevention.exe:        <autoElevate>true</autoElevate>
c:\Wi
9ef7
ndows\System32\SystemPropertiesHardware.exe:         <autoElevate>true</autoElevate>
c:\Windows\System32\SystemPropertiesPerformance.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\SystemPropertiesProtection.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\SystemPropertiesRemote.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\taskmgr.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\tcmsetup.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\TpmInit.exe:             <autoElevate>true</autoElevate>
c:\Windows\System32\verifier.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\wisptis.exe:      <autoElevate>true</autoElevate>
c:\Windows\System32\wusa.exe:            <autoElevate>true</autoElevate>
c:\Windows\System32\DriverStore\FileRepository\bth.inf_amd64_neutral_e54666f6a3e5af91\fsquirt.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\oobe\setupsqm.exe:        <autoElevate>true</autoElevate>
c:\Windows\System32\sysprep\sysprep.exe:         <autoElevate>true</autoElevate>

这些做完之后就在google中再搜寻了相关结果发现原来老外在09年就贴出来了,就是参考资料2。所以学习好E文很重要啊,参考资料1也是09年的可能翻译过来比较晚。

但是最后我发现个问题migwiz.exe也和sysprep.exe一样但是怎么没那个autoElevate标志啊,求大神指点

这里也希望大家把SysinternalsSuite工具使用的例子给明示哈谢谢,哈哈
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息