文章分类 | 软件分类 | 最新软件 | 杀毒软件 | 实用软件  | MTV下载  | 设为首页 |
  | 下载分类 | 最近更新
您的位置: 首页 >> 文章首页 >> 操作系统 >> 注册表 >>  
注册表点击TOP10
·注册表趣味应用小集2006-2-6 7:40:17
·Win2000注册表应用六则—注册表使用全攻略之三2006-2-5 13:04:45
·注册表应用100例—注册表使用全攻略之十一2006-2-5 13:04:54
·巧用注册表轻松修改Win 2k/XP的默认刷新率2006-2-5 18:21:52
·修改注册表对付病毒、木马、后门及黑客程序2006-2-5 13:00:38
·打开注册表,看优化软件在"搞什么鬼"2006-2-9 10:17:50
·注册表的常用操作2006-2-6 9:55:30
·修改及备份注册表的基本方法2006-2-6 7:40:18
·Windows98注册表使用技巧27则2006-2-6 7:40:18
·快速定位注册表收藏夹分支2006-2-6 7:39:49
操作系统点击TOP10
·Windows XP SP2 build 2126靓图揭密2006-2-5 18:49:03
·为Windows XP多加一把牢固的安全锁2006-2-9 18:02:25
·为Windows 2003加装视频压缩2006-2-10 14:38:49
·FAT16向FAT32的无损转换2006-2-6 7:40:10
·如何在Win 2003中重置Internet协议2006-2-5 13:06:29
·操作系统常见问题:为什么一直出现询问密码的画面2006-2-5 17:08:39
·浅谈linux操作系统的优化及安全配置2006-2-10 15:14:49
·Windows操作系统数据安全转移技巧2006-2-9 17:57:05
·注册表趣味应用小集2006-2-6 7:40:17
·让Win 2000系统自动更新桌面的墙纸2006-2-5 13:42:05

 

注册表终极操作——锁定注册表
作者:我去下载           时间:2006-2-9 19:57:38


你有没有遇到注册表被锁定,无法打开注册表来手工修复呢?很多人都为这个头疼吧,相信你被锁定一次就知道他的操作原理了:
  修改[HKEY_CURRENT_USER\Software\
Microsoft\Windows\Current
Version\Policies\System]下的DisableRegistryTools值为1
  解锁的方法也有几种,比如程序用API函数调用注册表直接删除,做一个REG文件直接导入,写一个脚本…………
  今天我就教大家写个程序来实现另类锁定,是不是很好奇了?跟我来。
  实验环境:windows2000
  实验目的:锁定注册表(本方法利用了Cracker的思路来实现,直接让程序修改程序指令,使调用注册表程序禁止。)
  实现方法:C程序
  首先我们要按照Cracker的思路反汇编WINNT下的regedit.exe和regedt32.exe找到跳转指令,怎么得到这些信息不是我们今天的目的,这里我就不详细介绍了,以下是我反汇编找到的跳转地址:
  1.regedit.exe
偏移地址:0x69CA 将指令:0x74 0x1A 修改成:0x90 0x90
  2.regedt32.exe
偏移地址:0x10bf2 将指令:0x74 0x52 修改成:0x90 0x90
  现在我们用程序把这2个偏移地址的指令给修改成0x90 0x90 ( 0x90代表nop,就是让程序什么也不做,执行下一条指令)让我们看看程序是如何实现的吧。
#include
#include
bool scanreg(const char *file,long offset, int length,char *the); /*函数说明*/
main()
{
char the[]={ 0x90,0x90 };
scanreg("C:\\WINNT\\regedit.exe",0x69CA,0x02,the); /*调用函数修改winnt下的regedit.exe 其中的0x02是修改长度*/
scanreg("C:\\WINNT\\ServicePackFiles\\i386\\regedit.exe",0x69CA,0x02,the); /*调用函数改变补丁下regedit.exe*/
scanreg("C:\\WINNT\\system32\\regedt32.exe",0x10bf2,0x02,the); /*调用函数修改system32下的regedt32.exe */
scanreg("C:\\WINNT\\ServicePackFiles\\i386\\regedt32.exe",0x10bf2,0x02,the); /*调用函数改变补丁下regedt32.exe*/
}
bool scanreg(const char *file,long offset, int length,char *the)
{
FILE *fp = NULL;
bool result=false;
if((fp=fopen(file,"rb+"))!=NULL) /*打开文件进行读写操作*/
{
fseek(fp,offset,1); /*把指针指向我们定义的偏移地址*/
fwrite(the,length,1,fp); /*修改程序,把指令替换成0x90*/
fclose(fp); /*关闭文件*/
result=true;
}
return(result);
}
  好了,我这里只是一个示范,只适合2000系统,把windows每种系统的注册表调用程序都分析一下,然后在程序开始用API函数 GetVersionEx(LPOSVERSIONINFO lpVersionInfo)判断系统,根据判断的系统来调用相应的修改函数。那不是通杀windows了?上面把方法公布出来,以便大家做好防范。
分页:
相关文章:
Copyright© 2005-2006 wqxz.com, All Rights Reserved. 购买虚拟主机请与本站联系