This is a summary of the AI-generated 10-question deep analysis. The full version (longer answers, follow-up Q&A, related CVEs) requires login. Read the full analysis β
Q1What is this vulnerability? (Essence + Consequences)
π¨ **Essence**: Gradio allows calling **any method** on classes via endpoints. π **Consequences**: Unauthorized **Local File Read (LFR)**. π₯ **Impact**: Sensitive information leakage from the server.
Q2Root Cause? (CWE/Flaw)
π‘οΈ **Root Cause**: Improper access control on endpoints. π **CWE**: **CWE-29** (Improper Control of Filename for Include/Include-Adjacent). β οΈ **Flaw**: No restriction on which class methods can be invoked remotely.
Q3Who is affected? (Versions/Components)
π₯ **Affected**: **Gradio** (Python library). π **Versions**: **4.3 to 4.12**. π« **Fixed In**: Version **4.13.0** and above.
Q4What can hackers do? (Privileges/Data)
π΅οΈ **Hackers Can**: Read arbitrary files from the server. π **Privileges**: Local file system access. π **Data**: Sensitive configs, source code, secrets, or user data.
Q5Is exploitation threshold high? (Auth/Config)
π **Threshold**: **Low**. π **Auth**: Likely **None** required for the specific endpoint. βοΈ **Config**: Depends on Gradio deployment, but the flaw is in the core method invocation logic.
Q6Is there a public Exp? (PoC/Wild Exploitation)
π₯ **Public Exp?**: **Yes**. π **PoC**: Available on GitHub (DiabloHTB). π§ͺ **Tools**: Nuclei templates exist for automated scanning. π **Exploitation**: Active proof-of-concepts are public.
Q7How to self-check? (Features/Scanning)
π **Self-Check**: Use **Nuclei** with CVE-2024-1561 template. π οΈ **Command**: `nuclei -target <URL> -t CVE-2024-1561.yaml`. π **Verify**: Check if your Gradio version is < 4.13.0.
Q8Is it fixed officially? (Patch/Mitigation)
β **Fixed**: **Yes**. π¦ **Patch**: Upgrade to **Gradio 4.13.0+**. π **PR**: Fixed in PR #6884. π **Action**: Update library immediately.
β‘ **Urgency**: **HIGH**. π¨ **Priority**: Critical for ML model deployments. π’ **Action**: Patch immediately if running vulnerable versions. β³ **Risk**: Easy exploitation leads to data breach.