fuzzing
cmake-init
Our great sponsors
fuzzing | cmake-init | |
---|---|---|
11 | 164 | |
3,342 | 1,812 | |
1.6% | - | |
2.2 | 8.1 | |
3 months ago | 7 days ago | |
C++ | CMake | |
Apache License 2.0 | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
fuzzing
- Structure-Aware Fuzzing with Libfuzzer
- GitHub - google/fuzzing: Tutorials, examples, discussions, research proposals, and other resources related to fuzzing
-
ok so i am kinda new to fuzzin/security research and ive just done this
so I just wanted to start to fuzz a little bit and I used libfuzzer for that. and as you can tell in this tutorial https://github.com/google/fuzzing/blob/master/tutorial/libFuzzerTutorial.md it tells you that if you leave it running like that you will get a bounty. and so I did exactly this, I followed the exact instructions listed there(I fuzzed this woff thing they mentioned) and my fuzzer said "SUMMARY: AddressSanitizer: heap-buffer-overflow" can I report that? or is this woff thing just for testing?
- I found a bug in Intel Skylake processors
- SiliFuzz: Fuzzing CPUs by proxy
- SiliFuzz: Fuzzing CPUs by Proxy [pdf]
- SiliFuzz - a work-in-progress system that finds CPU defects by fuzzing software proxies, like CPU simulators or disassemblers, and then executing the accumulated test inputs on actual CPUs on a large scale.
-
An implementation of CBOR in C
For a project like this, fuzz testing is also crucial. The issue pointed out by gremolata would have been trivial to find with fuzzing.
-
Address Sanitizer for MSVC Now Generally Available | C++ Team Blog
Another is testing: Many C++ projects use sanitizers regularly together with fuzzing, https://github.com/google/fuzzing/blob/master/docs/why-fuzz.md, https://github.com/google/fuzzing/blob/master/docs/intro-to-fuzzing.md#sanitizers
-
Jazzer brings modern fuzz testing to the JVM
Maybe a bit biased opinion here, but you could start with this blog post, and see whether you go more into C/C++ fuzzing or web fuzzing from there:
https://blog.code-intelligence.com/the-magic-behind-feedback...
https://github.com/google/fuzzing
cmake-init
-
CMake install schema for single- and multi-config generators
https://github.com/friendlyanon/cmake-init This is how you do CMake properly. If you deviate from its install rules you are highly likely to do something wrong.
-
cgen: another declarative CMake configuration generator
CMake itself is as declarative as a build systems need to be. For anything nontrivial, these "declarative" solutions all fall apart. Just use https://github.com/friendlyanon/cmake-init, learn CMake and you won't have any issues.
-
How does one actually build a C++ project
If you want something with a (mostly) Just Works experience then just use https://github.com/friendlyanon/cmake-init
- CMakeList.txt, add_executable vs. add_library vs. target_link_libraries vs. target_link_directories
- Check out my tasks.json for C++ of VScode
- Clang++ Halp
-
Putting libraries in program folder
For CMake basics check out the official "Getting started" tutorial: https://cmake.org/cmake/help/latest/guide/tutorial/index.html, as well as Introduction to Modern CMake. You can also get inspired by the CMake project generator cmake-init
- Recourses to help understand libraries/projects and setting them up?
-
How to Create a Modern C Project with CMake and Conan
You can just use https://github.com/friendlyanon/cmake-init to get a CMake + Conan C project ready to go with a short little command: cmake-init --c -e -p conan coolio
- CMake template
What are some alternatives?
CMake - Mirror of CMake upstream repository
meson - The Meson Build System
JQF - JQF + Zest: Coverage-guided semantic fuzzing for Java.
w64devkit - Portable C and C++ Development Kit for x64 (and x86) Windows
sandsifter - The x86 processor fuzzer
xmake - 🔥 A cross-platform build utility based on Lua
fastbuild - High performance build system for Windows, OSX and Linux. Supporting caching, network distribution and more.
javan-warty-pig - AFL-like fuzzer for the Java Virtual Machine
ModernCppStarter - 🚀 Kick-start your C++! A template for modern C++ projects using CMake, CI, code coverage, clang-format, reproducible dependency management and much more.
cbor - An implementation of CBOR in C
llvm-mingw - An LLVM/Clang/LLD based mingw-w64 toolchain