Threat Intelligence

DocuSign Lure Chains Through EdgePilot and SendGrid to a Fabricated Microsoft OAuth Authorize Endpoint

Written by Audian Paxson | Jul 17, 2025 11:00:00 AM
TL;DR A DocuSign-branded phishing email targeting a senior lending officer at a regional bank routed the primary 'View Completed Document' CTA through link.edgepilot.com (a click-protection rewriter) and SendGrid click-tracking before landing on a Microsoft OAuth v2.0 authorize URL. That OAuth URL carried a fabricated client_id pointing to an attacker-registered Azure application, spoofed device/platform parameters including partnerID=BRAVIA-META-AI, and a redirect_uri to a Grammarly callback, all designed to create the appearance of a legitimate OAuth flow while harvesting a delegated Microsoft token. The email body included unpopulated template tokens and grammar errors indicating a commodity phishing kit. Themis flagged the incident at 90% confidence.
Severity: High Consent-Phishing Adversary-In-The-Middle Credential-Harvesting Impersonation MITRE: T1566.001 MITRE: T1656 MITRE: T1550.001

The login page the victim would have seen was real. The Microsoft domain, the SSL certificate, the familiar authorization prompt: all genuine. What was fabricated was everything around it: the application requesting permissions, the parameters injected into the URL, and the redirect destination waiting to receive the access token.

A senior lending officer at a regional bank received an email displaying DocuSign branding, complete with DocuSign's real San Francisco corporate address, a "View Completed Document" call to action, and a subject line formatted with the random-token suffix style that DocuSign uses on genuine signing notifications. The sender address was info@welook[.]com[.]au, a domain with no affiliation with DocuSign. The message was delivered via SendGrid. Inside the body, an unpopulated template placeholder ({Frmsite}) was visible alongside grammar errors and an unrelated mailing-list thread appended below the signing prompt. These are artifacts of a commodity phishing kit assembled from multiple templates, sent at scale without final quality checks.

The email reached five mailboxes at the same financial institution. The detection system automatically resolved it as phishing at 90% confidence and mitigated all five copies before any recipient clicked.

The Three-Layer Redirect Chain and What It Concealed

The "View Completed Document" CTA did not link to docusign.com. It linked to link.edgepilot.com, the URL-wrapping prefix inserted by the recipient organization's own email security gateway.

EdgePilot is a legitimate click-protection service. When a security gateway installs EdgePilot link-rewriting, every URL in inbound email is wrapped in an EdgePilot proxy that checks destination reputation at click time. The attacker's link structure exploited this in two ways. First, the EdgePilot wrapper inspected a SendGrid click-tracking URL (u53717309.ct.sendgrid[.]net), not the final destination: the reputation check was performed one layer too early. Second, the presence of the EdgePilot prefix gave the link the visual appearance of having passed security review. A recipient who recognizes their organization's link-protection prefix may interpret it as a safety endorsement.

The full chain ran: link.edgepilot[.]com redirect → u53717309.ct.sendgrid[.]net click tracker → Microsoft OAuth v2.0 authorize endpoint.

The Microsoft OAuth endpoint was real: login.microsoftonline[.]com/common/oauth2/v2.0/authorize. What was injected into the URL parameters was not.

The Fabricated OAuth Application

The OAuth authorize URL carried a client_id of 0176e8f8-0828-4657-8eea-2adc34f5e7fd. This is a specific Azure Active Directory application registration. The parameters accompanying it included fabricated device telemetry: deviceModel=SM-G998B, os_version=Android13, platform_type=tv, and partnerID=BRAVIA-META-AI. None of these are standard Microsoft OAuth parameters. They are attacker-injected values designed to make the URL look like it originated from a specific device or partner ecosystem, adding surface complexity that might confuse automated parameter inspection.

The redirect_url was set to hxxps://www.grammarly[.]com/callback?extra_step=validate. In a legitimate OAuth flow, the authorization code or token is sent to the registered redirect URI. An attacker using a malicious Azure application can register any redirect URI they control, then direct the callback to an intermediate handler before passing through to a legitimate-looking domain. The extra_step=validate parameter appended to the Grammarly callback URL is another fabricated injection with no function in the real Grammarly application.

This is the adversary-in-the-middle pattern applied to OAuth: the legitimate authorization page is used as a trust anchor, while the attacker's application registration intercepts the delegated token. MITRE ATT&CK T1550.001 (use alternate authentication material: application access token) covers the token-theft objective. The attacker does not need the victim's password. A granted token for User.Read and openid profile scopes provides persistent access to profile data and serves as the foothold for further access escalation.

See Your Risk: Calculate how many threats your SEG is missing

Template Artifacts as Detection Signal

The body analysis found the phrase "Document can only be view by" (verb tense error), the unpopulated {Frmsite} token, and a block of unrelated content from a Harford County civic committee newsletter appended below the DocuSign template. These are quality-control failures from a bulk phishing operation: the same kit sent multiple template variants, and one or more recipients received a partially configured instance where variable substitution failed and a content block from a separate campaign leaked in.

Two links in the message resolved to a YouTube video and a Facebook page for a local civic organization, neither related to DocuSign or banking. These clean-verdict links served as noise: scanner systems that evaluate a link list as a whole may weight a majority of clean verdicts toward a benign classification even when one link in the set carries risk.

Consent phishing via OAuth is particularly effective against organizations where employees use Microsoft 365 and are accustomed to authorizing third-party applications. The authorization prompt is genuine, the domain is microsoft.com, and the user has no reason to inspect the client application's registration details. IRONSCALES detected the cluster of signals: first-time sender, domain mismatch, fabricated OAuth parameters, and the Themis community signal correlating this template against prior phishing activity.

MITRE ATT&CK T1566.001 covers the spearphishing link delivery. T1656 covers the DocuSign identity impersonation throughout the message.

Indicators of Compromise

TypeIndicatorContext
Sender addressinfo[@]welook[.]com[.]auSendGrid delivery; no DocuSign affiliation; first-time sender
OAuth client_id0176e8f8-0828-4657-8eea-2adc34f5e7fdAttacker-registered Azure AD application in consent-phishing flow
OAuth redirect_urihxxps://www.grammarly[.]com/callback?extra_step=validateFabricated callback; not a standard Grammarly OAuth redirect
Redirect chainlink.edgepilot[.]com → u53717309.ct.sendgrid[.]net → login.microsoftonline[.]com OAuthFull CTA click path
Template artifact{Frmsite}Unpopulated placeholder; commodity kit indicator
Return-Pathbounces+53717309-9332-andy.strand=westernbanks[.]com[@]sendgrid[.]netVERP-encoded recipient tracking in bounce address
Email Attack of the Day is a daily series from IRONSCALES spotlighting real phishing attacks caught by Adaptive AI and our community of 35,000+ security professionals. Each post breaks down a real attack. What it looked like, why it worked, and what to do about it.

Related attacks

Attack What happened
The Phishing Link Lived on a Domain That Didn't Exist Nine Hours EarlierA compromised university student account sent a phishing email that passed SPF, DKIM, and DMARC.
The Health Spending Account Alert That Rode a Benefits Administrator's Own InfrastructureAn Anthem-branded spending account notification routed through a legitimate benefits administrator's redirect infrastructure.
How ARC Re-Signing and an IP Allow-List Turned Three Authentication Failures Into SCL -1A phishing email claiming to be a OneDrive share from an outlook.com address originated from a county government mail server.
SafeLinks Wrapped the Phishing URL With the Recipient's Name on ItMicrosoft SafeLinks rewrote a phishing URL and embedded the recipient's email address into the redirect chain.
The GitLab Alert That Passed Every Filter (Except One Detail Nobody Checked)A GitLab sign-in alert cleared Proofpoint URL Defense and passed SPF/DMARC — then listed a private RFC1918 IP as the sign-in source.