Software-update: Bitwarden 2024.1.2

Bitwarden logo (79 pix)Bitwarden is een crossplatform- en opensourcewachtwoordbeheerdienst die persoonlijke gegevens in een versleutelde digitale kluis opslaat. Het is in de basis gratis te gebruiken en voor een klein bedrag per jaar is er toegang tot diverse extra's, zoals het kunnen opslaan van totp-codes, inloggen met een YubiKey en opslagcapaciteit voor bijlagen. Bitwarden is beschikbaar online, als desktopclient, als mobiele app en als plug-in voor diverse webbrowsers. De changelog voor versie 2024.1.2 laat de volgende veranderingen en verbeteringen zien:

Password Manager
  • Passkey storage for self-hosted: Passkeys can now be stored in self-hosted Bitwarden servers (see here).
Admin Console
  • More collections permissions via Public API: You can now use the Public API to hide passwords from users for any collection (see here).

Bitwarden

Versienummer 2024.1.2
Releasestatus Final
Besturingssystemen Android, Linux, macOS, iOS, Windows 10, Windows 11
Website Bitwarden
Download https://bitwarden.com/download
Licentietype Freeware/Betaald

Door Bart van Klaveren

Downloads en Best Buy Guide

24-01-2024 • 17:33

26

Submitter: Munchie

Bron: Bitwarden

Reacties (26)

26
26
24
0
0
2
Wijzig sortering
Is bitwarden in de cloud nou veilig?
Heb zelf vaultwarden lokaal (niet naar buiten toe open, nog) maar zit een beetje in dubio, kan er zelf mee overweg maar voor de rest van de familie kan ik dat niet “verkopen” met VPN enz.
Bitwarden, het totale systeem van server + apps / extensie, is geïmplementeerd volgens "Zero Trust" en "Zero Knowledge". Effectief betekent dit dat de informatie die de server opslaat en over de lijn communiceert waarde loos is. Alles wordt versleuteld en ontsleuteld in de app / extensie op basis van het master password. Als dus de data op de server uitlekt, of communicatie tussen de server en client uitlekt, is er helemaal niks aan de hand. Er is pas een probleem als ook het master password uitlekt, maar dit wordt dus nooit over de lijn gecommuniceerd en kan alleen lokaal uitlekken (keylogger, malware, ...).

En verder uiteraard ervoor zorgen dat de server alleen beschikbaar is via SSL/TLS (oftewel HTTPS). Niet perse ter bescherming van de data, maar om te voorkomen dat er een Man-in-the-Middle aanval kan plaatsvinden waardoor de versleutelde data mogelijk naar een malafide server gestuurd kan worden. Maar ook dan " versleutelde data, waarbij zero trust / zero knowledge je ook nog steeds beschermd zolang het master password niet gelekt is.
En verder uiteraard ervoor zorgen dat de server alleen beschikbaar is via SSL/TLS (oftewel HTTPS). Niet perse ter bescherming van de data, maar om te voorkomen dat er een Man-in-the-Middle aanval kan plaatsvinden waardoor de versleutelde data mogelijk naar een malafide server gestuurd kan worden. Maar ook dan " versleutelde data, waarbij zero trust / zero knowledge je ook nog steeds beschermd zolang het master password niet gelekt is.
Het probleem is dus een gecompromitteerde server en gebruik van de webinterface, die het ingevulde wachtwoord afvangt. Dat is geen risico als je enkel de applicatie of browserextensie gebruikt.
De webinterface is een webapplicatie die ook alles lokaal doet. Werkt dus precies hetzelfde als bv de browser extensie. Gewoon een berg JavaScript code die het versleutelen in de browser doet, en waarbij de encryption key dus ook alleen in memory beschikbaar is (na het invullen van het master password). Als je de pagina ververst is ook weer alles foetsie. En de webinterface zal dus dezelfde API calls doen als de extensie en app. Het is dus geen traditionele website waarbij elke klik een pagina bij de server opvraagt en de server een volledige pagina terugstuurt (incl dan de decrypted gegevens).
De webinterface is een webapplicatie die ook alles lokaal doet. Werkt dus precies hetzelfde als bv de browser extensie. Gewoon een berg JavaScript code die het versleutelen in de browser doet, en waarbij de encryption key dus ook alleen in memory beschikbaar is (na het invullen van het master password). Als je de pagina ververst is ook weer alles foetsie.
En wat levert die pagina's...? Andersom, waar haalt de browser die pagina's/JavaScript/webapplicatiecode vandaan bij het (initieel) laden...?

[Reactie gewijzigd door The Zep Man op 23 juli 2024 08:23]

Ah zo bedoelde je. Ja, zonder SSL/TLS zou een MitM kunnen die een compromised web interface serveert, dat klopt idd. En die zou dan inderdaad het ingevulde master password kunnen doorsluizen.

Overigens is het daarbij sowieso "lastig" om de web vault zonder HTTPS te serveren. Bv webauthn (voor passkeys of 2FA) vereist uberhaupt al dat het een https verbinding is. Naast dat browsers tegenwoordig uberhaupt niet happig zijn om http te serveren (vroeger kreeg je groene slotjes als een website https gebruikte, tegenwoordig zie je dat niet meer, maar wel rode icoontjes als het geen https is).
En ik vraag mij ook af of ds browser extensie en app uberhaupt wil communiceren met een niet HTTPS (API) endpoint.
Ah zo bedoelde je. Ja, zonder SSL/TLS zou een MitM kunnen die een compromised web interface serveert, dat klopt idd. En die zou dan inderdaad het ingevulde master password kunnen doorsluizen.
Je hebt nog steeds niet door wat ik bedoel. De server kan gecompromitteerd zijn. Dezelfde server die webverzoeken afhandelt en versleutelde data serveert.

1. Server geeft gemodificeerde webpagina met client-side code.
2. Computer van de gebruiker voert gemodificeerde client-side code uit.
3. Gebruiker voert master password/browser verwerkt master password op een andere manier.
4. Gemodificeerde client-side code stuurt master password plein text naar server.
5. Aanvaller ontvangt master password.
6. Aanvaller bezit versleutelde gegevens.
7. Aanvaller bezit alle data in wachtwoordkluis.

TLS blijft gewoon in stand.

[Reactie gewijzigd door The Zep Man op 23 juli 2024 08:23]

Is dit geen generiek risico, horende bij alle webdiensten?
Dit lijkt mij niet specifiek voor Bitwarden, dan wel de lokale variant.
Interessant. Ik heb een account en ook iemand anders ingesteld die na een paar dagen bij mijn wachtwoorden kan als ik er niet meer zou zijn. Maar hoe werkt dat dan als de versleuteling op mijn wachtwoord gebaseerd is?
De versleuteling is niet op jouw wachtwoord gebaseerd maar op een globale sleutel voor jouw kluis die vervolgens weer versleuteld is met jouw wachtwoord. Vraag me niet om de details. Dit is naar mijn weten de theorie platgestampt in 1 zin. Ik neem aan dat er een soort trucje is om iemand anders toegang te geven tot die globale sleutel in het geval dat jij er niet meer zou zijn.
Dat werkt doormiddel van shared keys. Net als PGP/GPG met emails. En HTTPS voor sites. Iemand heeft een private key waarmee hij een andere public key informatie kan geven om te decrypten.

Voor wat gedetailleerde informatie kun je hier kijken https://bitwarden.com/help/what-encryption-is-used/

Daar staat ook een linkje naar een interactieve waar je dat live kan zien. Helaas wel alleen nog PBKDF2.
Dank voor de info. Je kunt trouwens in je account PBKDF2 wijzigen naar Argon2.
Dat is ook hoe lastpass het verkoopt, maar hun gehele database was gejat en de makkelijke master passwords zijn inmiddels gebruteforced. Daar kwam bij dat alleen de wachtwoorden volgens dat principe waren versleuteld, de gebruikersnamen en websites niet. Het is altijd een risico om al je wachtwoorden toe te vertrouwen aan een derde partij. Als je het kan onderhouden zou ik altijd voor self hosted +vpn gaan. Het instellen is een klus, maar qua gebruik is het bijna geen omkijken naar, ook niet voor de technisch minder begaafde huisgenoten (strongswan client met een tile in android, sleuteltje = vpn = je wachtwoorden doen het) en unlock met je vinger.
makkelijke master passwords zijn inmiddels gebruteforced
Waarschijnlijk gaat dat niet alleen om de makkelijke wachtwoorden maar om de encryption keys die zijn opgeslagen met een zwakke derivate key.
Bitwarden heeft hier ook van geleerd. Heel erg vroeger werden de msster passwords standaard gehasht met PBKDF2 en specifiek 100.000 iteraties. En dat aantal iteraties is al lange tijd te laag en in het algemeen afgeraden. Butwarden heeft vervolgens ook alweer een tijd geleden het standaard aantal iteraties opgehoogd naar 600.000, en daarnaast ondersteuning toegevoegd voor de argon2 key derivation function. Die over het algemeen als nog wat betrouwbaarder wordt gezien. PBKDF2 beschermd namelijk voornamelijk tegen "CPU" aanvallen, waardoor het met steeds snellere CPUs, of meer cores (of de inzet van een GPU) dus steeds sneller wordt om de hash te berekenen en bij elke snellere CPU de hashing dus "zwakker" wordt. Argon2 daarentegen zitten ook wat andere zaken in, zoals het gebruik van "veel" RAM, waardoor de snelheid waarmee je hashes kunt genereren niet meer alleen afhankelijk is van de CPU, maar ook van de hoeveelheid RAM en hoe snel dat aangesproken kan worden.
Maar, ondanks de betere standaard instelling, en de mogelijkheid om het veiligere Argon2 algoritme te gebruiken, draagt dat niet bij aan de veiligheid van het password / encryption key van de gebruikers met de zwakkere instellingen. Maar daarvoor / daarom hebben ze, in ieder geval in de web vault, ook een grote waarschuwing toegevoegd om de gebruiker (waarbij deze zwakke instellingen gebruikt worden) aan te sporen deze instellingen aan te passen.
Daar kwam bij dat alleen de wachtwoorden volgens dat principe waren versleuteld, de gebruikersnamen en websites niet.
Maar dat is pure nalatigheid van LastPass. Bij Bitwarden wordt per definitie wel alles versleuteld opgeslagen. Of in ieder geval alles behorende tot de credentials zeg maar. Wellicht de mappen structuur niet? (Wellicht dat @BlackDex daar informatie over kan geven, als mede developer aan Vaultwarden).
En zo zijn er wel meer van die dingen. Bv favicons, bij Bitwarden worden deze door de client (app / extensie / web vault) gedownload, i.p.v. dat de server dit doet en/of wellicht door de server gecacht worden. Immers zou de server daarvoor ook weer informatie van de opgeslagen website nodig hebben.
Bij Bitwarden, en dus ook Vaultwarden is alles encrypted, behalve:
- Gebruiker naam & email
- Organisatie naam & email
- Organisatie groep namen

Verder is alles encrypted zoals URL's, folders/favorieten en collections namen. 2x dezelfde folder, collection of URL of username is niet te achterhalen zonder het te kunnen decrypten.
Dit geld dus voor alle vault items.

En het is tegenwoordig zelfs zo, dat elke nieuwe vault item zijn eigen key heeft, dit maakt het allemaal iets tijdrovender om te decrypten, maar wel iets veiliger, en als ik het goed begrepen heb, straks ook mogelijk om per vault item te delen met iemand anders ipv dat het alleen via een organisatie kan.

Kleine note, met Vaultwarden kun je als je wilt de master-password hash, die in de database wordt opgeslagen met meer iteraties dan 600_000 laten hashen als je wilt, mocht iemand je database te pakken krijgen en daar een bruteforce op willen loslaten, dan wordt het hem in ieder geval niet makkelijker gemaakt.

[Reactie gewijzigd door BlackDex op 23 juli 2024 08:23]

Dat hangt volledig af van jouw definitie van veilig ;)

Hun hele businesscase is het veilighouden van jouw kluis in de cloud. Het is ze alles aangelegen dit veilig te houden.
Kan jij dat thuis ook? 24/7 monitoren? Backup?

Aan de andere kant, hoe interessant ben jij om te hacken tegenover een netwerk met miljoenen wachtwoordkluizen?
Hun hele businesscase is het veilighouden van jouw kluis in de cloud. Het is ze alles aangelegen dit veilig te houden.
Exhibit A, your honor. De business case van partijen als Lastpass en Bitwarden is niet het veilig houden van data. Hun business case is winst maken. Veilige data is slechts één ding wat meegewogen wordt om dat doel te behalen.
Kan jij dat thuis ook? 24/7 monitoren? Backup?
Ja.
Aan de andere kant, hoe interessant ben jij om te hacken tegenover een netwerk met miljoenen wachtwoordkluizen?
Niet echt interessant. Mijn server staat achter een stateless VPN. Daardoor valt die niet zo snel op.

[Reactie gewijzigd door The Zep Man op 23 juli 2024 08:23]

Exhibit A, your honor. De business case van partijen als Lastpass en Bitwarden is niet het veilig houden van data. Hun business case is winst maken. Veilige data is slechts één ding wat meegewogen wordt om dat doel te behalen.
Niet helemaal. In een business case laat je zien hoe (en of) je winst gaat behalen. Het doel is winst behalen. Maar als klanten weglopen door een slechte beveiliging, zou dat een goede business case maken?
Ja.
Sorry, ik bedoelde, kan jij alleen 24/7 _live_ de digitale verkeersstromen in de gaten houden én de nieuwste berichten over de wereldwijde status van hackers en andere digi-ellende?
Niet echt interessant. Mijn server staat achter een stateless VPN. Daardoor valt die niet zo snel op.
Security by obscurity, de beste beveiliging! 8)7
In een business case laat je zien hoe (en of) je winst gaat behalen. Het doel is winst behalen. Maar als klanten weglopen door een slechte beveiliging, zou dat een goede business case maken?
Commerciële bedrijven zullen altijd geneigd zijn om kortetermijnwinst te verkiezen boven duurzame beveiligingsproducten. Dat was te zien met Lastpass. Het geluk heeft dat ik geen commercieel bedrijf ben, en ook niet afhankelijk ben van commerciële bedrijven voor mijn informatiebeveiliging. :)
Sorry, ik bedoelde, kan jij alleen 24/7 _live_ de digitale verkeersstromen in de gaten houden én de nieuwste berichten over de wereldwijde status van hackers en andere digi-ellende?
Dat zou kunnen via een weg of omweg, maar dat is niet nodig. Geautomatiseerde updates, backupsnen redundantie zorgen ervoor dat ik daar niet naar hoef om te kijken. Regelmatig de configuratie reviewen en hardenen doet de rest. Waarom ik dat wel voor een kleine groep gebruikers voor elkaar krijg en een groot bedrijf dat niet? Ik ben geen groot bedrijf.
Security by obscurity, de beste beveiliging! 8)7
Het zou alleen obscurity zijn als ik geen andere beveiligingsmaatregelen zou implementeren. Dat doe ik dus wel.

Verder is een actuele webapplicatie die toch een 0-day bevat beter beschermd achter een VPN of web proxy in plaats van dat die direct op het internet aangeboden wordt.

[Reactie gewijzigd door The Zep Man op 23 juli 2024 08:23]

Wel als je samen met niet ITers wachtwoorden gaat delen. Ik heb liever mijn kluis in de cloud bij bitwarden dan dat ik deze zelf op een centrale plek moet opslaan en dit per cliënt moet inrichten en bij moet houden. Hierin zie ik meer risico's.

Puur voor mijzelf is self hosted voldoende.
Het heeft met een aantal factoren te maken natuurlijk.
Alles (de databases, de entries de verbindingen, enz.) zijn versleuteld (zover ik weet). Dit geldt dus voor beide oplossingen.

Bitwarden zal beveiligingsspecialisten in dienst hebben. Zij zullen dus een veilig netwerk hebben en hun diensten actief bewaken voor 'vreemde zaken'.
Heb jij (echt) kennis van (IT)beveiliging, of kom je niet verder dan wat tutorials volgen op internet en/of "Ik heb een firewall en een VPN, dus ik ben veilig."

Vertrouw je jezelf dus voldoende en de rest van je netwerk? Hoe kundig acht je jezelf om een gevoelige database veilig te bewaren en te beschermen tegen derden (inclusief iedere app op je telefoon/tablet/computer, ieder IoT-apparaat met een internetverbinding dat mogelijk gehacked kan worden, enz., enz., enz.).
Ken je al je in- en uitgangen van alle apparaten op je netwerk die mogelijkerwijs te maken hebben, of in elk geval verbinding kunnen maken met (het apparaat waar je) Vaultwarden (op draait)?

En nog een andere kant: Bitwarden cloud is een 'groter doelwit' dan jij bent als individu. Dit is natuurlijk ook een hele grote factor.

Nog een factor. Stel dat je apparaat corrupt raakt. Heb je een backup/restoremechanisme? Ook niet onbelangrijk.

Bovenstaande zijn dus afwegingen die je moet meenemen voordat je daar zelf antwoord op kan geven.

(( edit: typo ))

[Reactie gewijzigd door lenwar op 23 juli 2024 08:23]

Sinds vandaag (weet niet welke update) heb ik er last van dat mn browser console volgespammed wordt met debug logs (Chrome & Firefox extensie). Super irritant tijdens het developen.

Super snelle edit: gelukkig kun je logs filteren in de console :)

[Reactie gewijzigd door jacobkap op 23 juli 2024 08:23]

Klopt, ik merkte het ook op iets met ‘bootstrap..’. Ik heb het mentaal weggefilterd :)
Ja, known issue, is ergens een issue voor in de bug tracker maar kan daar even niet bij op het moment.
Passkey storage for self-hosted: Passkeys can now be stored in self-hosted Bitwarden servers
Whut? De alternatieve implementatie, Vaultwarden, ondersteund dit al sinds 1.30(.0) gereleased begin november kort nadat de Bitwardsn browser extensie er ondersteuning voor kreeg.
https://github.com/dani-g...arden/releases/tag/1.30.0

Heb het zelf dan ook al gebruikt. In Firefox bij GitHub lijkt het prima te werken. Met Vivaldi lijkt dat echter niet het geval te zijn.
Dit was beschikbaar via een feature flag. Hierdoor konden we voor Vaultwarden dit al wel activeren. Dat was geen optie voor de self hosted Bitwarden.

Op dit item kan niet meer gereageerd worden.