All Projects β†’ immunant β†’ Selfrando

immunant / Selfrando

Licence: other
Function order shuffling to defend against ROP and other types of code reuse

Projects that are alternatives of or similar to Selfrando

Rails Security Checklist
πŸ”‘ Community-driven Rails Security Checklist (see our GitHub Issues for the newest checks that aren't yet in the README)
Stars: ✭ 1,265 (+595.05%)
Mutual labels:  security-hardening
Librefox
License: Mozilla Public License 2.0
Stars: ✭ 1,574 (+764.84%)
Mutual labels:  security-hardening
Appvm
Nix-based app VMs
Stars: ✭ 146 (-19.78%)
Mutual labels:  security-hardening
Btle Sniffer
Passively scan for Bluetooth Low Energy devices and attempt to fingerprint them
Stars: ✭ 87 (-52.2%)
Mutual labels:  security-hardening
Karn
Simplifying Seccomp enforcement in containerized or non-containerized apps
Stars: ✭ 104 (-42.86%)
Mutual labels:  security-hardening
Awesome Culture
A curated list of awesome thought on tech culture. Inspired by the various awesome-* projects
Stars: ✭ 126 (-30.77%)
Mutual labels:  diversity
Wazuh Documentation
Wazuh - Project documentation
Stars: ✭ 82 (-54.95%)
Mutual labels:  security-hardening
Diversify Me
A list of tech conferences that provide diversity travel grants/scholarships πŸ’›
Stars: ✭ 156 (-14.29%)
Mutual labels:  diversity
Generative Evaluation Prdc
Code base for the precision, recall, density, and coverage metrics for generative models. ICML 2020.
Stars: ✭ 117 (-35.71%)
Mutual labels:  diversity
How To Secure A Linux Server
An evolving how-to guide for securing a Linux server.
Stars: ✭ 11,939 (+6459.89%)
Mutual labels:  security-hardening
Data Umbrella Scikit Learn Sprint
Jun 2020 scikit-learn sprint
Stars: ✭ 93 (-48.9%)
Mutual labels:  diversity
Windows 10 Hardening
Windows 10 hardening guide without gimmicks
Stars: ✭ 102 (-43.96%)
Mutual labels:  security-hardening
Php Login System
Embeddable and Secure PHP Authentication System with Login, Signup, User Profiles, Profile Editing, Account Verification via Email, Password Reset System, Remember-Me Feature and more.
Stars: ✭ 135 (-25.82%)
Mutual labels:  security-hardening
Android Ssl Pinning Webviews
A simple demo app that demonstrates Certificate pinning and scheme/domain whitelisting in Android WebViews
Stars: ✭ 86 (-52.75%)
Mutual labels:  security-hardening
C2rust
Migrate C code to Rust
Stars: ✭ 2,111 (+1059.89%)
Mutual labels:  security-hardening
Sandboxed Api
Generates sandboxes for C/C++ libraries automatically
Stars: ✭ 1,260 (+592.31%)
Mutual labels:  security-hardening
Opensourcediversity.org
🌼 Code of https://opensourcediversity.org
Stars: ✭ 122 (-32.97%)
Mutual labels:  diversity
Hardentheworld
Harden the world is a community driven project to develop hardening guidelines and checklists for common software and devices.
Stars: ✭ 158 (-13.19%)
Mutual labels:  security-hardening
Discover Cookbook
The NumFOCUS DISCOVER Cookbook (Diverse & Inclusive Spaces and Conferences: Overall Vision and Essential Resources). A guide for organizing more diverse and inclusive events and conferences, produced by the NumFOCUS Diversity & Inclusion in Scientific Computing (DISC) Program, with support from the Moore Foundation.
Stars: ✭ 152 (-16.48%)
Mutual labels:  diversity
Awesome Women In Tech
κ΅­λ‚΄μ™Έ ν…Œν¬ λΆ„μ•Ό μ—¬μ„±λ“€μ˜ ν™œμ•½μƒμ„ 아카이빙 ν•©λ‹ˆλ‹€.
Stars: ✭ 143 (-21.43%)
Mutual labels:  diversity

Travis build status Appveyor build status

RunSafe Security selfrando

Software written in C and C++ is exposed to exploitation of memory corruption. Compilers and operating systems include various exploit mitigation mechanisms that prevent certain offensive techniques. Unfortunately, standard mitigations lag behind the offensive techniques used in exploits against browsers, servers, and other frequently targeted software and do not stop a well-resourced adversary.

selfrando can be used to harden your software beyond what is possible with current mitigations. Inspired by biodiversity in nature and existing randomizing defenses, selfrando varies the attack surface, i.e., the code layout, by randomizing each function separately. This makes exploit writing harder and increases resilience to information leakage relative to traditional address space layout randomization (ASLR) techniques.

Comparing selfrando to ASLR

Features

  • Low-overhead selfrando has an imperceptible effect on program initialization and runtime performance. When using the SPEC CPU2006 suite suite, selfrando adds less than a 1% overhead to most of the benchmark running times.
  • Load-time randomization. Binaries built with selfrando are all identical on-disk because the code layout is not randomized until it is loaded into main memory. This means that protected programs can be distributed just like traditional programs and can use the same cheksumming and signature tools too.
  • Easy to use No changes to build tools or processes are required. In most cases, using selfrando is as easy as adding a new compiler and linker flags to your existing build scripts.

Build instructions

License

The Linux-compatible version of selfrando is offered under the Affero General Public License version 1.

Visit http://runsafesecurity.com if you are interested in a commercial support to protect your software with selfrando on Windows, Android, and Linux.

Acknowledgements

Researchers from University of California, Irvine, Technische UniversitΓ€t Darmstadt (Germany), and the Tor Project contributed to the development of selfrando.

This work is based upon work partially supported by the Defense Advanced Research Projects Agency (DARPA) under contracts FA8750-15-C-0124, FA8750-15-C-0085, and FA8750-10-C-0237 and by the National Science Foundation under award number IIP-1520552.

This work was supported in part by the German Science Foundation (project S2, CRC 1119 CROSSING), the European Union's Seventh Framework Programme (609611, PRACTICE), and the German Federal Ministry of Education and Research within CRISP.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].