RETURN-ORIENTED PROGRAM EVOLUTION WITH 
 ____   ___  ____  _____ ____  
|  _ \ / _ \|  _ \| ____|  _ \ 
| |_) | | | | |_) |  _| | |_) |
|  _ <| |_| |  __/| |___|  _ < 
|_| \_\\___/|_|   |_____|_| \_\
                               

                                                                      
  /////////////////////////////////////////////////////////////////// 
  \\                                      `-. ``-`..`              // 
  \\                                     .+`...-o- .`.`            // 
  \\         ```              ``.-`      h:-`    ./h-`...`         // 
  \\   `..---:--+:-         .-:. `h-     +m`+.     `.+..`.-        // 
  \\  --.:://:-.-``:`      +-.,`: .--     :-.s+`.      ```         // 
  \\  .```      `/ `:     .Ns. ~_~ .o.      `---/..::`             // 
  \\            `s .-     //o` :o:  +y.        `.+o/.o.`           // 
  \\            h:`/     .://`_____+:.:+`         `.-` o`          // 
  \\          `y- -`    :.`-:./:+:`+```sm/`         `:`//          // 
  \\         `:.-+.    -h``../oyy:::`` `/.s.         +s-/          // 
  \\        ```:y-     om.`-``-+//. `.: .h++`       :++s           // 
  \\      `.  -o`     .;o:+-  ...-:/..o`/s.`/-..``---:y.     ``````// 
  \\    `-. `..     -.` -.y`'y\/\/\/y`o.:`s`.:....y//-``..``..``.-.// 
  \\   .+``..     `h+:`oy`:{          }-`-dysds+---..-..://-:--..--// 
  \\  .h-:-`     .yh:/dMh.` :/\/\/\/\-   `sdy-.--.-`.--:/:-``      // 
  \\  y/:s     `-+/-hy/hs..`:`/;;;/:.` .``/s+`.``/s//-`          `/// 
  \\  m:.:-` `:---s+.``/.:.`...::-+``` o..+:+o:/o-`            `-/.// 
  \\  /...``.-+++o/.`..`/: .``.`` `-```s+`/mN:...``.```.``...`.:oo-// 
  \\   ``....-//:...`.-+h+//``. . -s-./+/  :+-.--..----:-:/:--/o.  // 
  \\     ``..``+y..--s:ydyd:``    oy+::.- ``:/oo/o/:/:-.`.-..:---` // 
  \\   ``-` .s:o//+/.o+ss+s-   `` .`````/ .o+ds`::.--..``` ``-/.-:`// 
  \\  -.``/:ys/:--./hm/.`.`   `-::+:`  `ho..+s`               - -`:// 
  \\ .s .o+--/+./yo/hy..-` `-+--.://. ` -mydh`                ..``-// 
  \\ /: -.`/s/.sy-` oNy/+o/-..--.```````.+hhy.```             `- .`//
  \\ /y``-hs:-/-    sd:--.`.--`````` `-`.``..`````.``        `. .` // 
  \\ .N` .so/-``...`` `.--/::`--.  `...-. +md`  `..`.``.`.  .````  // 
  \\  +/-`  ``.-  `./oyy/ys-```-:  /..` . +dd       `.. ``````.`   // 
  \\   .+s++/++:```/mmmy+m-`    .  --`` .`o+o-          `  ``      // 
  \\    :o--.     .ddmdymo:     `  -- `  `:-.o:                    // 
  \\    .dh.:`   .dydNMNd`.    ``   . :`  `   +o                   // 
  \\     :d/--...ymdhhmd:`````  ``  ` ` `   o+mN+                  // 
  \\      `/+.``````````````....`     `    /dohmN-                 // 
  \\         `.odyo/oy+:--.-`....-  ` `       `:ss.                // 
  \\          -NMMy+Nhy...:`:-/moo` .h-      `` `:s:`              // 
  \\          hMMMNNhs+  `o:yodmd`- -Nh-``   yd+.  `s.             // 
  \\          yhmmNm/.   :hysmMMNs: `dNdd:   dNmd/..:`             // 
  \\             `/h``  .mmNmyoooyy:..`--/...-`  ``                // 
  \\             -N:    -Nho:                                      // 
  \\              -/-.:/s+.                                        // 
  \\                  `                                            // 
  '\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  

Code

A public git repository can be found HERE (clone recursively for some of the lisp dependencies, and to include documentation). The source files for this collection of writings and slide decks can be found HERE (clone recursively for the reveal.js dependency used in the thesis defence slide deck).

A complete rewrite of the code is underway at this repository, but is not yet ready for experimentation.

Documentation

  1. Urschliem in Silicon: Return Oriented Program Evolution with ROPER
    1. MCS Thesis (Dalhousie, 2018)
    2. Slide Deck for Thesis Defence
    3. Other Slide Decks
      1. AtlsSecCon, Halifax 2017
      2. Raytheon Progress Reports (2016-2017)
      3. SecDef/GECCO, Berlin 2017
      4. Presentation at 2Keys, Ottawa, 2017
    4. Other Papers on ROPER
      1. Return Oriented Programming with ROPER: A Proof of Concept (SecDef/GECCO, 2017)
    5. ROPER home movies
      1. ROPER playing Snek