CN102222179A - 一种基于Windows内核的反键盘记录技术 - Google Patents
一种基于Windows内核的反键盘记录技术 Download PDFInfo
- Publication number
- CN102222179A CN102222179A CN2010101459454A CN201010145945A CN102222179A CN 102222179 A CN102222179 A CN 102222179A CN 2010101459454 A CN2010101459454 A CN 2010101459454A CN 201010145945 A CN201010145945 A CN 201010145945A CN 102222179 A CN102222179 A CN 102222179A
- Authority
- CN
- China
- Prior art keywords
- windows
- kernel
- antibonding
- keyboard
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明涉及一个基于Windows内核的反键盘记录技术,该技术的执行过程可分为二阶段:第一阶段:内核数据摘除。在用户输入账户密码前,挂起与本次登录无关的进程,再根据Windows平台键盘过滤驱动及Windows消息钩子记录按键信息的工作原理,摘除木马程序创建的键盘过滤驱动设备和Windows消息钩子,并将其位置保存;第二阶段:内核数据恢复。用户登录完成后,将被摘除的内核数据原样恢复,并执行被挂起的进程。该技术基于Windows按键信息在系统中的传输原理,通过修改内核数据从根本上解决了恶意软件对账户密码的盗取。在利益的驱使下,账户密码成为被盗取的重要目标,如何保护账户密码安全是一个不可回避的问题,本发明提出的方法可以很大程度地保证用户的上网安全。
Description
技术领域
本发明设计一种基于Windows内核的反键盘记录技术,主要应用于信息安全领域,保护用户网上冲浪时的账户密码安全。
背景技术
随着互联网的普及,人们在互联网上的活动涉及到生活中的各个领域。每个网络用户都有一个或多个账号密码,通过账号密码用户可以完成各种跟生活息息相关的业务办理。因此账户密码成为很多不法份子盗取的对象,并愈演愈烈。为了提高密码的安全性,各大网络服务提供商均提供了自身的密码保护技术。
反键盘记录技术正是在用户密码不断受到威胁的情况下产生的。它主要是保证账户密码从输入到服务器端验证整个过程的安全性。主要有以下几种技术:一.截获键盘输入后,对输入信息进行加密传输;二.改变原有键盘输入的传输流程,自己建立传输机制;三.进行实时监控,一旦发现可疑进程,提示用户并查杀病毒。
反键盘记录技术最早是由各大杀毒软件提供。杀毒软件[3]主要是为整机提供一个安全防护,当杀毒软件的实时监控系统,发现本机的某个进程存在恶意特征行为,将提醒用户存在可疑进程,并在用户授权情况下查杀病毒,从而为用户密码提供了一定程度的保护。后来,随着越来越多的公司均提供网上业务办理,针对不同的密码登陆机制,出现了很多针对某一软件的专业黑客盗号软件。这类软件由于技术针对性强,可以躲过杀毒软件的查杀,而且盗号效率高,危害性也更大。针对这种情况,有实力的网络服务提供商纷纷在自己的登陆系统中提供自己的反键盘记录技术。
比较基础的一种反键盘记录技术是在获得用户输入信息后,对信息进行加密传输,在服务器端解密后再验证。这样即使存在键盘记录软件,获得的也是无价值的密文。刚开始各大银行提供的网银服务就是用的这种技术,而且现在网银的反键盘记录技术也是在此基础上改进的。另一种技术要比上面那种复杂点,也更安全。它主要是在底层获得键盘输入后,直接改变原有键盘信息的传输流程,通过自己的传输机制直接发送到应用层。如QQ使用的NP(NProtect)技术。NP技术是韩国人设计的一种较先进的反键盘记录技术,但随着人们对该技术的深入研究,已经产生了破解QQ密码保护机制的方案。本发明中设计的反键盘记录技术基于Windows内核数据结构,采用驱动层和应用层相结合的方式,从根本上屏蔽木马对账户密码的记录,且做到整个保护过程对系统透明,兼容性好。
发明内容
本发明要解决的技术问题:针对用户网络服务的账户密码频繁被盗问题,在Windows平台上设计出一种更安全的账户密码保护技术。该技术基于Windows内核数据结构,重点是通过修改内核数据,使得键盘信息在传输过程中不流经恶意软件注册的模块,从而保护用户账户密码。针对Windows平台特点,分析了键盘信息从产生到被传入登录窗口的整个传输流程,并通过内核调试技术得出键盘驱动设备链和Windows消息钩子链的数据结构,在此基础上,进一步设计和实现通用的反键盘记录技术。本发明采用如下的技术方案:
一种基于Windows内核的反键盘记录技术,包括下列步骤:
步骤一:截获用户的键盘输入,如果键盘信息是标识的启动键,则启动反键盘记录模块;
步骤二:反键盘记录模块成功启动后,会挂起除系统进程和本次登录相关进程以外的所有进程;
步骤三:反键盘记录技术会根据Windows键盘驱动设备链结构,摘除与本次登录不相关的键盘过滤设备,并将被摘除的键盘过滤设备信息保存;
步骤四:反键盘记录技术会根据Windows消息钩子链内核数据结构,摘除与登录进程不相关的消息钩子,并将被摘除的消息钩子信息保存;
步骤五:账户密码输入完成后,用户利用快捷键退出保护。反键盘记录技术会将保存的键盘过滤设备信息、消息钩子信息恢复。
本发明是一种基于Windows内核的反键盘记录技术,具有下列优点:
第一,通用性。
本发明的账户密码保护技术可以适应Windows平台上的任何登录接口,因此,该账户密码保护模块拥有较好的通用性;
第二,透明性。
用户登录结束后,内核数据恢复模块会将摘除的内核信息恢复,使得整个保护过程对系统透明;
第三,稳定性。
用户输入账户密码前,内核数据摘除模块会将摘除的键盘驱动过滤设备信息、Windows消息钩子信息保存;用户登录完成后,内核数据恢复模块会将摘除的所有信息恢复。使得登录前后系统内核数据结构前后一致。因而,也表现出较好的稳定性;
第四,高效性。
本发明的账户密码保护技术基于Windows内核数据结构,采用驱动层和应用层相结合的方式,彻底解决了键盘过滤驱动和Windows消息钩子对用户账户密码的记录,具有高效性。
附图说明
图1是本发明中账户密码启动模块的示意图
图2是本发明中摘除内核数据模块的示意图
图3是本发明中恢复内核数据模块的示意图
图4是本发明基本架构原理的示意图
具体实施方式
为使本发明的目的、实现方案和优点更为清晰,下面对本发明作进一步的详细描述。
其中步骤一具体按照如下方式执行:
主程序启动后,创建自己的键盘驱动过滤设备并挂接在键盘设备链堆栈上。如果捕获的用户按键信息为标识的快捷键(当用户启动登录界面,在输入账户密码前会以快捷键的方式启动账户密码保护模块),则按步骤二进行操作。
所述步骤二的具体操作为:
主程序会有一张白名单(包含系统运行必须的系统进程列表)。主程序会枚举当前系统所有进程,将不在白名单列表中和不是当前主窗口进程的所有进程全部挂起(因为木马总是在后台运行)。再按照步骤三、四进行摘除内核数据操作。
所述步骤三的详细执行方式为:
第一,获取当前系统的键盘驱动对象指针,枚举系统的键盘驱动设备。包括USB键盘驱动设备和PS/2键盘驱动设备;
第二,针对枚举到的每种键盘驱动设备,再深度枚举对应设备堆栈上的键盘过滤驱动设备链。对每个键盘过滤驱动设备检测是否是当前登录窗口进程安装。如果不是,摘除该键盘过滤驱动设备,将其位置信息一同保存;如果是,不做处理。
步骤四的Windows消息钩子摘除模块与步骤三的操作原理基本相同,只是操作的内核数据对象是Windows消息钩子链:
第一,记录当前登录窗口按键信息的Windows消息钩子链,保存在登录窗口进程的所有线程内核数据结构中。因此先枚举登录窗口进程的所有线程;
第二,对每个线程内核数据结构,通过硬编码的方式(因微软未公开该结构)获取消息钩子所在数组。该数组中的每个元素是Windows某种消息钩子链的头指针;
第三,根据获得的消息钩子链头指针,遍历该种消息钩子链上的每个消息钩子信息。如果安装该钩子信息的进程不是登录窗口进程,将该钩子信息及位置保存;如果是,不错处理。
步骤五的内核数据恢复模块是将步骤三、四摘除的内核数据恢复,并将步骤二挂起的进程恢复执行:
第一,针对步骤三摘除的键盘过滤驱动消息钩子信息,步骤四摘除的Windows消息钩子信息,根据保存的信息,将对应的键盘过滤驱动设备链、Windows消息钩子链恢复成原貌;
第二,根据保存的被挂起进程上下文,恢复所有进程至被挂起前状态。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种基于Windows内核的反键盘记录技术,步骤如下:
步骤一:截获用户的键盘输入,如果键盘信息是标识的启动键,则启动反键盘记录模块;
步骤二:反键盘记录模块成功启动后,会挂起除系统进程和本次登录相关进程以外的所有进程;
步骤三:反键盘记录技术会根据Windows键盘驱动设备链结构,摘除与本次登录不相关的键盘过滤设备,并将被摘除的键盘过滤设备信息保存;
步骤四:反键盘记录技术会根据Windows消息钩子链内核数据结构,摘除与登录进程不相关的消息钩子,并将被摘除的消息钩子信息保存;
步骤五:账户密码输入完成后,用户利用快捷键退出保护。反键盘记录技术会将保存的键盘过滤设备信息、消息钩子信息恢复。
2.根据权利要求1中所述的基于Windows内核的反键盘记录技术,其特征在于,所述步骤一中主程序时刻监视键盘输入,用户在输入账户密码前,利用快捷键启动反键盘记录模块。
3.根据权利要求1中所述的基于Windows内核的反键盘记录技术,其特征在于,所述步骤二中挂起与本次登录不相关的进程,防止木马在步骤三、步骤四后,再次创建记录账户密码数据结构。
4.根据权利要求1中所述的基于Windows内核的反键盘记录技术,其特征在于,在步骤三中提出的摘除键盘驱动设备链模块具有如下优点:
第一,提出了一种将键盘过滤驱动设备链上与登录进程不相干的设备链摘除的思想,与传统的通过创建键盘过滤驱动截获键盘信息并保护的方式有本质的区别;
第二,该模块对键盘信息本身无需采取任何保护措施(如加密、创建独立传输通道),从根本上解决了键盘过滤驱动对键盘信息的截获,较通用。
5.根据权利要求1中所述的基于Windows内核的反键盘记录技术,其特征在于,在步骤四中针对Windows消息钩子提出了一种高效的内核防护模块,它具有如下优点:
第一,该模块从内核层分析Windows消息钩子截获按键信息原理,比一般的利用消息钩子本身保护按键信息要简单、高效;
第二,分析出Windows消息钩子内核原理后,根据消息钩子内核链式数据结构,将不可疑消息钩子从链表上摘除;
第三,当键盘信息流经处理过的消息钩子链时,所有木马软件将无法截获键盘信息;
第四,该模块从本质上解决了,Windows消息钩子技术对键盘信息的记录,具有通用性。
6.根据权利要求1中所述的基于Windows内核的反键盘记录技术,其特征在于,在步骤五中提出的用户登录结束后,对摘除的内核数据结构的回复。从而使整个保护过程对系统内核透明,没有任何第三方软件兼容问题。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101459454A CN102222179A (zh) | 2010-04-13 | 2010-04-13 | 一种基于Windows内核的反键盘记录技术 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101459454A CN102222179A (zh) | 2010-04-13 | 2010-04-13 | 一种基于Windows内核的反键盘记录技术 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102222179A true CN102222179A (zh) | 2011-10-19 |
Family
ID=44778729
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010101459454A Pending CN102222179A (zh) | 2010-04-13 | 2010-04-13 | 一种基于Windows内核的反键盘记录技术 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102222179A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103246854A (zh) * | 2012-02-08 | 2013-08-14 | 精品科技股份有限公司 | 数据收集方法、信息安全管理方法及信息安全管理主机 |
CN104539620A (zh) * | 2014-12-29 | 2015-04-22 | 飞天诚信科技股份有限公司 | 一种安全的双向ssl认证方法和中间件 |
CN105069351A (zh) * | 2015-07-23 | 2015-11-18 | 浪潮电子信息产业股份有限公司 | 一种应用程序登录信息防盗取的装置及方法 |
CN111222128A (zh) * | 2019-12-31 | 2020-06-02 | 北京握奇数据股份有限公司 | 一种安全输入和校验USBKey PIN码的方法及模块 |
-
2010
- 2010-04-13 CN CN2010101459454A patent/CN102222179A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103246854A (zh) * | 2012-02-08 | 2013-08-14 | 精品科技股份有限公司 | 数据收集方法、信息安全管理方法及信息安全管理主机 |
CN103246854B (zh) * | 2012-02-08 | 2018-02-16 | 精品科技股份有限公司 | 数据收集方法、信息安全管理方法及信息安全管理主机 |
CN104539620A (zh) * | 2014-12-29 | 2015-04-22 | 飞天诚信科技股份有限公司 | 一种安全的双向ssl认证方法和中间件 |
CN104539620B (zh) * | 2014-12-29 | 2017-09-22 | 飞天诚信科技股份有限公司 | 一种安全的双向ssl认证方法和装置 |
CN105069351A (zh) * | 2015-07-23 | 2015-11-18 | 浪潮电子信息产业股份有限公司 | 一种应用程序登录信息防盗取的装置及方法 |
CN111222128A (zh) * | 2019-12-31 | 2020-06-02 | 北京握奇数据股份有限公司 | 一种安全输入和校验USBKey PIN码的方法及模块 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Manoharan et al. | Revolutionizing Cybersecurity: Unleashing the Power of Artificial Intelligence and Machine Learning for Next-Generation Threat Detection | |
Moustafa et al. | Federated TON_IoT Windows datasets for evaluating AI-based security applications | |
CN106326699B (zh) | 一种基于文件访问控制和进程访问控制的服务器加固方法 | |
EP3029593B1 (en) | System and method of limiting the operation of trusted applications in the presence of suspicious programs | |
US20160099960A1 (en) | System and method for scanning hosts using an autonomous, self-destructing payload | |
CN101478407B (zh) | 在线安全登录的方法及装置 | |
CN110958257B (zh) | 一种内网渗透过程还原方法和系统 | |
US9245118B2 (en) | Methods for identifying key logging activities with a portable device and devices thereof | |
JP2018522359A (ja) | コンピューティングプロセス内の未知の脆弱性を検出するためのシステム及び方法 | |
CN108804921A (zh) | 一种PowerShell代码的去混淆方法及装置 | |
CN102195940A (zh) | 一种基于虚拟机技术安全输入和提交数据的方法和系统 | |
CN112968885B (zh) | 一种边缘计算平台安全防护方法和装置 | |
CN105787370A (zh) | 一种基于蜜罐的恶意软件收集和分析方法 | |
CN102222179A (zh) | 一种基于Windows内核的反键盘记录技术 | |
CN102222292B (zh) | 一种手机支付保护方法 | |
CN101719846A (zh) | 安全监控方法、装置及系统 | |
Moses et al. | Touch interface and keylogging malware | |
CN108667812A (zh) | 用于专用主机的多指标评分的白环境可信度分析方法 | |
Wang et al. | Network attack detection based on domain attack behavior analysis | |
Lakh et al. | Using Honeypot Programs for Providing Defense of Banking Network Infrastructure | |
Kanaker et al. | Detecting worm attacks in cloud computing environment: Proof of concept | |
CN105975860A (zh) | 一种信任文件管理方法、装置及设备 | |
CN105828323A (zh) | 一种Android手机公共数据库隐私保护方法及系统 | |
CN101777102B (zh) | 一种对内核的安全审计方法和系统 | |
CN106951777B (zh) | 安卓应用运行时用户界面的推断方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
DD01 | Delivery of document by public notice |
Addressee: Zheng Yong Document name: Notification of Passing Preliminary Examination of the Application for Invention |
|
C06 | Publication | ||
PB01 | Publication | ||
DD01 | Delivery of document by public notice |
Addressee: Zhang Biao Document name: Notification of Publication of the Application for Invention |
|
DD01 | Delivery of document by public notice |
Addressee: Zhang Biao Document name: Notification of before Expiration of Request of Examination as to Substance |
|
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20111019 |