Xray is a tool designed to detect and exploit vulnerabilities in ARM AXI interconnects by generating AXI traffic and systematically analyzing security flaws. Users can integrate their AXI Lite or AXI Full interconnects under test and execute Xray to assess their security.
For more details, refer to the associated research paper: Xray Paper.
Ensure you have a working AXI interconnect setup before proceeding.
-
Modify Setup Files:
- Edit
setup_xray.tclandrun_sim_xray.tclto specify your interconnect. - Follow the inline comments to instantiate the interconnect correctly.
- Edit
-
Run Xray:
- To test an AXI Lite interconnect, execute:
./run_xray.sh lite
- To test an AXI Full interconnect, execute:
./run_xray.sh full
- To test an AXI Lite interconnect, execute:
-
Analyze the Results:
- Test execution results are stored in
output.out.
- Test execution results are stored in
setup_xray.tcl– Configures the test project with your own subordinate and manager.run_sim_xray.tcl– Applies test cases and runs simulations.test_cases/– Contains test cases for AXI Lite and AXI Full interconnects.- Users can modify these test cases to customize parameter values.
run_xray.sh– Script to execute Xray, acceptingliteorfullas parameters.src/– Includes the Traffic Generator and Checkers with detailed instructions.- Log and Output Files:
output.log,output.out– Generated logs containing test execution details.
For questions, issues, or contributions, reach out to melisande.zontaroudes@inf.ethz.ch.