Crowbar::Mutators::Security
Inherits Crowbar::Mutator < Reference < Object
Parser boundary validation mutator. Tests parser resilience against boundary anomalies, format specifiers, path normalization, null-byte termination, delimiter escapes, and numeric extremes. Inspired by Radamsa's 'ab' ("bad ascii") mutator, framed for input validation QA.
Constants
VECTORS = ["%s", "%d", "%x", "%p", "%n", "%s%s%s%s%s", "%08x", "%#010x", "%9999999s", "%.1024d", "%2$s", "%1$n", "../", "..\\", "../../../etc/passwd", "..\\..\\..\\Windows\\System32", "....//", "....\\\\", "/...", "\\...", "/./", "\\.\\", "\u0000", "\u0000\u0000\u0000\u0000", "test\u0000.bin", "%00", "\\0", "\\x00", "\"", "'", "`", "\\", "/", ";", "|", "&", "&&", "||", "--", "/*", "*/", "-->", "<script>", "\r\n\r\n", "-1", "0", "1", "2147483647", "-2147483648", "4294967295", "9223372036854775807", "-9223372036854775808", "18446744073709551615", "NaN", "Infinity", "-Infinity", "1e309", "-1e309", "%20", "%2e%2e%2f", "%u0000", "%c0%ae%c0%ae%c0%af", "A" * 256, "A" * 1024, "\xFF" * 64]
Curated boundary vectors for robust parser validation
Instance methods
description
Sourcemutate(context : Context, buffer : Buffer, target_range : Tuple(Int32, Int32) | Nil = nil) : Tuple(Bool, Int32)
Sourcename
Source