Displaying 1 to 19 from 19 results

mcsema - Framework for lifting x86, amd64, and aarch64 program binaries to LLVM bitcode

  •    C++

McSema is an executable lifter. It translates ("lifts") executable binaries from native machine code to LLVM bitcode. LLVM bitcode is an intermediate representation form of a program that was originally created for the retargetable LLVM compiler, but which is also very useful for performing program analysis methods that would not be possible to perform on an executable binary directly. McSema enables analysts to find and retroactively harden binary programs against security bugs, independently validate vendor source code, and generate application tests with high code coverage. McSema isn’t just for static analysis. The lifted LLVM bitcode can also be fuzzed with libFuzzer, an LLVM-based instrumented fuzzer that would otherwise require the target source code. The lifted bitcode can even be compiled back into a runnable program! This is a procedure known as static binary rewriting, binary translation, or binary recompilation.

steed - [WIP] Rust's standard library, free of C dependencies, for Linux systems

  •    Rust

It's very early days. Very little functionality has been ported over. Should work without having to install a C toolchain or cross compiled C libraries, and without having to run the command inside a Docker container / VM.

ChrysaLisp - Parallel OS, with GUI, Terminal, OO Assembler, Class libraries, C-Script compiler, Lisp interpreter and more

  •    C++

Assembler/C-Script/Lisp 64 bit OS. MIMD, multi CPU, multi threaded, multi core, multi user. Runs on OSX or Linux for x64, PI64 Linux for Aarch64. Will move to bare metal eventually but it's useful for now to run hosted while experimenting. When time allows I will be doing a VM boot image for UniKernel type appliances and a WebAssembly target to play around within the browser.




cemu - Cheap EMUlator: lightweight multi-architecture assembly playground

  •    Python

Writing assembly is fun. Assembly is the lowest language (humanly understandable) available to communicate with computers, and is crucial to understand the internal mechanisms of any machine. Unfortunately, setting up an environment to write, compile and run assembly for various architectures (x86, ARM, MIPS, SPARC) has always been painful. CEmu is an attempt to fix this by providing a bundled GUI application that empowers users to write assembly and test it by compiling it to bytecode and executing it in an QEMU-based emulator. CEmu combines all the advantages of a basic assembly IDE, compilation and execution environment, by relying on the great libraries Keystone, Unicorn and Capstone engines in a Qt powered GUI.

remill - Library for lifting of x86, amd64, and aarch64 machine code to LLVM bitcode

  •    C++

Remill is a static binary translator that translates machine code instructions into LLVM bitcode. It translates x86 and amd64 machine code (including AVX and AVX512) into LLVM bitcode. AArch64 support is underway. Remill focuses on accurately lifting instructions. It is meant to be used as a library for other tools, e.g. McSema.


efifs - EFI FileSystem drivers

  •    C

This is a GPLv3+ implementation of standalone EFI File System drivers, based on the GRUB 2.0 read-only drivers. If QEMU is installed, the Visual Studio solution will set up and test the drivers using QEMU (by also downloading a sample image for each target file system). Note however that VS debugging expects a 64-bit version of QEMU to be installed in C:\Program Files\qemu\ (which you can download here). If that is not the case, you should edit .msvc\debug.vbs accordingly.

CircuitBreaker - Nintendo Switch hacking toolkit

  •    Javascript

This is Circuit Breaker, a Nintendo Switch hacking toolkit. It is heavily based upon the PegaSwitch toolkit and the ReSwitched team deserves a huge amount of credit for their work, without which this project would be impossible. Make sure you have all the ruby gems installed. Installing ruby and bundler are outside of the scope of this document.

dora - Dora VM

  •    Rust

llvm - Download LLVM 5.0.0 from llvm.org. Unpack the archive and switch into the source directory $LLVM_SRC_DIR (e.g. $HOME/llvm-5.0.0.src). We will now build & install LLVM to $LLVM_INSTALL_DIR (e.g. $HOME/llvm-5.0.0). You can find more information on building LLVM, in its documentation.

container-images - Oracle Linux container images

  •    

Oracle Linux is an open-source operating system available under the GNU General Public License (GPLv2). Suitable for general purpose or Oracle workloads, it benefits from rigorous testing of more than 128,000 hours per day with real-world workloads and includes unique innovations such as Ksplice for zero-downtime kernel patching, DTrace for real-time diagnostics, the powerful Btrfs file system, and more. Oracle Linux is released under the GPLv2. See the LICENSE file in this repository for more information.

sse-popcount - SIMD (SSE) population count --- http://0x80.pl/articles/sse-popcount.html

  •    C++

Daniel Lemire, Nathan Kurz and I published an article Faster Population Counts using AVX2 Instructions. Subdirectory original contains code from 2008 --- it is 32-bit and GCC-centric. The root directory contains fresh C++11 code, written with intrinsics and tested on 64-bit machines.

sse2neon - C/C+ header converting Intel SSE intrinsics to ARN NEON intrinsics

  •    C++

A C/C++ header file that converts Intel SSE intrinsics to ARN NEON intrinsics. The SIMD instruction set of Intel, which is known as SSE is used in many applications for improved performance. ARM also have introduced an SIMD instruction set called Neon to their processors. Rewriting code written for SSE to work on Neon is very time consuming. and this is a header file that can automatically convert some of the SSE instricts into NEON instricts.

mandibule - linux elf injector for x86 x86_64 arm arm64

  •    C

Mandibule is a program that allows to inject an ELF file into a remote process. mandibule has no dependency (not even libc) and is compiled with pie and fpie in order to make it fully relocatable.

libcluon - libcluon is a small and efficient, single-file and header-only library written in modern C++ to power microservices

  •    C++

libcluon is a small single-file, header-only library written in modern C++ library to glue microservices - in a clever way - simply: cluon. Its name is inspired by gluon, an elementary particle acting as exchange particle. Say you want to quickly realize a distributed software system where individual software components exchange messages and you want to keep your project as simple and clean as possible - that's a typical use-case for libcluon. Getting Started Tutorial using an online C++ compiler.

opendlv - OpenDLV - A modern microservice-based software ecosystem for self-driving vehicles.

  •    CMake

Applications based on OpenDLV are grouped in UDP multicast sessions belonging to IPv4 address 225.0.0.X, where X is from the within the range [1,254]. All microservices belonging to the same UDP multicast group are able to communicate with each other; thus, two applications running in different UDP multicast sessions do not see each other and are completely separated. The actual UDP multicast session is selected using the commandline parameter --cid=111, where 111 would define the UDP multicast address 225.0.0.111. Microservices exchange data using the message Envelope that contains besides the actual message to send further meta information like sent and received timestamp and the point in time when the contained message was actually sampled. All messages are encoded in Google's Protobuf data format (example) that has been adjusted to preserve forwards and backwards compatibility using libcluon's native implementation of Protobuf.

Lumia950XLPkg - WIP AArch64 UEFI firmware for Lumia 950 / Lumia 950 XL

  •    C

This package demonstrates an AArch64 UEFI implementation for hacked Lumia 950 and Lumia 950 XL. Currently it is able to boot Windows 10 ARM64 (with a minor patch). Booting Linux is also possible (see the note). I am too busy to write an average-user instruction. So if you are interested in, you are welcome to contribute to an easy instruction for all Lumia 950 XL users.





We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.