CN114499974B - 设备探测方法、装置、计算机设备和存储介质 - Google Patents
设备探测方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN114499974B CN114499974B CN202111622316.0A CN202111622316A CN114499974B CN 114499974 B CN114499974 B CN 114499974B CN 202111622316 A CN202111622316 A CN 202111622316A CN 114499974 B CN114499974 B CN 114499974B
- Authority
- CN
- China
- Prior art keywords
- target
- equipment
- detection
- information
- operating system
- 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
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 323
- 230000004044 response Effects 0.000 claims abstract description 109
- 238000013515 script Methods 0.000 claims abstract description 82
- 238000004590 computer program Methods 0.000 claims abstract description 41
- 238000000034 method Methods 0.000 claims abstract description 29
- 239000000523 sample Substances 0.000 claims description 36
- 230000004083 survival effect Effects 0.000 claims description 16
- 238000007689 inspection Methods 0.000 claims description 13
- 230000000977 initiatory effect Effects 0.000 claims description 7
- 238000004891 communication Methods 0.000 description 6
- 238000013500 data storage Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000012550 audit Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1433—Vulnerability analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9035—Filtering based on additional data, e.g. user or group profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
Abstract
本申请涉及一种设备探测方法、装置、计算机设备、存储介质和计算机程序产品。所述方法包括:获取目标网段内的多个设备地址;基于多个设备地址进行设备初始探测,以确定处于存活状态的目标设备,并确定与目标设备对应的至少一个候选操作系统信息;确定与每个候选操作系统信息分别匹配的设备探测脚本;运行至少一个探测脚本中的当前探测脚本,以向目标设备发送探测报文进行再次探测,若未接收到响应报文,则继续运行下一个探测脚本,直至接收到响应报文时停止;响应报文包括应用服务信息、探测操作系统信息和设备指纹信息中的至少一种;基于响应报文,确定与目标设备对应的设备探测信息。采用本方法能够自动化探测设备、提高设备探测的准确性。
Description
技术领域
本申请涉及信息安全技术领域,特别是涉及一种设备探测方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
近年来,信息安全越来越被人们所关注。电力行业的工业控制系统广泛地采用以太网/IP/TCP网络作为通信基础设施,但是现有的工业控制系统在设计时没有充分地考虑网络攻击、漏洞检测等信息安全问题,导致许多工业控制系统存在严重的网络信息安全风险。因此,需要为电力行业的工业控制系统提供有效的安全防护,而设备探测是为工业控制系统提供安全防护中的一个重要环节。
现有的工业控制系统多为操作员手动地输入相关设备的设备识别信息,然后基于设备识别进行再进行安全监测。这种方式需要人为手动操作,而人为手动操作容易存在操作失误的情况,或者不知晓设备识别信息的情况,存在设备识别信息不准确的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够对工业控制系统中的设备进行准确地自动探测的设备探测方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种设备探测方法。所述方法包括:
获取目标网段内的多个设备地址;
基于所述多个设备地址进行设备初始探测,以确定处于存活状态的目标设备,并确定与所述目标设备对应的至少一个候选操作系统信息;
确定与每个候选操作系统信息分别匹配的设备探测脚本;
运行至少一个探测脚本中的当前探测脚本,以向所述目标设备发送探测报文进行再次探测,若未接收到响应报文,则继续运行下一个探测脚本,直至接收到响应报文时停止;所述响应报文包括应用服务信息、探测操作系统信息和设备指纹信息中的至少一种;
基于所述响应报文,确定与所述目标设备对应的设备探测信息。
在其中一个实施例中,向所述目标设备发送探测报文进行再次探测包括:对所述目标设备中的端口进行扫描,确定所述目标设备中的开放端口;向所述开放端口发送携带有目标参数的探测报文,以进行应用服务、操作系统和指纹探测,所述目标参数包括用于指示进行应用服务探测的第一参数、用于指示进行操作系统探测的第二参数和用于指示进行指纹探测的第三参数。
在其中一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,所述基于所述响应报文,确定与所述目标设备对应的设备探测信息,包括:若所述响应报文中包括有应用服务信息、操作系统信息和设备指纹信息,则基于所述设备指纹信息在指纹库中进行查询,得到对应的查询服务信息和查询操作系统信息;若所述应用服务信息与所述查询服务信息相匹配,则将所述应用服务信息作为目标应用服务信息,若所述探测操作系统信息与所述查询操作系统信息相匹配,则将所述探测操作系统信息作为目标操作系统信息。
在其中一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,所述方法还包括:获取预先建立的漏洞规则,所述漏洞规则中包括应用服务信息与服务漏洞间的第一对应关系,以及操作系统信息与系统漏洞间的第二对应关系;根据所述目标应用服务信息和所述第一对应关系,确定与所述目标设备对应的服务漏洞,根据所述目标操作系统信息和所述第二对应关系,确定与所述目标设备对应的系统漏洞。
在其中一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,所述方法还包括:基于所述目标操作系统信息发起基线核查指令;响应于所述基线核查指令登录所述目标设备;获取所述目标设备中,与所述目标应用服务信息所指向的应用服务对应的配置文件;将各所述配置文件中的安全配置信息与设备安全检查标准规范项进行对比,得到所述目标设备的风险程度。
在其中一个实施例中,响应于所述基线核查指令登录所述目标设备,包括:响应于所述基线核查指令,确定与所述目标设备对应的远程访问控制协议;基于所述远程访问控制协议和所述目标设备中的开放端口,通过口令扫描工具中预置的多组账户名和账户密码自动登录所述目标设备;在登录成功后获得所述目标设备的控制权限。
第二方面,本申请还提供了一种设备探测装置。所述装置包括:
获取模块,用于获取目标网段内的多个设备地址;
初始探测模块,用于基于所述多个设备地址进行设备初始探测,以确定处于存活状态的目标设备,并确定与所述目标设备对应的至少一个候选操作系统信息;
所述初始探测模块,还用于确定与每个候选操作系统信息分别匹配的设备探测脚本;
再次探测模块,用于运行至少一个探测脚本中的当前探测脚本,以向所述目标设备发送探测报文进行再次探测,若未接收到响应报文,则继续运行下一个探测脚本,直至接收到响应报文时停止;所述响应报文包括应用服务信息、探测操作系统信息和设备指纹信息中的至少一种;
所述再次探测模块,还用于基于所述响应报文,确定与所述目标设备对应的设备探测信息。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取目标网段内的多个设备地址;
基于所述多个设备地址进行设备初始探测,以确定处于存活状态的目标设备,并确定与所述目标设备对应的至少一个候选操作系统信息;
确定与每个候选操作系统信息分别匹配的设备探测脚本;
运行至少一个探测脚本中的当前探测脚本,以向所述目标设备发送探测报文进行再次探测,若未接收到响应报文,则继续运行下一个探测脚本,直至接收到响应报文时停止;所述响应报文包括应用服务信息、探测操作系统信息和设备指纹信息中的至少一种;
基于所述响应报文,确定与所述目标设备对应的设备探测信息。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取目标网段内的多个设备地址;
基于所述多个设备地址进行设备初始探测,以确定处于存活状态的目标设备,并确定与所述目标设备对应的至少一个候选操作系统信息;
确定与每个候选操作系统信息分别匹配的设备探测脚本;
运行至少一个探测脚本中的当前探测脚本,以向所述目标设备发送探测报文进行再次探测,若未接收到响应报文,则继续运行下一个探测脚本,直至接收到响应报文时停止;所述响应报文包括应用服务信息、探测操作系统信息和设备指纹信息中的至少一种;
基于所述响应报文,确定与所述目标设备对应的设备探测信息。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取目标网段内的多个设备地址;
基于所述多个设备地址进行设备初始探测,以确定处于存活状态的目标设备,并确定与所述目标设备对应的至少一个候选操作系统信息;
确定与每个候选操作系统信息分别匹配的设备探测脚本;
运行至少一个探测脚本中的当前探测脚本,以向所述目标设备发送探测报文进行再次探测,若未接收到响应报文,则继续运行下一个探测脚本,直至接收到响应报文时停止;所述响应报文包括应用服务信息、探测操作系统信息和设备指纹信息中的至少一种;
基于所述响应报文,确定与所述目标设备对应的设备探测信息。
上述设备探测方法、装置、计算机设备、存储介质和计算机程序产品,通过对目标网段进行初始探测,确定出目标设备和与目标设备对应的至少一个候选操作系统信息,再基于目标设备和与目标设备对应的至少一个候选操作系统信息,对目标设备进行再次探测,基于应用服务信息、操作系统信息和设备指纹信息,确定与目标设备对应的目标应用服务信息和目标操作系统信息,从而实现自动化探测设备的目的,避免了人为手动操作的失误情况,大大提高了设备探测信息获取的准确性。并且,相较于直接对目标网段中的目标设备逐个进行自动探测以确定目标应用服务信息和目标操作系统信息,本方法由于通过初始探测确定了候选操作系统信息,因此缩小了对目标设备的操作系统进行探测的范围,使得探测更为精准,且缩短了探测时间,从而提高了设备探测的效率。
附图说明
图1为一个实施例中设备探测方法的应用环境图;
图2为一个实施例中设备探测方法的流程示意图;
图3为一个实施例中向目标设备发送探测报文进行再次探测步骤的流程示意图;
图4为一个实施例中设备探测装置的结构框图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的设备探测方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。终端102可单独执行本申请实施例提供的设备探测方法,终端102和服务器104也可协同执行本申请实施例提供的设备探测方法。
当终端102单独执行设备探测方法时,终端102获取目标网段内的多个设备地址;基于多个设备地址进行设备初始探测,以确定处于存活状态的目标设备,并确定与目标设备对应的至少一个候选操作系统信息;确定与每个候选操作系统信息分别匹配的设备探测脚本;运行至少一个探测脚本中的当前探测脚本,以向目标设备发送探测报文进行再次探测,若未接收到响应报文,则继续运行下一个探测脚本,直至接收到响应报文时停止;响应报文包括应用服务信息、探测操作系统信息和设备指纹信息中的至少一种;基于响应报文,确定与目标设备对应的设备探测信息。
当终端102和服务器104协同执行设备探测方法时,终端102获取目标网段内的多个设备地址,并将多个设备地址发送至服务器104。服务器104基于多个设备地址进行设备初始探测,以确定处于存活状态的目标设备,并确定与目标设备对应的至少一个候选操作系统信息;确定与每个候选操作系统信息分别匹配的设备探测脚本;运行至少一个探测脚本中的当前探测脚本,以向目标设备发送探测报文进行再次探测,若未接收到响应报文,则继续运行下一个探测脚本,直至接收到响应报文时停止;响应报文包括应用服务信息、探测操作系统信息和设备指纹信息中的至少一种;基于响应报文,确定与目标设备对应的设备探测信息。
其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
应当理解的是,本申请实施例中使用的“第一”、“第二”、“第三”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。除非上下文另外清楚地指出,否则单数形式的“一个”、“一”或者“该”等类似词语也不表示数量限制,而是表示存在至少一个。
在一个实施例中,如图2所示,提供了一种设备探测方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
步骤202,获取目标网段内的多个设备地址。
其中,目标网段指的是待探测的网段。网段是一个计算机网络中使用同一物理层设备(传输介质,中继器,集线器等)能够直接通讯的部分,通常用IP地址(InternetProtocol Address,互联网协议地址)范围表示,即从一个起始IP地址到一个终止IP地址之间的区段就是一个网段。
同一网段内可以包括多个设备地址,即IP地址,每个设备地址对应一个设备。同一网段内的设备可以直接通讯,而不同网段的设备需要经过路由器、交换机等工作在数据链路层或更高层的设备进行连接,从而实现通讯。本申请中目标网段内的设备包括:服务器、打印机、交换机、工控plc、路由器和防火墙等与工业控制系统相关的设备。
具体地,操作员根据设备探测需求,确定一个目标网段。然后,终端获取该目标网段,并基于目标网段,确定目标网段内的多个设备地址。
步骤204,基于多个设备地址进行设备初始探测,以确定处于存活状态的目标设备,并确定与目标设备对应的至少一个候选操作系统信息。
其中,目标设备指的是处于存活状态的设备,只有当设备处于存活状态才能对其进行再次探测,以确定目标应用服务信息和目标操作系统信息。存活状态指的是设备状态为存活状态,设备状态分为存活(在线)状态和非存活(离线)状态。设备处于存活状态下并且具有开放端口时,至少有一种类型的请求数据报文有响应;设备处于存活状态但是不具有开放端口时或者设备处于非存活状态时,对任何类型的请求数据报文均无响应。
候选操作系统信息指的是与目标设备对应的操作系统信息的匹配度较高的操作系统信息,候选操作系统信息的数量至少为一个。操作系统信息存储在指纹库中,一个操作系统信息对应一个设备,指纹库中还存储有设备指纹信息,一个设备指纹信息用于唯一地标识一个设备。
具体地,终端基于多个设备地址,向多个设备地址分别发送初始探测报文,并接收返回数据;若返回数据显示设备状态为存活状态,则将处于存活状态的设备作为目标设备;若目标设备对应的返回数据中还包括初始探测操作系统信息和设备指纹信息,则根据设备指纹信息和初始探测操作系统信息,确定与目标设备对应的至少一个候选操作系统信息。
在一个实施例中,终端基于多个设备地址,向多个设备地址分别发送初始探测报文,初始探测报文携带有用于指示进行设备状态探测和候选操作系统探测的参数,并接收返回数据;若返回数据包括设备状态信息、初始探测操作系统信息和设备指纹信息,则根据设备状态信息确定与多个设备地址对应的设备中处于存活状态的设备,将处于存活状态的设备作为目标设备;并根据目标设备对应的设备指纹信息在指纹库中进行查询,将查询到的与初始探测操作系统信息的匹配度大于指定匹配度的操作系统信息确定为候选操作系统信息。例如指定匹配度为80%,则将在指纹库中查询到的与初始探测操作系统信息的匹配度大于80%的操作系统信息确定为候选操作系统信息,候选操作系统信息可以为一个、两个或多个。
步骤206,确定与每个候选操作系统信息分别匹配的设备探测脚本。
其中,设备探测脚本指的是可以被应用程序临时调用并执行的脚本,用于对目标设备进行再次探测,以确定目标设备对应的应用服务信息和操作系统信息。每个设备探测脚本对应一个操作系统信息,设备探测脚本的数量至少为一个。
具体地,终端基于目标设备对应的至少一个候选操作系统信息,根据操作系统信息与设备探测脚本的对应关系,确定与每个候选操作系统信息分别匹配的设备探测脚本。
步骤208,运行至少一个探测脚本中的当前探测脚本,以向目标设备发送探测报文进行再次探测,若未接收到响应报文,则继续运行下一个探测脚本,直至接收到响应报文时停止;响应报文包括应用服务信息、探测操作系统信息和设备指纹信息中的至少一种。
其中,探测报文是用于对目标设备的应用服务信息和操作系统信息进行探测的报文。应用服务信息指的是安装在目标设备上的软件或硬件相关的服务信息,例如服务名称、服务版本号、服务描述、服务状态、服务提供商;探测操作系统信息指的是响应于探测报文的、目标设备所使用的操作系统的信息,例如操作系统名称、操作系统版本号、操作系统提供商;设备指纹信息指的是响应于探测报文的、用于唯一地标识目标设备的信息。
由于每个目标设备使用的操作系统不同,因此每个探测脚本对应唯一的目标设备,只有在每个目标设备上运行与其对应的探测脚本,才能在向目标设备发送探测报文后接收到响应报文。
具体地,终端逐个运行每个探测脚本,以向目标设备发送探测报文进行再次探测,若未接收到响应报文,则继续运行下一个探测脚本,直至接收到响应报文,则停止运行下一个探测脚本。响应报文可以只包括设备指纹信息,也可以包括应用服务信息和设备指纹信息,也可以包括探测操作系统信息和设备指纹信息,还可以包括应用服务信息、探测操作系统信息和设备指纹信息。
步骤210,基于响应报文,确定与目标设备对应的设备探测信息。
其中,设备探测信息包括目标应用服务信息和目标操作系统信息。目标应用服务信息指的是探测得到的目标设备对应的应用服务信息,目标操作系统信息指的是探测得到的目标设备对应的操作系统信息。
具体地,若响应报文中包括有应用服务信息、操作系统信息和设备指纹信息,则基于设备指纹信息,终端在指纹库中进行查询,得到对应的查询服务信息和查询操作系统信息;若应用服务信息与查询服务信息相匹配,终端将应用服务信息作为目标应用服务信息,若探测操作系统信息与查询操作系统信息相匹配,终端将探测操作系统信息作为目标操作系统信息。
上述设备探测方法中,通过对目标网段进行初始探测,确定出目标设备和与目标设备对应的至少一个候选操作系统信息,再基于目标设备和与目标设备对应的至少一个候选操作系统信息,对目标设备进行再次探测,基于应用服务信息、操作系统信息和设备指纹信息,确定与目标设备对应的目标应用服务信息和目标操作系统信息,从而实现自动化探测设备的目的,避免了人为手动操作的失误情况,大大提高了设备探测信息获取的准确性。并且,相较于直接对目标网段中的目标设备逐个进行自动探测以确定目标应用服务信息和目标操作系统信息,本方法由于通过初始探测确定了候选操作系统信息,因此缩小了对目标设备的操作系统进行探测的范围,使得探测更为精准,且缩短了探测时间,从而提高了设备探测的效率。
在一个实施例中,如图3所示,向目标设备发送探测报文进行再次探测,包括:
步骤302,对目标设备中的端口进行扫描,确定目标设备中的开放端口。
其中,端口的状态分为开放、关闭和被过滤三种,仅当目标设备的端口为开放状态时,端口能够响应探测报文。
具体地,终端与目标设备的每个端口逐个建立链接;向目标设备的每个端口分别发送探测报文;若接收到端口返回的响应报文,则确定该端口为目标设备的开放端口。
在一个实施例中,终端建立一个链接到目标设备的指定端口上;发送一个SYN数据包到目标设备的指定端口上;若接收到一个SYN/ACK数据包,则说明该指定端口是开放状态的,并发送一个ACK确认包到目标设备,这样便在目标设备和终端之间建立了正常的TCP网络连接,数据就可以在目标设备和终端之间传递。
步骤304,向开放端口发送携带有目标参数的探测报文,以进行应用服务、操作系统和指纹探测,目标参数包括用于指示进行应用服务探测的第一参数、用于指示进行操作系统探测的第二参数和用于指示进行指纹探测的第三参数。
其中,第一参数为用于指示进行应用服务探测的参数,第二参数为用于指示进行操作系统探测的参数,第三参数为用于指示进行指纹探测的参数。
具体地,终端向目标设备的开放端口发送探测报文,对目标设备的应用服务、操作系统和指纹进行探测,探测报文中携带有第一参数、第二参数和第三参数,第一参数用于指示进行应用服务探测,第二参数用于指示进行操作系统探测,第三参数用于指示进行指纹探测。
本实施例中,通过向目标设备的开放端口发送携带有用于指示进行应用服务探测、操作系统探测和指纹探测的参数的探测报文,能够达到对目标设备的应用服务、操作系统和指纹进行自动探测的目的。
在一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,基于响应报文,确定与目标设备对应的设备探测信息,包括:根据响应报文中的设备指纹信息在指纹库中进行查询,将查询到的应用服务信息和操作系统信息与响应报文中的应用服务信息和探测操作系统信息进行匹配,确定目标应用服务信息和目标操作系统信息。
其中,响应报文指的是目标设备在接收到探测报文后,目标设备向终端返回的报文,响应报文包括应用服务信息、探测操作系统信息和设备指纹信息中的至少一种。指纹库中存储有应用服务信息、操作系统信息和设备指纹信息,一个设备指纹信息对应一个设备,一个设备对应一个操作系统以及对应一个、两个或多个应用服务信息。
具体地,若响应报文中包括有应用服务信息、操作系统信息和设备指纹信息,终端则基于设备指纹信息在指纹库中进行查询,得到对应的查询服务信息和查询操作系统信息;若应用服务信息与查询服务信息相匹配,终端则将应用服务信息作为目标应用服务信息,若探测操作系统信息与查询操作系统信息相匹配,终端则将探测操作系统信息作为目标操作系统信息;若应用服务信息与查询服务信息不匹配,终端则将查询服务信息作为目标应用服务信息,若探测操作系统信息与查询操作系统信息不匹配,终端则将查询操作系统信息作为目标操作系统信息。
在另一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,基于响应报文,确定与目标设备对应的设备探测信息,包括:若响应报文仅包括应用服务信息和设备指纹信息,终端则基于设备指纹信息在指纹库中进行查询,得到对应的查询服务信息和查询操作系统信息,并将查询操作系统信息作为目标操作系统信息;若应用服务信息与查询服务信息相匹配,终端则将应用服务信息作为目标应用服务信息;若应用服务信息与查询服务信息不匹配,终端则将查询服务信息作为目标应用服务信息。
在另一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,基于响应报文,确定与目标设备对应的设备探测信息,包括:若响应报文仅包括操作系统信息和设备指纹信息,终端则基于设备指纹信息在指纹库中进行查询,得到对应的查询服务信息和查询操作系统信息,并将查询服务信息作为目标应用服务信息;若探测操作系统信息与查询操作系统信息相匹配,终端则将探测操作系统信息作为目标操作系统信息;若探测操作系统信息与查询操作系统信息不匹配,终端则将查询操作系统信息作为目标操作系统信息。
在一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,基于响应报文,确定与目标设备对应的设备探测信息,包括:若响应报文仅包括设备指纹信息,终端则基于设备指纹信息在指纹库中进行查询,得到对应的查询服务信息和查询操作系统信息,将查询服务信息作为目标应用服务信息,并将查询操作系统信息作为目标操作系统信息。
由于设备指纹信息可以唯一地标识目标设备,因此本实施例中通过基于设备指纹信息查询指纹数据库,将响应报文中的设备指纹信息与指纹库中存储的设备指纹信息进行匹配,即可得到目标设备对应的查询服务信息和查询操作系统信息,然后再将响应报文中的应用服务信息和操作系统信息分别与查询服务信息和查询操作系统信息进行匹配,能够达到确定目标设备的目标应用服务信息和目标操作系统信息的目的。
在一个实施例中,基于设备探测信息,设备探测方法还包括:获取预先建立的漏洞规则,漏洞规则中包括应用服务信息与服务漏洞间的第一对应关系,以及操作系统信息与系统漏洞间的第二对应关系;根据目标应用服务信息和第一对应关系,确定与目标设备对应的服务漏洞,根据目标操作系统信息和第二对应关系,确定与目标设备对应的系统漏洞。
其中,漏洞规则指的是存储于漏洞库的、对应不同漏洞类型的规则或规范,用于对信息安全漏洞危害程度进行评估和认定。漏洞库一般是根据国家标准、行业标准等建立的,漏洞信息包括漏洞名称、危害状态、漏洞描述等等,可以从很多维度对漏洞进行分类,例如按照操作系统存在的漏洞还是服务存在的漏洞,可以分为服务漏洞和系统漏洞。常见的服务包括FTP服务、NFS服务、SSH服务、Telnet服务、Windows远程连接服务以及DNS服务等。常见的操作系统包括Windows、Linux、Unix等,而Windows操作系统按照版本又分为Windows2000、Windows2003、Windows2008、WindowsXP、Win7、Win10以及Win11等操作系统。
相应地,漏洞规则中包含有与应用服务信息以及与操作系统信息相关的漏洞,漏洞规则中还定义了应用服务信息和服务漏洞的对应关系,即第一对应关系,以及定义了操作系统信息与系统漏洞的对应关系,即第二对应关系。
具体地,终端在确定了目标应用服务信息和目标操作系统信息之后,获取预先存储在漏洞库中的漏洞规则,根据漏洞规则中所包含的应用服务信息和服务漏洞的对应关系,确定与目标设备对应的服务漏洞;并根据漏洞规则中所包含的操作系统信息与系统漏洞的对应关系,确定与目标设备对应的系统漏洞。
本实施例中,通过将目标设备对应的目标应用服务信息和目标操作系统信息与漏洞库中存储的漏洞规则进行匹配,能够达到漏洞检测的目的,发现目标设备对应的目标应用服务和目标操作系统中存在的漏洞。
在另一个实施例中,基于设备探测信息,设备探测方法还包括:基于目标操作系统信息发起基线核查指令;响应于基线核查指令登录目标设备;获取目标设备中与目标应用服务信息所指向的应用服务对应的配置文件;将各配置文件中的安全配置信息与设备安全检查标准规范项进行对比,得到目标设备的风险程度。
其中,基线核查指令指的是用于核查安全基线的指令。安全基线是指满足最小信息安全保证的基本要求,可以作为一种初始化安装配置标准,也可以在实施安全评估时提供标准依据与操作指导。设备安全检查标准规范项作为公司制定安全基线的指导性文件,定义了公司制定安全基线的范围。设备安全检查标准规范项可以参考国际标准制定,通常包括身份鉴别、访问控制、可靠性与可用性、系统监控、日志审计、管理员行为审计、系统安全评估与加固、数据备份、系统安全应急这些方面的内容。
具体地,终端在确定了目标应用服务信息和目标操作系统信息之后,基于目标操作系统信息发起基线核查指令给目标设备,以获取目标设备的控制权限,并以不破坏目标设备中现有配置文件的方式登录目标设备;获取目标设备中与目标应用服务信息所指向的应用服务对应的配置文件;将各配置文件中的安全配置信息中的每一项与设备安全检查标准规范项中的每一项进行对比,按照设备安全检查标准规范项中的每一项的权值,对目标设备的安全配置情况进行加权计算,得到目标设备的安全评分;根据安全评分,确定目标设备的风险程度。
本实施例中,通过发起与目标设备对应的目标操作系统信息相关的基线核查命令,登录目标设备并获取与目标应用服务信息所指向的应用服务对应的配置文件;将配置文件中的安全配置信息与设备安全检查标准规范项进行对比,能够达到核查目标设备的安全配置情况、确定目标设备的风险程度的目的。
在一个实施例中,响应于基线核查指令登录目标设备,包括:响应于基线核查指令,确定与目标设备对应的远程访问控制协议;基于远程访问控制协议和目标设备中的开放端口,通过口令扫描工具中预置的多组账户名和账户密码自动登录目标设备;在登录成功后获得目标设备的控制权限。
其中,远程访问控制协议指的是为用户提供了在本地计算机上完成远程主机工作功能的协议,常见的远程访问控制协议包括Telnet协议、SSH协议、Rlogin协议。以Telnet协议为例,Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式。在终端上使用telnet程序,用它连接到目标设备,在telnet程序中输入命令,这些命令就会在目标设备上运行,从而在终端就能控制目标设备。要开始一个Telnet会话,必须输入用户名和密码来登录目标设备。
口令扫描工具指的是用于破解出经用户授权的目标设备中的账户名和账户密码的工具,其中预先设置了多组与传输控制协议协议有关的账户名和账户密码。
具体地,目标设备接收到终端发送的基线核查指令后,返回目标设备对应的传输控制协议;终端基于目标设备返回的传输控制协议,确定与目标设备对应的远程访问控制协议;并基于远程访问控制协议,在终端上通过远程访问控制协议对应的程序连接到目标设备的开放端口;使用口令扫描工具中预置的多组账户名和账户密码,逐个输入到目标设备以自动登录目标设备,直到登录成功,从而获得了目标设备的控制权限。
本实施例中,通过确定与目标设备对应的远程访问控制协议,并基于远程访问控制协议和目标设备的开放端口,采用口令扫描工具检测出目标设备的账户名和账户密码,从而达到获取目标设备的控制权限、对目标设备进行远程访问的目的。
在另一个实施例中,提供了一种设备探测方法,该方法适用于构成工业控制系统的工控设备、网络设备、工控应用软件、服务、组件,以及工控系统普遍采用的IT设备、操作系统、数据库等,包括以下步骤:
S1、将经过合法认证过的扫描任务按顺序下发给网络扫描功能模块、权限验证模块、漏洞发现功能模块以及基线核查功能模块。
S2、网络扫描功能模块接收下发的任务数据,根据用户输入的网段进行网络无损嗅探,获取网段中存活设备的IP地址,并将存活设备的IP地址保存在数据存储中;根据存活设备的IP地址,依照预置的端口扫描规则进行主机开放端口的扫描,并将端口扫描的结果保存在数据存储中;根据端口扫描的返回结果以及端口扫描时主机的响应流量数据,进行服务和系统的初步判断,再按照预置的服务与端口的对应规则,发送特定数据的请求来验证相应的服务和系统,并将扫描结果保存在数据存储之中。
S3、权限验证模块将步骤S2的扫描结果通过筛选处理,获取到开放的协议和端口,通过口令扫描工具中的用户字典和密码字典对协议和端口进行尝试登陆和猜测,从而破解出用户和密码,获取设备的控制权限。
S4、漏洞发现功能模块将步骤S2的扫描结果与漏洞知识库中存储的漏洞规则进行匹配,实现对系统、运行服务等方面识别出存在的漏洞,并将结果保存在数据存储之中。
S5、基线核查功能模块利用步骤S2的扫描结果和步骤S3的用户和密码,依据预置好的设备安全检查标准规范项,采用安全无害的方式自动登录目标资产,采集待查配置等信息,按照预设的设备检测项的权值对结果进行加权评分,得出目标资产的风险程度,并将结果保存在数据存储之中。
S6、根据需求,从存储中获取以上步骤的所有数据,按照定制的报告结构,对相关数据进行处理,最终输出直观易读的任务扫描报告。报告内容包括资产探测信息、资产漏洞信息、资产安全配置检查结果信息等。
其中,步骤S2在存活设备(目标设备)发现完成之后,根据存活设备的IP地址,依照预置的端口扫描规则进行开放端口的扫描、服务识别和系统识别,具体为:
(1)端口扫描过程中,扫描程序尝试与目标设备的特定端口建立链接,如果能够成功建立链接,那么也就说明目标设备开放了相应端口;
(2)服务识别主要分为两种情况:如果扫描出来的端口在建立连接时主动返回数据,系统根据内置规则,自动识别开放的服务;如果在规定的时间内没有任何特殊的返回数据,系统根据内置的服务和常见的对应端口列表主动发送特定服务的请求,以此验证是否使用了对应服务。
(3)系统识别:发送一系列TCP和UDP报文到目标设备,检查目标设备响应中的每一个比特。在进行一系列测试之后,如TCP ISN采样,TCP选项支持和排序,IPID采样,和初始窗口大小检查,把结果和系统指纹库中超过1500个已知的操作系统的指纹进行比较,如果有匹配,则输出操作系统的详细信息。
本实施例提供的设备探测方法实现了自动化对指定网络范围的设备探测、漏洞发现和安全基线核查的工作,通过将目标设备的指纹与指纹库中的指纹进行匹配完成设备探测,使得探测更为精准,且缩短了探测时间,从而提高了设备自动化探测的效率。此外,设备探测工作针对电力行业添加了其特有的IEC104等协议,很大程度上满足了电力行业的场景要求。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的设备探测方法的设备探测装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个设备探测装置实施例中的具体限定可以参见上文中对于设备探测方法的限定,在此不再赘述。
在一个实施例中,如图4所示,提供了一种设备探测装置400,包括:获取模块402、初始探测模块404和再次探测模块406,其中:
获取模块402,用于获取目标网段内的多个设备地址。
初始探测模块404,用于基于多个设备地址进行设备初始探测,以确定处于存活状态的目标设备,并确定与目标设备对应的至少一个候选操作系统信息。
初始探测模块404,还用于确定与每个候选操作系统信息分别匹配的设备探测脚本。
再次探测模块406,用于运行至少一个探测脚本中的当前探测脚本,以向目标设备发送探测报文进行再次探测,若未接收到响应报文,则继续运行下一个探测脚本,直至接收到响应报文时停止;响应报文包括应用服务信息、探测操作系统信息和设备指纹信息中的至少一种。
再次探测模块406,还用于基于响应报文,确定与目标设备对应的设备探测信息。
在一个实施例中,再次探测模块406还用于对目标设备中的端口进行扫描,确定目标设备中的开放端口;向开放端口发送携带有目标参数的探测报文,以进行应用服务、操作系统和指纹探测,目标参数包括用于指示进行应用服务探测的第一参数、用于指示进行操作系统探测的第二参数和用于指示进行指纹探测的第三参数。
在一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,若响应报文中包括有应用服务信息、操作系统信息和设备指纹信息,再次探测模块406还用于基于设备指纹信息在指纹库中进行查询,得到对应的查询服务信息和查询操作系统信息;若应用服务信息与查询服务信息相匹配,则将应用服务信息作为目标应用服务信息,若探测操作系统信息与查询操作系统信息相匹配,则将探测操作系统信息作为目标操作系统信息。
在一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,设备探测装置400还包括漏洞发现模块,漏洞发现模块用于获取预先建立的漏洞规则,漏洞规则中包括应用服务信息与服务漏洞间的第一对应关系,以及操作系统信息与系统漏洞间的第二对应关系;根据目标应用服务信息和第一对应关系,确定与目标设备对应的服务漏洞,根据目标操作系统信息和第二对应关系,确定与目标设备对应的系统漏洞。
在一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,设备探测装置400还包括基线核查模块,基线核查模块用于基于目标操作系统信息发起基线核查指令;响应于基线核查指令登录目标设备;获取目标设备中,与目标应用服务信息所指向的应用服务对应的配置文件;将各配置文件中的安全配置信息与设备安全检查标准规范项进行对比,得到目标设备的风险程度。
在一个实施例中,基线核查模块还用于响应于基线核查指令,确定与目标设备对应的远程访问控制协议;基于远程访问控制协议和目标设备中的开放端口,通过口令扫描工具中预置的多组账户名和账户密码自动登录目标设备;在登录成功后获得目标设备的控制权限。
上述设备探测装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种设备探测方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:获取目标网段内的多个设备地址;基于多个设备地址进行设备初始探测,以确定处于存活状态的目标设备,并确定与目标设备对应的至少一个候选操作系统信息;确定与每个候选操作系统信息分别匹配的设备探测脚本;运行至少一个探测脚本中的当前探测脚本,以向目标设备发送探测报文进行再次探测,若未接收到响应报文,则继续运行下一个探测脚本,直至接收到响应报文时停止;响应报文包括应用服务信息、探测操作系统信息和设备指纹信息中的至少一种;基于响应报文,确定与目标设备对应的设备探测信息。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:对目标设备中的端口进行扫描,确定目标设备中的开放端口;向开放端口发送携带有目标参数的探测报文,以进行应用服务、操作系统和指纹探测,目标参数包括用于指示进行应用服务探测的第一参数、用于指示进行操作系统探测的第二参数和用于指示进行指纹探测的第三参数。
在一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,处理器执行计算机程序时还实现以下步骤:若响应报文中包括有应用服务信息、操作系统信息和设备指纹信息,则基于设备指纹信息在指纹库中进行查询,得到对应的查询服务信息和查询操作系统信息;若应用服务信息与查询服务信息相匹配,则将应用服务信息作为目标应用服务信息,若探测操作系统信息与查询操作系统信息相匹配,则将探测操作系统信息作为目标操作系统信息。
在一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,处理器执行计算机程序时还实现以下步骤:获取预先建立的漏洞规则,漏洞规则中包括应用服务信息与服务漏洞间的第一对应关系,以及操作系统信息与系统漏洞间的第二对应关系;根据目标应用服务信息和第一对应关系,确定与目标设备对应的服务漏洞,根据目标操作系统信息和第二对应关系,确定与目标设备对应的系统漏洞。
在一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,处理器执行计算机程序时还实现以下步骤:基于目标操作系统信息发起基线核查指令;响应于基线核查指令登录目标设备;获取目标设备中,与目标应用服务信息所指向的应用服务对应的配置文件;将各配置文件中的安全配置信息与设备安全检查标准规范项进行对比,得到目标设备的风险程度。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:响应于基线核查指令,确定与目标设备对应的远程访问控制协议;基于远程访问控制协议和目标设备中的开放端口,通过口令扫描工具中预置的多组账户名和账户密码自动登录目标设备;在登录成功后获得目标设备的控制权限。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取目标网段内的多个设备地址;基于多个设备地址进行设备初始探测,以确定处于存活状态的目标设备,并确定与目标设备对应的至少一个候选操作系统信息;确定与每个候选操作系统信息分别匹配的设备探测脚本;运行至少一个探测脚本中的当前探测脚本,以向目标设备发送探测报文进行再次探测,若未接收到响应报文,则继续运行下一个探测脚本,直至接收到响应报文时停止;响应报文包括应用服务信息、探测操作系统信息和设备指纹信息中的至少一种;基于响应报文,确定与目标设备对应的设备探测信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:对目标设备中的端口进行扫描,确定目标设备中的开放端口;向开放端口发送携带有目标参数的探测报文,以进行应用服务、操作系统和指纹探测,目标参数包括用于指示进行应用服务探测的第一参数、用于指示进行操作系统探测的第二参数和用于指示进行指纹探测的第三参数。
在一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,计算机程序被处理器执行时还实现以下步骤:若响应报文中包括有应用服务信息、操作系统信息和设备指纹信息,则基于设备指纹信息在指纹库中进行查询,得到对应的查询服务信息和查询操作系统信息;若应用服务信息与查询服务信息相匹配,则将应用服务信息作为目标应用服务信息,若探测操作系统信息与查询操作系统信息相匹配,则将探测操作系统信息作为目标操作系统信息。
在一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,计算机程序被处理器执行时还实现以下步骤:获取预先建立的漏洞规则,漏洞规则中包括应用服务信息与服务漏洞间的第一对应关系,以及操作系统信息与系统漏洞间的第二对应关系;根据目标应用服务信息和第一对应关系,确定与目标设备对应的服务漏洞,根据目标操作系统信息和第二对应关系,确定与目标设备对应的系统漏洞。
在一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,计算机程序被处理器执行时还实现以下步骤:基于目标操作系统信息发起基线核查指令;响应于基线核查指令登录目标设备;获取目标设备中,与目标应用服务信息所指向的应用服务对应的配置文件;将各配置文件中的安全配置信息与设备安全检查标准规范项进行对比,得到目标设备的风险程度。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:响应于基线核查指令,确定与目标设备对应的远程访问控制协议;基于远程访问控制协议和目标设备中的开放端口,通过口令扫描工具中预置的多组账户名和账户密码自动登录目标设备;在登录成功后获得目标设备的控制权限。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:获取目标网段内的多个设备地址;基于多个设备地址进行设备初始探测,以确定处于存活状态的目标设备,并确定与目标设备对应的至少一个候选操作系统信息;确定与每个候选操作系统信息分别匹配的设备探测脚本;运行至少一个探测脚本中的当前探测脚本,以向目标设备发送探测报文进行再次探测,若未接收到响应报文,则继续运行下一个探测脚本,直至接收到响应报文时停止;响应报文包括应用服务信息、探测操作系统信息和设备指纹信息中的至少一种;基于响应报文,确定与目标设备对应的设备探测信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:对目标设备中的端口进行扫描,确定目标设备中的开放端口;向开放端口发送携带有目标参数的探测报文,以进行应用服务、操作系统和指纹探测,目标参数包括用于指示进行应用服务探测的第一参数、用于指示进行操作系统探测的第二参数和用于指示进行指纹探测的第三参数。
在一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,计算机程序被处理器执行时还实现以下步骤:若响应报文中包括有应用服务信息、操作系统信息和设备指纹信息,则基于设备指纹信息在指纹库中进行查询,得到对应的查询服务信息和查询操作系统信息;若应用服务信息与查询服务信息相匹配,则将应用服务信息作为目标应用服务信息,若探测操作系统信息与查询操作系统信息相匹配,则将探测操作系统信息作为目标操作系统信息。
在一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,计算机程序被处理器执行时还实现以下步骤:获取预先建立的漏洞规则,漏洞规则中包括应用服务信息与服务漏洞间的第一对应关系,以及操作系统信息与系统漏洞间的第二对应关系;根据目标应用服务信息和第一对应关系,确定与目标设备对应的服务漏洞,根据目标操作系统信息和第二对应关系,确定与目标设备对应的系统漏洞。
在一个实施例中,设备探测信息包括目标应用服务信息和目标操作系统信息,计算机程序被处理器执行时还实现以下步骤:基于目标操作系统信息发起基线核查指令;响应于基线核查指令登录目标设备;获取目标设备中,与目标应用服务信息所指向的应用服务对应的配置文件;将各配置文件中的安全配置信息与设备安全检查标准规范项进行对比,得到目标设备的风险程度。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:响应于基线核查指令,确定与目标设备对应的远程访问控制协议;基于远程访问控制协议和目标设备中的开放端口,通过口令扫描工具中预置的多组账户名和账户密码自动登录目标设备;在登录成功后获得目标设备的控制权限。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种设备探测方法,其特征在于,所述方法包括:
获取目标网段内的多个设备地址;
基于所述多个设备地址进行设备初始探测,以确定处于存活状态的目标设备,并确定与所述目标设备对应的至少一个候选操作系统信息,其中,基于多个设备地址,向多个设备地址分别发送初始探测报文,初始探测报文携带有用于指示进行设备状态探测和候选操作系统探测的参数,并接收返回数据;若返回数据包括设备状态信息、初始探测操作系统信息和设备指纹信息,则根据设备状态信息确定与多个设备地址对应的设备中处于存活状态的设备,将处于存活状态的设备作为目标设备;并根据目标设备对应的设备指纹信息在指纹库中进行查询,将查询到的与初始探测操作系统信息的匹配度大于指定匹配度的操作系统信息确定为候选操作系统信息;
确定与每个候选操作系统信息分别匹配的设备探测脚本;
运行至少一个探测脚本中的当前探测脚本,以向所述目标设备发送探测报文进行再次探测,若未接收到响应报文,则继续运行下一个探测脚本,直至接收到响应报文时停止;所述响应报文包括应用服务信息、探测操作系统信息和设备指纹信息中的至少一种,其中,探测报文是用于对目标设备的应用服务信息和操作系统信息进行探测的报文;
基于所述响应报文,确定与所述目标设备对应的设备探测信息。
2.根据权利要求1所述的方法,其特征在于,所述向所述目标设备发送探测报文进行再次探测包括:
对所述目标设备中的端口进行扫描,确定所述目标设备中的开放端口;
向所述开放端口发送携带有目标参数的探测报文,以进行应用服务、操作系统和指纹探测,所述目标参数包括用于指示进行应用服务探测的第一参数、用于指示进行操作系统探测的第二参数和用于指示进行指纹探测的第三参数。
3.根据权利要求1所述的方法,其特征在于,所述设备探测信息包括目标应用服务信息和目标操作系统信息,所述基于所述响应报文,确定与所述目标设备对应的设备探测信息,包括:
若所述响应报文中包括有应用服务信息、操作系统信息和设备指纹信息,则基于所述设备指纹信息在指纹库中进行查询,得到对应的查询服务信息和查询操作系统信息;
若所述应用服务信息与所述查询服务信息相匹配,则将所述应用服务信息作为目标应用服务信息,若所述探测操作系统信息与所述查询操作系统信息相匹配,则将所述探测操作系统信息作为目标操作系统信息。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述设备探测信息包括目标应用服务信息和目标操作系统信息,所述方法还包括:
获取预先建立的漏洞规则,所述漏洞规则中包括应用服务信息与服务漏洞间的第一对应关系,以及操作系统信息与系统漏洞间的第二对应关系;
根据所述目标应用服务信息和所述第一对应关系,确定与所述目标设备对应的服务漏洞,根据所述目标操作系统信息和所述第二对应关系,确定与所述目标设备对应的系统漏洞。
5.根据权利要求1至3中任一项所述的方法,其特征在于,所述设备探测信息包括目标应用服务信息和目标操作系统信息,所述方法还包括:
基于所述目标操作系统信息发起基线核查指令;
响应于所述基线核查指令登录所述目标设备;
获取所述目标设备中,与所述目标应用服务信息所指向的应用服务对应的配置文件;
将各所述配置文件中的安全配置信息与设备安全检查标准规范项进行对比,得到所述目标设备的风险程度。
6.根据权利要求5所述的方法,其特征在于,所述响应于所述基线核查指令登录所述目标设备,包括:
响应于所述基线核查指令,确定与所述目标设备对应的远程访问控制协议;
基于所述远程访问控制协议和所述目标设备中的开放端口,通过口令扫描工具中预置的多组账户名和账户密码自动登录所述目标设备;
在登录成功后获得所述目标设备的控制权限。
7.一种设备探测装置,其特征在于,所述装置包括:
获取模块,用于获取目标网段内的多个设备地址;
初始探测模块,用于基于所述多个设备地址进行设备初始探测,以确定处于存活状态的目标设备,并确定与所述目标设备对应的至少一个候选操作系统信息,其中,基于多个设备地址,向多个设备地址分别发送初始探测报文,初始探测报文携带有用于指示进行设备状态探测和候选操作系统探测的参数,并接收返回数据;若返回数据包括设备状态信息、初始探测操作系统信息和设备指纹信息,则根据设备状态信息确定与多个设备地址对应的设备中处于存活状态的设备,将处于存活状态的设备作为目标设备;并根据目标设备对应的设备指纹信息在指纹库中进行查询,将查询到的与初始探测操作系统信息的匹配度大于指定匹配度的操作系统信息确定为候选操作系统信息;
所述初始探测模块,还用于确定与每个候选操作系统信息分别匹配的设备探测脚本;
再次探测模块,用于运行至少一个探测脚本中的当前探测脚本,以向所述目标设备发送探测报文进行再次探测,若未接收到响应报文,则继续运行下一个探测脚本,直至接收到响应报文时停止;所述响应报文包括应用服务信息、探测操作系统信息和设备指纹信息中的至少一种,其中,探测报文是用于对目标设备的应用服务信息和操作系统信息进行探测的报文;
所述再次探测模块,还用于基于所述响应报文,确定与所述目标设备对应的设备探测信息。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111622316.0A CN114499974B (zh) | 2021-12-28 | 2021-12-28 | 设备探测方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111622316.0A CN114499974B (zh) | 2021-12-28 | 2021-12-28 | 设备探测方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114499974A CN114499974A (zh) | 2022-05-13 |
CN114499974B true CN114499974B (zh) | 2023-12-19 |
Family
ID=81496460
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111622316.0A Active CN114499974B (zh) | 2021-12-28 | 2021-12-28 | 设备探测方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114499974B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116401138B (zh) * | 2023-06-08 | 2023-09-15 | 建信金融科技有限责任公司 | 操作系统的运行状态检测方法、装置、电子设备和介质 |
CN117560202A (zh) * | 2023-06-20 | 2024-02-13 | 荣耀终端有限公司 | 一种网络资产探测方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106888106A (zh) * | 2015-12-16 | 2017-06-23 | 国家电网公司 | 智能电网中的it资产大规模侦测系统 |
CN208227074U (zh) * | 2018-02-09 | 2018-12-11 | 鼎信信息科技有限责任公司 | 电力监控系统网络安全监测终端 |
CN109613899A (zh) * | 2018-12-21 | 2019-04-12 | 国家计算机网络与信息安全管理中心 | 一种基于配置表的工控系统安全风险评估的方法 |
CN110324310A (zh) * | 2019-05-21 | 2019-10-11 | 国家工业信息安全发展研究中心 | 网络资产指纹识别方法、系统及设备 |
CN113240258A (zh) * | 2021-04-30 | 2021-08-10 | 山东云天安全技术有限公司 | 一种工业资产探测方法、设备及装置 |
-
2021
- 2021-12-28 CN CN202111622316.0A patent/CN114499974B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106888106A (zh) * | 2015-12-16 | 2017-06-23 | 国家电网公司 | 智能电网中的it资产大规模侦测系统 |
CN208227074U (zh) * | 2018-02-09 | 2018-12-11 | 鼎信信息科技有限责任公司 | 电力监控系统网络安全监测终端 |
CN109613899A (zh) * | 2018-12-21 | 2019-04-12 | 国家计算机网络与信息安全管理中心 | 一种基于配置表的工控系统安全风险评估的方法 |
CN110324310A (zh) * | 2019-05-21 | 2019-10-11 | 国家工业信息安全发展研究中心 | 网络资产指纹识别方法、系统及设备 |
CN113240258A (zh) * | 2021-04-30 | 2021-08-10 | 山东云天安全技术有限公司 | 一种工业资产探测方法、设备及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN114499974A (zh) | 2022-05-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11025674B2 (en) | Cybersecurity profiling and rating using active and passive external reconnaissance | |
CN107302527B (zh) | 一种设备异常检测方法及装置 | |
CN114499974B (zh) | 设备探测方法、装置、计算机设备和存储介质 | |
CN107666413B (zh) | 用于测试被测设备的通信安全性的方法和装置 | |
CN109802953B (zh) | 一种工控资产的识别方法及装置 | |
WO2019144549A1 (zh) | 漏洞测试方法、装置、计算机设备和存储介质 | |
CN109376078B (zh) | 移动应用的测试方法、终端设备及介质 | |
CN110417778B (zh) | 访问请求的处理方法和装置 | |
CN107623698B (zh) | 远程调试网络设备方法和装置 | |
CN113489713B (zh) | 网络攻击的检测方法、装置、设备及存储介质 | |
CN108989355B (zh) | 一种漏洞检测方法和装置 | |
KR20170074959A (ko) | 신뢰된 단말기 검증 방법 및 장치 | |
US11481478B2 (en) | Anomalous user session detector | |
CN111431753A (zh) | 一种资产信息更新方法、装置、设备及存储介质 | |
CN110084011A (zh) | 一种用户操作的验证的方法及装置 | |
CN111541647B (zh) | 安全检测方法、装置、存储介质及计算机设备 | |
CN110943984B (zh) | 一种资产安全保护方法及装置 | |
US20230239293A1 (en) | Probe-based risk analysis for multi-factor authentication | |
JP2020004009A (ja) | 異常検知装置、および、異常検知方法 | |
CN105959294B (zh) | 一种恶意域名鉴别方法及装置 | |
CN114679292A (zh) | 基于网络空间测绘的蜜罐识别方法、装置、设备及介质 | |
CN112507319A (zh) | 一种NVMe-oF存储系统的数据安全保护方法及装置 | |
CN111245800A (zh) | 基于应用场景的工控网络的网络安全测试方法和装置 | |
CN114124531B (zh) | 基于旁路攻击模拟的网络防御体系风险评估方法、电子设备和存储介质 | |
CN114491555A (zh) | 设备安全检测方法、装置、计算机设备和存储介质 |
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 |