论文部分内容阅读
Google有句承诺:Don’t be eviI(不作恶),但是很显然,诞生不久的谷歌输入法没听见这句话……
Windows 2000曾经有个著名的输入法漏洞:在它的系统登录界面,通过调用中文输入法的帮助文件就可以打开IE,从而绕过密码进入系统。对此,微软早已发布了相应的补丁,而且在Windows XP和Vista中屏蔽了输入法的帮助。
但是,谷歌输入法却意外地让这个漏洞重现了一下,随后的升级中(最新版本1.0.18)就把这个漏洞补上了。下面,我们让案情重现。首先,在Vista中,以管理员身份运行安装好谷歌输入法,当然,这是最早发布的那个版本。
Step1打开“控制面板”,单击“时钟、语言和区域”下的“更改键盘和输入法”,在设置窗口切换到“管理”标签,单击“复制到保留的账户”,系统弹出账户控制提示时,单击“继续”,在弹出的窗口把当前用户的区域和语言设置复制到本地系统账户。
其实,Vista的这个漏洞和Windows2000并不完全一样,它在登录界面启动的是系统保留账户——SYSTEM账户。默认情况下,保留账户的输入法只有“中文(简体)美式键盘”和“微软拼音输入法”。我们在当前用户环境下安装谷歌输入法后,只有通过上述的操作,才能让SYSTEM账户在登录界面调用它。
Step2重新启动系统,在Vista用户登录界面单击左下方的输入法按钮选择“中文简体-Google拼音输入法”,此时登录界面右方会出现输入法指示条,单击指示条最右侧的设置按钮,在弹出的菜单选择“帮助…”。
普通输入法,如紫光拼音、拼音加加,在登录界面中的帮助菜单都是被屏蔽的,而且无法在IE7中输入字符。但谷歌输入法却没有这个限制!
Step3此时大家会惊奇地发现,可以在这里打开IE7访问帮助窗口。单击IE右侧的“工具”,在下拉列表勾选“菜单栏”。接着单击IE7菜单栏的“文件”→“打开”,在打开对话框输入“C:\Windows\system32\cmd.exe”(启动命令提示符),单击“确定”,此时屏幕会出现下载文件的提示,单击“运行”按钮即可启动命令提示符。
Step4从命令提示符窗口标题可以知道这是以系统管理员身份启动的,这个用户就是系统内置的SYSTEM账户。它拥有系统最高权限,这样我们就不用输入密码登录系统,通过输入法的漏洞就轻易入侵了Vista。
Step5现在可以在命令提示符下输入“net user abc 123456/add”,这样就能新建一个用户名为“abe”,登录密码为“123456”的用户。接着再输入“net localgroupadministrators abc/add”,把刚才建立的ABC账户提升为管理员权限。
Step6重新启动电脑,在登录界面就可以用ABC账户登录Vista了,而且ABC是系统管理员!
这就是通过谷歌输入法入侵Vista的全过程。其实,在笔者看来,这个漏洞至少还有一点实用的价值:对于某些马大哈用户,如果忘记登录密码,可以在命令提示符下输入“lusrmgr.msc”打开用户管理台,然后选中账户更改密码。
Windows 2000曾经有个著名的输入法漏洞:在它的系统登录界面,通过调用中文输入法的帮助文件就可以打开IE,从而绕过密码进入系统。对此,微软早已发布了相应的补丁,而且在Windows XP和Vista中屏蔽了输入法的帮助。
但是,谷歌输入法却意外地让这个漏洞重现了一下,随后的升级中(最新版本1.0.18)就把这个漏洞补上了。下面,我们让案情重现。首先,在Vista中,以管理员身份运行安装好谷歌输入法,当然,这是最早发布的那个版本。
Step1打开“控制面板”,单击“时钟、语言和区域”下的“更改键盘和输入法”,在设置窗口切换到“管理”标签,单击“复制到保留的账户”,系统弹出账户控制提示时,单击“继续”,在弹出的窗口把当前用户的区域和语言设置复制到本地系统账户。
其实,Vista的这个漏洞和Windows2000并不完全一样,它在登录界面启动的是系统保留账户——SYSTEM账户。默认情况下,保留账户的输入法只有“中文(简体)美式键盘”和“微软拼音输入法”。我们在当前用户环境下安装谷歌输入法后,只有通过上述的操作,才能让SYSTEM账户在登录界面调用它。
Step2重新启动系统,在Vista用户登录界面单击左下方的输入法按钮选择“中文简体-Google拼音输入法”,此时登录界面右方会出现输入法指示条,单击指示条最右侧的设置按钮,在弹出的菜单选择“帮助…”。
普通输入法,如紫光拼音、拼音加加,在登录界面中的帮助菜单都是被屏蔽的,而且无法在IE7中输入字符。但谷歌输入法却没有这个限制!
Step3此时大家会惊奇地发现,可以在这里打开IE7访问帮助窗口。单击IE右侧的“工具”,在下拉列表勾选“菜单栏”。接着单击IE7菜单栏的“文件”→“打开”,在打开对话框输入“C:\Windows\system32\cmd.exe”(启动命令提示符),单击“确定”,此时屏幕会出现下载文件的提示,单击“运行”按钮即可启动命令提示符。
Step4从命令提示符窗口标题可以知道这是以系统管理员身份启动的,这个用户就是系统内置的SYSTEM账户。它拥有系统最高权限,这样我们就不用输入密码登录系统,通过输入法的漏洞就轻易入侵了Vista。
Step5现在可以在命令提示符下输入“net user abc 123456/add”,这样就能新建一个用户名为“abe”,登录密码为“123456”的用户。接着再输入“net localgroupadministrators abc/add”,把刚才建立的ABC账户提升为管理员权限。
Step6重新启动电脑,在登录界面就可以用ABC账户登录Vista了,而且ABC是系统管理员!
这就是通过谷歌输入法入侵Vista的全过程。其实,在笔者看来,这个漏洞至少还有一点实用的价值:对于某些马大哈用户,如果忘记登录密码,可以在命令提示符下输入“lusrmgr.msc”打开用户管理台,然后选中账户更改密码。