Papers for

backend service operators

Papers whose findings have a practical use for this group, as judged from the abstract. Open a paper to read what it means in practice.

TraceLib speeds up web fuzzing with system-call coverage feedback

TraceLib: System-Call Bitmap Feedback Mechanism for Language-Agnostic Web Fuzzing

Abstract: Coverage feedback is an important source of guidance for fuzzing. However, obtaining such feedback normally requires application-level instrumentation that is specific to the language and runtime of the application. Given that modern web applications span multiple languages and runtimes, this application-level instrumentation is costly to implement and maintain. Therefore, we present TraceLib, a system-call feedback mechanism for enabling language-agnostic web fuzzing. Our proposed approach observes the transitions of system calls, enriches selected transitions with bounded argument hashes, and converts them into a 65,536-position AFL-like bitmap. By using the generated bitmap, any web fuzzer can decide whether to retain requests that add previously unseen bitmap positions without consulting application code coverage. We integrate TraceLib into WebFuzz and evaluate it under five WebFuzz feedback modes: the two proposed TraceLib variants (one over every traced system call and one projected onto monitored file paths and recognized SQL buffers), the N-gram comparator adapted from Xiao et al. representing the most recent work to our knowledge, WebFuzz's Native grey-box feedback, and black-box fuzzing without feedback. We evaluate TraceLib on sixteen web applications under test (WUTs): eight PHP applications and eight further applications spanning Node.js, Ruby, Java, Go, and Python to demonstrate platform portability. The results show that our proposed TraceLib projected exceeds black-box on all eight PHP WUTs while exceeding Native on four: Joomla, Drupal, PrestaShop, and Bagisto. In addition, measured on an identical replayed request workload, the tracer costs approximately one millisecond of server-side latency per request. These results indicate that compact system-call feedback is a useful runtime-independent proxy for coverage guidance.

Mon 28 SeptSoftware Engineering
The gist
Finding bugs and security problems in web apps often needs special tools that look inside the app’s code, which is tricky when apps use many programming languages. The authors created TraceLib, a tool that watches how web apps make system calls to the computer instead, which works for any language. TraceLib turns these system calls into a simple map to help fuzzing tools know when they're seeing new behavior worth testing. Their tests showed TraceLib works well across many web apps and languages, and adds only a tiny delay per request.
Open → 2609.34778v1