发明名称 一种通过Windows系统服务监控Windows系统剪贴板的方法
摘要 本发明公开了一种通过Windows系统服务监控Windows系统剪贴板的方法,包括以下步骤:A.对与剪贴、复制和粘贴操作相关的系统服务信息初始化,查找到系统描述符表及系统服务NtUserGetClipboardData和NtUserSetClipboardData的服务号ID;B.计算系统服务NtUserGetClipboardData和NtUserSetClipboardData在Windows中的地址偏移;C.HOOK两个系统核心态服务NtUserGetClipboardData和NtUserSetClipboardData;D.有操作请求时,用户发出的剪贴板操作信息进入HOOK的两个相应函数:NewNtUserGetClipboardData和NewNtUserSetClipboardData,从而监控剪贴板的所有操作,并通过逻辑判断作相应处理,采用本发明一种通过Windows系统服务监控Windows系统剪贴板的方法,能对用户的剪切、复制、粘贴操作进行全面控制,并对各种软件具有普遍适用性,而且不影响合法用户的正常操作,做到与应用无关。
申请公布号 CN100458818C 申请公布日期 2009.02.04
申请号 CN200710118584.2 申请日期 2007.07.10
申请人 北京鼎信高科信息技术有限公司 发明人 姜斌斌;文中领;吕俊;陈华平;张磊
分类号 G06F21/22(2006.01) 主分类号 G06F21/22(2006.01)
代理机构 北京市卓华知识产权代理有限公司 代理人 陈子英
主权项 1、一种通过Windows系统服务监控Windows系统剪贴板的方法,其特征在于采用WINDOWS内核HOOK技术对剪贴板相关的系统服务进行HOOK,在剪贴板HOOK驱动中定义一个分支IRP,以实现操作的中断控制,从而达到对WINDOWS系统剪贴板监控的目的,该方法包括以下步骤:A、对与剪贴、复制和粘贴操作相关的系统服务信息初始化,找到两个系统描述符表ServiceDescriptorTable和ServiceDescriptorTableShadow,获得两个系统服务NtUserGetClipboardData和NtUserSetClipboardData的服务号ID;B、计算系统服务NtUserGetClipboardData和NtUserSetClipboardData在Windows中的地址偏移;C、HOOK两个系统核心态服务NtUserGetClipboardData和NtUserSetClipboardData;D、有操作请求时,用户发出的进入系统服务NtUserSetClipboardData和NtUserGetClipboardData的剪贴板操作信息就会进入HOOK的两个相应函数:NewNtUserGetClipboardData和NewNtUserSetClipboardData,在这两个函数中,实现监控剪贴板的所有逻辑处理;E、退出监控驱动,对两个系统服务解除HOOK。
地址 100085北京市海淀区上地信息路11号彩虹大厦北楼306室