JANUS.md (913B)
1 # JANUS 2 3 **Source:** Fuzzing File Systems via Two-Dimensional Input Space Exploration 4 5 The two dimensions are data (images) and actions (syscalls) 6 7 ## Steps 8 9 - Load fresh OS 10 - Linux Kernel Library in user space 11 - Mutate metadata 12 - not blocks as they are too big / result in slowdowns 13 - Then perform image-directed syscall fuzzing 14 - store generated sys calls and deduce runtime status of each file object on the image after sys call completion 15 - Use speculated status as feedback to generate new syscalls 16 17 They try to improve existing FS fuzzers by 18 19 1. Not fuzzing large blob images 20 - that's slow 21 2. Exploding the relationship between the FS and file operations (syscalls) 22 3. Not using an aging OS 23 - basically, they improve repro by restarting the OS because Linux Kernel Library in user space is fast 24 25 ## Useful Ideas 26 27 - They found simpler representations than the blob data to describe state