Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

JavaScriptBench/JS-vul-test

Open more actions menu
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Exploiting Heterogeneous Program Knowledge Graph for Register-related Instruction Vulnerability Prediction (VP-HPKG)

VP-HPKG explores the random propagation of instruction-stream errors by representing the source program as a multi-layer heterogeneous program knowledge graph, and accurately locates the instructions prone to errors.

Result on WebAssembly programs(C++)

methods generate_Fib float-mm
ours A:0.89 P:0.98 F1:0.80 A:0.85 P:0.90 F1:0.82
PrograML A:0.85 P:0.93 F1:0.80 A:0.82 P:0.85 F1:0.78
MVD A:0.67 P:0.50 F1:0.40 A:0.63 P:0.56 F1:0.0.67

Overview

Each folder is a benchmark and contains the program data. The most important files in each folder are as follow:

  • data_test.py: Data acquisition and processing module.
    • def get_node : Identifying entities and relations from the information obtained by LLVM.
    • def get_Ins_SDC : Getting the attribute information of each entity.
  • main.py: Data division, model building, and training module.
    • def train_model : Building a knowledge graph. Model building and training.
    • G : Heterogeneous Graph of instrcution layer.
    • BB_G : Graph of basic block layer.

Setup

To run the code, you need the following dependencies:

DataSet

Our current experiments are conducted on data obtained by LLVM and LLFI.

  • Ins_g.dot : The text and structure information of instructions.
  • F_B_I.dot : The position number of the instruction in the program.
  • cycle_result.txt, result_other.txt : The result of fault injection.

Usage

Execute the following scripts to train on node classification task:

python main.py

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%
Morty Proxy This is a proxified and sanitized view of the page, visit original site.