BudgetScan

swesweep-fasthttp

/home/ubuntu/sw/swesweep-fasthttp

Repository
https://github.com/valyala/fasthttp.git
Commit
e9208ecebf0c102176bb0635043c17333b10401d
Branch
–
Created
2026-10-17 17:58 UTC
Files scanned
78

Runs

RunStateModelTriage model FilesFindingsCostStarted (UTC)
#4 completed qwen/qwen3.8-27b qwen/qwen3.8-27b 78 / 78 179 $7.75 2026-10-17 19:50
#3 interrupted qwen/qwen3.8-27b qwen/qwen3.8-27b 0 / 78 0 – 2026-10-17 19:36
#2 interrupted qwen/qwen3.8-27b qwen/qwen3.8-27b 0 / 78 0 – 2026-10-17 18:02
#1 interrupted qwen/qwen3.8-27b qwen/qwen3.8-27b 0 / 78 0 – 2026-10-17 17:58

Findings

Clear
SeverityTitleFileTriage
medium Unauthenticated exposure of all registered expvars ExpvarHandler expvarhandler/expvar.go
INVALID
medium Unbounded pre-Flush response buffering allows memory exhaustion writer.Write fasthttpadaptor/adaptor.go
INVALID
medium Wrapped handler panic is re-panicked in the fasthttp handler goroutine NewFastHTTPHandler fasthttpadaptor/adaptor.go
INVALID
medium Flush() can block forever after completion or hijack writer.Flush fasthttpadaptor/adaptor.go
INVALID
medium Zero-copy byte-to-string conversion aliases mutable fasthttp request buffers b2s fasthttpadaptor/b2s.go
INVALID
medium Stale TransferEncoding and RequestURI state when http.Request is reused ConvertRequest fasthttpadaptor/request.go
INVALID
medium Duplicate HTTP headers are collapsed instead of preserved ConvertRequest fasthttpadaptor/request.go
VALID
medium Special header cases are matched before canonicalization and are case-sensitive ConvertRequest fasthttpadaptor/request.go
INVALID
medium Protocol desync: bufio.Reader discards tunneled data after CONNECT 200 httpProxyDial fasthttpproxy/dialer.go
INVALID
medium Unbounded hang on CONNECT when ConnectTimeout is zero (default) httpProxyDial fasthttpproxy/dialer.go
INVALID
medium Nil fasthttp.DialFunc returned on malformed proxy environment, causing process panic FasthttpProxyHTTPDialerTimeout fasthttpproxy/proxy_env.go
INVALID
medium Unbounded writer blocking when the receiving end fills the channel and stops reading Write fasthttputil/pipeconns.go
INVALID
medium Write timeout discards pooled buffer and latches write deadline to closed Write fasthttputil/pipeconns.go
INVALID
medium Information disclosure: raw header bytes in error messages headerErrorMsg header.go
INVALID
medium Partial header state corruption after trailer parse error tryReadTrailer header.go
INVALID
medium Silent acceptance of duplicate Content-Length with divergent values parseHeaders (ResponseHeader) header.go
INVALID
medium LF-only header line separation creates parser differential readLine headerscanner.go
VALID
medium readBodyIdentity allows unbounded body growth when maxBodySize <= 0 readBodyIdentity http.go
INVALID
medium ContinueReadBodyStream silently returns oversized body stream on ErrBodyTooLarge ContinueReadBodyStream http.go
INVALID
medium Unvalidated IPv6 zone allows arbitrary bytes validateIPv6Literal ipv6.go
INVALID
medium Lazy init panics when Clients is empty even if AddClient populated cs LBClient.init lbclient.go
INVALID
medium Nil request or response forwarded unchecked to client and health callback lbClient.DoDeadline lbclient.go
INVALID
medium IPv6 and non-TCP remote addresses collapse to the same counter key 0 getConnIP4 peripconn.go
VALID
medium Pooled wrapper can be closed after reuse, closing a different connection perIPConn.Close / perIPTLSConn.Close peripconn.go
INVALID
medium Goroutine and memory leak on client disconnect during long profile or trace PprofHandler pprofhandler/pprof.go
INVALID
medium Stale child signals and PID reuse can corrupt child process tracking Prefork.prefork prefork/prefork.go
INVALID
medium Index out of range panic in FormFile on empty file header slice RequestCtx.FormFile server.go
INVALID
medium Unbounded multipart form memory allocation via default FormValue/MultipartForm (DoS) RequestCtx.FormValue / RequestCtx.MultipartForm server.go
INVALID
medium Permanent worker goroutines and channel per NewFunc instance NewFunc stackless/func.go
INVALID
medium Hidden worker can be terminated by f panic or runtime.Goexit funcWorker stackless/func.go
INVALID
medium Nil destination writer causes panic when flushing buffered output (*writer).do stackless/writer.go
INVALID
medium HTTP status-line control-character injection formatStatusLine status.go
INVALID
medium Nil StreamWriter accepted without validation NewStreamReader stream.go
INVALID
medium Premature end-of-stream is reported as normal EOF for fixed Content-Length bodies requestStream.Read streaming.go
INVALID
medium Unbounded DNS cache growth allows memory exhaustion getTCPAddrs / dial tcpdialer.go
INVALID
medium No concurrency limit on DNS resolution — unlimited concurrent resolver queries dial / getTCPAddrs tcpdialer.go
INVALID
medium File descriptor leak when fcntl fails after socket creation newSocketCloexec tcplisten/socket_zos_s390x.go
INVALID
medium Nil Config receiver can panic in NewListener (*Config).NewListener tcplisten/tcplisten.go
INVALID
medium ReleaseTimer panics on nil timer ReleaseTimer timer.go
INVALID
medium Quadratic-time denial of service in path normalization normalizePath uri.go
VALID
medium Reset may invoke malicious or invalid io.Closer values Reset() userdata.go
INVALID
low Stale key/value slices retained after Reset, ReleaseArgs, and Del Args.Reset args.go
–
low Quadratic copy cost when deleting many duplicate query args Args.Del args.go
–
low Algorithmic-complexity DoS in Args.Del/DelBytes (O(n^2) delAllArgsStable) delAllArgsStable / Del / DelBytes args.go
–
low Possible index-out-of-range panic in b2s for empty byte slices AddBytesKV / SetBytesKV / DelBytes / PeekMultiBytes (via b2s) args.go
–
low Nil io.Writer causes panic in WriteBrotliLevel default branch WriteBrotliLevel brotli.go
–
low WriteBrotliLevel returns uncompressed input length instead of compressed byte count for non-blocking writers WriteBrotliLevel brotli.go
–
low ParseUfloat checks negative value before parse error ParseUfloat bytesconv.go
–
low Panic on negative int in writeHexInt / AppendUint (DoS if reachable) writeHexInt, AppendUint bytesconv.go
–
low AddMissingPort fails to append default port for unbracketed IPv6 literals AddMissingPort client.go
–
← Previous Page 2 of 4 · 187 total Next →