CN115630360A - 一种用于打印服务***及设备的自动化安全检测方法 - Google Patents
一种用于打印服务***及设备的自动化安全检测方法 Download PDFInfo
- Publication number
- CN115630360A CN115630360A CN202211097516.3A CN202211097516A CN115630360A CN 115630360 A CN115630360 A CN 115630360A CN 202211097516 A CN202211097516 A CN 202211097516A CN 115630360 A CN115630360 A CN 115630360A
- Authority
- CN
- China
- Prior art keywords
- function
- config
- control flow
- sink
- detection method
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
- G06F21/563—Static detection by source code analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1222—Increasing security of the print job
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Virology (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Human Computer Interaction (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明属于漏洞检测的技术领域,公开了一种用于打印服务***及设备的自动化安全检测方法,包括对打印机设备的固件进行解包处理;对固件解包后得到的文件***进行分析,定位其中的边界二进制;针对获得的边界二进制进行静态分析,发现其中与设备配置类操作相关的危险控制流;针对发现的危险控制流,使用符号执行技术进行路径探索和约束求解,通过污点分析验证漏洞是否满足触发的条件,最终给出警报。
Description
技术领域
本发明属于漏洞检测的技术领域,具体涉及一种用于打印服务***及设备的自动化安全检测方法。
背景技术
随着远程办公逐渐成为一种趋势,传统打印机逐渐被网络打印机取代,其携带大量敏感数据并且开放网络服务端口的特点,使其逐渐成为攻击者眼中极具价值的攻击目标。存在安全缺陷的打印机可能受到的攻击危害有:拒绝服务、打印任务控制、信息泄露、任意代码执行等,但针对打印机的安全研究却没有得到充分的重视,还未有专门针对打印服务的自动化安全分析方法。
为此,本发明设计并实现了一套针对打印服务***及设备的自动化安全检测方法,能够自动化地发现打印机设备固件程序中存在的安全问题。
发明内容
本发明提供一种用于打印服务***及设备的自动化安全检测方法,能够有效地检测出打印机等嵌入式***固件中存在的缓冲区溢出和命令注入漏洞,提高安全性。
本发明可通过以下技术方案实现:
一种用于打印服务***及设备的自动化安全检测方法,包括以下步骤:
S1,对打印机设备的固件进行解包处理;
S2,对固件解包后得到的文件***进行分析,定位其中的边界二进制;
S3,针对获得的边界二进制进行静态分析,发现其中与设备配置类操作相关的危险控制流;
S4,针对发现的危险控制流,使用符号执行技术进行路径探索和约束求解,通过污点分析验证漏洞是否满足触发的条件,最终给出警报。
进一步,把从网络通信数据包中获取的设备配置数据存储起来的函数定义为配置设定函数config_setter,把查找并读取先前存储设备配置数据的函数定义为配置读取函数config_getter,
建立包含source、sink、config_setter和config_getter函数的函数列表,基于函数调用图,利用静态分析方法,以接收外界数据的source函数为起点,寻找含有sink函数的函数调用路径,过程中会将从source函数到config_setter、从config_getter函数到sink函数的控制流拼接在一起,从而识别出边界二进制中与设备配置类操作相关的控制流即为危险控制流。
进一步,若所述sink函数的参数为常量字符串,借助Ghidra软件分析工具中SymbolicPropogator类中的成员函数getRegisterValue,计算sink函数的参数对应寄存器的值是否指向常量字符串所在的地址,若是,则认定所述sink函数所在的控制流不是危险控制流。
进一步,对于危险控制流,对于危险控制流,建立一个包含config_setter函数和config_getter函数调用的虚拟节点,将被数据共享操作中断的两处控制流联系起来,再使用动态符号执行技术进行路径探索和约束求解。
进一步,采用基于Angr框架的动态符号执行技术,在进行路径探索时,将程序按基本块划分,初始状态下将ip寄存器设置为危险控制流中source调用点所在函数的第一个基本块的地址,然后不断进行单步执行,直至完成所有基本块的探索;
(1)当ip寄存器的内容包含有符号变量时,判断符号变量是否带有污点属性,若是,则将当前函数调用的所有参数都进行污点标记;若否,则直接跳过;
(2)当后继基本块的地址小于等于当前基本块的地址时,则判断此时符号执行过程中遇到了循环结构,再判断循环次数是否达到预设值,若达到,则跳出循环结构,继续下一个基本块探索。
进一步,通过对通信函数的调用和对协议字符串的引用来识别边界二进制,判断标准设置为对于每个二进制文件,将通信函数调用次数记为nc,将协议字符串引用次数记为ns,初始值都为零,先检查代码段中每个函数调用指令的目的地址,如果调用的函数在规定的通信函数列表中,若有,则nc=nc+1;再检查数据段中的字符串是否在规定的协议字符串中,若有,则ns=ns+协议字符串的交叉引用数;最后根据计算score=(1+kc*nc)*(1+ks*ns),其中kc=3,ks=1,将score值最高的二进制文件作为边界二进制。
本发明有益的技术效果如下:
采用本发明提供的针对打印服务***及设备的自动化安全检测方法,能够有效地检测出打印机等嵌入式***固件中存在的缓冲区溢出和命令注入漏洞。与现有的其他分析方法相比,本发明创新性地总结了物联网设备在进行设备配置操作时的特点,能够有效处理数据共享函数将安全敏感控制流打断的问题,同时针对网络打印服务的一些特点进行了优化。整个自动化分析过程的时间开销较为合理,能够为漏洞挖掘工作节省大量的人工分析成本。
附图说明
图1为本发明提供的总体流程示意图;
图2为本发明提供的总体结构示意图;
图3为本发明提供的函数调用图的示意图。
具体实施方式
下面结合附图及较佳实施例详细说明本发明的具体实施方式。
打印机等嵌入式***除了存在与PC平台上类似的通用类型漏洞,还特别存在一类由设备配置操作(device setting)导致的安全漏洞。在管理和使用物联网设备时,常常需要对设备进行一些参数配置,比如DNS服务器地址的设置、打印服务网络端口号的设置等,正常情况下,***会使用认证或授权机制对管理设备的用户进行限制,但如果***接收数据前的认证不充分,并且不安全地使用了攻击者精心构造的设备配置数据,就可能导致命令注入和缓存区溢出等安全问题。
基于对上述设备配置类漏洞特点的充分总结,本发明设计了一套能够对打印服务***及设备进行自动化安全分析的技术方案,如图1-2所示,包括如下步骤:
步骤S1,对打印机设备的固件进行解包处理,可借助Binwalk框架来完成固件解包工作。
Binwalk是目前广泛使用的固件解包工具,能够扫描固件映像,并识别常见嵌入式文件格式和文件***,进而提取出固件中的各个文件,供进一步分析使用,可在代码中直接调用“binwalk-Me$firmware”命令,其中“-e”的选项表示自动提取固件中已知的文件类型,“-M”选项表示递归地扫描已提取的文件,这样Binwalk会不断地解包子文件,直到所有文件均被提取出来为止。但Binwalk只支持大部分常见格式的解析,部分固件会采用厂商自定义的格式,因此还需要在Binwalk的基础上进行扩展,以支持对一些特殊固件格式的解析,比如HP的BDL格式的固件、Xerox的DLM格式的固件等。总之,再在进行“固件解包模块”时,首先识别固件的格式是否属于本发明支持的特殊格式,如果是,就直接对其进行针对性的解包操作;如果识别失败,就再交给Binwalk进行通用的自动化解包处理,这样可以准确地提取固件中的二进制文件,供下一步分析使用。
步骤S2,对固件解包后得到的文件***进行分析,定位其中的边界二进制;
通过对通信函数的调用和对协议字符串的引用来识别边界二进制。
在判断时主要基于以下标准:对于每个二进制文件,将通信函数调用次数记为nc,将协议字符串引用次数记为ns,初始值都为零,先检查代码段中每个函数调用指令的目的地址,如果调用的函数在规定的通信函数列表中,若有,则nc=nc+1;再检查数据段中的字符串是否在规定的协议字符串中,若有,则ns=ns+协议字符串的交叉引用数;最后根据计算score=(1+kc*nc)*(1+ks*ns),其中kc=3,ks=1,将score值最高的二进制文件作为边界二进制。具体如下:
如果一个二进制程序既调用了通信函数,又在代码段引用了协议字符串,就优先将其视作边界二进制。
对于不符合上述条件的二进制,按通信函数调用的次数排序,调用次数越多就越有可能是边界二进制;在没有函数符号信息的情况下,按协议字符串引用的次数将各个二进制排序,引用次数越多就越有可能是边界二进制。
步骤S3,针对获得的边界二进制程序进行静态分析,发现其中与设备配置类操作相关的危险控制流,该过程能够有效地把被数据共享操作中断的控制流拼接起来,进行更完善的安全分析,其中数据共享操作是指基于NVRAM、环境变量、配置文件等途径的数据set/get操作。该分析过程可以基于Ghidra逆向框架实现,以发现潜在的漏洞触发路径即危险控制流。
具体地,建立包含source、sink、config_setter和config_getter函数的函数列表,基于函数调用图,利用静态分析方法,以接收外界数据的source函数为起点,寻找含有sink函数的函数调用路径,过程中会将从source函数到config_setter、从config_getter函数到sink函数的控制流拼接在一起,从而识别出边界二进制中与设备配置类操作相关的危险控制流。
现有的针对嵌入式***固件进行安全检测的方法,一般以接收外界数据的source函数调用为起点,借助构建的函数调用图,来检查其是否存在对sink函数直接或间接的调用。但是有些情况下,污点源数据和安全敏感操作之间并不是一条连续的函数调用路径,数据共享类的函数会中断二者之间的控制流,现有的检测方法无法有效处理此类复杂情况。为此,本发明创新性地总结了设备配置相关控制流的特点,把从网络通信数据包中获取的配置数据存储起来的函数定义为配置设定函数(config_setter),把查找并读取先前存储设备配置数据的函数定义为配置读取函数(config_getter),以此构建函数调用图。程序在实现设备配置功能时,会先由source函数获取外部数据,然后用配置设定函数将这些数据存储起来;在另一条控制流中,通过配置读取函数获取配置数据,再在进行具体配置的过程中调用一些sink函数。对于这种情况,本发明会将source到config_setter的控制流和config_getter到sink的控制流进行拼接,并进行安全分析,这样能够更全面地发现潜在的漏洞,从而得到准确的检测结果。
在Ghidra脚本检测危险调用路径前,应该先确定检测过程中需要重点关注的函数列表,包括source、sink、config_setter和config_getter这四类函数,其中,后两类函数是进行设备配置数据读写的函数,程序通常会通过以下几个途径进行数据共享,对设备进行参数配置:
(1)NVRAM:这是一种断电后仍能长久保存数据的一种非易失性存储器,常常用来存储设备设置以及用户的一些敏感信息。程序在接收配置参数后,可通过nvram_set类函数存储数据;进行设备配置操作前,再通过nvram_get类函数获取配置参数进行操作。
(2)环境变量:操作***会用环境变量来指定运行环境的一些参数,如临时文件夹路径等。程序可以通过set_env之类的函数设置环境变量值,再通过get_env获取操作***的环境信息,进而对设备进行配置。
(3)配置文件:嵌入式***服务程序也经常用文件记录的一些配置参数,此类文件常以“.conf”为后缀结尾。通过fread、fwrite等文件读写函数,设备的服务程序可以获取相关配置参数并进行设置。
上述每种设备配置方式的读、写操作往往成对出现,可通过其在函数调用时使用的关键字字符串进行匹配,将其联系起来,从而发现更多受外部数据间接影响的安全敏感操作。
基于函数调用图,安全分析脚本从source函数调用点开始,以深度优先搜索的方式进行探索。遍历过程中,如果遇到sink函数就直接输出危险调用路径;如果遇到配置设定函数config_setter,就需要处理由配置设定和配置读取导致的控制流转移问题,即从对应的配置读取函数config_getter再进行函数调用图的探索,直到找到sink函数调用。最后将source到config_setter和config_getter到sink这两条控制流拼接起来,得到形式如“source→…→config_setter→config_getter→…→sink”的函数调用路径信息,作为一整条危险路径输出。
检测过程中,还需要筛选掉sink函数的参数为常量字符串的情况,这种sink调用一般不会引发安全问题。
当函数参数是一个较复杂的表达式时,利用静态分析判断其参数是否为常量具有一定的难度,而Ghidra提供了一个SymbolicPropogator的类,借助它的成员函数getRegisterValue,可以计算出参数寄存器中的值,如果该值是指向数据段某常量字符串的地址,那么就可以认为当前sink函数调用不具有危险性。
另外,通常一处source函数的调用会存在多条可以到达sink函数的危险路径,根据source函数调用地址对得到的控制流分类,每条危险调用路径都以如下形式进行记录:[source-call-site]:(call-site,callee)→(call-site,callee)→…→(call-site,sink)。检测过程中生成的函数调用图以JSON文件的形式存储到本地,后续再进行分析时就可以节省时间。
步骤S4,针对发现的危险控制流,使用动态符号执行技术进行路径探索和约束求解,通过污点分析验证漏洞是否满足触发的条件,最终给出警报。
基于二进制分析框架Angr实现,其对前面得到的设备配置类的危险控制流进行污点分析,精确地验证漏洞是否存在,如sink函数的参数是否使用的是外界输入数据、路径约束能否满足等。大致分析流程为:首先根据前面静态分析得到的source函数调用点,将接收的数据标记为污点源;其次,结合前面得到的控制流信息进行污点传播,实现具体的数据流分析;传播过程中遇到sink函数的调用后,就判定其参数是否受输入的污点变量的影响,以及当前位置是否满足漏洞利用的条件,最后给出警报。
对于危险控制流,对于危险控制流,建立一个包含config_setter函数和config_getter函数调用的虚拟节点,将被数据共享操作中断的两处控制流联系起来,再使用动态符号执行技术进行路径探索和约束求解。
由于设备配置类的危险控制流中,根据常量字符串匹配到的config_setter和config_getter函数之间实际上并没有函数调用或跳转的关系,因此需要创建一个虚拟节点将前后的函数调用关系连接起来,该虚拟节点同时包含配置设定和配置读取的操作。完成该项操作后,就可以进行常规的符号化探索了。
动态符号执行的初始状态设置比较简单,将ip寄存器设置为source调用点所在函数的第一个基本块的地址即可,Angr框架会自动设置sp寄存器的栈顶地址。通过step()函数开始单步执行后,会遇到调用source函数call指令,根据source函数类型确定某个参数或返回值是污点源后,通过调用apply_taint函数将输入数据符号化,进行污点源标记,即将带有“taint”污点标记的符号变量存储到输入数据对应的内存地址中。
在进行符号化路径探索时以基本块(Basic Block)为单位执行程序,每个执行状态都对应一个基本块,以source点所在函数的第一个基本块为起始执行状态,不断地进行单步执行,基本块之间的跳转方式有条件跳转、无条件跳转、函数调用、函数返回这几种,遇到有多个后继状态的情况时就依次选择后继状态执行,如此递归向下探索,直到覆盖所有的分支。每检测到一个基本块,首先检查其能否满足路径约束条件,不满足就结束当前路径下的探索,如果当前基本块调用了sink函数且具备触发漏洞的条件,则也会结束探索并发出警报。
如果当前基本块调用的是配置设定函数(config_setter),那么就需要将执行状态转移到其对应的虚拟节点,该虚拟节点中又会根据当前的执行情况,将执行状态转移到对应配置读取函数(config_getter)后面的代码。
对于一个setter对应多个getter的情况,符号执行引擎会依次探索每一个getter对应的函数调用子图。在进行状态转移时,既需要将ip寄存器设为对应getter函数的调用地址;又需要收集setter处配置数据的约束,将其加到getter函数返回指针指向的数据上,以准确地传播污点属性。
本发明还考虑到了执行过程中的一些特殊情况,如符号化的跳转地址和对循环的处理,具体如下:
(1)当ip寄存器的内容包含有符号变量时,符号执行引擎可能会不知道接下来应该执行哪一条指令,因为ip寄存器中不是一条具体的地址值,Angr将这种情况称为unconstrained state,符号化探索遇到这种状态应直接跳过,但如果ip寄存器中的符号变量是带有污点属性的,那么就应该对当前函数调用的所有参数都进行污点标记。
(2)当后继基本块的地址小于等于当前基本块的地址时,基本可以判断符号执行的过程中遇到了循环结构。可以通过后向跳转前后的地址,记录该循环结构执行的次数,然后给定预设值,当同一个循环体执行次数超过该预设值后,就不再执行了,这样可以防止符号化探索陷入无限循环中。
在探索到sink函数后,就需要验证漏洞是否满足触发的条件,即sink函数的参数是否受污点源影响。对于缓冲区溢出漏洞,除了要求源数据带有污点标记,还要能够计算缓冲区的长度,确保源数据的长度大于目的缓冲区的容量,计算方法如下。
(1)栈缓冲区长度计算:给定一个函数,首先遍历其函数体的所有指令,记录每处局部变量引用的地址偏移,然后将这些地址偏移按升序排列得到offset_list。计算偏移A处变量的大小时,到offset_list中找到该变量下一个变量对应的偏移B,两个地址值做差即可得到栈变量的大小。
(2)堆缓冲区长度计算:给定一个堆缓冲区的地址addr,需要从可能分配该堆变量的函数的入口点处开始进行符号执行,对addr进行污点标记。每遇到一处malloc函数,检查其返回值是否指向污点数据,如果是,就说明当前堆内存分配的操作对应目标堆缓冲区。对malloc的参数进行约束求解,得到的具体值即为堆缓冲区的大小。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,因此,本发明的保护范围由所附权利要求书限定。
Claims (6)
1.一种用于打印服务***及设备的自动化安全检测方法,其特征在于包括以下步骤:
S1,对打印机设备的固件进行解包处理;
S2,对固件解包后得到的文件***进行分析,定位其中的边界二进制;
S3,针对获得的边界二进制进行静态分析,发现其中与设备配置类操作相关的危险控制流;
S4,针对发现的危险控制流,使用符号执行技术进行路径探索和约束求解,通过污点分析验证漏洞是否满足触发的条件,最终给出警报。
2.根据权利要求1所述的用于打印服务***及设备的自动化安全检测方法,其特征在于:把从网络通信数据包中获取的设备配置数据存储起来的函数定义为配置设定函数config_setter,把查找并读取先前存储设备配置数据的函数定义为配置读取函数config_getter,
建立包含source、sink、config_setter和config_getter函数的函数列表,基于函数调用图,利用静态分析方法,以接收外界数据的source函数为起点,寻找含有sink函数的函数调用路径,过程中会将从source函数到config_setter、从config_getter函数到sink函数的控制流拼接在一起,从而识别出边界二进制中与设备配置类操作相关的控制流即为危险控制流。
3.根据权利要求2所述的用于打印服务***及设备的自动化安全检测方法,其特征在于:若所述sink函数的参数为常量字符串,可借助Ghidra软件分析工具中SymbolicPropogator类中的getRegisterValue等成员函数,计算sink函数参数对应寄存器的值是否指向常量字符串所在的地址,若是,则认定所述sink函数所在的控制流不是危险控制流。
4.根据权利要求2所述的用于打印服务***及设备的自动化安全检测方法,其特征在于:对于危险控制流,建立一个包含config_setter函数和config_getter函数调用的虚拟节点,将被数据共享操作中断的两处控制流联系起来,再使用动态符号执行技术进行路径探索和约束求解。
5.根据权利要求4所述的用于打印服务***及设备的自动化安全检测方法,其特征在于:采用基于Angr框架的动态符号执行技术,在进行路径探索时,将程序按基本块划分,初始状态下将ip寄存器设置为危险控制流中source调用点所在函数的第一个基本块的地址,然后不断进行单步执行,直至完成所有基本块的探索;
(1)当ip寄存器的内容包含有符号变量时,判断符号变量是否带有污点属性,若是,则将当前函数调用的所有参数都进行污点标记;若否,则直接跳过;
(2)当后继基本块的地址小于等于当前基本块的地址时,则判断此时符号执行过程中遇到了循环结构,再判断循环次数是否达到预设值,若达到,则跳出循环结构,继续下一个基本块探索。
6.根据权利要求1所述的用于打印服务***及设备的自动化安全检测方法,其特征在于:通过对通信函数的调用和对协议字符串的引用来识别边界二进制,判断标准设置为对于每个二进制文件,将通信函数调用次数记为nc,将协议字符串引用次数记为ns,初始值都为零,先检查代码段中每个函数调用指令的目的地址,如果调用的函数在规定的通信函数列表中,若有,则nc=nc+1;再检查数据段中的字符串是否在规定的协议字符串中,若有,则ns=ns+协议字符串的交叉引用数;最后根据计算score=(1+kc*nc)*(1+ks*ns),其中kc=3,ks=1,将score值最高的二进制文件作为边界二进制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211097516.3A CN115630360A (zh) | 2022-09-08 | 2022-09-08 | 一种用于打印服务***及设备的自动化安全检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211097516.3A CN115630360A (zh) | 2022-09-08 | 2022-09-08 | 一种用于打印服务***及设备的自动化安全检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115630360A true CN115630360A (zh) | 2023-01-20 |
Family
ID=84902816
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211097516.3A Pending CN115630360A (zh) | 2022-09-08 | 2022-09-08 | 一种用于打印服务***及设备的自动化安全检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115630360A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117195241A (zh) * | 2023-11-08 | 2023-12-08 | 蔚来汽车科技(安徽)有限公司 | 固件漏洞的检测方法、设备和介质 |
-
2022
- 2022-09-08 CN CN202211097516.3A patent/CN115630360A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117195241A (zh) * | 2023-11-08 | 2023-12-08 | 蔚来汽车科技(安徽)有限公司 | 固件漏洞的检测方法、设备和介质 |
CN117195241B (zh) * | 2023-11-08 | 2024-02-02 | 蔚来汽车科技(安徽)有限公司 | 固件漏洞的检测方法、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101661543B (zh) | 软件源代码安全漏洞的检测方法及检测装置 | |
US8516589B2 (en) | Apparatus and method for preventing virus code execution | |
CN111695119B (zh) | 一种基于细粒度静态污点分析与符号执行的web漏洞检测方法 | |
US8713680B2 (en) | Method and apparatus for modeling computer program behaviour for behavioural detection of malicious program | |
CN113497809B (zh) | 基于控制流和数据流分析的mips架构漏洞挖掘方法 | |
US11568044B2 (en) | Method and apparatus for vetting universal serial bus device firmware | |
US8543528B2 (en) | Exploitation of transition rule sharing based on short state tags to improve the storage efficiency | |
WO2020019490A1 (zh) | 一种接口测试方法、电子设备及存储介质 | |
CN104346148A (zh) | 获取程序性能消耗信息的方法、装置及*** | |
CN114996126B (zh) | 一种针对eosio智能合约的漏洞检测方法及*** | |
JP6282217B2 (ja) | 不正プログラム対策システムおよび不正プログラム対策方法 | |
CN114065196A (zh) | Java内存马检测方法、装置、电子设备与存储介质 | |
CN111709026B (zh) | 静态安全检测方法、装置、计算机设备和存储介质 | |
CN113312618A (zh) | 程序漏洞检测方法、装置、电子设备及介质 | |
CN115630360A (zh) | 一种用于打印服务***及设备的自动化安全检测方法 | |
US20190243976A1 (en) | System and method for categorization of .net applications | |
US10782945B1 (en) | Escape analysis supporting on-stack replacement | |
CN113626823B (zh) | 一种基于可达性分析的组件间交互威胁检测方法及装置 | |
EP3121750A1 (en) | System and method for antivirus checking of native images of software assemblies | |
CN115795489B (zh) | 一种基于硬件级进程跟踪的软件漏洞静态分析方法及装置 | |
CN106557572A (zh) | 一种安卓应用程序文件的提取方法及*** | |
CN114510723B (zh) | 一种智能合约权限管理漏洞检测方法及装置 | |
CN116170186A (zh) | 基于网络流量分析的攻击代码在线检测方法和装置 | |
KR20190055776A (ko) | 바이너리에 대한 보안 취약점 및 그 원인 위치의 식별 방법 및 그 장치 | |
KR102324950B1 (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 |