支持Win7的星号密码查看器的实现

支持Win7的星号密码查看器的实现


支持Win7的星号密码查看器的实现


星号密码查看器大家肯定不陌生吧,但是在Win7下要想不用注入DLL,不用Windows钩子的确有点困难,最近简单了逆向了一下"Win7星号密码查看器",终于把原理搞清楚了,希望发出来能对大家有帮助

大家都知道在本进程内调用WM_GETTEXT和GetWindowText就能获取密码框的文本,而如果要跨进程WM_GETTEXT和GetWindowText就不管用了
在xp我们可以这样做,这也算微软的一个漏洞吧,没有判断是不是本进程发送的EM_SETPASSWORDCHAR消息

代码:

chPassChar = (TCHAR)SendMessage (hwndPoint, EM_GETPASSWORDCHAR, 0, 0);//获取密码字符

          

SendMessage(hwndPoint, EM_SETPASSWORDCHAR, 0, 0);//取消密码属性

SendMessage(hwndPoint, WM_GETTEXT, sizeof(szTitle) / sizeof(TCHAR), (LPARAM)szTitle);//获取密码文本

SendMessage(hwndPoint, EM_SETPASSWORDCHAR, 0, chPassChar);//设置密码字符

但在Win7上,上面的代码已经不能使用了,即使你用SetWindowLong取消掉ES_PASSWORD样式也行不通。虽然SetWindowLong不行,我们还有其它方法,这也算微软太马虎的吧
事实证明只要文本框包含ES_PASSWORD样式,SetWindowLong就取消不了ES_PASSWORD,但SetWindowWord可以

代码:

dwStyle = GetWindowLong(hwndPoint, GWL_STYLE);//获取密码框原来样式

SetWindowWord(hwndPoint, GWL_STYLE, 0);//取消所有样式

SetWindowLong(hwndPoint, GWL_STYLE, dwStyle & ~ES_PASSWORD);//去掉密码属性

          

SendMessage(hwndPoint, WM_GETTEXT, sizeof(szTitle) / sizeof(TCHAR), (LPARAM)szTitle);//没有了ES_PASSWORD属性WM_GETTEXT可以成功

                    

SetWindowLong(hwndPoint, GWL_STYLE, dwStyle);//还原密码框原来样式

 


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
软件支持操作系统 Windows 9x/Me/NT/2000/XP/2003/Windows 7 欢迎使用 侠客密码查看器(原名:密码查看器) 使用 侠客密码查看器,您将可以 功能强大的密码查看软件 支持Windows系统中 '***' 显示的星号密码查看 支持宽带密码查看,包括ADSL上网密码查看与LAN上网密码查看 支持网页中 '***' 显示的星号密码查看支持框架页面 支持IE自动完成的密码、表单内容查看密码列表保存 支持OutLook Express邮件帐户密码查看 支持Windows自动登录密码查看 支持CMOS开机密码清除 支持IE分级审查密码清除 支持Foxmail帐户密码清除 支持微软公司软件产品序列号获取 支持Windows用户添加及管理员密码重置 支持命令行方式自动保存密码信息 强大的星号密码查看功能 快速查看Windows各版本系统中普通的密码文本控件里显示的‘***’密码的真正内容。 也可以查看IE网页浏览器里显示的'***'密码的真正内容。 只需打开‘星号密码查看器’模块,简单地拖动窗口中的放大镜图标到您要显示的密码上面就可立即看到密码。 自动搜索所有已打开网页窗口中的密码 可以自动搜索并显示,您机器上所有已经打开的IE网页窗口中,以'***'显示的密码支持框架页面形式网页。 网络连接(ADSL,LAN)密码 查看XP系统中建立的宽带网络连接(包括ADSL上网连接,LAN上网连接)中所保存着的登录用户名与密码。 IE自动完成密码 显示您使用IE浏览器浏览网页时,保存在电脑中的自动完成密码内容。 IE自动完成表单内容 查看您使用IE浏览器输入表单内容时所保存的全部输入内容。 IE分级审查密码 当您忘记您所设置的IE分级审查密码时,可以使用本软件方便地清除掉密码支持命令行方式操作 常规的命令行语法描述如下: Password /开关1 /开关2 /开关3... 文件路径 开关 操作指定类型,选项开关压缩强度,压缩文件类型等等的定义。 /SAVIEAUTO: 保存IE自动完成的内容至文件路径 /IEBD: 保存IE自动完成的表单内容,必须与/SAVIEAUTO同时使用才有效,默认不保存 /SAVDIAL: 保存宽带上网的密码至文件路径 /SAVOTHER: 保存自动登录用户以及产品序列号等其它密码信息 /HTMFILE: 指定文件保存为HTM网页文件格式,默认为文本格式 /CLIESC: 自动清除IE分级审查密码(不提示) /?: 显示命令行帮助信息 文件路径 要保存内容的目标文件路径 示例: Password /savieauto /iebd /htmfile d:\myieauto.htm (将IE自动完成的内容保存至d:\myieauto.htm,包括表单项内容,以HTM格式保存)    Password /savdial c:\a.txt (将拨号上网的密码保存至 c:\a.txt,文本文件格式) 为避免有人非法获取他人密码,使用命令行方式都会弹出提示窗口让用户确认。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值