黑客攻防技术内幕-安全破解(4)
7.1.6 WPS限次版破解
金山公司的WPS是人们非常喜爱的国产文字处理软件,从当初的DOS时代伴随着人们走到Windows 2000、Windows XP。这里介绍一下WPS 2000限次版的破解过程,希望可以对以后破解这一类限次版的软件时有一个启示。
安装了WPS 2000的限次版后,在第一次运行时就提示只能使用99次,在用了99次以后就会出现一个提示框要提示已经到期了,以后就在也无法使用了。那么WPS 2000的限制版通过什么方式对使用次数进入限制呢?接下来看看破解WPS 2000的限制版的 过程。
注意:
以下破解过程在Windows 98下进行。
(1) 单击【开始】→【运行】命令,在【运行】对话框的【打开】下拉列表框中输入regedit.exe,单击【确定】按钮,打开注册表编辑器,如图7-25所示。
(2) 在打开的注册表编辑器中依次展开如下键值:
HKEY_LOCAL_MACHINA\Software\Microsoft\Windows\Current Version
(3) 在Current Version目录下可以看到如下键值:
W_P_S_Data=5DFB2099-9668-11D0-B1EC-00C04DB2A0CA
如图7-26所示。
图7-25 运行注册表编辑器 图7-26 查看W_P_S_DATA键值
(4) 在W_P_S_Data=5DFB2099-9668-11D0-B1EC-00C04DB2A0CA键值中,只要将键值中的99改为00,即:
W_P_S_Data=5DFB2000-9668-11D0-B1EC-00C04DB2A0CA,这时WPS 2000限次版又可以使用了。
如果WPS 2000限次版使用次数已到,卸载了WPS 2000限次版程序后再安装WPS 2000限次版程序时,系统提示不能安装。在这种情况下只要删除系统下的Winwps.dat文件和相关键值,就可以让其顺利安装,并正常使用步骤如下。
(1) 删除C:\Windows\System\ 下的WINWPS.dat文件。
(2) 运行注册表编辑器,依次展开以下键值:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\
删除W_P_S_Data键值。
(3) 依次展开HKEY_CURRENT_USER\Software\并删除kingsoft键值即可。
(4) 再重安装WPS 2000限次版,一切正常。
7.1.7 Windows 98下的系统登录密码研究
在Windows 98系统下,登录密码都被保存在C:\windows\*.pwl文件中。这个文件的文件名一般为本机用户名。例如:一个系统的所有者是abc,那么,这个文件的文件名就是abc.pwl。但是若存在多个用户,在C:\windows目录下也会相应出现多个.pwl文件,其文件名对应着每个用户的用户名。
在Windows 98启动时,会加载win.ini、system.ini、boot.ini和注册表等文件。而密码加载项就在system.ini中。
下面是一个典型的Windows 98下 system.ini文件:
[boot]
shell=Explorer.exe
system.drv=system.drv
drivers=mmsystem.dll power.drv
user.exe=user.exe
gdi.exe=gdi.exe
sound.drv=mmsound.drv
dibeng.drv=dibeng.dll
comm.drv=comm.drv
mouse.drv=mouse.drv
keyboard.drv=keyboard.drv
*DisplayFallback=0
fonts.fon=vgasys.fon
fixedfon.fon=vgafix.fon
oemfonts.fon=vgaoem.fon
386Grabber=vgafull.3gr
display.drv=pnpdrvr.drv
[keyboard]
keyboard.dll=
subtype=
type=4
[boot.description]
system.drv=标准个人计算机
mouse.drv=标准鼠标
keyboard.typ=标准 101/102 键或 Microsoft 自然键盘
aspect=100,96,96
display.drv=Standard PCI Graphics Adapter (VGA)
[386Enh]
ebios=*ebios
device=vpbiosd.vxd
device=vmsgd.vxd
mouse=*vmouse, msmouse.vxd
device=*dynapage
device=*vcd
device=*vpd
device=*int13
woafont=dosapp.fon
device=*enable
keyboard=*vkd
display=*vdd,*vflatd
EMMExclude=C000-CFFF
PagingDrive=F:
MinPagingFileSize=262144
MaxPagingFileSize=262144
[drivers32]
msacm.lhacm=lhacm.acm
VIDC.VDOM=vdowave.drv
msacm.msaudio1=msaud32.acm
msacm.sl_anet=sl_anet.acm
MSACM.imaadpcm=imaadp32.acm
MSACM.msadpcm=msadp32.acm
MSACM.msgsm610=msgsm32.acm
MSACM.msg711=msg711.acm
MSACM.trspch=tssoft32.acm
vidc.CVID=iccvid.dll
VIDC.IV31=ir32_32.dll
VIDC.IV32=ir32_32.dll
vidc.MSVC=msvidc32.dll
VIDC.MRLE=msrle32.dll
msacm.msg723=msg723.acm
vidc.M263=msh263.drv
vidc.M261=msh261.drv
VIDC.IV50=ir50_32.dll
msacm.iac2=C:\WINDOWS\SYSTEM\IAC25_32.AX
msacm.l3acm=C:\WINDOWS\SYSTEM\L3CODECA.ACM
[NonWindowsApp]
TTInitialSizes=4 5 6 7 8 9 10 11 12 13 14 15 16 18 20 22
[power.drv]
[drivers]
wavemapper=*.drv
MSACM.imaadpcm=*.acm
MSACM.msadpcm=*.acm
wave=mmsystem.dll
midi=mmsystem.dll
[iccvid.drv]
[mciseq.drv]
[mci]
cdaudio=mcicda.drv
sequencer=mciseq.drv
waveaudio=mciwave.drv
avivideo=mciavi.drv
videodisc=mcipionr.drv
vcr=mcivisca.drv
MPEGVideo=mciqtz.drv
MPEGVideo2=mciqtz.drv
[vcache]
[MSNP32]
[Password Lists]
WMH=C:\WINDOWS\WMH.PWL
[TTFontDimenCache]
0 4=2 4
0 5=3 5
0 6=4 6
0 7=4 7
0 8=5 8
0 9=5 9
0 10=6 10
0 11=7 11
0 12=7 12
0 13=8 13
0 14=8 14
0 15=9 15
0 16=10 16
0 18=11 18
0 20=12 20
0 22=13 22
注意到[Password Lists]节了吗?在那下面有一行WMH=C:\WINDOWS\WMH.PWL,由这一行可以知道这台机器只有一个用户—— WMH,其对应的密码文件就是C:\WINDOWS\WMH.PWL。在这些配置文件中,只要加入一些内容就能跳过加载。我们试着在WMH=C:\WINDOWS\WMH.PWL前加入rem;,也就是rem; WMH=C:\WINDOWS\ WMH.PWL,再启动密码就为空了。
假定现在有一台有登录密码的Windows 98系统的机器,如何才能不跳过其密码验 证呢?
(1) 先重新启动计算机,在启动时按住F8键(前提条件是该系统没有屏蔽掉F8键)。
(2) 然后进入DOS环境(一般是第5项)。在提示符下输入edit c:\windows\system.ini,就可以打开这个文件。按照上面介绍的,在密码文件加载项前加入【rem;】,然后保存 退出。
注意:
在这里,如果有多个用户,千万别忘了在每一个加载项前都加上【rem;】。
(3) 重起计算机后就可以以空密码进入该系统了。
这种方法在Windows 98下非常容易实现,因为按住F8键就可以直接进入DOS模式。但是在Windows ME下就不这么简单了,还得准备一张启动盘才能进入DOS。