有个启动项“CreateExplorerShellUnelevatedTask.job”是什么,可以禁掉吗?

有个启动项“CreateExplorerShellUnelevatedTask.job”是什么,可以禁掉吗?,第1张

CreateExplorerShellUnelevatedTask这个计划任务应该是我望文生义了,登录时启动explorer降权和它没有关系。

据猜测,它是explorer发现自己以管理员身份运行时,用来给自己降权的:What's "CreateExplorerShellUnelevatedTask" ?

我重现了一下(Win10 15063 x64):如果结束explorer.exe进程,再以管理员权限运行它,explorer.exe就会重新创建、启动这个计划任务来启动一个降权的自己,原先有管理员权限的进程会退出。不知道这个计划任务有没有其他用途。

1.如果启用了UAC(通常的情况,注册表EnableLUA=1),管理员账户登录时,explorer.exe是降权启动的,这玩意(资源管理器)就是桌面图标、任务栏、开始菜单、文件夹窗口,它就是Windows的图形Shell嘛。

然后,你双击东西,一般都是explorer启动一个子进程(服务和计划任务不是),继承到的自然就是降权的令牌(filtered token)。

2.如果禁用了UAC(进入审核模式或安全模式时,或者手动设置过注册表、组策略时),管理员账户登录时就不会降权启动explorer.exe。然后,双击东西继承的自然是full token,完整的管理员权限。

3.如果压根没用管理员账户登录,那连降权都不需要了,本来继承的就是没管理员特权的token。

PS:Win7的控制面板里,把“用户账户控制”拉到底“从不通知”就是彻底关闭UAC,运行程序不降权;Win8以后,改成了降权运行、程序要求提权时静默提权。

PPS:微软本来就是对UAC放弃治疗的——UAC is not a security boundary,而且目前状况已经惨不忍睹(其实也在修,但不是当作安全漏洞那样对待):hfiref0x/UACME,如果想防御请用标准账户,别用管理员账户。

A.对于管理员账户、启用UAC的情况,具体来说:

A1.如果双击的是一个可执行文件,比如exe,系统会根据多种因素(比如你说的lnk里的两个“以管理员身份运行”复选框、文件名、厂商是否匹配系统内置兼容性数据库,右键直接选以管理员身份运行……等等)决定是否需要提权,如果认为需要提权,consent.exe就会粉墨登场,d出一个UAC窗口了。

组策略里还有更细化的配置:不d窗、静默提权;d窗提示输入密码;d出提示确认(不输密码,只用点个“是”);d窗时使用安全桌面。

额,抠门的微软把家庭版的组策略阉割了。不过你仍然可以用注册表(逃)。

(吐槽一下,好像也没有简单的办法能让它不d窗、不提权?)

也许你看看看这篇帖子:Windows 7, trigger uac depends on application name?

A2.如果双击的不是可执行文件,explorer会去注册表里查文件关联,然后根据关联设置启动对应的程序。具体要不要提权,先依照上面双击可执行文件的情况,然后就是程序自己来做决定了,比如程序可以在发现权限不够时申请提权。

PS:提权后进程就重启了,这个和HIPS的拦截/放行不一样。

A3.右键菜单里有个“以管理员身份运行”,各种第三方软件的界面里,也可以做一个按钮,点了就提权,还可以根据情况,比如发现访问被拒绝就提权。

A4.按住SHIFT键,右键菜单里还有“以其他用户身份运行”,然后需要输入那个账户的密码。如果是输入了受限账户的用户名密码,那自然也是“降权运行”咯。

PS:“以管理员身份运行”和“以其他用户身份运行”都是有API的,正确调用就可以实现这两个目的。

A5.微软还搞了UIPI机制,大致是降权的进程不能干涉高权限进程的窗口。

因为这个机制,QQ(降权)的远程协助点了任务管理器(已提权)就会卡住不动,拖放文件也可能没反应。

A6.管理员可以强制重置任何账户的密码(这样会导致那个账户的证书私钥、凭据管理器等加密数据丢失),但是不能像Linux那样直接su就以其他用户身份运行。

A7.各种ACL仍然可以设置拒绝管理员账户访问,但管理员账户可以强制取得所有权,可以把拒绝访问的规则删掉。

A8.每个账户(无论是否管理员)的文件默认都不允许其他账户访问,但管理员可以强制改掉ACL来运行自己访问。管理员还可能用其他猥琐手段绕过ACL。

B.如果是管理员账户登录,但没启用UAC:

B1.程序本来就继承到full token了,也不需要d窗提示提权了。

B2.各种管理员特权都有了,各种ACL里仍然能设置拒绝管理员访问……不重复讲了。

B3.IE和Office会放弃沙箱(也就是保护模式/受保护的视图),UWP应用/Metro风格应用无法启动。Chrome、Firefox等其他应用似乎没这个问题。

Win10 15063之后这个问题(也许是有意为之?)好像修正了。

B4.程序仍然可以选择降权运行,比如Prcess Explorer、PsExec就有这个功能。

C.如果是受限账户登录:

C1.能做的事情受到限制,不能访问其他账户的进程、文件等,但同一账户运行的应用之间并没有隔离,键盘记录、远程控制木马仍然可以工作。

C2.标准用户下,程序照样可以修改各种设置、添加自启项、注册explorer插件等,只是不影响别的账户,只影响自己。

被UAC降权的管理员其实也是这样。

C3.需要提权时,当然不能点个“是”就OK了,需要输入管理员账户密码。组策略里还能配置成直接拒绝提权。

对于管理员权限,无论是Administrator、SYSTEM、TrustedInstaller、你自己开的管理员账户,其实都可以像Linux里的root那样看待,root可以做任何事情!

1.可想而知,有了管理员权限,就可以注册服务/计划任务等,然后程序可以随时拿到管理员权限,不需要用户首肯。

规矩的软件会用来自动更新、规避UACd窗,提升用户体验;流氓软件/木马自然可以利用这些偷偷干坏事。

2.管理员还能加载内核驱动(DSE目前是个鸡肋,防君子不防小人的),有了驱动,就可以直接在底层拦截系统调用,干涉各种过程——开发者可以利用内核驱动做各种事情,比如监视浏览器(比如迅雷、IDM),他们可以做出透明加密软件如VeraCrypt,网络/USB抓包软件如Wireshark,还可以做出冰点还原、HIPS系统……

我把HIPS理解为:内核驱动可以重新定义权限。

打开一个文件时,NTFS文件系统驱动会检查ACL,如果需要拒绝访问,它可以返回一个ERROR_ACCESS_DENIED。

HIPS呢?HIPS开发者可以编写一个minifilter驱动,这个驱动正确注册后,就可以拦截各种文件 *** 作,然后它也可以做类似的事情:返回ERROR_ACCESS_DENIED,拒绝访问。

你也许可以安装一个Easy File Locker来体验一下:XOSLAB.COM

当然,对于坏人来说,也可以拿来作恶,比如拿来做内核级Rootkit,把木马藏起来,让管理员发现不了。国产流氓也会利用内核驱动来干锁主页、锁默认浏览器之类的猥琐事情。

索尼、卡普空用内核驱动做过DRM防盗版,结果因为做得太过分(Rootkit性质、爆安全漏洞)被喷惨了……

腾讯用内核驱动做了游戏保护系统,用来反外挂/防盗号,但是这玩意也因为动不动出问题被用户吐槽。对于做外挂的人来说,当然也要用内核驱动来对抗咯。

内核驱动还可以被用来绕过各种ACL,可以逃过ProcMon的监视,驱动也是强删/反强删斗争的焦点(滑稽):隐藏在windbg下面的攻防对抗 | 天融信阿尔法实验室

你可以去下一个PCHunter小小体验一把内核驱动的威力:恶意代码检测 虚拟机脱壳. Rootkit检测 木马检测,当然,一大意系统就蓝屏了,做好准备(滑稽)。

3.管理员账户能做更多猥琐的事情,比如,可以直接对lsass.exe开搞——用著名的工具mimikatz,可以挖出更多凭据,用来横向渗透。

还有好几处属性涉及管理员权限设置的地方(以vim为例):

1.桌面上快捷方式的属性里

(1)快捷方式选项卡-高级,里面可以勾选以管理员身份运行

快捷方式就是一个扩展名.lnk的普通文件,钩了这个就是修改了lnk文件的一个字节——系统会根据这个决定要不要提权。

(2)兼容性选项卡-设置框里可以勾选以管理员身份运行此程序

这个是保存在注册表里的:HKLM或HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers

HKLM是对本机所有账户生效,HKCU只对当前用户生效。

提权效果和上面应该一样。

(3)安全选项卡可以更改组或用户名(这些组和用户名都是啥,我电脑上不就我一个帐号吗)权限

文件属性-安全么?那是NTFS ACL,可以控制允许/拒绝对这个文件(夹)进行某种 *** 作,我不说你也看到了,规则可以设置得非常细致,可以针对单个用户(比如Guest、Administrator、SYSTEM、你自己在用的账户)、一类用户(比如Everyone、Authenticated Users)或一组用户(比如Administrators、Guests、Users等),同时可以针对读取/执行/删除等具体 *** 作。

PS:其实还有别的东西有ACL可以设置,比如进程,用ProcExp就可以(打个粗略的比方,游戏进程拒绝外挂修改它的内存);甚至设备对象也可以,用WinObj设置NT Object的ACL。

你作为用户,当然可以新建账户,控制面板里就把账户简化为管理员和标准用户(受限用户)两种了。

除了用户自己新建的账户,系统里还有内置的账户,比如Administrator、LOCAL SERVICE、NETWORK SERVICE、SYSTEM等等,他们都有特定的用途。

比如TrustedInstaller,它 *** 作文件、注册表时受到限制很少,是给安装程序用的;

还有内置管理员Administrator,好像很多人把它当超级管理员,但实际上用户自己新建的管理员账户权限和它是一样的。内置管理员应该是留给审核模式(sysprep /audit)、安全模式等情况下使用的,并不是给日常使用准备的。

2.gvim.exe属性中有上述(2)、(3)设置 3.***.vim文件属性中有上述(3)设置。

(2)gvim.exe的属性里勾了以管理员身份运行,那无论你双击gvim.exe还是双击关联到gvim(用gvim打开)的文件,都会提权(如果不想要d窗,你可以调,参见本答案开头)。

(3)gvim.exe的属性-安全,NTFS ACL,刚刚都说过了,比如,你可以设置gvim.exe这个文件只能由某个账户运行,或者拒绝某个账户运行——这些刚刚都说过了,而且一目了然的不用我啰嗦,其余的我也得去搜索一下才能现学现卖。

因为不清楚整个逻辑 所以我自己手动瞎逼设置其实我并不知道这些设置到底意味着什么 感觉很凌乱

其实我也不懂Windows的安全策略,很多现象我都不知道如何理解:比如mmc.exe,管理员运行它一定UACd窗提权,双击msc文件,比如certmgr.msc好像也是这样;但是标准用户双击certmgr.msc就不会d窗提权。标准用户点了提权按钮,则会d出窗口提示输入管理员账户密码。

还有win10的windows设置和控制面板什么关系?

不记得在哪里看到的了,好像就是其他知友的回答吧,说微软想搞Metro风格应用(Win8)/UWP应用(Win10),尤其是Win10,微软希望UWP版“电脑设置”能取代控制面板,但是这个目标现在只实现了一部分。

所以,你看到了现在的蛋疼状况,两边可能有不少功能是重复的。微软还通过替换WIN+X菜单项等方法半强迫着让你放弃控制面板、改用电脑设置。

UWP应用都是跑在Container里的(好像电脑设置例外),可以对应用做更细致化的权限限制——大概可以和Android/iOS来类比吧,每个App要干啥都得跟系统申请,而且相互之间是隔离的,不能随便偷窥。

然后,理论上,插手机自动adb之类流氓行为会被遏制,用户的隐私也会得到更好的保护。

还有为什么我的计算机管理-系统工具里没有组或用户名这一条?

大概是因为你在用家庭版系统(笔记本品牌机预装的应该是CoreCountrySpecific,也就是Windows 10 家庭中文版),还是微软抠门,把这个功能阉割了。

满意答案□ 。64位的系统很多软件就是不支持,你可以安装旗舰版的32位的,兼容性比较好~ 追问: 我是32位的 回答: 你的是32位的,那你能告诉我你下载软件的时间看清楚是32or64为的吗? 如果可以,你把你用的软件告诉我 ,我可以帮你看看更合适你系统的软件下载地址~ 追问: 是32or64为的,有时候就是兼容不好,个别的软件安装不上,而且反应也一般,我个人感觉我的机器还凑合使速龙7750双核黑盒的处理器,华硕M3N78DSE的板子,2G金士顿内存(800m)希捷盒装的硬盘耕升小乔版的显卡 回答: 额,纠结,你问的貌似是系统的兼容性,机器硬件兼容性是另一回事,你貌似有点乱~~ 追问: 是的,我说系统不太好,我意思是说我的机器木有问题 回答: 系统如果安装的各方面没什么问题~ 那可能是软件的问题~ 要是感觉你的系统有问题,可以重新装一个就可以的~ 逸濱踏雪 的感言: 谢谢2011-07-30

lapack是以blas为基础的,所以安装lapack后,也会安装好blas。

之前在ubuntu下用新立得安装lapack,之后再安装phg时可以自动识别出BLAS/LAPACK库,而在centos下通过yum install 安装lapack后,phg在配置时不能识别出BLAS/LAPACK库,只能从LAPACK官网下载源码自己进行编译。

1>.将源码解压至 /usr/local/src/ 中

2>.cd /usr/local/src/lapack-3.5.0

3>.将make.inc.example 改名为 make.inc:cp make.inc.example make.inc

4>.用gedit编辑make.inc: gedit make.inc

做如下修改:

. . . . . . . . .

FORTRAN = g77

OPTS = -funroll-all-loops -O3

DRVOPTS = $(OPTS)

NOOPT=

LOADER = g77

LOADOPTS =

. . . . . . . . .

修改为:(不过话说lapack-3.5.0版本的make.inc中内容就是 FORTRAN = gfortran 所以不用修改。。。)

. . . . . . . . .

FORTRAN = gfortran

OPTS = -funroll-all-loops -O3

DRVOPTS = $(OPTS)

NOOPT=

LOADER = gfortran

LOADOPTS =

. . . . . . . . .

保存。

5>.gedit Makefile

如果之前没安装blas,做如下修改:

include make.inc

all: lapack_install lib lapack_testing blas_testing

lib: lapacklib tmglib

#lib: blaslib lapacklib tmglib

clean: cleanlib cleantesting cleanblas_testing

. . . .

修改为:

include make.inc

all: lapack_install lib lapack_testing blas_testing

#lib: lapacklib tmglib

lib: blaslib lapacklib tmglib

clean: cleanlib cleantesting cleanblas_testing

. . . .

保存。

6>.make

此时可能会提示如下错误:

/bin/sh: ./testsecond: not found

/bin/sh: ./testdsecnd: not found

/bin/sh: ./testversion: not found

make: *** [lapack_install] 错误 127

解决方法如下

make.inc中的timer没有正确指定。

要看你的编译器把etime这个函数处理成intrinsic,还是external。

实在不行选none

7>.make之后会产生 liblapack.a, librefblas.a, libtmglib.a 3个静态链接库,复制这3个文件到 /usr/lib 和 /usr/local/lib并改名为 liblapack.a, libblas.a, libtmglib.a ,注意,这里一定要改名,当初我就是直接复制过去没改名,所以phg配置时一直不能识别 BLAS/LAPACK,当改完名后再配置就可以识别了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/9905778.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存