Most phishing advice trains people to look for a fake login page. That is still useful, but it does not cover every modern attack. In some OAuth and device-code phishing attacks, the login page is real. The domain is real. The MFA prompt is real. The problem is that you are approving access for the wrong app or device.
This is why connected-app hygiene belongs next to password hygiene. If attackers can trick you into granting a token to their app, they may not need your password at all.
What OAuth is supposed to do
OAuth lets one app access another service without giving that app your password. For example, you might let a calendar tool read your calendar, a design app upload files to cloud storage, or a command-line tool access a developer account. You sign in with the real provider, review a permission screen, and approve the connection.
That design is useful. It also means the approval screen matters. A malicious or overreaching app can ask for permissions that give it long-lived access to email, files, contacts, repositories, cloud resources, or admin settings.
How device-code phishing works
Device-code login was designed for devices that are hard to type on, like TVs, consoles, and command-line tools. A device shows a short code. You open a trusted verification URL on your phone or computer, enter the code, sign in, and approve the device.
Attackers abuse that pattern by pretending to be support, a coworker, a vendor, a cloud admin, or a security team. They ask you to enter a code on the real provider's site. You complete the real login and MFA challenge. The attacker receives the token for their device or script.
The attack can feel legitimate because you are not typing your password into a fake page. You are doing something more subtle: authorizing access for something you did not intend to trust.
Why a password reset may not fix it
Changing a password is useful after credential theft. OAuth abuse is different. The attacker may hold an access token or refresh token. Depending on the provider and policy, that token can survive a password change unless you revoke sessions, remove the connected app, or force token invalidation.
That is why OAuth recovery must include these steps:
- Review connected apps and third-party access.
- Remove unknown or unnecessary integrations.
- Revoke active sessions and trusted devices.
- Check mailbox forwarding rules and delegated access.
- Regenerate API tokens, app passwords, and backup codes where needed.
Red flags that are easy to miss
OAuth phishing does not always look like a spelling mistake or a strange domain. Slow down when you see any of these:
- Someone sends you a short code and tells you to enter it on a login page.
- A support caller asks you to approve a device, integration, or connected app.
- An app asks for broad permissions that do not match its purpose.
- A consent screen appears after a document, invoice, HR, payroll, or security alert link.
- The app publisher is unverified, unfamiliar, or named like a trusted brand without being the trusted brand.
- The request arrives with urgency: "avoid suspension," "confirm identity," "security update," or "complete migration."
How to review connected apps
Every major account should have a periodic connected-app review. Start with the accounts that control your digital life:
- Email and cloud storage.
- Google, Apple, Microsoft, GitHub, and social accounts.
- Banking, payroll, tax, payment, and crypto accounts.
- Domain registrar, web hosting, analytics, ad accounts, and business admin tools.
- Password manager, passkey provider, and recovery email accounts.
Look for menu labels such as "Security," "Third-party access," "Apps with access," "Connected apps," "Authorized applications," "Devices," "Sessions," or "Account permissions." Remove anything you do not recognize, no longer use, or cannot explain.
What to store in your vault
Do not store only the password. Store the account's security map. A useful vault record can include:
- The official login URL.
- Recovery email and recovery phone status.
- Current MFA method and backup-code location.
- Known connected apps that are supposed to exist.
- Where to review sessions and revoke access.
- The date you last checked third-party access.
Krypt is built as a zero-knowledge password manager and private vault for this exact kind of account context. Passwords, secure notes, recovery codes, and app-access notes can stay in one encrypted local-first record instead of being scattered across browser notes, screenshots, spreadsheets, and cloud files.
What to do if you approved the wrong app
If you entered a device code or approved a suspicious app, act quickly from a clean browser or trusted device:
- Open the official account security page manually.
- Remove the suspicious connected app or device.
- Sign out of all sessions if the provider offers that control.
- Change the password if the account still uses one.
- Regenerate backup codes and app-specific passwords.
- Check email forwarding, recovery settings, admin roles, and recent activity.
- Document what happened in your encrypted account record.
For business accounts, notify the admin or security owner. OAuth abuse can expose more than one user's mailbox or files when permissions are broad or when the compromised account has admin access.
Technical references
Microsoft has documented OAuth redirection abuse in phishing and malware delivery campaigns. AppOmni's device-code phishing explainer breaks down why legitimate provider URLs and MFA prompts can still lead to attacker-held tokens. CISA's phishing guidance is useful background for reducing social-engineering exposure.
Keep official URLs, recovery steps, MFA notes, and connected-app cleanup history inside your encrypted vault.