返回目录:win7问题
你好,一般情况下,你可以在注册表中找到并删除这个隐藏帐户。你运行REGEDIT,依次展开HKEY_LOCAL_MACHINE\SAM\SAM项,不过此时你会发现下面会没有内容,其实这是因为我们没有权限所致,你右击这个SAM项,选择权限,点击添加按钮,添加你当前的管理员用户名,并设置为完全控制的权限,然后你再刷新一下,会发现它下面已经多出了不少分支,你再继续展开下面的\Domains\Account\Users\Names项,把下面出现的陌生的隐藏帐户名对应项删除,一般以$为结尾,不过如果是WIN7,别把HomeGroupUser$这个帐户删除了,这是访问计算机家庭组的内置帐户,而且它不是计算机管理员帐户。
有的帐户隐藏得更加深,你若已经知道了用户名,可以通过腾讯电脑管家的软件管理搜索并下载Sysinternals Suite,这个压缩包里包含了很多非常有用的工具,为很多微软工程师所使用。你解压后,可以把其中一个psexec.exe程序单独提取出来,比如放置在D盘根目录中,然后运行CMD,如果是WIN7,还请在开始菜单中搜索CMD,右击搜索结果,选择以管理员身份运行,然后输入d:\PsExec -i -d -s CMD打开另外一个CMD窗口,但这个新的CMD窗口是以SYSTEM这个用户身份级别运行的,比普通的Administrators组成员级别还高,你在这个新的CMD窗口中输入net user 隐藏帐户用户名 /delete删除这个隐藏帐户。如果不删除,那么就用net user 隐藏帐户用户名 新密码设置一个大于8位的由数字、字母和符号组成的超强密码,让黑客无法再使用他所创建的帐户来连接你的电脑。
如果还不知道这个隐藏帐户的用户名,则在“控制面板”/“管理工具”/“本地安全策略”的“本地策略”/“审核策略”中双击审核登录事件,选中成功,并对审核策略更改、审核进程跟踪都作同样的操作。
让计算机运行一段时间,再到“控制面板”/“管理工具”/“事件查看器”中查看安全日志,选择“操作”菜单中的筛选或筛选当前日志,在任务类别上方的文本框中输入事件ID为528进行筛选,就能找到隐藏帐户名了。
但是木马也是必须清除的,你可以使用电脑管家,在“杀毒”选e799bee5baa6e59b9ee7ad94333项中点击全盘查杀对木马进行强力清除,如果不放心,还可以在工具箱中选择顽固木马专杀进行清除。也提醒你一下,建议你为计算机中所有的管理员用户都设置一个强壮的密码吧,否则黑客还是有机可乘的。右击我的电脑(WIN7是计算机),选择管理,展开本地用户和组,在用户右面窗口中右击相应的管理员用户,选择设置密码,仍旧建议使用数字、英文字母和符号组合的方式,不过也请牢记此密码,别到头来把自己给挡在门外了。
如果你还有其它电脑问题,欢迎你在电脑管家企业平台提出,我们将尽力为你解答。
超级另类法用SYSTEM帐户登录系统!
对,您没有看错,本文确实在讲述如何以SYSTEM帐户的身份"登录"到Windows环境!
1.操作简述
本文将会用另类的方法帮助大家完成这个不可能完成之任务。先请大家在一台实验机器上进行以下步骤:
⑴ 打开任务管理器,在"进程"标签页关闭Explorer进程。
⑵ 在"应用程序"标签页单击"新任务",输入"cmd"回车打开命令提示符窗口。
⑶ 在命令提示符下输入以下的命令并回车(去Sysinternals下载):
PsExec -i -s -d explorer
⑷ 即可用SYSTEM身份启动Windows的Shell进程Explorer。
当Explorer重新启动以后,我们就会发现已经成功进入SYSTEM帐户环境,有下图为证!
229
2.验证方法
什么,不信?
打开注册表编辑器,只要证明HKCU就是HKU\S-1-5-18的链接就可以了(S-1-5-18就是SYSTEM帐户的SID)。证明方法很简单:在HKCU下随便新建一个Test子项,然后刷新,再看看HKU\S-1-5-18下是否同步出现了Test子项,如果是,就说明系统当前加载的就是SYSTEM帐户的用户配置单元!
还不信?
好吧,打开命令提示符窗口,输入以下命令(必须安装Support Tools):
Whoami
命令结果显示当前登录帐户确实是SYSTEM:
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.
C:\Documents and Settings\LocalService\桌面>whoami
NT AUTHORITY\SYSTEM
3.用途篇
正如您所预料的,我们可以利用这个方法访问原本只能向SYSTEM帐户特供的资源,这里举两个例子:
⑴ 打开注册表管理器,尝试访问HKEY_LOCAL_MACHINE\SAM和HKEY_LOCAL_MACHINE\SECURITY,现在应该可以无限制访问。
⑵ 打开"我的电脑",在"文件夹选项"里设置显示所有文件(包括隐藏的系统文件),然后就可以无限制访问系统还原的工作目录C:\System Volume Information了,如下图所示:
230
4.原理篇
大家知道,SYSTEM是至高无上的超级管理员帐户。默认情况下,我们无法直接在登录对话框上以SYSTEM帐户的身份登录到Windows桌面环境。实际上SYSTEM帐户早就已经"盘踞"在系统中了──想想也是──连负责用户验证的Winlogon、Lsass等进程都是以SYSTEM身份运行的,谁还能有资格检验SYSTEM呢?
既然SYSTEM帐户早就已经出现在系统中,所以只需以SYSTEM帐户的身份启动Windows的Shell程序Explorer,就相当于用SYSTEM身份登录Windows了
以System帐户身份运行应用程序的三种办法
SYSTEM帐户是系统中的"太上皇",其权力甚至凌驾于管理员之上,很多操作系统的组件(例如SMSS、winlogon等),还有许多服务,都以SYSTEM身份来运行。在我们登录系统之前,SYSTEM帐户就已经存在于系统上。在命令提示符下运行PsLoggedOn命令,可以看到SYSTEM帐户已经在本地登录,如下图所示。
231
本文将介绍以SYSTEM身份运行应用程序的方法,在讲述之前,先说说为什么要这样做,原因有二:
⑴ 不少系统资源只有SYSTEM帐户才有权限访问,例如HKLM\SAM注册表项和系统还原的工作目录C:\System Volume Information等。如果能够获得SYSTEM权限,就可以访问这些原本只向SYSTEM帐户"特供"的系统资源。
⑵ 如果应用程序可以运行在SYSTEM上下文,则该程序可以在注销以后继续运行,方便我们执行一些特别任务。
本文介绍三种提升进程运行特权的方法,以帮助读者更好地利用SYSTEM帐户(本文假设在Windows XP Professional上进行操作,并假设所涉及的命令工具都安装在默认路径)。
1.PsExec命令提升进程特权
我们可以借助PsExec命令工具以SYSTEM身份运行进程。我们已经知道只有SYSTEM帐户才能访问C:\System Volume Information文件夹,所以这里可以借助PsExec命令打开CMD命令提示符窗口,然后在命令提示符下运行DIR命令查看该文件下的内容,步骤如下:
⑴ 以管理员身份登录系统,打开CMD命令提示符窗口。
⑵ 在命令提示符下运行以下命令,以SYSTEM帐户身份打开另一个CMD窗口。
PsExec -i -d -s CMD
⑶ 在新打开的命令提示符窗口下运行以下命令:
DIR /a "C:\System Volume Information"
即可查看C:\System Volume Information文件夹下的内容,如下图所示。这说明当前的命令以SYSTEM帐户身份运行。
232
提示 如果对以上结果有所怀疑,可以打开任务管理器,然后在"进程"标签页查看CMD进程的用户是否为SYSTEM。
2.AT命令提升进程特权
由AT命令启动的计划任务,默认以SYSTEM特权运行。这里举个例子,借助AT命令以SYSTEM特权启动注册表编辑器,以便查看HKLM\SAM注册表项。
⑴ 以管理员身份登录系统,打开CMD命令提示符窗口。
⑵ 假设当前系统时间是13:19。
⑶ 然后运行以下命令,让系统在13:24时自动启动注册表编辑器:
at 13:24 /interactive C:\WINDOWS\regedit.exe
命令参数/interactive表示以交互模式启动注册表编辑器,必须加上该命令参数,否则将无法看到启动的注册表编辑器。
⑷ 到了下午13:24,就会自动用LocalSystem帐户的身份启动注册表编辑器,然后尝试访问HKLM\SAM注册表项,现在应该可以看到其下的内容。
提示
⑴ Internet上的某些脚本文件声称可以提升系统权限,其实质就是运用AT命令。
⑵ 尽管可以用"Schtasks /ru SYSTEM"命令以SYSTEM特权运行某个进程,但是这时候无法以交互模式访问进程,也就是说我们无法看到以SYSTEM特权运行的进程。
3.把应用程序安装为服务
由于服务可以运行在SYSTEM特权下,所以我们可以将应用程序安装为服务,并且使服务以SYSTEM帐户的身份运行。举个例子,我们可以将注册表编辑器安装为服务,以SYSTEM帐户身份运行。
关于应用程序安装为服务的更详细信息可以参考以下的文章:
http:///Utilities/PsLoggedOn.html (http://blogs.itecn.net/blogs/ahpeng/archive/2005/07/01/373.aspx)
PsExec 能够以指定的帐户身份在本地或者远程运行命令:
http:///Utilities/PsExec.html (http:///Utilities/PsExec.html)
问题(原样提供)
各位, 现公司在开发一套针对管理XP用户使用的软件,遇一难题,百思不得其解,望各位能相助,问题是这样的:
在Client的User是Domain User,而Domain User在Client只是属于User
Group,没有系统的权限的,现的开发软件的Client,需要在用户登陆系统使用系统的情况下运行,但是,此user没有系统权限,所以,软件在读写注册表时,显示为没有权限,
公司的安全使用为不能给用户的系统权限,有没有一种转变,
在命令提示符的后台运行的情况下,将此时登陆的权限该为Adaministrator的权限,在做完注册表的读写后,又转为user的登陆权限?
解答
将应用程序安装为服务,可以应用于以下的场合:
1. 即使登录用户已经注销,该应用程序(服务)还是可以继续运行。
2. 该应用程序可以无需用户干涉处理请求。
3. 应用程序(服务)能够以自身的服务帐户身份运行,能够以高出登录帐户的特权运行。
方法的大概是将该自用程序安装为系统服务(借助Sc Create命令),并以System的帐户身份运行,这样就可以避免权限不够的问题,另外如果希望看到应用程序的运行界面,也必须借助System帐户。可以将该服务的启动类型设置为手动,这样可以根据需要灵活地启动。步骤简述如下:
1. 假设该应用程序的Image Path位于C:\App.exe
2. 下载安装Windows Server 2003 Resource Kit,并在安装目录下确认具有srvany.exe程序。
3. 以管理员身份登录系统,打开命令提示符窗口,运行以下命令:
Sc Create YourServiceName type= interact type= own start= demand binpath= Srvany path obj= LocalSystem displayname= YourServiceDisplayName
4. 打开注册表,进入以下注册表项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\YourServiceName
在其下新建一个Parameters项,并新建一个Application的字符串键值,将其数值数据命名为C:\App.exe。
5. 这样每次开机时,都会自动以System帐户身份启动该服务,无需人工干预。
如果需要受限帐户可以手动控制该服务的启动、停止,则可以利用"安全配置和分析"管理单元、或者利用subinacl命令(Windows Resuorce Kit Tools)来修改该服务的权限,以确保普通帐户可以启动该服务。
注意 不能在"服务"管理单元里双击新建的应用程序服务,然后在属性对话框的"登录"标签页里修改帐户的启动身份。这只能修改该服务的安全上下文,而不是修改该服务的访问权限。
补充
1. 也可以用Windows Resource Kit 2003里的Instsrv命令配合Srvany命令将App.exe安装为服务,但是SC命令的控制能力相对更好一些。对于WIN2K用户,可以尝试将XP下的SC命令拷贝使用,不过未经测试。
2. 可以将Microsoft Virtual PC的虚拟机安装成服务,这样即使用户已经注销,虚拟机照样可以运行,其好处是把虚拟机安装成域控制器,然后可以让宿主机登录到虚拟机的域中,具体方法可以参考以下的帖子:
http:///downloads/details.aspx?displaylang=en&familyid=9d467a69-57ff-4ae7-96ee-b18c4790cffd
由于VPC虚拟机本身不具备和服务控制管理器(SCM)交互的能力,所以必须借助srvany.exe代替和SCM进行通信。在这里,VPC虚拟机可以看成是srvany进程所启动的一个服务。
操作步骤
为了方便描述,这里假设Virtual PC的安装目录为"C:\Program Files\Microsoft Virtual PC\Virtual PC.exe",需要将虚拟机VPC_DC安装为服务,服务名为VPCDC,srvany.exe的路径是"C:\Program Files\Windows Resource Kits\Tools\srvany.exe"。
(1)打开命令提示符窗口。
(2)运行以下命令:
sc create VPCDC type= interact type= own start= auto binpath= "C:\Program Files\Windows Resource Kits\Tools\srvany.exe" obj= LocalSystem displayname= "VPC DC Service"
注意 双引号用半角字符!
其中的"type= interact"表示该服务在桌面上具有GUI界面,可以接收用户交互,这要求服务的帐户身份必须是LocalSystem(obj= LocalSystem);"type= own"表示可以每个虚拟机服务独享进程。
(3)接下来打开注册表编辑器,可以看到在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services下新增了一个VPCDC子项,进入其下的Parameters子项,在右侧的详细窗格里新建一个字符串键值Application,并将其数值数据设置为以下内容:
"C:\Program Files\Microsoft Virtual PC\Virtual PC.exe" -pc VPC_DC -singlepc -launch
设置完成后,今后每次启动宿主机,都会自动启动虚拟机VPC_DC,这样我们就可以登录到虚拟机的域中了!
Local System是Windows核心组件所运行的账户, Local System是本地管理员组的成员; Local System账户加载默认用户的配置文件,也就是HKEY_USERS\DEFAULT,或者HKEY_USERS\S-1-5-18,这两者是等价的; 如果计算机TestWin7加入到域contoso.com中,以Local System身份运行的进程,在森林中其他计算机上自动以本地的计算机账户(也就是contoso\TestWin7)的身份得到验证。
在Windows里有很多资源仅允许Local System用户去访问。
注册表项HKLM\SAM\SAM,默认仅允许Local System具有完全7a64e58685e5aeb9331控制的权限,其他用户,即使是管理员组的成员,也无法访问该注册表项的内容。
以Local System权限运行程序
这里可以做一个实验,用普通的管理员组成员账户登录到Windows 7,然后在“开始搜索”框中输入“regedit”并按回车键打开“注册表编辑器”定位到注册表项HKLM\SAM\SAM,会发现其下的内容无法访问。
这时候检查该注册表项的权限,发现Local System具有完全控制的权限,而管理员组则没有完全控制的权限,甚至连读取权限都没有。
这时候,可以使用Local System的权限打开注册表编辑器,但需要借用一个命令行工具PsExec。
可以到以下微软官方网站免费下载该工具:
http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx
然后使用管理员权限打开“命令提示符”窗口,并且运行以下命令:
PsExec -s -t -i regedit.exe
即可以Local System权限运行注册表编辑器,此时同样定位到注册表项HKLM\SAM\SAM,现在已经有权限访问该注册表项了。
记得给我分数啊!!