1
0
Fork 1
Spiegel von https://github.com/dani-garcia/vaultwarden.git synchronisiert 2025-03-12 16:47:03 +01:00
Commit-Graph

2854 Commits

Autor SHA1 Nachricht Datum
Timshel
6df71d95d4 Merge remote-tracking branch 'dani/main' into sso-support 2025-03-07 15:21:05 +01:00
Daniel
6edceb5f7a
Update Rust to 1.85.0 (#5634)
- also update the crates
2025-02-24 12:12:34 +01:00
Timshel
5ca0f4ffee Merge remote-tracking branch 'dani/main' into sso-support 2025-02-19 11:06:28 +01:00
Stefan Melmuk
359a4a088a
allow CLI to upload files with truncated filenames (#5618)
due to a bug in the CLI the filename in the form-data is not complete if
the encrypted filename happens to contain a /
2025-02-19 10:40:59 +01:00
Timshel
1feda56198 Merge remote-tracking branch 'dani/main' into sso-support 2025-02-17 16:24:09 +01:00
Mathijs van Veluw
3baffeee9a
Fix db issues with Option<> values and upd crates (#5594)
Some tables were lacking an option to convert Option<> to NULL.
This commit will fix that.

Also updated the crates to the latest version available.
2025-02-14 17:58:57 +01:00
Daniel
d5c353427d
Update crates & fix CVE-2025-25188 (#5576) 2025-02-12 10:21:12 +01:00
Timshel
5711080670 Pass the claim invited_by_email in case it was not in db 2025-02-11 22:37:59 +01:00
Timshel
edef0ca80d Improve tests 2025-02-11 19:47:05 +01:00
Timshel
7649ce8a3c Process org enrollment in accounts::post_set_password 2025-02-11 19:45:40 +01:00
Timshel
8d2d9f8d1a Revert "Remove unused UserOrganization.invited_by_email"
This reverts commit 548e19995e141314af98a10d170ea7371f02fab4.
2025-02-10 17:48:26 +01:00
Timshel
49dcceb622 Merge remote-tracking branch 'dani/main' into sso-support 2025-02-10 17:45:02 +01:00
Mathijs van Veluw
1f868b8d22
Show assigned collections on member edit (#5556)
Because we were using the `has_full_access()` function we did not returned assigned collections for an owner/admin even if the did not have the `access_all` flag set.
This commit will change that to use the `access_all` flag instead, and return assigned collections too.

While saving a member and having it assigned collections would still save those rights, and it was also visible in the collection management, it wasn't at the member it self.
So, it did work, but was not visible.

Fixes #5554
Fixes #5555

Signed-off-by: BlackDex <black.dex@gmail.com>
2025-02-07 22:33:11 +01:00
Timshel
d6051b1cdb Upgrade openidconnect to 4.0.0 2025-02-05 19:24:16 +01:00
Timshel
e31b154fdf Unify master password policy resolution 2025-02-04 18:06:41 +01:00
Timshel
a0662bb0db Merge remote-tracking branch 'dani/main' into sso-support 2025-02-04 18:06:37 +01:00
Timshel
f3a88060e0 Release v1.33.1
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEPFu8Fz2BGGz/3nKpWMgKKqbHZeEFAmegu7wACgkQWMgKKqbH
 ZeGjHA/+OgVQoEGvbK+t9serPsqX+Xya2zcP30AW0QV4NRwicx5GtP7Culth5JwN
 Nmecohat8MQ8JT3vcZht9NS/ctsqQqwU+1pCGG4TpPZTd6xhdDTwEdG0FVI2O65G
 8m2xIuXD3wPg2Hiw/DgXFQ++itMU6gXhFWPzvKofnXmtpmH0FjTn8CUGozNLinhC
 WQTy056LsCviud2bVxvAyGR1NUfGagMR3ScEQ6xp3WgexzmFJhYvFntGBOSvCYJF
 PbTfz/9KvdVfTVuTPuLMiNA7jiZfriTaGg+Jr8LCb5VvnLn+T94jfVMAeIoveQTg
 JMOUo21N0qbvPXxfNBBr9RFH0e92ajjUGLXaNuArC71eQzjlWGyxMf3pRFzOmsSv
 4TG0hEcTjo/SCDLibYjUkYFmLHUIvKPWMmaelFhFt26dCrbrJIj2+JEccOQLfPMV
 uDatyImrw9jG1t113l/xSYcIYGr9gUaJ6S/bVuUgUgbTJApiB+Wxe5wyFSco+XfT
 bDOIFHy+YYCSScSo0szsfbL/w5Qvs/ydVDWCfnTa0IlFlSgLjLXziyssGR7K7P2j
 YPWQ4bS6ZY8eao3nrt+PhnJTJBm2aPZPEKUpgpnTmjSbCGe4Ege/cZot/3IzMcCw
 P5L9JqlMhdPQjVH/EU05vKnVxtHOfxZ4XgZCDL9HtqQT28Cm9eE=
 =1t7B
 -----END PGP SIGNATURE-----

Merge tag '1.33.1' into sso-support

Release v1.33.1
2025-02-04 17:35:25 +01:00
Mathijs van Veluw
8d1df08b81
Fix icon redirect not working on desktop (#5536)
* Fix icon redirect not working on desktop

We also need to exclude the header in case we do an external_icon call.

Fixes #5535

Signed-off-by: BlackDex <black.dex@gmail.com>

* Add informational comments to the icon_external function

Signed-off-by: BlackDex <black.dex@gmail.com>

* Fix spelling/grammar

Signed-off-by: BlackDex <black.dex@gmail.com>

---------

Signed-off-by: BlackDex <black.dex@gmail.com>
2025-02-04 13:20:32 +01:00
Stefan Melmuk
3b6bccde97
add bulk-access endpoint for collections (#5542) 2025-02-04 09:42:02 +01:00
Daniel
d2b36642a6
Update crates & fix CVE-2025-24898 (#5538) 2025-02-04 01:01:06 +01:00
Mathijs van Veluw
a02fb0fd24
Update workflows and enhance security (#5537)
This commit updates the workflow files and also fixes some security issues which were reported by using zizmor https://github.com/woodruffw/zizmor

Signed-off-by: BlackDex <black.dex@gmail.com>
2025-02-04 00:33:43 +01:00
Daniel
1109293992
Update Rust to 1.84.1 (#5508)
- also update the crates
- add necessary modifications for `rand` upgrade
- `small_rng` is enabled by default now
2025-02-01 13:16:32 +01:00
Timshel
59bfc13d8c Merge remote-tracking branch 'dani/main' into sso-support 2025-01-30 21:07:18 +01:00
Mathijs van Veluw
3c29f82974
Allow all manager to create collections again (#5488)
* Allow all manager to create collections again

This commit checks if the member is a manager or better, and if so allows it to createCollections.
We actually check if it is less then a Manager, since the `limitCollectionCreation` should be set to false to allow it and true to prevent.

This should fix an issue discussed in #5484

Signed-off-by: BlackDex <black.dex@gmail.com>

* Fix some small issues

Signed-off-by: BlackDex <black.dex@gmail.com>

---------

Signed-off-by: BlackDex <black.dex@gmail.com>
2025-01-29 20:41:31 +01:00
Roman Ratiner
663f88e717
Fix Duo Field Names for Web Client (#5491)
* Fix Duo Field Names for Web Client

* Fix Api Validation

* Rename Duo Labels In Admin
2025-01-29 12:00:14 +01:00
Timshel
175d488d6c Log password change event on SSO account creation 2025-01-28 21:52:38 +01:00
Timshel
246072c198 Merge remote-tracking branch 'dani/main' into sso-support 2025-01-28 21:52:27 +01:00
Stefan Melmuk
a3dccee243
add and use new event types (#5482)
* add additional event_types

* use correct event_type when leaving an org

* use correct event type when deleting a user

* also correctly log auth requests

* add correct membership info to event log
2025-01-28 11:25:53 +01:00
Mathijs van Veluw
c0ebe0d982
Fix passwordRevisionDate format (#5477) 2025-01-27 20:16:59 +01:00
Win‮8201‭Linux‬
1b46c80389
Make sure the icons are displayed correctly in desktop clients (#5469) 2025-01-27 18:29:24 +01:00
Stefan Melmuk
2c549984c0
let invited members access OrgMemberHeaders (#5461) 2025-01-27 18:27:11 +01:00
Stefan Melmuk
ecab7a50ea
hide already approved (or declined) devices (#5467) 2025-01-27 18:21:22 +01:00
Timshel
004aae9daa Release v1.33.0
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEPFu8Fz2BGGz/3nKpWMgKKqbHZeEFAmeU088ACgkQWMgKKqbH
 ZeGBdQ//WuDOcJQKf67OGV6LJvxVhcHFq5QnG9FoBN3OH+dJoImbr9pxIMwFbjp5
 15BKiOVnnIYU0n6Su2iC6eZ3ch/ygOmay2z3QOPgOPTU/mziaox031OQ3ToRil5S
 Vdn1WXyUd+73qzWSAOfUfsMawmtRgHz3pNq1JUJT8NGvdY0L2D6bq65j4pcGc5UE
 QCCd5/sMNhBPUT5sSr8l6uiLU/6ls1ktt2oV4kISeiEjLgDvbJIqX6gnhdhquJui
 mqgiw3n8lU++ug0cyj4/0oBRhGzHjAApxnxdl/y0Nz/vUPQNkzwfp2NTC0eDJhEX
 +bQFMojpsh5duOsCppOy/I6y2jvc8i9YH1JSuRh2P4HjtbRJej6O2RU3xKv7s/SP
 EoDf0Uc7GnGjjRzLH3VS4epJ4DVEnOSFXETMbkDMjoYctaxYmfS/67Yksw9sJ6Fb
 QJJDcikp3OmstqU2nLAcb033tALOfDJ6znG6SngJP5jhhHgJqnq51puGUbXdS69a
 /ELMljrm2q6eWu3F5G56hGxQGoNzFlkBpnAP0DyHTAMposE9GBKATrIbljBYTFEw
 Y/gTwhK5JiQgFanSSqwB4K1o2RK3JI1r8BMAxnAnzv4QXH32uSyBWkF0udumWpGj
 KZcmjQ+5MSNaCsRMRjHn3qTYhAD+Lla51SzC3YPvH4I38OHqZVQ=
 =VrFy
 -----END PGP SIGNATURE-----

Merge tag '1.33.0' into sso-support

Release v1.33.0
2025-01-27 13:31:28 +01:00
Stefan Melmuk
2903a3a13a
only validate SMTP_FROM if necessary (#5442) 2025-01-25 05:46:43 +01:00
Mathijs van Veluw
952992c85b
Org fixes (#5438)
* Security fixes for admin and sendmail

Because the Vaultwarden Admin Backend endpoints did not validated the Content-Type during a request, it was possible to update settings via CSRF. But, this was only possible if there was no `ADMIN_TOKEN` set at all. To make sure these environments are also safe I added the needed content-type checks at the functions.
This could cause some users who have scripts which uses cURL for example to adjust there commands to provide the correct headers.

By using a crafted favicon and having access to the Admin Backend an attacker could run custom commands on the host/container where Vaultwarden is running on. The main issue here is that we allowed the sendmail binary name/path to be changed. To mitigate this we removed this configuration item and only then `sendmail` binary as a name can be used.
This could cause some issues where the `sendmail` binary is not in the `$PATH` and thus not able to be started. In these cases the admins should make sure `$PATH` is set correctly or create a custom shell script or symlink at a location which is in the `$PATH`.

Added an extra security header and adjusted the CSP to be more strict by setting `default-src` to `none` and added the needed missing specific policies.

Also created a general email validation function which does some more checking to catch invalid email address not found by the email_address crate.

Signed-off-by: BlackDex <black.dex@gmail.com>

* Fix security issue with organizationId validation

Because of a invalid check/validation of the OrganizationId which most of the time is located in the path but sometimes provided as a URL Parameter, the parameter overruled the path ID during the Guard checks.
This resulted in someone being able to execute commands as an Admin or Owner of the OrganizationId fetched from the parameter, but the API endpoints then used the OrganizationId located in the path instead.

This commit fixes the extraction of the OrganizationId in the Guard and also added some extra validations of this OrgId in several functions.

Also added an extra `OrgMemberHeaders` which can be used to only allow access to organization endpoints which should only be accessible by members of that org.

Signed-off-by: BlackDex <black.dex@gmail.com>

* Update server version in config endpoint

Updated the server version reported to the clients to `2025.1.0`.
This should make Vaultwarden future proof for the newer clients released by Bitwarden.

Signed-off-by: BlackDex <black.dex@gmail.com>

* Fix and adjust build workflow

The build workflow had an issue with some `if` checks.
For one they had two `$` signs, and it is not recommended to use `always()` since canceling a workflow does not cancel those calls.
Using `!cancelled()` is the preferred way.

Signed-off-by: BlackDex <black.dex@gmail.com>

* Update crates

Signed-off-by: BlackDex <black.dex@gmail.com>

* Allow sendmail to be configurable

This reverts a previous change which removed the sendmail to be configurable.
We now set the config to be read-only, and omit all read-only values from being stored during a save action from the admin interface.

Signed-off-by: BlackDex <black.dex@gmail.com>

* Add more org_id checks

Added more org_id checks at all functions which use the org_id in there path.

Signed-off-by: BlackDex <black.dex@gmail.com>

---------

Signed-off-by: BlackDex <black.dex@gmail.com>
2025-01-25 01:32:09 +01:00
Timshel
6ee5580b03 Merge remote-tracking branch 'dani/main' into sso-support 2025-01-24 17:30:31 +01:00
Stefan Melmuk
c0be36a17f
update web-vault to v2025.1.1 and add /api/devices (#5422)
* add /api/devices endpoints

* load pending device requests

* order pending authrequests by creation date

* update web-vault to v2025.1.1
2025-01-23 12:30:55 +01:00
Mathijs van Veluw
d1dee04615
Add manage role for collections and groups (#5386)
* Add manage role for collections and groups

This commit will add the manage role/column to collections and groups.
We need this to allow users part of a collection either directly or via groups to be able to delete ciphers.
Without this, they are only able to either edit or view them when using new clients, since these check the manage role.

Still trying to keep it compatible with previous versions and able to revert to an older Vaultwarden version and the `access_all` feature of the older installations.
In a future version we should really check and fix these rights and create some kind of migration step to also remove the `access_all` feature and convert that to a `manage` option.
But this commit at least creates the base for this already.

This should resolve #5367

Signed-off-by: BlackDex <black.dex@gmail.com>

* Fix an issue with access_all

If owners or admins do not have the `access_all` flag set, in case they do not want to see all collection on the password manager view, they didn't see any collections at all anymore.

This should fix that they are still able to view all the collections and have access to it.

Signed-off-by: BlackDex <black.dex@gmail.com>

---------

Signed-off-by: BlackDex <black.dex@gmail.com>
2025-01-21 23:33:41 +01:00
Stefan Melmuk
ef2695de0c
improve admin invite (#5403)
* check for admin invite

* refactor the invitation logic

* cleanup check for undefined token

* prevent wrong user from accepting invitation
2025-01-20 20:21:44 +01:00
Timshel
ae1c17aacf Prevent accepting another user invitation 2025-01-17 19:43:25 +01:00
Timshel
0b556b21b0 Review fixes 2025-01-16 19:58:52 +01:00
Timshel
6f9b88e572 Allow set-password only if account is unitialized 2025-01-16 18:14:06 +01:00
Timshel
da8be29de0 Membership::confirm_user_invitations fix and tests 2025-01-16 17:32:19 +01:00
Timshel
3ec4b0c476 Merge remote-tracking branch 'dani/main' into sso-support 2025-01-15 16:53:56 +01:00
Daniel
29f2b433f0
Simplify container image attestation (#5387) 2025-01-13 19:16:10 +01:00
Timshel
795328bb9f Merge remote-tracking branch 'dani/main' into sso-support 2025-01-13 15:26:44 +01:00
Mathijs van Veluw
07f80346b4
Fix version detection on bake (#5382) 2025-01-11 11:54:38 +01:00
Mathijs van Veluw
4f68eafa3e
Add Attestations for containers and artifacts (#5378)
* Add Attestations for containers and artifacts

This commit will add attestation actions to sign the containers and binaries which can be verified via the gh cli.
https://cli.github.com/manual/gh_attestation_verify

The binaries from both Alpine and Debian based images are extracted and attested so that you can verify the binaries of all the containers.

Signed-off-by: BlackDex <black.dex@gmail.com>

* Adjust attest to use globbing

Signed-off-by: BlackDex <black.dex@gmail.com>

---------

Signed-off-by: BlackDex <black.dex@gmail.com>
2025-01-10 21:32:38 +01:00
Integral
327d369188
refactor: replace static with const for global constants (#5260)
Co-authored-by: Daniel García <dani-garcia@users.noreply.github.com>
2025-01-10 21:06:38 +01:00
Mathijs van Veluw
ca7483df85
Fix an issue with login with device (#5379)
During the refactoring done in #5320 there has a buggy slipped through which changed a uuid.
This commit fixes this, and also made some vars pass by reference.

Fixes #5377

Signed-off-by: BlackDex <black.dex@gmail.com>
2025-01-10 20:37:23 +01:00