mirror of
https://github.com/open-webui/open-webui.git
synced 2026-05-06 19:08:59 -05:00
[GH-ISSUE #1302] audit: external connection #27965
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @demesm on GitHub (Mar 26, 2024).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/1302
What is the purpose of this connection to a remote ip?
@Darin755 commented on GitHub (Mar 26, 2024):
This is fairly concerning. This project has the potential to allow people to actually have privacy while using AI but some of the design choices do not seem to focus on privacy.
@tjbck commented on GitHub (Mar 26, 2024):
Related #807, To reiterate, WebUI does not make any external connections in operation and everything stays on your machine. Don't trust our word for it; We encourage you to examine/audit our code, and make a PR in case we missed anything. We would not have open-sourced the project if we wanted to be shady about the data collection policy.
We would also love to know what part of the code is making this connection, if I had to make an educated guess based on the precedented issue reports, it seems like one of our dependency libraries upstream is making the connection. Feel free to continue your investigation and keep us updated!
@ghost commented on GitHub (Mar 26, 2024):
I've intended to communicate my experience in this regard eventually and this ticket is a good opportunity. To date, I've almost exclusively used the Docker container with Podman (self-built and official download). I think I've adequately identified the source of all external network connections I've encountered, which all appear to be entirely legitimate. I've also not yet found anything suspicious in the source code of this project or dependencies (granted I've not performed a full audit 😀 but my first pull request was quickly implemented to disable Chroma telemetry #618).
Note that the Dockerfile explicitly attempts to preload models for Whisper and Chroma embedding (via sentence_transformers) during the build process. In my experience, the containers function entirely offline with a startup delay (this is a topic for another discussion and IMHO a ticket is warranted). You can now use the
GLOBAL_LOG_LEVEL="DEBUG"environment variable to get a deeper glimpse.Here are my notes:
Connections
Connection initiated here:
There seems to be a problem with
SENTENCE_TRANSFORMERS_HOME=/app/backend/data/cache/embedding/modelssomewhere that appears to result in execution ofhf_hub_download()at this pointIt seems that litellm make a compulsory connection to download this file. Use of LITELLM_LOCAL_MODEL_COST_MAP may be a reasonable mitigation. Testing should be easy enough.
Gravatar is also incorporated but I've yet to encounter any related traffic perhaps due to my choice of invalid email addresses that I use with my Open-WebUI accounts.
Of course connections to OpenAI and anywhere else like MistralAI will occur if desired and configured appropriately.
@ghost commented on GitHub (Mar 26, 2024):
This IP resolves to a CloudFront Philadelphia address:
I'd wager that this is a Huggingface endoint.
ARIN WHOIS data
@Darin755 commented on GitHub (Mar 26, 2024):
Maybe you could add a environment variable that explicitly tells it to connect to the internet? This could be added to the getting started command and those who do not want third party services for privacy reasons could simply remove the variables.
My initial comment was probably way to harsh but I have noticed that some projects simply do not focus on privacy or ethical issues. That does not make them malicious but is usually a byproduct of the developers not caring about privacy.
@justinh-rahb commented on GitHub (Mar 26, 2024):
Thanks @lainedfles for the thorough analysis! The part you noted here probably should be looked into @tjbck:
And yes, Gravatar shouldn't be fetched unless you want it to be used by setting so in your profile settings.
@justinh-rahb commented on GitHub (Mar 26, 2024):
We've a documented history of taking these matters seriously, but we also rely on others to find and report this stuff. Thank you to everyone for keeping an eye on things. We do try to find this stuff early, but sometimes things get snuck in after they were originally merged.
@ghost commented on GitHub (Apr 5, 2024):
I've confirmed that
--env LITELLM_LOCAL_MODEL_COST_MAP="True"successfully eliminates the LiteLLM startup connection. When used along with #1419, there are no connections on startup except for your configured LLM models (in my case localhost for Ollama). The Open-WebUI update check still must be manually triggered via the Settings -> About page. Offline startup is MUCH faster!@Darin755 commented on GitHub (Apr 5, 2024):
It might be worth making this the default
@justinh-rahb commented on GitHub (Apr 5, 2024):
Nice one @lainedfles !
@ghost commented on GitHub (Apr 5, 2024):
@Darin755 I agree! PR created: #1436
@justinh-rahb Thanks, I'm having a lot of fun with this project, it's fast becoming a new hobby! Thank you for all your knowledge and support.
@ghost commented on GitHub (Apr 11, 2024):
Found another HuggingFace connection to download the WhisperModel. See #1499