Caution required
Suspicious in code review
Our reviewer found behaviour consistent with malware, but not enough to confirm it. Treat this extension as untrusted until it has been re-reviewed.
MailTrack
ID: faeagfdkfigikdghdbdefdfdeegchoih
Supported Languages
Extension Info & Metadata
This publisher
1 extension, all still listed
Publisher Contextual Analysis
- Author
- emailtrack.xyzView Profile
- Privacy
- Privacy Policy
- Help
- Help Center
- MX records exist
- Yes
- Domain exists
- Yes
- Is disposable
- No
- Is role-based
- Yes
- Mailbox exists
- Yes
- Website
- Visit
Sensitive Domain Access
This extension has access to the following sensitive domains:
- https://mail.yahoo.com/*
- https://outlook.live.com/*
- https://outlook.office.com/*
- https://outlook.office365.com/*
The bundled manifest declares host_permissions over mail.yahoo.com, mail.aol.com, outlook.live.com, outlook.office.com, and outlook.office365.com, along with content-scripts running on all six email providers. The published CWS manifest summary omits all five email-service domains and lists only the publisher's own three domains. This discrepancy means the extension is operating with host access that is not disclosed in the live store listing, preventing users and reviewers from making an informed consent decision.
{ "host_permissions": [ "https://website-track.vercel.app/*", "https://emailtrack.xyz/*", "https://www.emailtrack.xyz/*", "https://mail.yahoo.com/*", "https://mail.aol.com/*", "https://outlook.live.com/*", "https://outlook.office.com/*", "https://outlook.office365.com/*" ]}When the extension fails to detect the logged-in AOL or Outlook user's email, it falls back unconditionally to a hardcoded developer address ('[email protected]' / '[email protected]'). This address is subsequently passed as senderEmail in the /api/extension/start-track call to emailtrack.xyz. The behaviour is likely a development artifact never scrubbed before release, but it means real tracking events from undetected AOL/Outlook users are misattributed under these identities, and the code path cannot be distinguished from an intentional fallback designed to aggregate telemetry under a controlled account.
// Fallback defaultthis.currentUserEmail = '[email protected]';return this.currentUserEmail;}// Strategy for Outlook Mailif (window.location.hostname.includes('live.com') || ...) { ... // Fallback default this.currentUserEmail = '[email protected]'; return this.currentUserEmail;}The proxy replaces the page-world XHR.prototype.send and window.fetch to read the full responseText of every Gmail API call that fires while globalTargetUuid is set. Although only 16-character hex IDs are extracted and the window is narrow, any Gmail API response body (potentially containing email metadata or content fragments) is read in full before the regex filter is applied. The injection is via a web_accessible_resource script loaded into the page context, which also means it runs outside the isolated content-script sandbox.
const originalSend = XMLHttpRequest.prototype.send;XMLHttpRequest.prototype.send = function() { const currentUuid = globalTargetUuid; if (currentUuid) { this._linkedTrackerUuid = currentUuid; this.addEventListener('load', function() { const uuid = this._linkedTrackerUuid; if (uuid && this.responseText) { try { extractAndPost(this.responseText, uuid); } catch (_) {} } }); } return originalSend.apply(this, arguments);};const originalFetch = window.fetch;window.fetch = async function(...args) { const currentUuid = globalTargetUuid; const response = await originalFetch.apply(this, args); if (currentUuid) { try { const clone = response.clone(); clone.text().then((text) => extractAndPost(text, currentUuid)); } catch (_) {} } return response;};By severity
Versions scanned
Showing 1 of 4 scanned versions with more than one unique finding. Counts are unique findings that include each version.
| Extension Version | Code Review Findings |
|---|---|
| 1.0.6 | 3 |
Files with findings
3 distinct paths — top paths by unique finding count:
- manifest.json1
- src/content/modules/user.js1
- src/content/proxies/proxy-gmail.js1
URLs
View the external URLs this extension communicates with to understand its network activity and data interactions.
Gain full insight into all external connections.
Upgrade for full visibility.
Gain full insight into all external connections.
Upgrade for full visibility.
Code Diff
Compare extension code between any two versions.
No comparable text files found between these versions.
About this extension
Know exactly when your emails are read. Real-time tracking and link click notifications for Gmail.
Read the publisher’s full description
MailTrack helps you know exactly when your emails are opened and when links are clicked — right inside Gmail. Key features Real-time open tracking for outgoing emails Link click tracking (see when a recipient clicks a link) Instant notifications when an email is read Works directly in Gmail, no extra tabs How it works Install the extension Enable tracking when composing an email Get updates when your message is opened or links are clicked Who it’s for Perfect for sales, recruiters, founders, freelancers, and anyone who needs timely follow-ups. Privacy We only process the data required to provide tracking and notifications. We do not sell your personal data.
Screenshots & videos
Install growth
User reviews
Extension files
Browse and explore files within this extension package
Gain full insight into all external connections.
Upgrade for full visibility.