Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can change "root" password with wizard #6486

Open
ppbpp opened this issue Jan 28, 2025 · 13 comments
Open

Can change "root" password with wizard #6486

ppbpp opened this issue Jan 28, 2025 · 13 comments
Labels
bug Something isn't working

Comments

@ppbpp
Copy link

ppbpp commented Jan 28, 2025

Describe The Bug

I can change the primary user's admin password by forcing the wizard web UI

Steps To Reproduce

  1. Start with a clear user session e.g. incognito
  2. Visit http://localhost:8096/web/#/wizardstart.html (or with a remote IP if port forwarding on the router)
  3. Follow the wizard and fill out the new password. The username was already filled out correctly for me.
  4. Enjoy full admin access to the server

Expected Behavior

no wizard access, especially with remote connections!

System (please complete the following information):**

  • Platform: Mac OS 15.3 (24D60)
  • Browser: any
  • Jellyfin Version: Jellyfin Server 10.10.3

I have other non-root users. Remote connections are allowed. Is this a misconfig? Let me know if you need a config or log dump.

Image
@ppbpp ppbpp added the bug Something isn't working label Jan 28, 2025
@ppbpp
Copy link
Author

ppbpp commented Jan 28, 2025

Digging some more i see that IsStartupWizardCompleted is set to false in system.xml. I have previously installed jellyfin, and reinstalled it since. Did it keep th user config but reset this flag to false upon reinstall? Trying to figure out how I got in this state. Either way, completing the wizard doesn't set it to true, so I can repeatedly change the password by this method.

@HamletDuFromage
Copy link

The wizard shows up on LAN, but not a remote connection

@ppbpp
Copy link
Author

ppbpp commented Jan 31, 2025 via email

@maru801
Copy link

maru801 commented Jan 31, 2025

Non admins should not be able to progress on that page.
I tried it out on a private window, and going to that screen just resulted in endless loading.

If someone managed to figure out the password for one of your admin accounts on Jellyfin, this method of attack has already become pointless to them.

Though that's not to say that this shouldn't be looked into.

Also, you can't access the startup wizard without being local. There may be something in your remote setup that makes Jellyfin perceive your connection as being local and not remote.

@ppbpp
Copy link
Author

ppbpp commented Jan 31, 2025 via email

@gnattu
Copy link
Member

gnattu commented Feb 1, 2025

That screen is not proceed-able when IsStartupWizardCompleted is true. The problem here is that you have it being false.

@ppbpp
Copy link
Author

ppbpp commented Feb 1, 2025 via email

@maru801
Copy link

maru801 commented Feb 1, 2025

Even if someone manages to figure out the URL to access your Jellyfin server, this issue is not going to benefit them until they figure out the admin username and password.

Without being signed in as an admin, this will not do anything as it just loads forever.

In order to possibly exploit this, the random person needs to know your admin name and password, in which case they don't even need to do this. Having access to an admin account, they can just go to the dashboard and change the login details there.

@ppbpp
Copy link
Author

ppbpp commented Feb 1, 2025 via email

@maru801
Copy link

maru801 commented Feb 1, 2025

That is normal behavior on a brand new server. As gnattu pointed out, this will not be an issue once IsStartupWizardCompleted is marked as true in the system.xml file.

Something most likely happened outside of Jellyfin that caused your IsStartupWizardCompleted to be marked as false.
Otherwise, this becomes an issue of figuring out a bug that causes that to switch to false, which I have not heard of yet.

@ppbpp
Copy link
Author

ppbpp commented Feb 1, 2025 via email

@maru801
Copy link

maru801 commented Feb 1, 2025

the worst part is completing the wizard doesn't mark the flag as true on this machine. so i keep getting the wizard ev time i log in w a fresh session O_o

That's not normal and it sounds like Jellyfin doesn't have write access to the system.xml file.

@thornbill
Copy link
Member

You need to provide complete detailed steps to reproduce this from start to finish. Your comments have been a bit all over the place as to what you have done to get in this state so far no one is able to reproduce this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

5 participants