密码一变,我先知

来源 :电脑爱好者 | 被引量 : 0次 | 上传用户:orallove
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  题目1:如何使用回答问题代替输入密码
  
  对某一硬盘或文件夹采取加密,回答不同的问题拥有不同的权限(不能进入、只读、无法复制等),问题可以由管理员随时修改(论坛johnqs)。
  要求:在Windows XP和Vista均可实现。
  点评:也许这次不得不用软件了,难道是用VBS吗?等待高手来解决了。
  论坛地址:http://bbs.cfan.com.cn/thread-729094-1-1.html
  
  题目2:实现“关机中,请稍候”
  
  关机总是那么匆忙,大家常用的Windows XP自不必多说,像新的Vista,点击“关机”按钮后,立刻就关机,突然想拷个文件,对不起了,您要重新开机。这种后悔的事还是要避免出现,最好在发出关机指令后可以有五秒钟的倒计时,这段时间内可以随时暂停关机进度,五秒后电脑自动关机。
  要求:最好解决方案是能够替换系统原来的关机,(如在桌面按下Alt+F4),要同时解决Windows XP SP3和Vista SP1。
  点评:以前有很多朋友用强行关闭进程的方法来实现这个功能,但这个方法并非全部有效,你能挑战成功吗?
  
  2008年第09期“挑战之星”题目2是:用什么方法可以在进入系统(包括Windows 2000/XP/2003)或指定时间内检测特定账号的密码是否被修改?要求是一旦修改,要及时发回信息。
  原本打算上网搜索这么一款符合要求的软件,然终未果。只好改用VBScript来尝试解决这个难题,皇天不负有心人,总算如愿以偿。
  很早以前就曾听闻Windows系统用户账号的密码是以加密的形式藏匿于注册表中的[HKEY_LOCAL_MACHINE\SAM\SAM]键项下。不过,要对该键项(值)进行读写操作首先必须获得权限。
  第一步:获取读写权限。在Windows XP/2003中,点击“开始→运行”,输入:regedit(如果系统是Windows 2000,则输入:regedt32),依次展开[HKEY_LOCAL_MACHINE\SAM\SAM],在“SAM”右键上点击“权限”打开“SAM的权限”对话框,在“安全”栏中点击“添加”,出现“选择用户或组”,再依次点击“高级→立即查找”,将当前用户添加进来(见图1),“确定”后返回到“SAM的权限”窗口,勾选“zls的权限”下的“完全控制”及“读写” “允许”选项(见图2);
  


  图1
  这里添加的是用户“zls”
  
  


  图2
  
  第二步:确定账户名对应的账户值。按F5键刷新注册表后,展开“SAM”键下的“Domains”、“RXACT”等项,在[HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names]下可以找到某一特定账户对应的十六进制账户值(见图3),以“Administrator”为例,其值为0x1f4(对于系统中的其他账号,亦可参照此法进行判断);
  


  图3
  
  第三步:新建C:\Windows\System32\1V.vbs。具体内容如下:
  Const HKEY_LOCAL_MACHINE = &H80000002
  sComputer= "."
  sMethod= "GetBinaryValue"
  hTree= HKEY_LOCAL_MACHINE
  sKey= "SAM\SAM\Domains\Account\Users\000001F4"
  sValue= "V"
  Set oRegistry= GetObject("winmgmts:{impersonationLevel=impersonate}//" & _
  sComputer & "/root/default:StdRegProv")
  Set oMethod= oRegistry.Methods_(sMethod)
  Set oInParam= oMethod.inParameters.SpawnInstance_()
  oInParam.hDefKey = hTree
  oInParam.sSubKeyName = sKey
  oInParam.sValueName = sValue
  Set fso = CreateObject("Scripting.FileSystemObject")
  Set VFile = fso.CreateTextFile("c:\1V.txt", True)
  Set oOutParam = oRegistry.ExecMethod_(sMethod, oInParam)
  For iCount = 0 To UBound(oOutParam.Properties_("uValue"))
  VFile.WriteLine oOutParam.Properties_("uValue")(iCount)
  Next
  VFile.Close
  运行该1V.vbs脚本,在C盘中将会生成一名为1V.txt的文本文件,将其重命名为2V.txt,然后再运行一次1V.vbs;
  第四步:再新建C:\Windows\System32\Chk_PWD.vbs。具体内容如下:
  Const HKEY_LOCAL_MACHINE = &H80000002
  sComputer= "."
  sMethod= "GetBinaryValue"
  hTree= HKEY_LOCAL_MACHINE
  sKey= "SAM\SAM\Domains\Account\Users\000001F4"
  sValue= "V"
  Set oRegistry= GetObject("winmgmts:{impersonationLevel=impersonate}//" & _
  sComputer & "/root/default:StdRegProv")
  Set oMethod= oRegistry.Methods_(sMethod)
  Set oInParam= oMethod.inParameters.SpawnInstance_()
  oInParam.hDefKey = hTree
  oInParam.sSubKeyName = sKey
  oInParam.sValueName = sValue
  Set fso = CreateObject("Scripting.FileSystemObject")
  Set VFile = fso.CreateTextFile("c:\2V.txt", True)
  Set oOutParam = oRegistry.ExecMethod_(sMethod, oInParam)
  For iCount = 0 To UBound(oOutParam.Properties_("uValue"))
  VFile.WriteLine oOutParam.Properties_("uValue")(iCount)
  Next
  VFile.Close
  Set objFSO = CreateObject("Scripting.FileSystemObject")
  strFile1 = "C:\1v.txt"
  strfile2 = "C:\2v.txt"
  Set FileStream1 = objFSO.OpenTextFile(strFile1)
  Set FileStream2 = objFSO.OpenTextFile(strfile2)
  Do Until (FileStream1.AtEndOfStream) And (FileStream2.AtEndOfStream)
  sLine1 = FileStream1.ReadLine()
  sLine2 = FileStream2.ReadLine()
  If sLine1 <> sLine2 Then
  Wscript.Echo " Administrator账号密码已经被修改!"
   exit Do
  End If
  Loop
  第五步:只要修改了Administrator账户的密码,运行Chk_PWD.vbs后,就会弹出“Administrator账号密码已经被修改!”的提示窗口(见图4)。根据实际需求,将上述脚本加入到系统“启动”项目中或者设置为任务计划,具体步骤不再赘述。
  


  图4
  
  三点说明:
  ①注册表中的[HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\000001F4]键下有“F”、“V”两个键值。其中V值与对应账户(Administrator)的密码息息相关,只要修改了该账号的密码就会导致V值产生变化,因此只要导出新V值,并与原先V值进行比较就能判断出该账号密码是否已经被修改;
  ②有许多人可能会有疑惑,如果使用“reg query”、“reg export”、“regdit /e”等命令直接导出[HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\000001F4]键下的V值进行比较呢,岂不是省事许多?之所以不这么做,是因为“reg query”等命令只能查询而无法导出注册表中的二进制值,“reg export”、“regdit /e”又都只能导出该键下的所有值,而该键下的“F”值又是变化着的数据,如果将“F”、“V”值全部导出再进行比较,不管是否修改了账户密码,比较结果肯定会存在差异;
  ③注册表中的[HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\000001F4]键下的V值原为二进制值,用脚本导出之后,显示为分行的十进制值。
  本文中的两段代码可以从http://work.newhua.com/cfan/200813/tzcx.rar下载到。
其他文献
Vista新增了“以前的版本”功能,它实际上相当于一个小型的系统还原,我们不但能还原一个完整分区,还可以单独只还原某个文件夹,非常方便。具体的使用方法很简单:右击某个要恢复的文件夹,选择“属性”,切换到“以前的版本”选项卡中,在下面的“文件夹版本”中,选择一个要恢复的版本(有时间标志),再点击下面的“复制”按钮,另存即可(见图1)。注意:最好不要选择“还原”,这会将当前文件夹的内容覆盖掉的。   
期刊
王气散乱的旧時时光  不知道一首诗,它有多大的能耐  让一个观念守旧的人,带着心酸  回到王气散乱的旧时光。  不知道一个写字谋生的人,能否让一个外乡人  活得慌不择路。  因为心宽,险些失联。  不知道,1993年某一天,一些素面相向的汉字  能否在小说家的自娱自乐中借尸还魂。  能否与自己平起平坐。  不知道被凹公删去的情史,还要在□□里潜伏   多少年。  不知道一纸空文,能否放下一张虚以奉
期刊
平时我们调用控制面板程序,都是单击“开始→控制面板”,在打开的控制面板窗口中,找到相应的程序项目,然后双击打开。其实还可以有更快捷的方式来调用,那就是按Win+R键调出运行对话框,再执行“control 具体控制面板程序”即可。比如执行“control desk.cpl”,就可以快速打开我们常用的桌面“显示属性”窗口。再比如,执行“control sysdm.cpl”,可以快速调出常用的系统属性窗
期刊
摘要:目的:研究硝酸甘油联合阿司匹林治疗心绞痛的临床疗效。方法:将我院收治的118例心绞痛患者随机分为联合组和对照组(各59例),对照组患者应用硝酸甘油、复方丹参注射液进行治疗,联合组加用阿司匹林,比较两组患者的治疗效果。结果:治疗后,联合组的心绞痛发作次数、心率、SBP、DBP水平均明显降低,且与对照组比较有明显差异(P<0.05)。联合组的治疗总有效率为96.61%,显著高于对照组的84.75
期刊
虽然我从小经常随父母到西花厅看望伯伯周恩来和伯母邓颖超,但那时年龄小,就知道到处玩儿,很少听大人们谈话。等到长大些,上了中学,可以听懂一些事儿的时候,“文化大革命”开始了,伯伯非常忙,能见到他、与他交流的机会就少多了。伯伯、伯母与我当面交谈、关心教诲的事情,使我终生难忘。伯伯生前一直不让我们亲属对外界讲与他的关系,不许我们在外张扬,不让我们给组织上添麻烦。他还为亲属们制定了“十条家规”:一、晚辈不
期刊
本文可以学到  1 手动回帖累了,不妨试试灌水机。  2 没时间回帖子,不如找蓝鸟代工。  3 泡论坛蹭时间,还是用专用挂机。    泡论坛几乎是每个网虫上网的必备活动,紧张的工作学习之余,在论坛上恶搞一下,也是个不错的选择。不过很多朋友还停留在“刀耕火种”时代,手动发帖、泡论坛。迈入21世纪8年了,农业已经逐步进入了机械化,高科技产品论坛岂能落后?来体验一下让论坛实现机械化的三款产品。仅供娱乐,
期刊
摘要:目的:观察头孢他啶联合喜炎平注射液治疗社区获得性肺炎的疗效。方法:将100例社区获得性肺炎随机分为2组,治疗组以头孢他啶+喜炎平注射液治疗;对照组:以头孢他啶治疗,疗程7-14天。结果:治疗组总有效率94%,对照组为82%,2组比较差异有统计学意义(p<0.05)结论:喜炎平注射液在社区获得性肺炎治疗中疗效显著。  关键词:喜炎平 社区获得性肺炎  Abstract:Objective :
期刊
安装多系统的朋友肯定会有这样的想法:如果下次启动的时候,直接进入想要的系统,不用中间再选择一次,那该多省事呀。还别说,这个梦想,通过iReboot(下载地址:http://neosmart.net/downloads/software/iReboot/iReboot%201.1.exe,快车代码:CF0813CMXT01)很容易就能够实现。  对于Vista启动配置数据的编辑工具EasyBCD,你
期刊
畅游巡警 1.0.6.4 build 0610   文件大小:663KB 软件性质:共享版  运行环境:Win9x/Me/NT/2000/XP/2003  下载地址:http://www.onlinedown.net/soft/67133.htm  快车代码:CF0813CMWL05    看过电影《墨攻》的朋友都熟悉了一心维护和平的墨者革离,前不久,一款杀毒软件拜师墨者,带上了名为“墨者隔离术”
期刊
CFan网络栏目需要制作一个在线调查表,小编Refine想到了DreamWeaver,但用起来很是麻烦。“杀鸡焉用牛刀”,利用Google文档就能制作在线调查!    1.创建文档  进入http://docs.google.com/,Google文档的首页,点击左上角的“New→Spreadsheet”(新建→扩展页)创建一个新的扩展页(Spreadsheet)。在页面右上角点击“Share”(
期刊