A source code analysis tool to explore Sensitive Pointers(SP) for Code Pointer Integrity(CPI) instrumentations in ARCE architecture.
VP: (void *)
DC: Direct Code Pointer(e.g. function pointer, return address)
IC: Indirect Code Pointer(e.g. function pointer table, pointer to function pointer)
SP := DC
| IC
| VP
| SP
This tool will analyze a single source file and print all SP
with location information to user.
- OS: CentOS release 6.10
- OCaml: 4.01.0
- CIL: 1.7.3
- Build CIL
cd <your_SPExplorer_cloned_client>
wget https://github.com/cil-project/cil/archive/cil-1.7.3.zip
unzip cil-1.7.3.zip && mv cil-cil-1.7.3 cil
cd cil
./configure
make
- Build and Test SPExplorer
cd <your_SPExplorer_cloned_client>
make && make test
- Only support single file at one time.
- If the file has types defined seperately, user has to copy the definition to this file to let the tool move forware.
jlrao ary.xsnow@gmail.com