stabilizer
stabilizer copied to clipboard
Stabilizer: Rigorous Performance Evaluation
It's great that you've decided to maintain this tool :heart: I am interested in doing all the memory layout randomization from within an LLVM compiled application of my own. I...
Hi, I saw this fork from the original stabilizer repo and is very interested in it. I wanted to know how much a difference does this make for modern hardware...
Stabilizer's relocation table consists of constants, so it should be possible to reuse values loaded from it. And in an ideal world duplicate calls to pure functions (`readnone`) should be...
``` $ cmake -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER=clang++-14 -DCMAKE_CXX_FLAGS="-isystem /usr/include/llvm-14 -isystem /usr/include/llvm-c-14" ... $ cmake --build build ... $ ctest --test-dir build --output-on-failure Internal ctest changing into directory: /usr/local/src/stabilizer/build Test project...
Reproduceable using Clang 14.0.5 and zlib-ng develop snapshot (probably the same with any version of zlib-ng really). ``` export SZ_CODE=0 SZ_LINK=0 SZ_HEAP=0 SZ_STACK=1 SZ_CLEAN=1 cmake -DCMAKE_VERBOSE_MAKEFILE=ON -DWITH_BENCHMARKS=OFF -DCMAKE_C_COMPILER=/home/hansr/github/stabilizer/szcc -DCMAKE_CXX_COMPILER=/home/hansr/github/stabilizer/szcc++ -DCMAKE_C_FLAGS="-g"...
Tested using: Clang 12.0.1 (Fedora 12.0.1-1.fc34) Built zlib-ng from `develop` branch and ran the resulting example (basic self-tests) binary. ``` export SZ_CODE=1 SZ_LINK=0 SZ_HEAP=0 SZ_STACK=0 SZ_CLEAN=1 cmake -DCMAKE_VERBOSE_MAKEFILE=ON -DWITH_BENCHMARKS=OFF -DWITH_GTEST=OFF...
Code randomization breaks exception handling: ``` int main() { try { throw 42; } catch (int) {} } ``` ``` $ SZ_CODE=1 SZ_LOWER=1 szcc++ exception.cpp ... LandingPadInst not the first...
This is a list of suggested improvements that anyone can contribute to, I will try to keep it updated as we add/remove items. Please try not to clutter this thread...
This thread is for tracking information related to the random crashes occuring when SZ_STACK is enabled. If anyone wants to have a go at fixing this bug, please contribute any...