Skip to content
View sfwani's full-sized avatar
💭
researching the intersection of AI and security
💭
researching the intersection of AI and security

Block or report sfwani

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
sfwani/README.md

Sanaan Fayaz Wani

I break AI agent frameworks.

Security Engineer at Amazon, working in IAM security on bringing agentic AI into identity and access management. Outside that, I hunt unauthenticated remote code execution in the infrastructure that runs large language models: agent frameworks, inference servers, workflow orchestrators, and the serialization formats they trust.

10 CVEs assigned  ·  25 published advisories  ·  167 filed across 59 projects

Published advisories

Advisory Project CVSS Class
GHSA-24q6-6h89-f9p7 autogpt-platform-backend 10.0 Critical Authentication bypass (CWE-287)
GHSA-42mf-vpmr-gw5r ag2 9.9 Critical Command injection (CWE-78)
GHSA-jmr9-98g4-2phv portainer 9.4 Critical Access control (CWE-284)
CVE-2026-49950 xinference 9.3 Critical Missing authentication (CWE-306)
GHSA-hxvp-ff3g-qcj7 @vendure/core 8.8 High Information disclosure (CWE-200)
GHSA-v3vj-mch3-x6c2 omnigent 8.8 High Resource exposure (CWE-668)
CVE-2026-57516 ray 8.8 High Code injection (CWE-94)
GHSA-57mf-wqwq-6g6x autogpt-platform-backend 8.2 High Hard-coded crypto key (CWE-321)
GHSA-qrjx-72xx-xhmh ag2 8.1 High Path traversal (CWE-22)
CVE-2026-45675 open-webui 8.1 High Privilege escalation (CWE-269)
GHSA-pqxw-g93w-hj9x trigger.dev 8.1 High Improper isolation (CWE-653)
GHSA-jc26-22qp-cgqj trigger.dev 7.9 High Missing authentication (CWE-306)
GHSA-3c52-v5v2-3r56 budibase 7.7 High Server side request forgery (CWE-918)
CVE-2026-56673 ComfyUI 7.5 High Path traversal (CWE-22)
CVE-2026-56671 ComfyUI 7.5 High Path traversal (CWE-22)
CVE-2026-59714 open-webui 7.1 High Missing authorization (CWE-862)
GHSA-w677-p6hx-85vw teable 7.1 High Authentication bypass (CWE-287)
GHSA-8p4j-2mm9-rh78 Tracecat 6.5 Medium Server side request forgery (CWE-918)
CVE-2026-53577 kestra 6.5 Medium Incorrect authorization (CWE-863)
GHSA-jvm6-86c5-f8j8 teable 6.5 Medium Server side request forgery (CWE-918)
CVE-2026-63342 hatchet 6.3 Medium Incorrect authorization (CWE-863)
GHSA-59h8-w5q6-mfmp trigger.dev 5.3 Medium Missing authentication (CWE-306)
CVE-2026-73301 @budibase/server 4.3 Medium Missing authorization (CWE-862)
GHSA-xf86-hfpm-92xr directus 3.1 Low Incorrect authorization (CWE-863)
CVE-2026-59715 open-webui 3.1 Low Missing authentication (CWE-306)

Each advisory above links to a full writeup: root cause, the vulnerable code, reproduction steps and the fix. Mirrored at sfwani/advisories.

Table regenerates daily from published advisories credited to me. Verify independently: GitHub Advisory Database.

What I look for

Unauthenticated reachability

An auth gated code execution sink is a bug. The same sink reachable before auth is a 10.0. My highest severity findings are reachability failures rather than novel sinks: CWE-306 and CWE-862 standing in front of machinery that was never meant to be public.

Sandboxes that are not sandboxes

Agent frameworks ship "safe" Python evaluators built on AST allowlists. Format string dunder traversal, decorator abuse, and incomplete node denylists walk straight out of most of them.

Deserialization on exposed ports

pickle, cloudpickle, joblib, and torch.load(weights_only=False) sitting behind an inference or actor pool port that quietly binds 0.0.0.0 (CWE-502).

Request forgery into control planes

My highest volume class (CWE-918): metadata endpoints, internal schedulers, and cluster APIs one redirect away from a user supplied URL.

Disclosure

Reports go to maintainers privately, through GitHub Security Advisories or the project's stated security channel, never a public issue tracker. Advisories carry a 90 day disclosure window. Nothing is named, hinted at, or mirrored publicly until the maintainer publishes.

Competitions

Placement Event
1st AI Village CTF, DEF CON 34
2nd Adversary Wars CTF, Adversary Village, DEF CON 34
1st Adversary Wars CTF, Adversary Village, DEF CON 33
1st SHPE National CTF
1st Hackabull CTF
1st Central Florida Tech Grove CTF
1st Social Engineering Competition, The CARE Lab at Temple University
3rd SecureTheFuture Research Award, Palo Alto Networks
3rd NCAE CyberGames, South East Regionals

Website  ·  Experience  ·  Advisories  ·  LinkedIn

Pinned Loading

  1. advisories advisories Public

    Published security advisories I reported. Root cause, reproduction, and fix for each.

    Python