Sysprep的那些事

Windows7的帐户控制: html

    一、explorer是一个比较特殊的进程,虽然运行在普通用户权限下,可是微软为了减小UAC对用户的打扰,有些状况下不会出现UAC提醒。CoGetObject("3ad05575-8857-4850-9277-11b85bdb8e09");若是用别的普通用户权限去打开,会有UAC提醒,可是若是用explorer去打开,默认状况下是没有提醒的。 windows

    二、使用CoGetObject("3ad05575-8857-4850-9277-11b85bdb8e09")获得一个COM对象IFileOperation,IFileOperation是一个功能很强大的文件操做接口。往system32里面copy东西。pFileOp->SetOperationFlags(FOF_NOCONFIRMATION|FOF_SILENT|FOFX_SHOWELEVATIONPROMPT|FOFX_NOCOPYHOOKS|FOFX_REQUIREELEVATION)必定要静默的copy,目标文件c:\windows\system32\sysprep\cryptbase.dll 安全

    三、ShellExecuteEx运行c:\windows\system32\sysprep\sysprep.exe,能够带起CRYPTBASE.dll,这个DLL有足够高的权限了。 工具

    要点: post

    一、对explorer网开一面,explorer是个特殊的进程,一方面它长期和一群低权限的,另外一方面,它又掌握着通向高权限的钥匙,许多状况下能够无声出入高权限进程的起居地(system文件夹和COM); spa

    二、对CRYPTBASE.dll网开一面,sysprep.exe启动加dll时辰会遵循一个法则:若是被加的dll在系统"Known DLLs"列表中那么就直接从system32目录加,而这个CRYPTBASE.dll虽然位于System32目录,但它偏偏不在"Known DLLs"中,因而CRYPTBASE.dll被优先从sysprep.exe目录启动了。第一点儿是要害,只要能往system目录里无声的copy东西,总会有办法提权的。 线程

    三、若是把HKEY_CLASSES_ROOT\CLSID\{3ad05575-8857-4850-9277-11b85bdb8e09}\Elevation的Enable改成0,这个工具就不灵了~不过也会带来反作用:不能经过explorer直接在关键目录右键新建、删除文件夹了。 htm

   (via:http://www.cnblogs.com/pofante/articles/2150072.html 对象

利用UAC白名单突破UAC控制提权: blog

  经过给系统中的UAC白名单程序传递特定的参数来让UAC白名单程序替咱们完成相关操做。UAC白名单程序默认执行既有管理员权限,而且不会弹出UAC确认对话框。这里转出具体的三个例子:

  1. Wusa.exe exploit.cab /extract:c:\windows\system32\sysprep
    释放文件到系统目录。不弹出UAC框,而且可过360

  2. infDefault.exe exploit.inf
    修改注册表,可建立服务。不弹出UAC框,而且可过360

  3. PkgMgr.exe
    同Wusa。

    (via:http://www.pfmboy.com/post/107.html

另种提权介绍

    比较经常使用的利用系统程序的方法是利用系统动态加载 DLL的特性,在系统中还有一份名单为 KnownDlls,当一个程序须要动态加载 DLL 的时候,会先在这份名单之中进行查找,若是找到则加载相应路径的DLL 文件,若是没有找到则

依照当前目录、 System32 目录的顺序进行查找,所以若是能找到一个程序动态调用的 DLL 文件不在KnownDlls 中,而在 System32 下面,则能够伪造一个相应的 DLL,来实现借助其余程序来执行须要的操做。

  在全部白名单程序中,正好有这样一个程序,即 sysprep.exe,它的位置为 System32/sysprep/,而它在启动时,会动态加载一个 CRYPTBASE.DLL,这个 DLL 在 System32 下面,所以 sysprep.exe 会在当前目录寻找的时候加载失

败,继而转到 System32 目录查找,试着临时生成一个假的 CRYPTBASE.DLL 放在 sysprep 文件夹下,在 sysprep.exe启动时,将加载假的 CRYPTBASE.DLL,从而执行咱们须要的操做。

    sysprep.exe 加载假 CRYPTBASE.DLL线程注入白名单中的程序所有都在系统目录当中,所以要把生成的假 DLL 复制到程序目录中, 将会因为权限问题而触发 UAC,这样便失效了。所以,须要特别的方法来把假 DLL 给复制到系统目录内,而且不会触发系统的权限控制。

  这一步的操做也须要系统白名单的程序来实现,选用的程序为EXPLORER进程,首先使用远程线程的方法把DLL注入到EXPLORER进程,而后再经过EXPLORER把CRYPTBASE.DLL复制到指定目录UAC不会提示。全部操做完成后启动

sysprep.exe咱们的DLL就会被加载,从而绕过成功。但这个方法缺点也很明显,在注入EXPLORER进程时,杀毒软件已经开始关注了。

   (via:http://net.zol.com.cn/402/4021155.html  http://aj4kyrudup.l31.yunpan.cn/lk/QG9pTSZycCyVn 针对UAC的安全与研究--Instruder

另类功能:

    利用Sysprep功能,能够很方便地重装系统。

   一、运行Sysprep(此处以Windows 7为例:%SystemRoot%\system32\sysprep\sysprep.exe)

  二、在“系统清理操做”里选择“进入系统全新体验(OOBE)”并勾选“通用(G)”。 

 三、在“关机选项”里选择“从新启动”。 

 四、单击“肯定”。(请三思后而行,由于按下“肯定”键后就会当即从新启动并进行配置,全部的软件都会被干掉,和刚重装同样,C盘会不会被干掉尚未研究过) 

 五、等待配置完毕后启动,就和刚重装时同样了,比重装速度快、方便。

 (via:www.baike.com/wiki/sysprep‎)


此处还有一个很不错的提权帖子:http://blog.kingsamchen.com/archives/801

相关文章
相关标签/搜索