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

🤖 Bump github.com/pocketbase/pocketbase from 0.22.13 to 0.22.16 in /pocketbase #300

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jul 8, 2024

Bumps github.com/pocketbase/pocketbase from 0.22.13 to 0.22.16.

Release notes

Sourced from github.com/pocketbase/pocketbase's releases.

v0.22.16 Release

To update the prebuilt executable you can run ./pocketbase update.

  • Fixed the days calculation for triggering old logs deletion (#5179; thanks @​nehmeroumani). Note that the previous versions correctly delete only the logs older than the configured setting but due to the typo the delete query is invoked unnecessary on each logs batch write.

v0.22.15 Release

To update the prebuilt executable you can run ./pocketbase update.

  • Added mutex to tests.TestMailer() to minimize tests data race warnings (#5157).

  • Updated goja and the other Go dependencies.

  • Bumped the min Go version in the GitHub release action to Go 1.22.5 since it comes with net/http security fixes.


[!NOTE] If you are extending PocketBase with Go and updating with the go get -u command, you may get modernc.org/libc build error. This is because modernc.org/libc seems to have introduced breaking change(s) as minor release. To fix it adjust manually in your go.mod file the modernc.org/libc dependency to match with the same version as in the modernc.org/sqlite repo (aka. v1.52.1) and then run go mod tidy to refresh the go.sum file.

v0.22.14 Release

To update the prebuilt executable you can run ./pocketbase update.

  • Added OAuth2 POST redirect support (in case of response_mode=form_post) to allow specifying scopes for the Apple OAuth2 integration.

    Note 1: If you are using the "Manual code exchange" flow with Apple (aka. authWithOAuth2Code()), you need to either update your custom redirect handler to accept POST requests OR if you want to keep the old behavior and don't need the Apple user's email - replace in the Apple authorization url response_mode=form_post back to response_mode=query.

    Note 2: Existing users that have already logged in with Apple may need to revoke their access in order to see the email sharing options as shown in this screenshot. If you want to force the new consent screen you could register a new Apple OAuth2 app.

  • ⚠️ Fixed a security vulnerability related to the OAuth2 email autolinking (thanks to @​dalurness for reporting it).

    Just to be safe I've also published a GitHub security advisory (may take some time to show up in the related security databases).

    In order to be exploited you must have both OAuth2 and Password auth methods enabled.

    A possible attack scenario could be:

    • a malicious actor register with the targeted user's email (it is unverified)
    • at some later point in time the targeted user stumble on your app and decides to sign-up with OAuth2 (this step could be also initiated by the attacker by sending an invite email to the targeted user)
    • on successful OAuth2 auth we search for an existing PocketBase user matching with the OAuth2 user's email and associate them
    • because we haven't changed the password of the existing PocketBase user during the linking, the malicious actor has access to the targeted user account and will be able to login with the initially created email/password

    To prevent this for happening we now reset the password for this specific case if the previously created user wasn't verified (an exception to this is if the linking is explicit/manual, aka. when you send Authorization:TOKEN with the OAuth2 auth call).

    Additionally to warn users we now send an email alert in case the user has logged in with password but has at least one OAuth2 account linked. It looks something like:

    _Hello, Just to let you know that someone has logged in to your Acme account using a password while you already have OAuth2 GitLab auth linked.

... (truncated)

Changelog

Sourced from github.com/pocketbase/pocketbase's changelog.

v0.22.16

  • Fixed the days calculation for triggering old logs deletion (#5179; thanks @​nehmeroumani). Note that the previous versions correctly delete only the logs older than the configured setting but due to the typo the delete query is invoked unnecessary on each logs batch write.

v0.22.15

  • Added mutex to tests.TestMailer() to minimize tests data race warnings (#5157).

  • Updated goja and the other Go dependencies.

  • Bumped the min Go version in the GitHub release action to Go 1.22.5 since it comes with net/http security fixes.

v0.22.14

  • Added OAuth2 POST redirect support (in case of response_mode=form_post) to allow specifying scopes for the Apple OAuth2 integration.

    Note 1: If you are using the "Manual code exchange" flow with Apple (aka. authWithOAuth2Code()), you need to either update your custom redirect handler to accept POST requests OR if you want to keep the old behavior and don't need the Apple user's email - replace in the Apple authorization url response_mode=form_post back to response_mode=query.

    Note 2: Existing users that have already logged in with Apple may need to revoke their access in order to see the email sharing options as shown in this screenshot. If you want to force the new consent screen you could register a new Apple OAuth2 app.

  • ⚠️ Fixed a security vulnerability related to the OAuth2 email autolinking (thanks to @​dalurness for reporting it).

    Just to be safe I've also published a GitHub security advisory (may take some time to show up in the related security databases).

    In order to be exploited you must have both OAuth2 and Password auth methods enabled.

    A possible attack scenario could be:

    • a malicious actor register with the targeted user's email (it is unverified)
    • at some later point in time the targeted user stumble on your app and decides to sign-up with OAuth2 (this step could be also initiated by the attacker by sending an invite email to the targeted user)
    • on successful OAuth2 auth we search for an existing PocketBase user matching with the OAuth2 user's email and associate them
    • because we haven't changed the password of the existing PocketBase user during the linking, the malicious actor has access to the targeted user account and will be able to login with the initially created email/password

    To prevent this for happening we now reset the password for this specific case if the previously created user wasn't verified (an exception to this is if the linking is explicit/manual, aka. when you send Authorization:TOKEN with the OAuth2 auth call).

    Additionally to warn users we now send an email alert in case the user has logged in with password but has at least one OAuth2 account linked. It looks something like:

    Hello, Just to let you know that someone has logged in to your Acme account using a password while you already have OAuth2 GitLab auth linked. If you have recently signed in with a password, you may disregard this email. If you don't recognize the above action, you should immediately change your Acme account password. Thanks, Acme team

    The flow will be further improved with the ongoing refactoring and we will start sending emails for "unrecognized device" logins (OTP and MFA is already implemented and will be available with the next v0.23.0 release in the near future).

Commits
  • f9fcea8 updated changelog
  • 2036287 #5179 added logs delete trigger test and bumped app version
  • 10ac417 #5179 fixed days calculation for triggering old logs deletion
  • f1aa477 downgrade modernc.org/libc as it needs to match with the modernc.org/sqlite g...
  • ae2f8a4 log cronAdd failures with error log level
  • c7f758a normalized wrapped errors casing
  • 29b75ba updated go deps
  • a8e9c97 bumped the min Go version in the GitHub release action
  • 679751d updated ui/dist
  • c79ef4a updated goja
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

@dependabot dependabot bot requested a review from janlauber as a code owner July 8, 2024 23:44
@dependabot dependabot bot added dependencies Pull requests that update a dependency file go Pull requests that update Go code labels Jul 8, 2024
Bumps [github.com/pocketbase/pocketbase](https://github.com/pocketbase/pocketbase) from 0.22.13 to 0.22.16.
- [Release notes](https://github.com/pocketbase/pocketbase/releases)
- [Changelog](https://github.com/pocketbase/pocketbase/blob/master/CHANGELOG.md)
- [Commits](pocketbase/pocketbase@v0.22.13...v0.22.16)

---
updated-dependencies:
- dependency-name: github.com/pocketbase/pocketbase
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot force-pushed the dependabot/go_modules/pocketbase/github.com/pocketbase/pocketbase-0.22.16 branch from 60e2a5e to 8244c58 Compare July 9, 2024 07:05
@janlauber janlauber merged commit 431b387 into main Jul 9, 2024
7 checks passed
@janlauber janlauber deleted the dependabot/go_modules/pocketbase/github.com/pocketbase/pocketbase-0.22.16 branch July 9, 2024 07:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file go Pull requests that update Go code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant