Bugs found, fixes shared.

Argo helps me look for security bugs in open-source code. I review the results and report them upstream. Here’s what became public.

Projects
27
Public PRs
66
Published advisories
24
Resolved records
85
CVEs listed
10

Where things stand

96public records
Resolved
85
Open
5
Unpatched
5
Other closed
1

By severity

5
30
47
12
1
1

Projects with most records

14
11
9
7
6

Across all 96 public records. Select a severity or project to explore. GitHub's Moderate advisories are grouped under Medium.

Explore the findings

Every record leads to a public pull request or advisory.

96 records across 27 projects

n8nTypeScript~207.4KWorkflow automation platform with an MCP browser server.1 record
Open WebUIPython~153.4KSelf-hosted AI interface for LLMs and tools.2 records
VaultwardenRust~68.5KSelf-hosted, Bitwarden-compatible password manager server.3 records
PocketBaseGo~60.7KOpen-source Go backend: SQLite database, auth and admin dashboard in one file.1 record
GiteaGo~58.3KSelf-hosted Git service with collaboration, package, and CI features.2 records
mitmproxyPython~45.2KInteractive TLS-capable HTTP proxy for debugging, testing and security analysis.2 records
DuckDBC++~42.2KIn-process analytical database and SQL engine.1 record
ntfyGo~33.6KSimple HTTP-based pub-sub notification service — send push notifications via a plain PUT/POST, no app-specific setup.1 record
  • PR #1845 Access reset and user deletion canceled only one of a user's live subscribers; the maintainer merged the complete fix in #2077 Highbroken access control Fixed upstream fix 
SurrealDBRust~33.1KDistributed document-graph database for realtime applications.2 records
authentikPython~25.4KA self-hosted identity provider (SSO) implementing SAML, OAuth2/OIDC, LDAP and SCIM.2 records
NavidromeGo~23.5KSelf-hosted music streaming server, Subsonic-API compatible.3 records
ds4C~21.4KA compact C engine for running DeepSeek-class LLMs with an agent / tool loop.11 records
  • PR #539 Fix pre-auth double-free in the JSON request parser (applied via commit 8e49a5c, co-authored with antirez) Criticaldouble-free Merged upstream merged 
  • PR #542 Bound file-declared length prefixes in the model loader (applied via commit c7689db, co-authored with antirez, alongside #543 and #545) Highheap overflow Merged upstream merged 
  • PR #543 Cross-check tensor data size against shape in FP8/FP4 dequant (applied via commit c7689db, co-authored with antirez, alongside #542 and #545) Mediumout-of-bounds read Merged upstream merged 
  • PR #544 Cap file-declared lengths in agent KV-cache reads (applied via commit 0fa15c6, co-authored with antirez) Mediummemory DoS Merged upstream merged 
  • PR #545 Bound GGUF metadata / tensor counts by file size before allocating (applied via commit c7689db, co-authored with antirez, alongside #542 and #543) Mediumresource exhaustion Merged upstream merged 
  • PR #546 Reject an oversized snapshot token_count before allocating (applied via commit f02d79c, co-authored with antirez) Lowdistributed DoS Merged upstream merged 
  • PR #547 Make tool-output validation O(n) instead of O(n²) (pre-auth CPU DoS) (applied via commit a169cff, co-authored with antirez) Mediumalgorithmic DoS Merged upstream merged 
  • PR #548 Bound tokenizer merges count to INT32_MAX like the tokens table (antirez/ds4#548 itself is still open upstream; adopted with authorship preserved into the community fork elkaix/ds4) Lowinteger bound Merged in fork 
  • PR #541 Handle NaN in json_int() (undefined double→int cast) (applied via commit 8340f35, co-authored with antirez) Lowundefined behavior Merged upstream merged 
  • Fork PR #1 Unlink the bash-tool output temp file on job cleanup (antirez/ds4#540 itself is still open upstream; adopted with authorship preserved into the community fork elkaix/ds4) Lowresource cleanup Merged in fork 
  • Issue #549 Follow-up hardening / design items from a security review hardening notes Issue
LiveKitGo~20.3KOpen-source, self-hostable WebRTC infrastructure (SFU) for real-time audio, video, and data.14 records
MediaMTXGo~20.1KZero-dependency real-time media server & proxy (RTSP, RTMP, HLS, WebRTC, SRT, MoQ).1 record
FreshRSSPHP~16.1KSelf-hosted RSS / Atom feed aggregator.6 records
Apache AnswerGo~15.6KSelf-hosted Q&A and knowledge community platform.1 record
coturnC~14.3KA widely-deployed TURN and STUN relay server for WebRTC NAT traversal.2 records
PHP-CS-FixerPHP~13.6KThe PHP Coding Standards Fixer.3 records
ProxySQLC++~6.9KHigh-performance proxy for MySQL and PostgreSQL traffic.5 records
BaserowPython~6.1KOpen-source no-code platform for databases, automations and applications.1 record
halloyRust~4.4KA modern IRC client.5 records
open62541C~3.2KOpen-source C implementation of the OPC UA industrial communication stack.9 records
moquetteJava~2.5KA lightweight MQTT broker.7 records
legbaRust~1.9KA fast, modern credential brute-forcer and password sprayer.5 records
libcspC~677The CubeSat Space Protocol: a small network stack used on spacecraft and embedded systems.1 record
RecuperaBitPython~624Reconstructs and recovers files from damaged NTFS file systems.2 records
gguf-toolsC~357A C implementation of the GGUF model-file format used by llama.cpp / ggml.3 records

This is a snapshot of the public archive. Open an upstream link for the latest discussion. Records include fixes, backports and advisories, so they are not a count of distinct vulnerabilities. Published advisories can still be unpatched.

A finding is a starting point.

Argo coordinates language models in a structured source-code review. Human review checks the result; the upstream record shows what happened next. These records show practical work, rather than a complete measurement of what the system can find or miss.

Only public findings are listed. Private disclosures stay off this site until they are public. Argo has reviewed code in more languages than this archive represents.

Luigi is credited on LiveKit’s Security Hall of Fame. That recognition belongs to a private disclosure; the LiveKit records here link to public fixes. The individual PRs do not name the reporter.

Help make it better.

Found a false positive, a missed bug, or a prompt worth improving? Reports and pull requests are welcome.