Determining whether method of computer program is a validator
    31.
    发明申请
    Determining whether method of computer program is a validator 失效
    确定计算机程序的方法是否为验证程序

    公开(公告)号:US20120131669A1

    公开(公告)日:2012-05-24

    申请号:US12950432

    申请日:2010-11-19

    IPC分类号: G06F21/00

    CPC分类号: G06F21/50 G06F21/563

    摘要: An illegal pattern and a computer program having a method are received. The method has one or more return statements, and a number of basic blocks. The method is normalized so that each return statement of the target method relating to the illegal pattern returns a constant Boolean value. A first path condition and a second path condition for one or more corresponding paths is determined such that one or more corresponding basic blocks return a constant Boolean value of true for the first path condition and a constant Boolean value of false for the second path condition. An unsatisfiability of each path condition is determined using a monadic second-order logic (M2L) technique. Where the unsatisfiability of either path condition is false, the method is reported as not being a validator. Where the unsatisfiability of either path condition is true, the method is reported as being a validator.

    摘要翻译: 接收到具有方法的非法模式和计算机程序。 该方法具有一个或多个返回语句和一些基本块。 该方法被归一化,使得与非法模式相关的目标方法的每个返回语句返回一个常量布尔值。 确定用于一个或多个对应路径的第一路径条件和第二路径条件,使得一个或多个对应的基本块返回针对第一路径条件的常数布尔值为true,对于第二路径条件返回常量布尔值为假。 使用一元二阶逻辑(M2L)技术确定每个路径条件的不满足性。 如果任一路径条件的不满足性为假,则将该方法报告为不是验证器。 如果任一路径条件的不满足性为真,则将该方法报告为验证器。

    Using a heuristically-generated policy to dynamically select string analysis algorithms for client queries
    32.
    发明授权
    Using a heuristically-generated policy to dynamically select string analysis algorithms for client queries 失效
    使用启发式生成的策略来动态选择客户端查询的字符串分析算法

    公开(公告)号:US08751422B2

    公开(公告)日:2014-06-10

    申请号:US13270732

    申请日:2011-10-11

    IPC分类号: G06N5/00

    CPC分类号: G06N5/00

    摘要: A method for dynamically selecting string analysis algorithms can begin with the training of the dynamic string analysis handler of a string analysis module to effectively handle a subset of string queries having contextual metadata received from a client application in an instructional environment. The effectiveness of the training module can be based upon feedback from the client application. Upon completion of the training, a string analysis algorithm selection policy can be synthesized. The string analysis algorithm selection policy can correlate a context of a string query in the subset to the usage of a string analysis algorithm. When in the operational environment, the dynamic string analysis handler can dynamically handle string queries having contextual metadata received from the client application in accordance with the string analysis algorithm selection policy. The string analysis algorithm to be used for a string query can be dynamically and independently determined.

    摘要翻译: 用于动态选择字符串分析算法的方法可以开始于字符串分析模块的动态字符串分析处理程序的训练,以有效地处理在教学环境中从客户端应用程序接收的具有上下文元数据的字符串查询的子集。 培训模块的有效性可以基于客户端应用程序的反馈。 完成培训后,可以合成字符串分析算法选择策略。 字符串分析算法选择策略可以将子集中的字符串查询的上下文与字符串分析算法的使用相关联。 在操作环境中,动态字符串分析处理程序可以根据字符串分析算法选择策略来动态地处理具有从客户端应用程序接收的上下文元数据的字符串查询。 用于字符串查询的字符串分析算法可以动态和独立地确定。

    Identification of read/write chains during static analysis of computer software
    34.
    发明授权
    Identification of read/write chains during static analysis of computer software 有权
    在计算机软件的静态分析期间识别读/写链

    公开(公告)号:US08533694B2

    公开(公告)日:2013-09-10

    申请号:US12129894

    申请日:2008-05-30

    IPC分类号: G06F9/45 G06F7/00 G06F17/30

    CPC分类号: G06F8/433

    摘要: A system for identifying read/write chains in computer software, including a static analysis engine identifying within computer software logical container accesses, a string analyzer configured to at least partly resolve any variables identifying the logical container in any of the accesses by determining a set of potential values of any of the variables, and a Logical Container Access Virtualization component (LCAV) configured to identify the type and scope of any permutations of the accesses, where each of the permutations is defined by substituting any of the potential values for any of the access variables, and identify any read/write chains within the computer software by matching any of the access permutations that read from the logical container with any of the access permutations that write to the logical container if there is an intersection between the scopes of the read and write access permutations.

    摘要翻译: 一种用于识别计算机软件中的读/写链的系统,包括在计算机软件逻辑容器访问内识别的静态分析引擎,串行分析器,其被配置为至少部分地解析任何访问中识别逻辑容器的任何变量, 任何变量的潜在值和逻辑容器访问虚拟化组件(LCAV),其被配置为识别访问的任何排列的类型和范围,其中每个排列通过将任何潜在值替换为任何 访问变量,并通过将从逻辑容器读取的任何访问排列与写入逻辑容器的任何访问排列进行匹配,以识别计算机软件中的任何读/写链,如果读取范围之间存在交集 并写入访问排列。

    System, method, and program for determining validity of string
    35.
    发明授权
    System, method, and program for determining validity of string 失效
    用于确定字符串有效性的系统,方法和程序

    公开(公告)号:US08365280B2

    公开(公告)日:2013-01-29

    申请号:US12825610

    申请日:2010-06-29

    IPC分类号: G06F11/00

    摘要: A computer-implemented method, program product, and system for determining the validity of a string generated by a computer programming language program. The method includes: abstracting a constraint between variables extracted from a source code for a programming language, describing the constraint in M2L, and storing the constraint; and evaluating the validity of the string on an M2L solver on the basis of the constraint and a M2L specification to determine whether the string is safe or unsafe.

    摘要翻译: 用于确定由计算机程序设计语言程序生成的字符串的有效性的计算机实现的方法,程序产品和系统。 该方法包括:从用于编程语言的源代码提取的变量之间抽取约束,描述M2L中的约束,并存储该约束; 并基于约束和M2L规范来评估M2L求解器上的字符串的有效性,以确定字符串是安全还是不安全。

    String analysis based on three-valued logic
    36.
    发明授权
    String analysis based on three-valued logic 有权
    基于三值逻辑的字符串分析

    公开(公告)号:US08898188B2

    公开(公告)日:2014-11-25

    申请号:US13154986

    申请日:2011-06-07

    IPC分类号: G06F17/30 G06F11/36

    CPC分类号: G06F11/3608 G06F2201/81

    摘要: Performing string analysis based on three-valued logic by including expressing a property of a string in a computer software application as a three-valued logic shape predicate, performing a three-valued logic shape analysis using the shape predicate to reach a fixpoint solution, and evaluating the fixpoint solution to determine a three-valued logic value of the property.

    摘要翻译: 通过将计算机软件应用程序中的字符串的属性表示为三值逻辑形状谓词来执行基于三值逻辑的字符串分析,使用形状谓词执行三值逻辑形状分析以达到固定点解决方案,以及 评估fixpoint解决方案以确定属性的三值逻辑值。

    Static analysis of validator routines
    37.
    发明授权
    Static analysis of validator routines 失效
    验证程序的静态分析

    公开(公告)号:US08726246B2

    公开(公告)日:2014-05-13

    申请号:US13109170

    申请日:2011-05-17

    IPC分类号: G06F9/44

    摘要: A method includes accessing a validator routine having an input string and one or more return points, each return point returning a return value having two possible values; finding the return points in the validator routine; for each of the return points, performing a backwards traversal from a return point through a code section and determining constraints on the input string based at least on one or both of the two possible return values for the return point; using the determined constraints for the input string, determining whether all of the return values returned from the one or more return points meet validation constraints; and outputting one or more indications of whether all of the returned values returned from the return points meet the validation constraints for the one or both of the two possible return values. Apparatus and computer program products are also disclosed.

    摘要翻译: 一种方法包括访问具有输入字符串和一个或多个返回点的验证器程序,每个返回点返回具有两个可能值的返回值; 找到验证程序的返回点; 对于每个返回点,通过代码部分从返回点执行向后遍历,并且基于返回点的两个可能返回值中的至少一个或两个来确定对输入字符串的约束; 使用确定的输入字符串的约束,确定从一个或多个返回点返回的所有返回值是否满足验证约束; 并且输出一个或多个指示是否从返回点返回的所有返回值是否满足两个可能返回值中的一个或两个的验证约束。 还公开了装置和计算机程序产品。

    LABEL-BASED TAINT ANALYSIS
    38.
    发明申请
    LABEL-BASED TAINT ANALYSIS 失效
    基于标签的分析

    公开(公告)号:US20120210432A1

    公开(公告)日:2012-08-16

    申请号:US13028237

    申请日:2011-02-16

    IPC分类号: G06F11/00 G06F9/44

    CPC分类号: G06F11/3604

    摘要: A computer-implemented method and apparatus, adapted to receive a computer program, and dynamically analyze the computer program to determine flow of untrusted data with respect to a computer resource associated with the computer program. Based on the flow of untrusted data, the method and apparatus determine an abstraction of the computerized resource, and performing static analysis of the computer program with respect to the abstraction, wherein the static analysis is for identifying whether the computer program is susceptible to one or more possible security vulnerabilities.

    摘要翻译: 一种计算机实现的方法和装置,适于接收计算机程序,并且动态分析所述计算机程序以确定相对于与所述计算机程序相关联的计算机资源的不受信任数据的流动。 基于不可信数据的流程,该方法和装置确定计算机化资源的抽象,并且针对抽象执行计算机程序的静态分析,其中静态分析用于识别计算机程序是否易受一个或多个 更多可能的安全漏洞。

    Global Variable Security Analysis
    39.
    发明申请
    Global Variable Security Analysis 失效
    全局变量安全分析

    公开(公告)号:US20120131670A1

    公开(公告)日:2012-05-24

    申请号:US12951435

    申请日:2010-11-22

    IPC分类号: G06F21/00

    摘要: A method includes determining selected global variables in a program for which flow of the selected global variables through the program is to be tracked. The selected global variables are less than all the global variables in the program. The method includes using a static analysis performed on the program, tracking flow through the program for the selected global variables. In response to one or more of the selected global variables being used in security-sensitive operations in the flow, use is analyzed of each one of the selected global variables in a corresponding security-sensitive operation. In response to a determination the use may be a potential security violation, the potential security violation is reported. Apparatus and computer program products are also disclosed.

    摘要翻译: 一种方法包括确定在所述程序中选择的全局变量,通过所述程序,所选择的全局变量的流程将被跟踪。 所选的全局变量小于程序中的所有全局变量。 该方法包括使用对程序执行的静态分析,跟踪所选择的全局变量的程序流程。 响应于在流中的安全敏感操作中使用的一个或多个所选择的全局变量,在相应的安全敏感操作中对所选择的全局变量中的每一个进行分析。 为了回应确定,使用可能是潜在的安全违规,报告潜在的安全违规。 还公开了装置和计算机程序产品。

    Interactive analysis of a security specification
    40.
    发明授权
    Interactive analysis of a security specification 有权
    交互式分析安全规范

    公开(公告)号:US08875297B2

    公开(公告)日:2014-10-28

    申请号:US13448029

    申请日:2012-04-16

    摘要: Analyzing a security specification. An embodiment can include identifying a downgrader in a computer program under test. Via a processor, testing on the downgrader can be performed in a first level of analysis. Responsive to the downgrader not passing the testing performed in the first level of analysis, a counter example for the downgrader can be automatically synthesized. Further, a test unit can be created for the downgrader using the counter example as an input parameter to the downgrader. The test unit can be executed to perform testing on the downgrader in a second level of analysis. Responsive to the downgrader passing the testing performed in the second level of analysis, a user can be prompted to simplify a model of the downgrader.

    摘要翻译: 分析安全规范。 一个实施例可以包括识别被测试的计算机程序中的降级器。 通过处理器,可以在第一级分析中对降级器进行测试。 对于在第一级分析中没有通过测试的降级分析器,可以自动合成降级器的反例。 此外,可以使用计数器示例作为降级器的输入参数来为降级器创建测试单元。 可以执行测试单元以在第二级分析中对降级器进行测试。 响应于在第二级分析中通过测试的降级者,可以提示用户简化降级的模型。