Is Print Easily safe?

High risk

Print Easily overrides the browser's default search engine and routes all queries to quickprintapp.net with a persistent per-user tracking cookie.

On install, the extension generates a random UUID and stores it as a long-lived cookie on quickprintapp.net, then sets quickprintapp.net as the default search engine so every search query is sent there with that identifier attached. If the user deletes the cookie, the extension immediately re-plants it — both at browser startup and via a real-time cookie-change listener — ensuring the tracking identifier survives manual clearing. The extension also notifies quickprintapp.net on install and update via a separate beacon request.

Quick Printv1.0.0.1Chrome Web Store
75Risk

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

Publishers can request a review.

Findings

Address-bar searches routed through owner's domain with a 5-year tracking cookie

HighunwantedCWE-359Dynamic sandbox

On install this extension becomes your default search engine.

What actually happens

You did this

You type a search into the browser's address bar and press Enter.

Any term, on any site, using the normal omnibox search you'd use for Google or Bing.

The extension did this

The query is sent to the extension owner's domain, quickprintapp.net, before reaching a real search engine.

The extension installed itself as your default search provider, so the address bar routes queries to its own endpoint first.

The code that does this

The manifest declares the owner's domain as the default search engine

Readable version

Effect: is_default=true forces every omnibox query to {searchTerms} → quickprintapp.net/admin/public/link

manifest.json
// is_default: true  → the extension becomes the browser default search engine.// search_url       → every address-bar query is sent to://   https://quickprintapp.net/admin/public/link?q=<your search terms>// suggest_url      → keystroke-by-keystroke suggestions also go to the owner domain://   https://quickprintapp.net/admin/public/autosuggest?searchTerm=<your partial query>

Captured request

GEThttps://quickprintapp.net/admin/public/link?q=blue+widgets+near+me

302 redirect to https://uk.search.yahoo.com/yhs/search?hsimp=yhs-mm_quickprint&p=blue+widgets+near+me; the search term is preserved and a 'quickprint' partner tag (hsimp=yhs-mm_quickprint) is added. Observed during dynamic analysis using a unique marker query (illustrative query shown).

Headers
Cookie
uid=cb2add1c-3172-433e-9ecb-2bb4d8baae3a

What travels with each search and identifies you

  • Your search query
    q=blue widgets near me (illustrative)

    The full text you typed into the address bar, sent to the owner's domain before reaching a search engine.

  • Per-user identifier (uid)
    uid=cb2add1c-3172-433e-9ecb-2bb4d8baae3a

    A stable random ID planted as a cookie on quickprintapp.net, present on search requests so the stream of queries can be tied to one person.

Where your queries flow

    • quickprintapp.net

    Extension owner's domain. Receives every address-bar query (and per-keystroke suggestions) along with the persistent uid cookie, then redirects on to Yahoo.

    • uk.search.yahoo.com

    Final search provider. Reached via 302 redirect with a 'quickprint' partner tag (hsimp=yhs-mm_quickprint) appended, query terms preserved.

Tracking cookie re-plants itself within milliseconds when you delete it

MediumunwantedCWE-359Dynamic sandbox

The per-user 'uid' cookie on quickprintapp.net self-heals: a listener watches for removal, and a startup check runs on SW wake; either reads the stored uid and recreates it.

What actually happens

You did this

You delete the uid tracking cookie on quickprintapp.net.

Via browser settings, a cookie-clearing tool, or DevTools, the normal way you'd remove a tracking cookie.

The extension did this

The extension re-creates the identical cookie within a few milliseconds.

A background listener notices the removal, reads the saved uid from the extension's synced storage, and re-plants the same value.

The code that does this

Two code paths re-plant the cookie: on deletion and on service-worker startup

Readable version

makeUidCookie — rebuilds the cookie with a fresh 5-year expiry each time

src/js/background.js
const DOMAIN = "quickprintapp.net";const FIVE_YEARS_SEC = 5 * 365 * 24 * 60 * 60;function makeUidCookie(uid) {  return {    url: `https://${DOMAIN}`,    name: "uid",    value: uid,                 // the same stored per-user id    sameSite: "strict",    secure: true,    expirationDate: Math.floor(Date.now() / 1000) + FIVE_YEARS_SEC, // reset to +5y  };}

What's stored on your device

The extension keeps a copy of your identifier in synced storage, read by the re-plant logic. Deleting the cookie alone doesn't remove it.

Location
chrome.storage.sync key 'uid'
Contents
{  "uid": "cb2add1c-3172-433e-9ecb-2bb4d8baae3a",  "installDate": "2026-06-15",  "randomNumber": 1}

What it can do

Permissions this extension asks for, as declared in version 1.0.0.1. 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 quickprintapp.net

    https://quickprintapp.net/*

  • Store data in your browser

    storage

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

    cookies

Where it sends data

Destinations our analysis observed Print Easily contacting. Sending data somewhere is not a finding on its own - an extension that syncs your settings has to talk to its own server - but it is where your data can go, and who else it goes to.

  • quickprintapp.net

    Print Easily sends data to quickprintapp.net. No other extension we have analyzed sends data here.

Updated 30 September 2026ebgcanfjipfcdnjgpbagblmgebkpbhoo