S2E / s2e-env

Your S2E project management tools. Visit https://s2e.systems/docs to get started.
Other
93 stars 51 forks source link

Port Decree-style PoV generator to Linux (and Windows) #153

Open vitalych opened 6 years ago

vitalych commented 6 years ago

Test with https://github.com/trailofbits/cb-multios

Linux and Windows only support file-based PoVs, i.e., programs that read input from a file. In general, CTF binaries read/write to stdin/stdout, which is currently supported by the DecreePovGenerator plugin. Unfortunately, DecreePovGenerator depends on DecreeMonitor, which prevents it from being usable on Linux/Windows.

This issue is about making DecreePovGenerator OS-independent, or at least work on Linux. This will consist of identifying what Decree-specific signals the plugin depends on and porting/refactoring these signals to Linux. The signals a read()/write() and random() syscalls mostly.

There are several ways that could be used to intercept these syscalls:

Windows may be a bit trickier, as the syscall interface is much more complex.

vitalych commented 5 months ago

Partially done in #503