Systrack Alternatives
Similar projects and alternatives to systrack
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
-
-
libpolycall
Discontinued LibPolycall is the world first polyglot polymorphic language runtime broker
-
linux-syscalls
🌐🐧 Browsable Linux kernel syscall tables built with Systrack (https://github.com/mebeim/systrack)
-
-
-
bintropy
Analysis tool for estimating the likelihood that a binary contains compressed or encrypted bytes
-
ShellWasp
ShellWasp is a tool to help build shellcode that utilizes Windows syscalls, while overcoming the portability problem associated with Windows syscalls. ShellWasp is built for 32-bit, WoW64. ShellWasp 2.0 includes novel ways to invoke the syscall in WoW64.
-
-
InlineWhispers2
Tool for working with Direct System Calls in Cobalt Strike's Beacon Object Files (BOF) via Syswhispers2
systrack discussion
systrack reviews and mentions
-
Gathering Linux Syscall Numbers in a C Table
There is an existing project that tracks and gather syscalls in the linux kernel, for all ABIs: https://github.com/mebeim/systrack . The author maintains a table here, which is incredibly useful: https://syscalls.mebeim.net/?table=x86/64/x64/latest
-
A Linux kernel syscall implementation tracker
Thank you very much :). I am using static analysis of kernel images (vmlinux ELF) that are built with debug information. Each table you see was extracted from a kernel built by my tool, Systrack, that configures and builds kernels configured to have all the syscalls available. The code is heavily commented and available on GitHub if you are interested: https://github.com/mebeim/systrack
I realized soon in the process that simply looking at kernel sources was not enough to extract everything accurately, also I wanted this to be a tool to extract syscalls actually implemented from a given kernel image, so that's what it does.
Your approach should be fine, that is what any other language does basically: rely on uapi headers provided by the kernel (just beware that some may be generated at build time inside e.g. include/asm/generated/xxx). Add a generic function that takes an arbitrary syscall number and an arbitrary amount of args to make raw syscalls for the weird ones and you should be good. After all, even in the C library headers some of the "weird" syscalls aren't present sometimes.
Stats
mebeim/systrack is an open source project licensed under GNU General Public License v3.0 only which is an OSI approved license.
The primary programming language of systrack is Python.