🎩 🚩 Two new CVEs: CVE-2026-53770 and CVE-2026-54320
Closed two reports on open source projects and both landed a CVE. Sharing them because they hit the same blind spot: what happens to permissions when a user's state changes. Holding the vendor names and full write-ups until the disclosure window closes, but the bug classes are worth talking about now.
- CVE-2026-53770, Personal access tokens retain team-scoped abilities after member removal or role downgrade (High):
Personal Access Tokens stayed glued to their team and their permissions after the user was removed from the team or downgraded in role. The API authorized by reading the team_id straight off the token, without checking whether the user was still a member. Translation: an ex-member with an old token kept reading and modifying the team's resources like nothing happened.
The code already had the correct validation on the session path. It checked live membership on every call. That same check never made it to the token path. The same question, "is this user still on the team?", got answered correctly on one route and skipped on the other against the same database. That's what makes it an implementation bug, not a design one. The pattern was already there, they just didn't apply it where it mattered.
---
- CVE-2026-54320, Cross-tenant organization takeover via invitation acceptance with an unverified email (High, CVSS 8.4):
Organization invitations could be accepted with an email that matched but was never verified. Creating an organization already required a verified email. Accepting or declining an invitation didn't. On identity providers with self-service signup, you registered the target email, left it unverified, accepted the invitation, and dropped into the org with whatever role the invitation carried, up to Owner. You cross the tenant boundary without ever touching the mailbox.
Same pattern in both cases: authorization validates state when the credential is issued, then forgets to re-check it when the credential is used. If you've got a flow that handles membership or roles, go look at that gap. That's where these bugs hide.
**Full technical breakdowns and vendor credits once the disclosure window closes.**
#CyberSecurity #BugBounty #CVE #AppSec #OffSec #InfoSec