Gencoding/README.md

19 lines
829 B
Markdown
Raw Normal View History

2016-09-15 09:54:41 +08:00
This project provides two components of Genius, a graph-based bug search framework. The first component is the raw feature extraction. The second is the online bug search engine.
1. The raw feature extraction is designed to achieve following two goals:
2016-12-17 08:38:10 +08:00
2016-09-15 09:54:41 +08:00
-> Extract the control flow graph for each binary function
2016-12-17 08:38:10 +08:00
2016-12-17 08:37:48 +08:00
-> Extract the attributes for each node in the grap
2016-09-15 09:54:41 +08:00
2016-12-17 08:39:43 +08:00
The feature extraction is built on top of IDA-pro. We wrote the scripts based on ida-python and extract the attributed control flow graph. preprocessing_ida.py is the main program to extract the ACFG.
2016-12-17 08:34:29 +08:00
2016-09-15 09:54:41 +08:00
2. The online bug search engine is used for real-time search:
2016-12-17 08:38:10 +08:00
2016-09-15 09:54:41 +08:00
-> It utilized localality sensitive hashing for indexing
2016-12-17 08:38:10 +08:00
2016-09-15 09:54:41 +08:00
-> Nearest-neighbor search algorithm for search
2016-12-17 08:38:10 +08:00
2016-12-17 08:37:48 +08:00
The online search is based on nearpy (https://github.com/pixelogik/NearPy).
2016-12-17 08:34:29 +08:00