Git Product home page Git Product logo

spectre-real-time-detection's Introduction

Detecting Spectre Attacks by identifying Cache Side-Channel Attacks using Machine Learning

This projects detects ongoing Spectre attacks, by using a neural network to analyze HPCs (Hardware Performance Counters). More indepth information can be found in the corresponding paper: https://www.cs.hs-rm.de/~kaiser/events/wamos2018/wamos18-proceedings.pdf#page=77

Dataset

The dataset can be found in the dataset directory. However, when using the dataset keep in mind that it was produced in a very constrained environment, as explained in the paper. We only collected the data of a defined set of processes using only one machine. Therefore, it will most likely not be sufficient for training something which is supposed to work in a more general environment and you’ll most likely won’t get anything to work when using a different machine with a different CPU. It depends on what you want to do with the data, but you should probably consider creating your own dataset and retrain the neural network.

Training

You can train your own model by using the code provided in the training directory. Install the requirements in training/requirements.txt and execute:

/path/to/venv/bin/python trainig.py /path/to/dataset.json /path/to/new_model.h5

Cite

@article{depoix2018detecting,
  title={Detecting Spectre Attacks by identifying Cache Side-Channel Attacks using Machine Learning},
  author={Depoix, Jonas and Altmeyer, Philipp},
  journal={Advanced Microkernel Operating Systems},
  pages={75},
  year={2018}
}

spectre-real-time-detection's People

Contributors

paltmey avatar jdepoix avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.