Software-update: Vaultwarden 1.33.0

Vaultwarden logo (79 pix) Bitwarden is een wachtwoordmanager die regelmatig op Tweakers voorbijkomt. Het is opensource en heeft ook de mogelijkheid om het op een eigen server te draaien. Ontwikkelaar Daniel García heeft een onofficiële in Rust ontwikkelde implementatie van Bitwarden gemaakt, in eerste instantie onder de naam Bitwarden_rs maar sinds een paar jaar als Vaultwarden. Het gaat alleen om de serverkant van de wachtwoordmanager; voor de clients kan de officiële software van Bitwarden worden gebruikt. Vaultwarden is lichter in gebruik en heeft ook functionaliteit waarvoor bij Bitwarden moet worden betaald, waaronder functionaliteit voor het beheer van wachtwoorden op organisatieniveau. Versie 1.33.0 van Vaultwarden is uitgekomen en hier zijn de volgende veranderingen en verbeteringen in aangebracht:

Security Fixes

This release contains security fixes for the following advisories. And we strongly advice to update as soon as possible.

  • GHSA-f7r5-w49x-gxm3
    This vulnerability is only possible if you do not have an ADMIN_TOKEN configured and open links or pages you should not trust anyway. Ensure you have an ADMIN_TOKEN configured to keep your admin environment save.
  • GHSA-h6cc-rc6q-23j4
    This vulnerability is only possible if someone was able to gain access to your Vaultwarden Admin Backend. The attacker could then change some settings to use sendmail as mail agent but adjust the settings in such a way that it would use a shell command. It then also needed to craft a special favicon image which would have the commands embedded to run during for example sending a test email.
  • GHSA-j4h8-vch3-f797
    This vulnerability affects all users who have multiple Organizations and users which are able to create a new organization or have admin or owner rights on at least one organization. The attacker does need to know the Organization UUID of the Organization it want's to attack or compromise though.
Notable changes
  • Updated web-vault to v2025.1.1
  • Added partial manage role support for collections
  • Manager role is converted to a Custom role with either Manage All Collections or per collection.
    Admins and Owners probably want to check and verify if the rights are still correct.
  • The OCI containers and binaries are signed via GitHub Attestations
    This allows you to verify an OCI image or even the vaultwarden binary located within the OCI image.
What's Changed
  • Add inline-menu-positioning-improvements feature flag in #5313
  • Fix issues when uri match is a string in #5332
  • Add TOTP delete endpoint in #5327
  • fix group issue in send_invite in #5321
  • Update crates and GHA in #5346
  • Refactor the uri match fix and fix ssh-key sync in #5339
  • Add partial role support for manager only using web-vault v2024.12.0 in #5219
  • Fix issue with key-rotate in #5348
  • fix manager role in admin users overview in #5359
  • Prevent new users/members to be stored in db when invite fails in #5350
  • Update crates and web-vault to v2025.1.0 in #5368
  • Allow building with Rust v1.84.0 or newer in #5371
  • rename membership and adopt newtype pattern in #5320
  • build: raise msrv (1.83.0) rust toolchain (1.84.0) in #5374
  • Fix an issue with login with device in #5379
  • refactor: replace static with const for global constants in #5260
  • Add Attestations for containers and artifacts in #5378
  • Fix version detection on bake in #5382
  • Simplify container image attestation in #5387
  • improve admin invite in #5403
  • Add manage role for collections and groups in #5386
  • update web-vault to v2025.1.1 and add /api/devices in #5422
  • Security fixes in #5438
  • only validate SMTP_FROM if necessary in #5442

Vaultwarden

Versienummer 1.33.0
Releasestatus Final
Besturingssystemen Linux
Website Vaultwarden
Download https://github.com/dani-garcia/vaultwarden/releases/tag/1.33.0
Licentietype GPL

Door Bart van Klaveren

Downloads en Best Buy Guide

25-01-2025 • 15:32

17

Bron: Vaultwarden

Reacties (17)

17
17
12
1
0
2
Wijzig sortering
Updated web-vault to v2025.1.1
Nice. Ik had op GitHub gelezen dat er nog wat issues waren met het upgraden naar een nieuwere versie. Blijkbaar zijn die nu opgelost. En daardoor zijn SSH Keys nu ook zichtbaar in de web vault.

Waarbij SSH keys op zichzelf wel nog een nieuwe / experimentele feature zijn. En in Vaultwarden moet SSH keys support ook enabled worden, waarna die pas in de clients verschijnt (zag hem vandaag in de Android app, en nu gecheckt staat ook in de browser extension). En met een tweede experimentele flag voor Vaultwarden kun je de SSH agent feature enablen. Waarna de Desktop app een setting krijgt (meen ik dat ook daar expliciet enabled moest worden) om als SSH agent dienst te doen. Waarmee je dus de SSH key (private & public deel) in Bitwarden / Vaultwarden kunt opslaan, en de verschillende SSH client programma's automatisch de private key uit Bitwarden (Desktop) halen (/laten gebruiken, ik ken de exacte werking van een SSH agent niet en of de private key "veilig" naar de client wordt gestuurd of dat de client aan de agent vraagt om specifieke acties te doen gebruikmakende van de private key en de key dus nooit de agent verlaat). Gevolg dus is dus dat je bv niet op meerdere systemen losse keys hoeft te gebruiken. Maar dat je eenmalig een key in Bitwarden zet, en vervolgens op de systemen de desktop app installeert en bij elke SSH login Bitwarden de boel afhandelt. En je dus ook weer met 1 actie, het verwijderen van de key uit BW en SSH server, de boel kunt intrekken. Waarbij als ik het goed begrepen heb de Bitwarden app ook bij het gebruik van de agent / key om toestemming vraagt, inclusief het respecteren van de "Ask master password" instelling die ook op SSH keys gezet kan worden, waarbij de Desktop app dus ook (elke keer) het wachtwoord vraagt voor de key te gebruiken.
Het gebruik van de ssh-agent is dat die je private key alvast inleest en klaar zet voor gebruik, dan hoef je de passphrase niet elke keer in te vullen maar alleen met ssh-add, waarmee je jouw ssh-key in de ssh-agent laadt.
Op msWindows met de huidige openssh implementatie beidt dat een ssh-agent als windows service die jouw ooit geladen keys laadt met het laden van je registry (bij het inlogen). Wel makkelijk, doch bedenkelijk qua veiligiheid. De ssh-agent die bitwarden/vaultwarden tegenwoordig biedt doet ongetwijfeld iets vergelijkbaars: het laadt je private key uit de vault en biedt dat op een ssh-mannier aan.

Wat mij betreft kunnen bitwarden en vaultwarden (en de meeste password-vaults) al jaren ssh-keys opslaan: Daar waar ze met bestanden kunnen werken kan je daar je private en public key in zetten. En gezien het allemaal 'leesbare ascii' is, kan de inhoud van die bestanden ook altijd als tekst worden opgenomen. Zie je private key als een wachtwoord van 4kBytes :-) en je public key in een eigen veld en klaar is Clara.
Het is mooi dat bitwarden en vaultwarden nu bewust met die keys om kunnen gaan. Helaas genereren ze zelf maar 1 variant al is dat gelukkg wel een moderne. En door een ssh-agent aan te bieden wordt het al makkelijk. Als/zodra ze een ssh-copy-id kunnen aanbieden wordt het nog makkelijker, kunnen ze de combinatie bijhouden en eventueel zelfs af en toe automatisch bijwerken.
Het gebruik van de ssh-agent is dat die je private key alvast inleest en klaar zet voor gebruik, dan hoef je de passphrase niet elke keer in te vullen maar alleen met ssh-add, waarmee je jouw ssh-key in de ssh-agent laadt.
Ik ken de functionaliteit van een SSH agent (en ssh-add is natuurlijk iets dat hoort bij specifiek de ssh-agent implementatie van een SSH agent).
Ik bedoel dat ik niet weet hoe het technisch werkt. Vraagt de SSH client aan de agent "geef me de private key"? Ik hoop van niet, want dat zou nogal heel erg onveilig zijn. Dus dan zal de SSH client wel een stuk data aanleveren met de vraag "versleutel dit voor me". En dan is het gewoon veilig en verlaat de SSH key nooit de agent. En dan is het dus ook echt anders dan "private key file kun je ook als attachment opslaan". Immers moet je die private key dan weer in een bestand zetten dat door alle / andere software gelezen kan worden.
De ssh-agent die tegenwoordig met msWindows wordt meegeleverd heeft een wat aparte manier om met de gegevens om te gaan, vandaar dat ik het summier vertelde.

Technisch werkt ssh met de private-public keys zodanig dat de keys nooit over de lijn gaan maar dat gebeurt met handshakes of hoe je dat ook noemt. Lokaal staat je private key, remote je public key. Met creatief rekenen en de gegevens van de ".ssh/knownhosts" kan zodanig gerekend worden dat wiskundig kan worden bewezen dat de private en public key bij elkaar horen. Dat is het private/public key gebeuren.

Dan het gebruik van de private-key: Daar zou je een passphrase op moeten zetten, welke je dan weer elke keer moet invoeren. Dat wil je niet en daarvoor is de ssh-agent: Die leest ze in en controleert de passphrase 1 keer. Daarna mat je ze gebruiken tot de time-out die eventueel in je private-key zit of tot de ssh-agent wordt herstart (en nog een paar redenen). Het mooie van die ssh-agent is dat die soms ook door de ssh-tunnel heen kan en mag werken. Dan hoef je bij verder inloggen naar volgende systemen ook niets te doen. Ook zo handig bij het gebruik van ssh-proxies.
Dus dan zal de SSH client wel een stuk data aanleveren met de vraag "versleutel dit voor me".
Er wordt niks versleuteld met je private key, maar de agent kan inderdaad gevraagd worden iets te signen met je key, hij geeft de key zelf niet prijs.
Er wordt niks versleuteld met je private key, maar de agent kan inderdaad gevraagd worden iets te signen met je key, hij geeft de key zelf niet prijs.
Een digitale handtekening is een met een private key ondertekende waarde die met een public key ontsloten kan worden.
Een digitale handtekening is een met een private key ondertekende waarde die met een public key ontsloten kan worden.
Ik begrijp niet helemaal wat dit toevoegt aan wat ik schreef over wat een ssh-agent met je private key doet, maar bij cryptografische ondertekeningen is er ook nog eens geen sprake van een waarde die "ontsloten" wordt met een public key: wat je met de public key kunt doen is controleren of de ondertekening gemaakt is met behulp van de bij de public key behorende private key. (en in het geval van ssh bewijs je daarmee dus dat je toegang mag krijgen tot een account)
Ik begrijp niet helemaal wat dit toevoegt aan wat ik schreef over wat een ssh-agent met je private key doet,
Je omschrijft verkeerd wat er cryptografisch gedaan wordt.
maar bij cryptografische ondertekeningen is er ook nog eens geen sprake van een waarde die "ontsloten" wordt met een public key:
Een digitale handtekening is niets anders dan een met de private key versleutelde hashwaarde. Door die te ontsleutelen met de public key en de hashwaarde te controleren wordt de handtekening geverifieerd. Bij succesvolle verificatie is bewezen dat de data ondertekend is met de private key.

[Reactie gewijzigd door The Zep Man op 26 januari 2025 15:43]

Een digitale handtekening is niets anders dan een met de private key versleutelde hashwaarde
Dat is hoe sommige signing-algoritmes werken, zoals RSA, maar dat geldt niet voor alle algoritmes. (anders zouden er ook geen algoritmes kunnen bestaan die wel kunnen signen maar niet kunnen encrypten)
We hebben het over SSH sleutelmateriaal. Versleuteling is daarbij een vereiste.
Nee, want je ssh-key wordt alleen gebruikt om te signen... Niet voor de encryptie van de verbinding. (zou ook wat jammer zijn dat als je ssh met een ander authenticatie-mechanisme gebruikt je encryptie ook ineens weg is)

Nog maar eens voor de volledigheid: ik reageerde op de goede vraag wat een ssh-agent doet met je key, en dat is dus alleen maar signen. (er zit stomweg geen ondersteuning voor iets anders in het agent-protocol)

Dus ja, ssh doet uiteraard iets met encryptie, maar dat is niet waar je ssh-key voor gebruikt wordt.

[Reactie gewijzigd door Onno op 27 januari 2025 18:41]

in hoeverre werkt dit?

bijvoorbeeld ik zit nog op een hele oude bitwarden en kan nu op phones niet de app updaten want dat werkt daar niet mee, blijft vaultwarden daar wel mee werken of moet ik constant beiden blijven updaten?

Is dan handig om watch tower te gebruiken voor de docker vaultwarden? en dan de phones gewoon appstore of playstore de bitwarden app blijven updaten?

Tis beetje vervelend soms.. en ik zie dat de addons in de browsers soms vanzelf updaten ik kan bijvoorbeeld nou ook addons in de browser werken niet met mijn vanilla bitwarden server..

Daarnaast, wat is een goede manier om dit op te zetten?

Bijvoorbeeld, heb je nog steeds certificaten nodig met vaultwarden of is dat optioneel?
ik zit nog op een hele oude bitwarden en kan nu op phones niet de app updaten want dat werkt daar niet mee, blijft vaultwarden daar wel mee werken of moet ik constant beiden blijven updaten?
Selfhosted? Ik zou iig updaten want als je echt op een hele oude versie zit dan zijn er waarschijnlijk beveiligings updates doorgevoerd die je nu niet hebt.
Is dan handig om watch tower te gebruiken voor de docker vaultwarden? en dan de phones gewoon appstore of playstore de bitwarden app blijven updaten?
Je zal meerdere antwoorden krijgen hier, ene zegt nee, andere zegt ja. Mijn 2-cents, cruciale selfhosted apps nooit automatisch laten updaten.
Zelf elke update changelog lezen of er een migration note in staat.
Tis beetje vervelend soms.. en ik zie dat de addons in de browsers soms vanzelf updaten ik kan bijvoorbeeld nou ook addons in de browser werken niet met mijn vanilla bitwarden server..
Tijd om je BW server te upgraden of je vault exporteren en Vaultwarden selfhosted maken.
Bijvoorbeeld, heb je nog steeds certificaten nodig met vaultwarden of is dat optioneel?
Nog steeds nodig. Is een eitje met NPM (nginx proxy manager) of Traefik. Zoek maar op Google.

[Reactie gewijzigd door Joao op 25 januari 2025 20:42]

thx bedankt :)

Zal eens kijken
Je zal meerdere antwoorden krijgen hier, ene zegt nee, andere zegt ja. Mijn 2-cents, cruciale selfhosted apps nooit automatisch laten updaten.
Zelf elke update changelog lezen of er een migration note in staat.
Vaak gaan automatische updates goed. Voor die enkele keer dat het fout kan gaan kan een backup teruggezet worden. Met een goede configuratie is dat een enkele druk op een knop.

De kans op automatisch misbruikte kwetsbaarheden doordat updates niet tijdig worden doorgevoerd schat ik een stuk groter in.

[Reactie gewijzigd door The Zep Man op 26 januari 2025 15:40]

ik heb hem gewoon meedraaien met watch tower, nog nooit wat mee fout gegaan (al jaren)
verkeerd gepost

[Reactie gewijzigd door Joao op 25 januari 2025 20:24]

Op dit item kan niet meer gereageerd worden.