emp3r0r has an unauthenticated HTTP Polling DoS
### Summary The `http_poll` C2 transport accepts attacker-controlled HTTP polling sessions before CBOR `MsgAuth` authentication is completed. A remote unauthenticated attacker can create arbitrary polling sessions and send request bodies that are forwarded into the C2 dispatch path. This can consume server resources and trigger pre-auth C2 processing. ### Details The plain HTTP C2 server starts the HTTP polling listener and forwards requests into `HandleHTTPServerSession`: ```go // core/internal/cc/server/c2_http_server.go mux.HandleFunc(c2Path, func(w http.ResponseWriter, req *http.Request) { stream, err := transport.HandleHTTPServerSession(w, req, &live.RuntimeConfig.MalleableC2) ... if stream != nil { go cborStreamAccept(transport.NewStreamTransport(stream, req.RemoteAddr)) } }) ``` The HTTP polling handler accepts an attacker-supplied `sessionID` and `init=1` cookie, then creates and stores a server-side stream before authentication: ```go // core/internal/transport/c2channel_http.go if isInit { stream = newHTTPServerStream(sessionID) w.WriteHeader(http.StatusOK) return stream, nil } ``` POST bodies for that unauthenticated session are read and queued before CBOR authentication rejects them: ```go // core/internal/transport/c2channel_http.go case http.MethodPost: data, err := io.ReadAll(req.Body) if err == nil && len(data) > 0 { select { case stream.readCh <- data: w.WriteHeader(http.StatusOK) ... } } ``` Authentication only happens later in the C2 dispatch layer: ```go /
GHSA-4595-rvpx-4q34
Primary source · Revision 1
Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.
Security context
Source reference: osv:GHSA-4595-rvpx-4q34
github.com/jm33-m0/emp3r0r/core
Source reference: /affected/0/package/name
- Affected versions
- Not stated in this record
- Fixed versions
- 0.0.0-20260531142011-aed3d81641ab
Source reference:
/affected/0/ranges - Prerequisites
- Not stated in this record
Structured affected-version data
Original package identities and version rules from this source.
[
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "0"
},
{
"fixed": "0.0.0-20260531142011-aed3d81641ab"
}
]
}
],
"package": {
"name": "github.com/jm33-m0/emp3r0r/core",
"purl": "pkg:golang/github.com/jm33-m0/emp3r0r/core",
"ecosystem": "Go"
},
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/09/GHSA-4595-rvpx-4q34/GHSA-4595-rvpx-4q34.json"
}
}
]- Related CVEs
- CVE-2026-61554
Source reference:
/aliases
Publisher severity
high
Source reference: /database_specific/severity
- Event
- #23392 · Revision 1
- Added to Heist Feed
- Publisher date