Skip to content

Security Not yet confirmed elsewhere1 publisher 3 min read Published

Fake Apple Pay receipt reads a $657 charge aloud through the iPhone's own speech engine

Malwarebytes took apart a tech support scam page built for iPhones rather than desktops, where the receipt values are hardcoded, the voice comes from the browser's speech API, and the only payload is a phone number.

The Watch · Security desk

Send a correction

What happened

  • Malwarebytes analyzed a scam page that shows iPhone users Apple Pay processing a $657 App Store payment, complete with a spinner, a padlock, a transaction ID and a Face ID verification line.
  • Seconds in, the page switches story and says the Apple ID is locked after an unrecognized sign-in, putting a phone number under an instruction to call Apple Support immediately.
  • Once the victim opens the transaction details, the payment reads Completed and the phone starts speaking an alert about an unauthorized charge.
  • The page imitates Apple Pay, Face ID and App Store payments, drives the phone's text-to-speech, and works to interfere with mobile navigation.

Why it matters

  • Who's exposed exposure The advice not to call a number that appears on a screen now has to cover phones, where the scammer's number is a tap on a tel: link rather than something the victim types into a second device.
  • What's now possible capability Using the victim's installed speech voice gives operators audio with no hosting, no recording and nothing for a takedown to seize.
  • What it limits constraint There is no software flaw here to patch, only ordinary HTML, the Web Speech API and the history API, so defensive spend lands on user handling and web filtering instead of a fix cycle.
  • Who has to decide decision Because the receipt strings never vary, a single victim report characterizes every other victim of this kit, which makes it cheap for a help desk to triage the call rather than the page.

Apple Pay on the web has a fixed shape. The merchant requests the payment, the system puts up a payment sheet, and the user reviews and authenticates it, which is what Apple's own guidelines specify [12]. None of that runs here. The "Face ID / verifying identity" line is an HTML element sitting beside an icon, with no Apple Pay request and no biometric-authentication call behind it [11], and the splash screen it sits on removes itself on a 2.8-second timer whether the victim touches anything or not [13].

The receipt is where the sample gives itself away. Amount, transaction ID and authorization code are hardcoded at $657.00, AP-2026-08-03-14:32 and AUTH-8F3A2B1C, identical for every visitor [14]. The date field is not: JavaScript calls new Date() and formats it with toLocaleString(), so the receipt carries the victim's own clock and timezone [15]. Because the ID date is frozen and the date field renders at view time, the two only agree for someone who opens the page on 3 August 2026 [18]. Malwarebytes flags that mismatch as the contradiction a genuine transaction cannot produce [15].

The audio is the part other kits will copy. The page creates a SpeechSynthesisUtterance and hands it to window.speechSynthesis, the browser's built-in Web Speech API, and the device reads out "Unauthorized charge of six hundred fifty seven dollars from your Apple ID. Please call support immediately" [16]. No hosted file, no recording, nothing to take down. Malwarebytes notes the effect: a voice already installed on the phone sounds more like the phone than like a website [17].

Most of the remaining code is spent on the exits. The page pushes a history entry and listens for popstate, so a backward gesture triggers a warning that closing the page could expose the victim's payments and banking information [1]. Cancel that prompt and it raises another warning and pushes another history entry; accept it and the code navigates to a tel: URL holding the scam number [2]. Handlers are also registered for beforeunload, pagehide, the context menu, an edge-swipe gesture and common keys [3]. Every item on that list is a page-level event.

Scope, plainly. There is no real transaction and no biometric verification in the sample, and the analysis describes hardcoded values, browser speech, fake warnings and navigation tricks whose whole purpose is to get the victim dialling [10]. Nothing is stolen by the page. The money moves after the call connects, and this write-up stops at the tel: handoff.

The funnel is the one that has run on desktops for years behind "your computer has a virus" pages [5]. What mobile changes is the distance to the phone call: on a desktop the victim had to pick up a second device and type the number, while here the number is a tap and is never read closely [2]. That is the reason the old desktop advice has to be restated for phones, against Apple Pay, Face ID and App Store branding rather than antivirus branding [6].

What to watch

  • Whether the same kit turns up re-skinned for Android with Google Pay and Play Store branding.
  • Whether the hardcoded $657.00 amount and AUTH-8F3A2B1C code start rotating, which would mean the kit is being maintained rather than dumped.
  • Whether any browser vendor restricts speechSynthesis or tel: navigation triggered without a user gesture.

Clarity's read

What the record supports and how the coverage leans. The claims behind it follow.

Reality

Evidence72
Adoption
Not scored
Hype gap−8
Incentives55
Confidence58
Why these scores

Claim ledger

Ranked by verification strength, evidence, and original report placement.

  1. [1]

    The page adds a new browser-history entry and listens for popstate so it can react when a victim navigates backward, then displays a warning claiming that closing the page could expose the victim's payments and banking information.

  2. [2]

    If the victim accepts the prompt to call support, the code navigates to a tel: URL containing the scam number; if they cancel, another warning appears and another history entry is added.

  3. [3]

    The page also registers handlers for beforeunload, pagehide, the context menu, an edge-swipe gesture and common keys.

Get this ledger inside ChatGPT. Ask about any of our stories and the answer brings its figure, each claim’s verdict and the sources. Free, no account.

Add to ChatGPTAdd to Claude

Sources

1 independent publisher whose own reporting we read for this story.

  1. malwarebytes.com

    1 article · August 27, 2026

    Fake Apple Pay charge brings the classic tech support scam to your phone

Share your take

Let Clarity write the post for you.

Signed-in readers get a short post drafted on this story in the register they choose — narrative, analytical, or a direct position — editable to the last word before it goes anywhere. The share buttons at the top of this story work without an account.

Topics and entities

Follow any of these and your For You feed starts watching them — no settings page required.

Topics

Loading related stories