Giter Club home page Giter Club logo

Comments (7)

abidlabs avatar abidlabs commented on June 21, 2024

Hi @refiller this issue has been fixed as part of #7503

Also your security team e-mail ([email protected]) did not work

Where did you see this email? This has been replaced with: [email protected]

from gradio.

refiller avatar refiller commented on June 21, 2024

Hello, that e-mail can be found here https://github.com/gradio-app/gradio/blob/main/SECURITY.md

It's good to hear it's been fixed, is it part of any release yet? It seems like the CVE record thinks even the latest version is still vulnerable.

from gradio.

abidlabs avatar abidlabs commented on June 21, 2024

Yes I’ll issue a CVE advisory but it’s fixed in the latest version: 4.31.4, as well as many older versions

from gradio.

refiller avatar refiller commented on June 21, 2024

An advisory would be really helpful, thank you!

And thanks for the information too!

from gradio.

abidlabs avatar abidlabs commented on June 21, 2024

Hi @refiller I looked into this and actually the CVE in question is a little unclear. If its referring to GHSA-48cq-79qq-6f7x, then indeed that issue has been patched since gradio==4.19.2 and we have a published advisory for it.

If on the other hand, its referring to users being able to upload arbitrary files to a Gradio app that includes a file upload component (such as gr.File or gr.UploadButton), then this is indeed intentional and would be classified as a "won't fix". This would be similar to a Flask app or FastAPI app accepting any files to be uploaded in a general upload route.

from gradio.

refiller avatar refiller commented on June 21, 2024

Hello @abidlabs

https://nvd.nist.gov/vuln/detail/CVE-2023-41626 is the one I'm referring to, and it looks like that's the "won't fix" one.

The gist https://gist.github.com/impose1/590472eb0544ef1ec36c8a5a40122adb (apparently that's all it takes to report a vuln) says this:

Gradio v3.27.0 was discovered to contain an arbitrary file upload,Uploading files to the/tmp directory may result in malicious access to website permissions if there are file containing vulnerabilities in other sites on the server.

I'm trying to understand why the author thought this was a High vulnerability.

  • What is the problem with this? Can Gradio be tricked into executing something in the /tmp directory or something?
  • I don't see a problem with gradio allowing arbitrary file uploads (plenty of things support this)
  • I might see the author's point if the server admin could unexpectedly cause an arbitrary code execution situation, as in, if Gradio auto-executes anything in /tmp
  • I would not consider it a vulnerability if Gradio e.g. allowed somebody to upload a python file, and then the admin put code in to execute it. That's not Gradio's fault, that's the person using Gradio's fault.

from gradio.

abidlabs avatar abidlabs commented on June 21, 2024

That's an excellent question for the author of that CVE

What is the problem with this? Can Gradio be tricked into executing something in the /tmp directory or something?

Not as far as I know. If a security researcher finds this, and can provide us a PoC, we would treat this as a high-priority security vulnerability

I don't see a problem with gradio allowing arbitrary file uploads (plenty of things support this)
I might see the author's point if the server admin could unexpectedly cause an arbitrary code execution situation, as in, if Gradio auto-executes anything in /tmp
I would not consider it a vulnerability if Gradio e.g. allowed somebody to upload a python file, and then the admin put code in to execute it. That's not Gradio's fault, that's the person using Gradio's fault.

Agreed with these points

from gradio.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.