Is MSN Homepage Plus safe?

Medium risk

MSN Homepage Plus is medium risk. MSN Homepage Plus GETs Microsoft's CEIP server (g.ceipmsn.com) on install, update, and tab activation, over HTTP, sending a persistent device UUID, OS/browser version, extension ID, Bing MUID cookie. Three requests captured in one session.

Microsoft Corporationv1.0.0.8Chrome Web Store
45Risk
Who publishes it

Microsoft Corporation - 10 other listings from the same operator, 4 of them carrying a finding

What this publisher told the store about itself, and the other listings that told it the same thing.

Publisher
Microsoft Corporation
Declared legal entity
Microsoft Corporation
Registered address
One Microsoft Way, Redmond, WA 98052-8300, US
Registered contact
Microsoft Corporation

Same operator - 3 listings

Published under a different store account, but sharing the registered address, contact or declared legal entity this one gave the store.

AI-generated. Findings may contain errors. Those marked Verified have been manually reviewed.

Publishers can request a review.

Findings

SeverityMEDIUM
ClassUNWANTED
TypeUnexpected
CWECWE-359
SourceAI SANDBOX

Persistent device ID and Bing cookie sent to Microsoft telemetry over HTTP

MSN Homepage Plus GETs Microsoft's CEIP server (g.ceipmsn.com) on install, update, and tab activation, over HTTP, sending a persistent device UUID, OS/browser version, extension ID, Bing MUID cookie.

Three requests captured in one session.

01EvidenceCAUSE EFFECT
What actually happens
You did this

You install or update the extension, or open a new browser tab on a new day.

No explicit user consent step triggers the ping; it fires automatically on lifecycle events.

The extension did this

The extension sends your persistent device ID, OS fingerprint, browser version, and Bing tracking cookie to Microsoft's telemetry server over unencrypted HTTP.

The request goes to http://g.ceipmsn.com/8SE/44 with no HTTPS, making it readable to any network observer on the path.

02EvidenceNETWORK CAPTURE
Captured request
GEThttp://g.ceipmsn.com/8SE/44?MI=38F5E7198B832073D2D9131ECFAC7EBC&LV=1.0.0.8&OS=Macintosh;IntelMacOSX10_15_7&TE=37&TV=isUWDF%7CpkMSNHomepagePlus%7Ctmen-US%7CbvChrome/124.0.0.0%7CexfkkcgfBGOHBOIPDHLIAFMACJNHJBHMIM%7Ces3%7Cmu2AC8CFB370D06DBD1D14D89471B46C28
03EvidenceFIELD TABLE
Parameters sent in every telemetry ping
FieldValueWhy it matters
Device ID (MI=)
38F5E7198B832073D2D9131ECFAC7EBCA random UUID created on first run and stored permanently, letting the server track your device across sessions, even after cookies clear.
Bing tracking cookie (mu=)
2AC8CFB370D06DBD1D14D89471B46C28The MUID cookie Microsoft set when you visited Bing. Linking it here ties your search identity to your browser installation.
OS fingerprint (OS=)
Macintosh;IntelMacOSX10_15_7Your operating system and version, extracted from the browser's User-Agent string.
Browser version (bv=)
Chrome/124.0.0.0Your Chrome version, contributing to a browser fingerprint.
Extension runtime ID (ex=)
fkkcgfbgohboipdhliafmacjnhjbhmimThe installed extension's Chrome runtime ID, confirming which version of the product you are running.
Event type (es=)
3A status code indicating why this ping was sent: 1 = migration, 2 = daily, 3 = update.
04EvidenceCODE COMPARE
The code that does this

SendPingDetails(), the function that assembles and fires the ping

What it actually does
function SendPingDetails(status) {
    chrome.storage.local.get(['pc', 'channel', 'MachineID', 'muid'], (items) => {
        var pc = items.pc == undefined || items.pc == "" || items.pc == null ? "UWDF" : items.pc;
        // If no MachineID exists, guid() generates a new UUID and persists it
        var MachineID = (items.MachineID == undefined || items.MachineID == "" || items.MachineID == null)
            ? guid() : items.MachineID;
        var pingURL = 'http://g.ceipmsn.com/8SE/44?';  // plaintext HTTP, no TLS
        var tVData = 'TV=is' + pc + '|pk' + ExtensionName + '|tm' + browserLanguage
                   + '|bv' + BrowserVersion + '|ex' + ExtensionId + '|es' + status;
        if (items.channel) tVData = tVData + "|ch" + items.channel;
        if (items.muid)    tVData = tVData + "|mu" + items.muid;  // appends Bing MUID cookie
        pingURL = pingURL + 'MI=' + MachineID + '&LV=' + ExtensionVersion + '&OS=' + OS + '&TE=37&' + tVData;
        fetch(pingURL);  // fire-and-forget GET
    });
}
05EvidenceTEMPORAL PATTERN
When this fires
On every browser startup

Pings fire on install (status=3 or 1), then daily on tab activation (status=2) after the 1.25-minute alarm elapses. The alarm is re-created each time the service worker starts, ensuring the ping survives browser restarts.

06EvidenceTHIRD PARTY LIST
Where the telemetry data is sent
  • g.ceipmsn.com

    Microsoft Customer Experience Improvement Program endpoint. Receives the full fingerprint bundle (device UUID, OS, browser version, Bing MUID) over unencrypted HTTP.

What it can do

Permissions this extension asks for, as declared in version 1.0.0.8. Asking for a permission is not a finding on its own - it is what the extension can do if it chooses to.

  • Read and change your data on g.ceipmsn.com

    http://g.ceipmsn.com/*

  • Read and change your data on bing.com

    https://*.bing.com/* and 1 more

  • Read and change cookies, including the ones that keep you signed in

    cookies

  • See, disable and uninstall your other extensions, including your security ones

    management

  • Store data in your browser

    storage

  • Schedule its own background tasks

    alarms

Updated 30 September 2026fkkcgfbgohboipdhliafmacjnhjbhmim