CN107038817B - 输入外围装置安全性 - Google Patents

输入外围装置安全性 Download PDF

Info

Publication number
CN107038817B
CN107038817B CN201610855132.1A CN201610855132A CN107038817B CN 107038817 B CN107038817 B CN 107038817B CN 201610855132 A CN201610855132 A CN 201610855132A CN 107038817 B CN107038817 B CN 107038817B
Authority
CN
China
Prior art keywords
input command
agent
input
operating system
peripheral
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.)
Active
Application number
CN201610855132.1A
Other languages
English (en)
Other versions
CN107038817A (zh
Inventor
安东尼·爱德华·罗珀
格雷厄姆·福莱特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NCR Voyix Corp
Original Assignee
NCR Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NCR Corp filed Critical NCR Corp
Publication of CN107038817A publication Critical patent/CN107038817A/zh
Application granted granted Critical
Publication of CN107038817B publication Critical patent/CN107038817B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/83Protecting input, output or interconnection devices input devices, e.g. keyboards, mice or controllers thereof
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F19/00Complete banking systems; Coded card-freed arrangements adapted for dispensing or receiving monies or the like and posting such transactions to existing accounts, e.g. automatic teller machines
    • G07F19/20Automatic teller machines [ATMs]
    • G07F19/201Accessories of ATMs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F19/00Complete banking systems; Coded card-freed arrangements adapted for dispensing or receiving monies or the like and posting such transactions to existing accounts, e.g. automatic teller machines
    • G07F19/20Automatic teller machines [ATMs]
    • G07F19/209Monitoring, auditing or diagnose of functioning of ATMs
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F19/00Complete banking systems; Coded card-freed arrangements adapted for dispensing or receiving monies or the like and posting such transactions to existing accounts, e.g. automatic teller machines
    • G07F19/20Automatic teller machines [ATMs]
    • G07F19/211Software architecture within ATMs or in relation to the ATM network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/031Protect user input by software means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2101Auditing as a secondary aspect
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2153Using hardware token as a secondary aspect

Abstract

一种输入外围设备代理(114A或402),用于拦截主机(111或400)上的输入命令,并在判断是否允许由主机(111或400)的操作系统(115B)处理命令之前,或是否忽略主机(111或400)上的命令之前,实施策略条件和白名单条件。在一个实施例中,所述策略条件和白名单条件可以通过远程网络管理器动态更改,而无需改变、停止和/或重启输入外围设备代理(114A或402)和/或主机(111或400)。

Description

输入外围装置安全性
技术领域
本发明涉及输入外围装置安全性。
背景技术
自动取款机(ATM)通常被视为相对较安全的装置,因为人们用其处理资金交易。然而与具有存储器和处理能力的任何其它装置一样,ATM容易受到恶意软件、病毒和窃听软件的破坏。
现代ATM通常包括外围设备端口或无线技术(例如WiFi,
Figure GDA0002214881350000011
等)。这可能允许外围设备或装置与ATM配对。一般来说,无线技术可以通过加密密钥来保证安全性。外围设备端口可能被隐藏在一般人视线范围之外,但维修工程师知道这些端口的位置以及如何访问这些端口,一些技术高超的黑客可能知道如何访问这些端口。
键盘是一种能够出于合法原因和/或恶意原因利于连接ATM的特定外围设备。通过键盘,维修工程师可以使用按键或按键序列访问ATM上的资源或运行程序,这可能无法通过现有加密PINPAD的典型触屏实现。
然而,由于按键和按键序列可以绕过某些安全检查并直接访问对于ATM安全性至关重要的资源。一些ATM安全系统将通过操作系统(OS)的注册表阻止所有用户使用按键或按键序列。然而,这种方法过于严格,因为ATM的授权用户可能有访问被阻止的按键或按键序列的合法需求。
因此,需要改进与附接至主机的外围设备键盘上按键和按键序列相关联的更精细的安全性。
发明内容
在各个实施例中,提出了用于输入外围装置安全性的方法和自助服务终端。
根据一个实施例,提出了一种用于输入外围装置安全性的方法。具体而言,由主机的输入外围设备所生成的输入命令被拦截。接着,判断是否阻止主机的操作系统(OS)处理该输入命令,或者是否将该输入命令送至OS进行处理。
根据本发明的第一个方面,提供了一种包括下列步骤的方法:拦截由主机的输入外围设备所生成的输入命令;以及判断是阻止主机的操作系统(OS)处理该输入命令,还是将该输入命令送至OS进行处理。
拦截输入命令的步骤可选地进一步包括将输入命令识别为通过主机的外围设备端口与主机连接的键盘。
识别输入命令的步骤可选地进一步包括将输入命令识别为在键盘上激活的按键序列。
判断是否阻止输入命令的步骤可选地进一步包括尝试在输入外围设备的白名单命令文件中匹配输入命令,并且当匹配时,将该输入命令送至OS进行处理,当不匹配时,忽略该输入命令并阻止OS处理该输入命令。
判断是否阻止输入命令的步骤可选地进一步包括识别通过输入外围设备启动输入命令的资源并基于关于所述输入命令的指定给资源的安全权限作出判断。
识别启动所述输入命令的资源的步骤可选地进一步包括通过由主机可访问的网络连接而从远程网络服务动态获取用于该资源的安全权限。
动态获取安全权限的步骤可选地进一步包括当主机与资源之间的授权会话终止时,终止该安全权限。
识别启动输入命令的资源的步骤可选地进一步包括通过维修主机的维修工程师基于与输入外围设备连接的通用串行总线(USB)加密狗来获得安全权限,其中所述资源是维修工程师。
判断是否阻止输入命令的步骤可选地进一步包括访问白名单命令文件,以基于输入外围设备的输入外围设备识别符作出判断。
所述方法可选地进一步包括当判断阻止OS处理输入命令时,记录所述通过输入外围设备启动输入命令的所述资源的资源识别符。
根据本发明的第二个方面,提供了一种自助服务终端(SST),其包括:处理器;以及配置用于下列目的的输入外围设备代理:i)在SST的处理器上执行以及ii)判断是否将来自输入外围设备的输入命令送至SST的操作系统(OS)进行处理,或者是否阻止输入命令被送至OS进行处理。
输入外围设备过滤代理可选地进一步配置为,在ii)中:基于白名单输入命令文件内包括的条目作出判断。
SST可选地是ATM,可以通过与ATM连接的网络访问的远程网络服务通过该网络连接至少部分控制白名单输入命令文件的条目。
根据本发明的第三个方面,提供了一种方法,其包括:通过网络连接远程控制在自助服务终端(SST)上执行的代理,使代理执行是否允许由与SST连接的键盘外围设备启动的按键序列供以SST处理。
远程控制步骤可选地进一步包括通过修改存储在SST上并由代理处理的白名单按键序列文件来间接控制代理。
远程控制步骤可选地进一步包括通过发送至代理并由该代理在SST上动态解译和处理的互动式指令来直接控制该代理。
远程控制步骤可选地进一步包括通过修改存储在SST上并由代理处理的文件来间接控制该代理,以及通过发送至代理并由该代理在SST上动态解译和处理的互动式指令来间接控制该代理。
远程控制步骤可选地进一步包括至少部分基于启动键盘外围设备上的键盘序列的资源来为代理设置动态执行条件。
为代理设置条件的步骤可选地进一步包括基于资源与SST之间的单个通信会话设置至少一个额外条件。
为代理设置条件的步骤可选地进一步包括基于与键盘外围设备相关联的键盘类型来设置至少一个额外条件。
附图说明
以下通过举例并参照附图,对本发明的上述内容和其它方面加以具体说明,其中:
图1是根据一个示例性实施例的用于自动取款机(ATM)上键盘安全性的银行系统的示意图。
图2是根据一个示例性实施例的用于输入外围设备安全性的方法的示意图;
图3是根据一个示例性实施例的用于输入外围设备安全性的另一种方法的示意图;以及
图4是根据一个示例性实施例的自助服务终端(SST)的示意图。
具体实施方式
首先参照图1,示出了根据一个示例性实施例的用于自动取款机(ATM)上键盘安全性的银行系统的示意图。但应注意的是,组件是以大大简化的形式示意性示出的,且仅显示了与理解所示实施例相关的组件。
此外,仅出于说明目的,描绘(图1中标识的)各个组件,以及呈现组件的布置形式。但应注意的是,也可以在不脱离本文和下文所呈现的输入外围设备安全性的教示的情况下,按其它方式布置更多或更少组件。
银行系统100包括银行分行110,ATM主机/交换机130和核心银行系统140。银行分行110包括:ATM 111和分行服务器120。
ATM 111包括一个或多个中央处理器(CPU)112,存储器113和硬盘驱动器(HD)115(可以根据需要加密或动态加密,或者不进行加密),以及多个外围设备116。存储器113包括新型客户外围设备过滤代理114A,作为存储器113中由一个或多个CPU 112在ATM 111上处理的可执行指令的运行实例。HD 115包括驱动程序/应用程序代码/等。115A,操作系统(OS)115B和文件115C。应用程序代码115A可包括客户外围设备代理114的源代码。
ATM 111启动时,OS 115B从HD 115加载至存储器113并由一个或多个CPU 112执行,当加载至存储器113中时,OS 115B将可执行版本的客户外围设备过滤代理114A以及外围设备驱动程序115A加载至存储器113。客户外围设备过滤代理114A从文件115C加载新的白名单114B至存储器(缓冲)中。
客户外围设备过滤代理114A可以通过ATM 111的网络连接与分行服务器通信(例如通过局域网(LAN)连接)。通过分行服务器120,客户外围设备过滤代理114A可以获得广域网(WAN)来与核心银行系统140的客户外围设备过滤管理器141进行双向通信。
客户外围设备过滤管理器141也可以通过与客户外围设备过滤代理通信,或通过在客户外围设备过滤代理114A没有加载并且在ATM 111的存储器112中运行时,替换硬盘驱动器的文件115C中代表白名单114B的文件来更改白名单114B中的信息。
在运行过程中,客户外围设备过滤代理114A配置为检测来自与ATM 111连接的键盘外围设备116的按键事件和按键序列。这可以通过监听键盘外围设备116与ATM 111连接(例如通过通用串行总线(USB端口)或包括无线通信端口在内的其它端口)的端口,或者监控来自或发给与键盘外围设备116相关联的装置驱动程序的命令来实现。
检测到的任何按键事件(可包括按键序列)或按键命令在被OS 115B处理之前都被装置驱动程序拦截,并且由客户外围设备过滤代理114A将其与白名单114B中的条目进行比较。如果发现与白名单114B中的条目匹配,则允许按键事件或按键命令发送至OS 115B在ATM 111上进行正常处理。然而,如果拦截的按键事件或按键命令在白名单114B的条目中没有发现匹配,则所述按键事件或按键命令无法发送至OS 115B进行处理;本质上,拦截的按键事件或按键命令将被过滤、忽略并且不会在ATM 111上产生任何动作。
当部署新的键盘时,由于客户外围设备过滤代理114A的处理动作受到白名单114B的驱动,只有已知并且经过认证的按键或按键序列可以被添加到白名单114B中,而客户外围设备过滤代理114A不需要修改、重新编译或以任何方式更改。在这种情况下,客户外围设备过滤代理114A可以动态定制并且具响应性。此外,与依赖于识别要排除的按键或按键序列的其它方法不同,通过利用新型白名单方法,任何未知且未认证的按键或按键序列都将被客户外围设备过滤代理114A默认过滤并忽略,因为只有在可接受的按键或按键序列出现在白名单114B中的情况下,才允许继续。
此外,由于客户外围设备过滤管理器141可以访问更改白名单114B,所以可以动态且远程地添加新按键或按键序列,或者可以动态删除白名单114B中的现有按键或按键序列,从而进行过滤和忽略,因为这些按键或按键序列已经从白名单114B中去除。
可以在白名单114B或从文件115C获得的单独配置文件中限定关于所检测到按键事件的各种安全性条件,并由客户外围设备过滤代理114A动态解译。这些条件可以总结在一起作为特定策略,每个策略可基于触发按键事件或按键序列的资源的身份来定位。例如,一名维修工程师通过登录程序授权,并代表与该维修工程师相关的唯一身份。当按键事件被客户外围设备过滤代理114A拦截时,来自OS 115B的元数据可以识别授权维修工程师的身份,客户外围设备过滤代理114A在配置文件或白名单中定位与该授权维修工程师的身份相关联的、作为策略来引用的一个条件或一组条件。可以对这些条件进行评估而判断出即使在白名单114B中发现匹配的按键事件的情况下,该按键事件仍将被忽略或过滤并且不会送至OS115B进行处理。
通过这种方式,客户外围设备过滤代理114A可以部署精细的且资源专用的按键命令过滤,这可以通过更改白名单114B的条目和/或配置文件进行动态更改,以及可以利用客户外围设备过滤管理器141通过网络进行更改。
这提供了各种有利用途,例如但不限于:
1)可以由基于远程网络的客户外围设备过滤管理器141更改过滤的按键;
2)基于服务器工程师的授权可以允许更改白名单114B中的按键(可以基于带有已知指定给特定维修工程师的序列号的USB安全加密狗进行身份识别);
3)可以动态更改键盘过滤器,而无需在OS中注册任何条目,也无需重启ATM 111;以及
4)可以由客户外围设备过滤管理器141和/或通过配置条件或策略远程管理键盘过滤,使得可以在工程师维修凭证窗口关闭过滤并且在时间超出维修凭证窗口之后重新打开。
在一个实施例中,所述条件基于自动软件资源而不是用户资源(维修工程师)。
在一个实施例中,所述条件整合在白名单114B中作为一个文件或数据库。
在一个实施例中,键盘外围设备116为
Figure GDA0002214881350000061
键盘。
在一个实施例中,键盘外围设备116是由服务工程师操作的装置,其可以作为ATM111的键盘,例如笔记本电脑、平板电脑、电话,或配置成通过外围通信端口向ATM 111证实自己是一种键盘外围设备116的可穿戴处理装置。
在一个实施例中,所述白名单基于键盘类型分类列出了按键条目,使得多种不同键盘类型在白名单文件或数据库114B中得到识别和管理。
在一个实施例中,每个单独的键盘类型包括其自身单独的白名单文件或数据库114B中。在这种情况下,可以使用键盘类型的标识符作为每个白名单文件114B的文件名称或文件参考,使得当客户外围设备过滤代理114A检测到特定键盘类型的事件时,客户外围设备过滤代理114A可以处理该键盘类型/标识符以便在硬盘驱动器115的多个文件115C中定位并取得正确的白名单文件114A。
现在参照图2至图4来讨论图1中的某些实施例和其它实施例。
图2是根据一个示例性实施例的用于输入外围设备安全性的方法200的示意图;实施方法200的软件模块被称为“自助服务终端(SST)输入装置过滤代理”。所述SST输入装置过滤代理被实现为可执行指令,其经过编程并存储于存储器和/或非暂时性计算机可读(处理器可读)存储介质内,并且由装置的一个或多个处理器执行。所述装置中执行SST输入装置过滤代理的处理器经过特别配置和编程以处理所述SST输入装置过滤代理。所述SST输入装置过滤代理在其处理期间可访问一个或多个网络连接。所述网络连接可以是有线、无线或有线与无线的组合。
在一个实施例中,执行SST输入装置过滤代理的所述装置是图1的ATM 111。
在一个实施例中,执行SST输入装置过滤代理的所述装置是信息亭。
在一个实施例中,执行SST输入装置过滤代理的所述装置是销售点(POS)终端。
在一个实施例中,所述SST输入装置过滤代理是图1的客户外围设备过滤代理114A。
在一个实施例中,客户外围设备过滤管理器141是可操作以由客户驱动并可以更改所述SST输入装置过滤代理的动态处理,而无需重新启动SST,也无需更改或改动所述SST输入装置过滤代理的可执行指令。
在210中,所述SST输入装置过滤代理拦截主机的输入外围设备生成的输入命令。
在一个实施例中,所述SST输入装置过滤代理挂钩OS的核心,以拦截输入外围设备的驱动程序发出的输入命令。在一个实施例中,所述挂钩是在OS核心进程中注册,以从所有输入外围设备向SST输入装置过滤代理传送输入命令。
在一个实施例中,所述主机是图1中的ATM 111。
在一个实施例中,所述主机是SST。在一个实施例中,所述SST是信息亭。
在一个实施例中,在211中,所述SST输入装置过滤代理将输入命令识别为通过主机的外围设备端口与主机连接的键盘。
在一个实施例211和212中,所述SST输入装置过滤代理将输入命令识别为键盘上激活的按键序列。在一个实施例中,所述序列为单个按键。在一个实施例中,所述序列为两个或更多按键。
在220中,所述SST输入装置过滤代理判断是阻止主机的OS处理该输入命令,还是将该输入命令送至OS进行处理。
在一个实施例中,在221中,所述SST输入装置过滤代理尝试将该输入命令与输入外围设备的白名单命令文件进行匹配,并且当匹配时,所述SST输入装置过滤代理将该输入命令送至OS进行处理,当不匹配时,所述SST输入装置过滤代理忽略该输入命令并阻止OS处理该输入命令。
在一个实施例中,所述白名单命令文件是图1的白名单文件114B。
在一个实施例中,在222中,所述SST输入装置过滤代理识别通过输入外围设备启动输入命令的资源,并且所述SST输入装置过滤代理基于关于所述输入命令的指定给资源的安全权限作出判断。
在一个实施例中,所述资源是操作所述输入外围设备的操作人员。在一个实施例中,所述操作人员是维修SST的维修工程师。
在一个实施例中,所述资源是能够通过输入外围设备启动输入命令的自动服务或应用程序。
在一个实施例222和223中,所述SST输入装置过滤代理通过主机可访问的网络连接从远程网络服务动态获得所述资源的安全权限。在一个实施例中,所述远程网络服务是图1的客户外围设备过滤管理器141。在一个实施例中,所述远程网络是下文参考图3所讨论的方法300。
在一个实施例223和224中,当主机与资源之间的授权会话终止时,所述SST输入装置过滤代理终止该安全权限。在一个实施例中,所述授权会话是维修工程师在主机(SST)上依照维修凭证进行维修的资源。
在一个实施例222和225中,通过维修主机的维修工程师,所述SST输入装置过滤代理基于与输入外围设备连接的USB加密狗获得安全权限,其中所述资源是维修工程师。
在一个实施例中,在226中,所述SST输入装置过滤代理访问白名单命令文件以基于输入外围设备的输入外围设备标识符作出判断。在一个实施例中,所述白名单命令文件是图1的白名单文件114B。
在一个实施例中,在230中,当判断应阻止主机的OS处理输入命令时,所述SST输入装置过滤代理记录所述通过输入外围设备启动输入命令的资源的资源识别符。这可以用于审核未经授权并且试图通过输入外围设备访问主机的输入命令。
图3是根据一个示例性实施例的用于输入外围设备安全性的方法300的示意图;实施所述方法300的软件模块被称为“自助服务终端(SST)输入装置过滤管理器”。所述SST输入装置过滤管理器被实现为可执行指令,其经过编程并存储于存储器和/或非暂时性计算机可读(处理器可读)存储介质内,并且由装置的一个或多个处理器执行。执行SST输入装置过滤管理器的处理器经过特别配置和编程以处理所述SST输入装置过滤管理器。所述SST输入装置过滤管理器在其处理期间可访问一个或多个网络连接。所述网络连接可以是有线、无线或有线与无线的组合。
在一个实施例中,执行SST输入装置过滤管理器的所述装置是服务器。在一个实施例中,所述服务器是图1的核心银行系统140。
在一个实施例中,执行SST输入装置过滤管理器的所述装置是与另一个SST联网的SST,所述另一个SST具有图1的客户外围设备过滤代理114A的实例或图2的方法200的实例。
在一个实施例中,所述SST输入装置过滤管理器是图1的客户外围设备过滤管理器141。
在一个实施例中,所述SST输入装置过滤管理器与图1的客户外围设备过滤管理器114A或图2的方法200交互作用。
在一个实施例中,所述SST输入装置过滤管理器与图1的客户外围设备过滤管理器114A或图2的方法200直接交互作用。
在一个实施例中,通过更改一个或更多文件,例如参考图1所讨论的白名单文件114B和/或配置文件,所述SST输入装置过滤管理器与图1的客户外围设备过滤管理器114A或图2的方法200间接交互作用。
在一个实施例中,所述SST输入装置过滤管理器与图1的客户外围设备过滤代理114A或图2的方法200直接或间接交互作用。
在310中,所述SST输入装置过滤管理器通过网络连接远程控制在SST上执行的代理,使代理执行是否允许由与SST连接的键盘外围设备启动的按键序列被SST处理。
在一个实施例中,所述代理是图1的客户外围设备过滤代理114A。
在一个实施例中,所述代理是图2的方法200。
在一个实施例中,所述SST是图1中的ATM 111。
在一个实施例中,所述SST是信息亭。
在一个实施例中,所述SST是POS终端。
根据一个实施例,在311中,所述SST输入装置过滤管理器通过修改存储在SST上并由代理处理的白名单按键序列文件来控制所述代理。
在一个实施例中,所述白名单按键序列文件是图1的白名单文件114B。
在一个实施例中,在312中,所述SST输入装置过滤管理器通过发送至代理并由代理在SST上动态解译和处理的交互式指令来直接控制所述代理。
在一个实施例中,在313中,所述SST输入装置过滤管理器通过修改存储在SST上并由代理处理的文件来间接控制所述代理,并且通过发送至代理并由代理在SST上动态解译和处理的交互式指令来间接控制所述代理。在一个实施例中,所述文件是图1的白名单文件114B。
在一个实施例中,在314中,所述SST输入装置过滤管理器至少部分基于启动键盘外围设备上的键盘序列的资源来为代理设置动态执行条件。
在一个实施例314和315中,所述SST输入装置过滤管理器基于资源与SST之间的单个通信会话来设置至少一个额外条件。
在一个实施例314和316中,所述SST输入装置过滤管理器基于与键盘外围设备有关联的键盘类型来设置至少一个额外条件。
图4是根据一个示例性实施例的SST 400的示意图。SST 400包括各类硬件组件及软件组件。SST 400的软件组件经过编程,并存储于存储器和/或非暂时性计算机可读介质内,并在SST 400的一个或多个处理器上执行。SST 400可以利用一个或多个网络进行通信,这些网络可以是有线、无线或有线和无线的组合。
在一个实施例中,SST 400是图1中的ATM 111。
在一个实施例中,SST 400是信息亭。
在一个实施例中,SST 400是POS终端。
SST 400包括处理器401和输入外围设备过滤代理402。
输入外围设备过滤代理402被调适和配置为:在处理器401上执行。
在一个实施例中,输入外围设备过滤代理402是图1的客户外围设备过滤代理114A。
在一个实施例中,输入外围设备过滤代理402是图2的方法200。
在一个实施例中,输入外围设备过滤代理402进一步配置为:1)在SST 400的处理器401上执行,以及2)判断是否将由输入外围设备启动的输入命令送至SST 400的OS进行处理,或者是否阻止输入命令送至OS进行处理。
在一个实施例中,输入外围设备过滤代理402进一步配置为,基于白名单输入命令文件内包括的条目作出判断。在一个实施例中,所述白名单输入命令文件是图1的白名单文件114B。
在一个实施例中,SST 400是图1的ATM 111,并且可以通过与ATM 111连接的网络访问的远程网络服务通过该网络连接至少部分控制所述白名单输入命令文件的条目。在一个实施例中,所述远程网络服务是图1的客户外围设备过滤管理器141。在一个实施例中,所述远程网络服务是图3的方法300。
应了解的是,以特定形式(如组件或模块)描述软件只是为便于理解,并无意对实施相关功能的软件的架构或构造形式予以限制。例如,模块虽被图解为单独模块,但可以作为同源代码、独立组件执行,不过并非所有模块都可以结合,或者在以任何其它便利方式构建的软件中实施所述功能。
此外,尽管软件模块被图解为在一个硬件上执行,但软件可以分布于多个处理器上,或采用任何其它便利的方式。
以上描述属说明性,而非限制性。在查阅上述说明后,熟悉本领域的技术人员将了解许多其它实施例。因此实施例的范围应参照附加权利要求,连同此等权利要求所享有的等效物的完整范围来确定。
在之前对实施例的描述中,出于简化本发明的目的,各个特征被一并归至单个实施例中。本发明的方法不应理解为反映出所要求实施例的特征比各权利要求中明确表述的特征要多。更确切地说,正如以下权利要求所反映,发明主旨少于单个公开实施例的所有特征。

Claims (17)

1.一种用于输入外围设备安全性的方法,其包括:
在主机启动时,将来自非暂时性计算机可读存储介质的可执行指令作为客户外围设备过滤代理加载到主机的存储器内;
由所述主机上的处理器执行所述客户外围设备过滤代理;
由所述客户外围设备过滤代理将白名单加载到所述主机的缓冲中;
通过监听与所述主机的输入外围设备相关联的所述主机上的通信端口,所述客户外围设备过滤代理拦截由所述主机的所述输入外围设备生成的输入命令,其中所述拦截进一步包括在所述主机的操作系统从所述通信端口接收所述输入命令之前获取所述输入命令,其中所述拦截进一步包括使用操作系统核心进程从与所述输入外围设备相关联的装置驱动程序中获取所述输入命令;
基于所述白名单中的条目,所述客户外围设备过滤代理判断是阻止所述操作系统处理所述输入命令,还是将所述输入命令送至所述操作系统进行处理,其中所述判断进一步包括当所述输入命令在所述白名单的条目中未被识别时,通过不将所述输入命令送至所述操作系统进行处理而忽略所述输入命令,其中所述判断进一步包括:从所述操作系统中识别启动所述输入命令的资源的身份,从所述白名单获取与所述身份相关联的策略,对与所述策略相关联的条件进行评估,以及当所述输入命令在所述白名单的特定条目中被识别并且所述输入命令基于所述资源的所述身份和所述条件被授权时,基于所述条件的所述评估来确定将所述输入命令送至所述操作系统用于处理事件;
通过所述客户外围设备过滤代理,仅允许在所述白名单的所述条目中被识别并且由所述条件指示为被授权的授权命令被所述主机的所述操作系统处理;以及
改变所述白名单的所述条目而不修改、重新编译和停止执行所述客户外围设备过滤代理。
2.根据权利要求1所述的方法,其中所述拦截进一步包括将所述输入命令识别为通过所述主机的外围设备端口与所述主机连接的键盘。
3.根据权利要求2所述的方法,其中所述识别进一步包括将所述输入命令识别为在所述键盘上激活的按键序列。
4.根据权利要求1所述的方法,其中所述判断进一步包括:尝试将所述输入命令在保存在所述缓冲中的所述输入外围设备的白名单中进行匹配。
5.根据权利要求1所述的方法,其中所述识别进一步包括通过所述主机可访问的网络连接从远程网络服务动态获取所述资源的作为用于策略的条件的安全权限。
6.根据权利要求5所述的方法,其中所述动态获取进一步包括当所述主机与所述资源之间的授权会话终止时,终止所述安全权限。
7.根据权利要求1所述的方法,其中所述识别进一步包括:维修所述主机的维修工程师基于与所述输入外围设备连接的通用串行总线加密狗来获得作为条件的安全权限,其中所述资源是所述维修工程师。
8.根据权利要求1所述的方法,其中所述判断进一步包括访问所述白名单,以基于所述输入外围设备的输入外围设备识别符作出所述判断。
9.根据权利要求1所述的方法,所述方法进一步包括:当所述判断是阻止所述操作系统处理所述输入命令时,所述客户外围设备过滤代理记录用于启动来自所述输入外围设备的所述输入命令的所述资源的资源识别符。
10.一种自助服务终端,其包括:
硬件处理器,所述硬件处理器用可执行指令编程,所述可执行指令存储在非暂时性计算机可读存储介质中;和
输入外围设备代理,所述可执行指令代表所述输入外围设备代理,所述输入外围设备代理在所述硬件处理器上执行并被配置为执行处理以:
通过监听所述输入外围设备的通信端口来判断是将由所述输入外围设备启动的输入命令送至所述自助服务终端的操作系统进行处理,还是阻止所述输入命令被送至所述操作系统进行处理;
当作出将所述输入命令送至所述操作系统的判断时,从所述操作系统中判断通过所述输入外围设备启动所述输入命令的资源的身份,获取与所述身份相关联的策略,以及执行所述策略以判断所述输入命令是应被送至所述操作系统,还是应被阻止送至所述操作系统;在所述操作系统从所述输入外围设备接收所述输入命令之前,拦截所述输入命令;
检查白名单输入命令文件,并且当所述输入命令在所述白名单输入命令文件中获得匹配且与所述资源的身份的策略相关的条件指示所述输入命令要被所述操作系统处理时,将所述输入命令送至所述操作系统进行处理;
当所述输入命令在所述白名单输入命令文件中未获得匹配时,或当所述输入命令在所述白名单中获得匹配但与所述资源的身份的策略相关的条件指示所述输入命令要被阻止送至所述操作系统处理时,阻止并忽略所述输入命令;
仅允许存在于所述白名单输入命令文件中并由所述条件指示为被授权的授权命令被所述操作系统处理;以及
改变所述白名单输入命令文件中的所述授权命令而不修改、编译和停止执行所述输入外围设备代理。
11.根据权利要求10所述的自助服务终端,其中所述输入外围设备过滤代理进一步配置为执行处理以:基于所述白名单输入命令文件内包括的条目并基于所述条件作出所述判断。
12.根据权利要求11所述的自助服务终端,其中所述自助服务终端是自动取款机,并且可通过所述自动取款机的网络连接访问的远程网络服务通过所述网络连接至少部分地控制所述白名单输入命令文件中的所述条目。
13.一种用于输入外围设备安全性的方法,包括:
通过来自非暂时性计算机可读存储介质且在处理器上执行的可执行指令并且通过网络连接,远程控制在自助服务终端上执行的代理,以使所述代理执行是否允许由与所述自助服务终端连接的键盘外围设备启动的按键序列被所述自助服务终端获准地处理,其中所述代理监听所述自助服务终端上的用于所述键盘外围设备的通信端口,并且所述代理在所述按键序列被所述自助服务终端的操作系统处理之前使用所述自助服务终端的操作系统核心进程从与所述键盘外围设备相关联的装置驱动程序中拦截所述按键序列,通过所述网络连接从所述代理接收所述按键序列,并且基于所述按键序列,通过所述网络连接指示所述代理进行以下操作:当所述按键序列被授权时,将所述按键序列送至所述操作系统进行处理,并且当所述按键序列未被授权时,通过阻止所述按键序列送至所述自助服务终端上的所述操作系统来忽略所述按键序列,并且当作出将所述按键序列送至所述操作系统的判断时:1)从所述代理获取用于通过所述键盘外围设备启动所述按键序列的资源的身份,其中所述代理从所述操作系统获取所述身份;2)获取与所述身份相关联的策略;3)执行与所述策略相关联的条件以判断是指令所述代理将所述按键序列送至所述操作系统,还是指令所述代理阻止所述操作系统接收所述按键序列;以及4)当所述按键序列基于所述资源的所述身份和所述条件被授权时,基于所述条件的执行确定将所述按键序列送至所述操作系统用于处理事件;
通过所述代理,仅允许由所述可执行指令授权的经授权按键序列在所述自助服务终端的操作期间通过所述网络连接被所述自助服务终端的所述操作系统处理;以及
通过所述可执行指令改变所述经授权按键序列而不修改、重新编译和停止执行所述自助服务终端上的所述代理。
14.根据权利要求13所述的方法,其中,所述远程控制进一步包括通过发送至所述代理并由所述代理在所述自助服务终端上动态解译和处理的交互式指令来直接控制所述代理。
15.根据权利要求13所述的方法,其中,所述远程控制进一步包括基于用于在所述键盘外围设备上启动所述按键序列的资源的身份来为所述代理设置动态执行条件。
16.根据权利要求15所述的方法,其中,所述设置进一步包括基于所述资源与所述自助服务终端之间的单个通信会话来设置至少一个额外条件。
17.根据权利要求15所述的方法,其中所述设置进一步包括基于与所述键盘外围设备有关联的键盘类型来设置至少一个额外条件。
CN201610855132.1A 2015-12-17 2016-09-27 输入外围装置安全性 Active CN107038817B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/972,778 US10762245B2 (en) 2015-12-17 2015-12-17 Input peripheral device security
US14/972,778 2015-12-17

Publications (2)

Publication Number Publication Date
CN107038817A CN107038817A (zh) 2017-08-11
CN107038817B true CN107038817B (zh) 2020-08-07

Family

ID=56682008

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610855132.1A Active CN107038817B (zh) 2015-12-17 2016-09-27 输入外围装置安全性

Country Status (3)

Country Link
US (1) US10762245B2 (zh)
EP (1) EP3182325B1 (zh)
CN (1) CN107038817B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10762245B2 (en) * 2015-12-17 2020-09-01 Ncr Corporation Input peripheral device security
US10366224B2 (en) * 2016-06-22 2019-07-30 Dell Products, Lp System and method for securing secure memory allocations in an information handling system
US10721212B2 (en) * 2016-12-19 2020-07-21 General Electric Company Network policy update with operational technology
US10560482B2 (en) * 2017-07-08 2020-02-11 Vmware, Inc. Network access by applications in an enterprise managed device system
CN109032520A (zh) * 2018-07-24 2018-12-18 郑州云海信息技术有限公司 一种控制方法及装置
US11194904B2 (en) 2018-11-07 2021-12-07 International Business Machines Corporation Security actions based on monitored computer and user physical activities
CN111540133B (zh) * 2020-04-27 2022-07-05 中国银行股份有限公司 外接设备的状态检测方法、装置和相关设备
US11704411B2 (en) 2020-12-10 2023-07-18 Ncr Corporation Operating system encryption system and method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5809230A (en) * 1996-01-16 1998-09-15 Mclellan Software International, Llc System and method for controlling access to personal computer system resources

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4951249A (en) * 1986-10-24 1990-08-21 Harcom Security Systems Corp. Method and apparatus for controlled access to a computer system
US5223948A (en) * 1990-10-10 1993-06-29 Fuji Xerox Co., Ltd. Image processing apparatus
US6288715B1 (en) * 1999-05-11 2001-09-11 Qwest Communications Int'l., Inc. Screensaver messaging system
EP1248179A1 (en) * 2001-04-03 2002-10-09 Hewlett-Packard Company Selective activation and deactivation of peripheral devices connected to a USB system
US20030217287A1 (en) * 2002-05-16 2003-11-20 Ilya Kruglenko Secure desktop environment for unsophisticated computer users
EP1429226A1 (en) * 2002-12-13 2004-06-16 Infotronic S.P.A. Electronic system and corresponding method for protecting an access gate of a computer
US20050080898A1 (en) * 2003-10-08 2005-04-14 Block Jerald J. System and method for managing computer usage
US8281114B2 (en) * 2003-12-23 2012-10-02 Check Point Software Technologies, Inc. Security system with methodology for defending against security breaches of peripheral devices
US8571541B2 (en) * 2004-07-15 2013-10-29 Avaya Inc. Proximity-based authorization
US8050698B2 (en) * 2004-07-15 2011-11-01 Avaya Inc. Peer-to-peer neighbor detection for proximity-based command execution
EP1779248A4 (en) * 2004-07-30 2008-02-27 Research In Motion Ltd METHOD AND SYSTEM FOR COORDINATING CLIENT AND HOST SAFETY MODULES
WO2006101549A2 (en) * 2004-12-03 2006-09-28 Whitecell Software, Inc. Secure system for allowing the execution of authorized computer program code
US8552984B2 (en) * 2005-01-13 2013-10-08 602531 British Columbia Ltd. Method, system, apparatus and computer-readable media for directing input associated with keyboard-type device
US8028301B2 (en) * 2005-03-14 2011-09-27 Symantec Corporation Restricting recordal of user activity in a processing system
US7562385B2 (en) * 2005-04-20 2009-07-14 Fuji Xerox Co., Ltd. Systems and methods for dynamic authentication using physical keys
AU2005100653A4 (en) * 2005-08-12 2005-09-15 Agent Mobile Pty Ltd Mobile Device-Based End-User Filter
US7675435B2 (en) * 2006-08-31 2010-03-09 Microsoft Corporation Smart filtering with multiple simultaneous keyboard inputs
US20080301816A1 (en) * 2007-06-01 2008-12-04 Ting David M T Method and system for handling keystroke commands
CN101470411B (zh) 2007-12-28 2011-06-01 联合汽车电子有限公司 Ecu数据安全升级的系统及方法
US8190783B2 (en) * 2010-05-04 2012-05-29 Microsoft Corporation Assigning input devices to specific sessions
FR2969788B1 (fr) * 2010-12-27 2013-02-08 Electricite De France Procede et dispositif de controle d'acces a un systeme informatique
US9015228B2 (en) * 2011-02-28 2015-04-21 Nokia Corporation Method and apparatus for providing proxy-based sharing of access histories
US9838392B2 (en) * 2011-02-28 2017-12-05 Nokia Technologies Oy Method and apparatus for providing proxy-based access controls
US9317690B2 (en) * 2011-03-28 2016-04-19 Mcafee, Inc. System and method for firmware based anti-malware security
US8677464B2 (en) * 2011-06-22 2014-03-18 Schweitzer Engineering Laboratories Inc. Systems and methods for managing secure communication sessions with remote devices
US8387141B1 (en) * 2011-09-27 2013-02-26 Green Head LLC Smartphone security system
US9154901B2 (en) * 2011-12-03 2015-10-06 Location Labs, Inc. System and method for disabling and enabling mobile device functional components
US11042513B2 (en) * 2012-01-03 2021-06-22 International Business Machines Corporation Extended tagging method and system
CN103685399B (zh) * 2012-09-17 2018-03-23 腾讯科技(深圳)有限公司 一种登录类Unix虚拟容器的方法、装置和系统
CN104904179A (zh) * 2012-10-16 2015-09-09 真实数据系统股份有限公司 安全通信架构
US9317721B2 (en) * 2012-10-31 2016-04-19 Google Inc. Privacy aware camera and device status indicator system
US20150031416A1 (en) * 2013-07-23 2015-01-29 Motorola Mobility Llc Method and Device For Command Phrase Validation
US9311473B2 (en) * 2014-02-28 2016-04-12 Ncr Corporation Unattended secure device authorization
US9760712B2 (en) * 2014-05-23 2017-09-12 Vmware, Inc. Application whitelisting using user identification
US20150365237A1 (en) * 2014-06-17 2015-12-17 High Sec Labs Ltd. Usb security gateway
US9342687B2 (en) * 2014-08-07 2016-05-17 International Business Machines Corporation Detecting synthetic keystrokes
US10275370B2 (en) * 2015-01-05 2019-04-30 Google Llc Operating system dongle
US10110496B2 (en) * 2015-03-31 2018-10-23 Juniper Networks, Inc. Providing policy information on an existing communication channel
US10237280B2 (en) * 2015-06-25 2019-03-19 Websafety, Inc. Management and control of mobile computing device using local and remote software agents
US10762245B2 (en) * 2015-12-17 2020-09-01 Ncr Corporation Input peripheral device security

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5809230A (en) * 1996-01-16 1998-09-15 Mclellan Software International, Llc System and method for controlling access to personal computer system resources

Also Published As

Publication number Publication date
CN107038817A (zh) 2017-08-11
EP3182325B1 (en) 2019-02-06
US20170177908A1 (en) 2017-06-22
EP3182325A1 (en) 2017-06-21
US10762245B2 (en) 2020-09-01

Similar Documents

Publication Publication Date Title
CN107038817B (zh) 输入外围装置安全性
US11637824B2 (en) Multi-factor authentication devices
US9898739B2 (en) System and method for ensuring safety of online transactions
EP2973171B1 (en) Context based switching to a secure operating system environment
US9946866B2 (en) Unattended secure device authorization
US8978127B2 (en) Virtual appliance pre-boot authentication
CN107408172B (zh) 从用户信任的设备安全地引导计算机
US20160078224A1 (en) Validating a type of a peripheral device
WO2013067486A1 (en) Secure boot administration in a unified extensible firmware interface (uefi)- compliant computing device
US10671730B2 (en) Controlling configuration data storage
CN107832616B (zh) 计算机预启动安全验证、实施和修复
Zhou et al. KISS:“key it simple and secure” corporate key management
US10909516B2 (en) Basic input/output system (BIOS) credential management
US10733300B2 (en) Basic input/output system (BIOS)/unified extensible firmware interface (UEFI) hard drive authentication
US20200028683A1 (en) Separate cryptographic keys for multiple modes
EP3467693B1 (en) Identity verification method and apparatus
US10929827B2 (en) Basic input/output system (BIOS) and unified extensible firmware interface (UEFI) one-time boot
KR100651611B1 (ko) 저장 매체 접근시 안전한 통제 방법
EP2854088B1 (en) A system and method for ensuring safety of online transactions
KR102381575B1 (ko) 사용자단말 및 사용자단말과 통신을 수행하는 서버시스템에서 수행되는 선택적 캡쳐방지 기능을 구비한 통신 보안방법
CN104834877B (zh) 一种基于高保证内核的可信输入装置及方法
KR20110067332A (ko) 망 이중화 시스템 및 그 제공방법
EP3093790A1 (en) Method for real time protection against unsolicited access to authentication information known by a legitimate end-user
KR20110096516A (ko) 망 이중화 시스템 및 그 제공방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant