×

Automated anomaly detection

  • US 7,627,543 B2
  • Filed: 11/22/2004
  • Issued: 12/01/2009
  • Est. Priority Date: 11/27/2003
  • Status: Active Grant
First Claim
Patent Images

1. An automated method of detection of software vulnerabilities by applying a rule set to test for vulnerabilities in computer software, the rule set comprising at least one vulnerability characterisation rule, the method incorporating the steps of:

  • a) providing a training data set of computer software incorporating positive and negative vulnerability examples and expressed as programs flagged to indicate either presence or absence of vulnerability, the programs comprising instructions each incorporating an identifier to indicate its associated program, the instruction'"'"'s address, an instruction operator and a list of instruction operands,b) defining a rule generalisation, the rule generalisation being processable to transform it into the at least one vulnerability characterisation rule, andc) using computer apparatus to execute the steps of;

    i) receiving the training data set and the rule generalisation,ii) processing the rule generalisation to transform it into a more specific rule generalisation by employing logic of at least First-Order and adding to the rule generalisation at least one of a condition, a variable, a constant, a unification of variables and a function based on the training data set and background knowledge relating to attributes of the training data set and consisting of at least one of concepts, facts of interest and functions for calculating values of interest from items of data,iii) evaluating the more specific rule generalisation by applying it to the training data set to identify vulnerabilities, andiv) incorporating the more specific rule generalisation in the rule set if it classifies vulnerabilities in the training data set adequately in terms of covering at least some of the positive vulnerability examples,v) applying the rule set to a test program for vulnerability detection therein, andvi) providing an alert or a report to a user regarding vulnerability detection in the test program resulting from operation of the method in order to enable corrective action to be taken.

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