×

Security enforcement in the presence of dynamic code loading

  • US 10,296,737 B2
  • Filed: 12/09/2015
  • Issued: 05/21/2019
  • Est. Priority Date: 12/09/2015
  • Status: Active Grant
First Claim
Patent Images

1. A method for verifying a software program for security, the method comprising:

  • retrieving from a memory a program to be verified against a security policy and a security specification defining said security policy, the retrieved program comprising only static code available for evaluation before additional code is added during a dynamic linking of an execution of said program;

    applying a static program analysis on said static code of said program, using a processor on a computer, to determine whether said static code of said program is compatible with said security specification; and

    if a determination is made by said static program analysis that said static code of said program is incompatible with said security specification, rejecting said program as non-compliant; and

    else, the determination is made by said static program analysis that said static code of said program is compatible with said security specification, then building a call-graph representation of said program for use to evaluate any dynamically-loaded code during an execution of said program, and indicating paths of said call-graph representation that reach at least one policy-relevant operation during the execution,wherein the static analysis first statically determines whether the static code of said program complies with all security policies in the security specification prior to any dynamic code loading, the program to be then dynamically checked only for aspects that were not verified during said static analysis.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×