<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://vulnerability.circl.lu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-09-28T12:38:49.269195+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@circl.lu</email>
  </author>
  <link href="https://vulnerability.circl.lu" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/fkie_cve-2026-55484</id>
    <title>fkie_cve-2026-55484</title>
    <updated>2026-09-28T12:38:49.299600+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>ALOS HTTP is a Linux-first Go web framework and application server built around a custom networking stack. Prior to 0.0.0-20260617230736-314b6783e196, core/utils.go::sanitizeRequestPath calls splitPathQuery on a request path beginning with a question mark and then performs the unchecked p[0] access without checking whether the resulting path is empty. An unauthenticated client can send a malformed request such as a question-mark-only path through h1_plain.go::ParseH1RequestHead, hpack.go::decodeSimpleGetPathHTTPSRequest, hpack.go::observeHeader, or h3_conn.go::handleRequestStream, causing an out-of-bounds panic before core.Recovery() middleware runs and terminating the server process. This issue is fixed in pseudo-version 0.0.0-20260617230736-314b6783e196.</p>
      </div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/fkie_cve-2026-55484"/>
  </entry>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/ghsa-hr6j-w4mw-g9mj</id>
    <title>GHSA-hr6j-w4mw-g9mj — alos-http has unauthenticated remote DoS: malformed path starting with "?" triggers out-of-bounds panic in sanitizeRequ…</title>
    <updated>2026-09-28T12:38:49.299697+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Go: github.com/guno1928/alos-http</p>
<p>### Summary
A single unauthenticated HTTP request to a path starting with `?` (e.g. `GET ? HTTP/1.1`) crashes the entire server process.
The request line parser passes the path to `sanitizeRequestPath` which indexes the first byte of the path after stripping the query string. It does so without checking that it is non-empty, leading to an out-of-bounds panic. The panic occurs before any handler or middleware runs so `core.Recovery()` does not recover it. The entire process panics and every connection is dropped. It is reachable over HTTP/1.1, HTTP/2 and HTTP/3 if `ListenAndServeQUIC` is enabled</p>
<p>### Details
**root cause**: `core/utils.go::sanitizeRequestPath`
```go
// assume path := "?"
if len(path) == 0 { // len(path) == 1
	return "/"
}</p>
<p>p, _ := splitPathQuery(path) // p == ""</p>
<p>if p[0] == '/' /*...*/ { // p[0] on empty string =&gt; panic: index out of range
	return p
}
```</p>
<p>* when the path starts with "?" len(path) is not 0 so the early return does not fire
* after `splitPathQuery` `p` is empty `""`
* `p` is then indexed `p[0]` without a length check</p>
<p>Relevant calling sites:</p>
<p>* `h1_plain.go:ParseH1RequestHead` (HTTP/1.1)
* `h1.go::ParseH1Request` (dead code)
* `hpack.go::decodeSimpleGetPathHTTPSRequest` (HTTP/2)
* `hpack.go::observeHeader` (HTTP/2)
* `h3_conn.go::handleRequestStream` (HTTP/3)</p>
<p>these run in the connection-worker goroutine before the handler chain, which has no recover(), causing the entire http server to crash in case of a panic</p>
<p>### PoC</p>
<p>Minimal server, using…</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/ghsa-hr6j-w4mw-g9mj"/>
  </entry>
</feed>
