星号查看关于查看星号的原理

星号查看  时间:2021-07-30  阅读:()

关于查看星号的原理

这个就很专业了,是软件编程方面的问题,你可以看看下面的东西: 几乎所有软件在用户密码输入框都做了手脚,使得用户输入的密码显示为星号“*”,这样就无法使得恶意用户直接看到密码。

但是,网上有很多版本的星号密码查看器,可以还原星号为真实的密码。

我根据自己的一些想法写了星号查看器的源代码,并且根据其原理做了一些防范手段。

使用本源代码写的程序可以查看到很多软件如popo、msn、qq低版本的密码,用户使用VC、VB、BCB编写的软件并且直接使用Edit或者Text组件的话,本代码也可以还原其真实密码。

而使用本修改手法以后的软件,使用网上盛传的passxp以及前面的查看方法均失效。

好了,进入正题。

一、星号查看器原理 Edit或者Text组件有一个属性为“PasswordChar”,我们一般就是设置这个属性已实现把真实密码隐藏为星号的,但它们收到EM_GETPASSWORDCHAR消息以后,会返回其PasswordChar属性值,收到EM_SETPASSWORDCHAR消息后会修改其PasswordChar属性值,当然就可以取消原有的“*”设置,而使其显示真实字符,这时再向其发送WM_GETTEXT消息即可得到其真实密码,很多星号密码查看器都是根据这个原理写的。

关键代码如下(以BCB为例):void __fastcall TForm1::Timer1Timer(TObject *Sender) { POINT P; ::GetCursorPos(&P);//捕捉鼠标屏幕位置 //取得鼠标位置下窗口handle HWND HWnd = ::WindowFromPoint(P); //向此窗口送出"取得标题字符串"信息 char buffer[100];char Char; Char = SendMessage (HWnd,EM_GETPASSWORDCHAR,0,0);//获取密码字符 PostMessage (HWnd,EM_SETPASSWORDCHAR,0,0);//取消密码字符 Sleep (60); SendMessage (HWnd,WM_GETTEXT,255,long(buffer));获取真实密码 PostMessage (HWnd,EM_SETPASSWORDCHAR,Char,0);还原密码字符//显现在Form1窗口的字符串对象上 Caption = buffer; } 这里用了一个计时器,每隔100毫秒调用一次上面的代码。

我们已经看出来了,主要是几个消息坏了我们的大事,如果我们能够屏蔽这几个消息,即可安全隐藏真实密码。

网上有很多屏蔽消息的方法,但都显过于复杂,我的思路如下: 二、防范星号密码查看器 我们可以从TEdit派生一个新的组件,名字为TBugEyesEdit,然后修改其消息定义。

在头文件添加代码如下: public: __fastcall TBugEyesEdit(TComponent* Owner); void __fastcall BugEyes(TMessage &Msg);//自定义消息处理函数 BEGIN_MESSAGE_MAP //消息影射 VCL_MESSAGE_HANDLER(EM_GETPASSWORDCHAR,TMessage,BugEyes) VCL_MESSAGE_HANDLER(WM_GETTEXT,TMessage,BugEyes) VCL_MESSAGE_HANDLER(EM_SETPASSWORDCHAR,TMessage,BugEyes) END_MESSAGE_MAP(TEdit) //结束消息影射 然后在其cpp文件中添加如下代码:void __fastcall TBugEyesEdit::BugEyes(TMessage &Msg) { Msg.Result =0; } 最后安装这个新的组件,并添加到自己的程序中,设置其PasswordChar属性为“*”,然后运行程序,这时星号密码查看器就失效了,无法再看到真实密码。

DiyVM:50元/月起-双核,2G内存,50G硬盘,香港/日本/洛杉矶机房

DiyVM是一家比较低调的国人主机商,成立于2009年,提供VPS主机和独立服务器租用等产品,其中VPS基于XEN(HVM)架构,数据中心包括香港沙田、美国洛杉矶和日本大阪等,CN2或者直连线路,支持异地备份与自定义镜像,可提供内网IP。本月商家最高提供5折优惠码,优惠后香港沙田CN2线路VPS最低2GB内存套餐每月仅50元起。香港(CN2)VPSCPU:2cores内存:2GB硬盘:50GB/R...

香港、美国、日本、韩国、新加坡、越南、泰国、加拿大、英国、德国、法国等VPS,全球独立服务器99元起步 湘南科技

全球独立服务器、站群多IP服务器、VPS(哪个国家都有),香港、美国、日本、韩国、新加坡、越南、泰国、加拿大、英国、德国、法国等等99元起步,湘南科技郴州市湘南科技有限公司官方网址:www.xiangnankeji.cn产品内容:全球独立服务器、站群多IP服务器、VPS(哪个国家都有),香港、美国、日本、韩国、新加坡、越南、泰国、加拿大、英国、德国、法国等等99元起步,湘南科技VPS价格表:独立服...

Webhosting24:$1.48/月起,日本东京NTT直连/AMD Ryzen 高性能VPS/美国洛杉矶5950X平台大流量VPS/1Gbps端口/

Webhosting24宣布自7月1日起开始对日本机房的VPS进行NVMe和流量大升级,几乎是翻倍了硬盘和流量,价格依旧不变。目前来看,日本VPS国内过去走的是NTT直连,服务器托管机房应该是CDN77*(也就是datapacket.com),加上高性能平台(AMD Ryzen 9 3900X+NVMe),还是有相当大的性价比的。此外在6月30日,又新增了洛杉矶机房,CPU为AMD Ryzen 9...

星号查看为你推荐
nasa中文官网NASA总部在哪里?百度预测世界杯预测2018年世界杯哪两个国家会打入决赛?圣诞节网页制作我想在接下来的圣诞、元旦设计一个网站的宣传页面,哪里有好的公司帮我呢?magento模板magento1.9主题开发用哪个模板为基础好?windows7系统要求windows7的系统盘要求最低是多少创业好项目论坛现在挣钱太难了、大家有什么好项目腾讯汽车论坛买车需要注意些神马?handoff怎么用如何令Yosemite使用iPhone的通话功能和Handoff设置无法清除dns缓存急求无法清除DNS缓存怎么解决要有效的!音响解码CD锁了怎么解
国外免费vps 国外永久服务器 国外主机 搬瓦工官网 gateone 云鼎网络 e蜗牛 大容量存储器 phpmyadmin配置 服务器托管什么意思 空间合租 中国网通测速 联通网站 美国迈阿密 windowsserver2008r2 cx域名 ipower e-mail screen 文件传输 更多