Illustrative scenario: the following company, conversation, and payment request are fictional. They combine documented threat techniques to examine a plausible control failure.

It is Friday afternoon. An accounts-payable employee hears the CFO's familiar voice explaining that a critical supplier has changed banks. A wire must leave before the cutoff. The caller knows the supplier, the invoice, and the internal urgency. An email in an existing conversation appears to confirm the instructions.

The voice is synthetic. The mailbox has been compromised. The employee is already signed in to the enterprise application, and that valid session is enough to change the vendor's payment destination and release the money.

The conversation explains how the deception reached the employee. The architecture explains why it reached the bank.

Calling this a failure to recognize a deepfake leaves the most important engineering question unanswered: why could one authenticated session turn a persuasive instruction into an irreversible financial action?

The 2026 threat is bigger than a convincing voice

Microsoft's May 4, 2026 investigation described a multi-stage phishing campaign using code-of-conduct messages, intermediate pages, and adversary-in-the-middle infrastructure to obtain authentication tokens. The presentation resembled legitimate enterprise communication. The objective was access, not merely a stolen password. [1]

In a typical adversary-in-the-middle attack, the victim interacts with a malicious intermediary that relays authentication to the real service. Where the authentication method permits that relay, the attacker can capture a usable session. Completing an ordinary one-time-code challenge does not necessarily defeat this attack.

A separate September 22, 2026 Microsoft report documented EvilTokens, which abused device-code authentication and used AI-assisted targeting and automation. Device-code phishing differs from reverse-proxy session theft: a victim can complete an authentication flow on a legitimate site while authorizing a session initiated by the attacker. The distinction matters when choosing defenses. [2]

Voice impersonation is independently documented. Canadian cybersecurity and anti-fraud authorities warned on June 23, 2025 about text and AI-generated voice messages impersonating prominent figures to steal information and money. [3]

These sources do not establish that one named campaign combined every element of our opening scenario. They establish the ingredients. The scenario asks what happens when stolen communication access supplies context, a cloned voice supplies urgency, and enterprise permissions supply financial authority.

A valid session answers the wrong question

An authenticated session helps establish continuity with an account. It does not, by itself, establish that the rightful person knowingly approved a particular vendor-account change or wire.

Three questions need different answers: who authenticated, what they are permitted to do, and what exact action they authorized now.

NIST SP 800-63B-4 distinguishes authentication assurance and phishing resistance. It states that manually entered authenticator outputs, such as ordinary OTPs, are not phishing-resistant because they do not bind the output to the specific session. Cryptographic, verifier-bound authentication addresses that weakness. [4]

That is an important first boundary. It does not automatically make an application resistant to a compromised endpoint, malicious account recovery, or a legitimate employee deceived into approving a fraudulent request. Authentication controls and transaction controls have complementary jobs.

There is also an important difference between stealing the CFO's session and persuading an employee using the employee's own session. Stronger login protection can interrupt the first path. The second requires the business workflow to resist misleading instructions even when the signed-in user is genuine.

Make approval mean something specific

OWASP's transaction-authorization guidance recommends that people can identify and acknowledge significant transaction details, that authorization is enforced server-side, and that authorization remains tied to the operation being executed. It also addresses expiration and changes to transaction data. [5]

For our fictional distributor, a useful approval screen would identify the legal entity, vendor, proposed beneficiary, payment amount and currency, and whether the destination is new. It would distinguish changing a vendor record from authorizing a payment. “Approve request” provides too little context for a high-value decision.

Here is an illustrative implementation approach. The server creates a pending action with a unique identifier and a protected snapshot of its material details. A short-lived cryptographic challenge is associated with that exact action and version. The approval service verifies the response, approver permissions, freshness, and applicable policy before recording approval.

Changing the beneficiary after approval invalidates the approval. So does changing the amount where the policy binds approval to that amount. The execution service checks the same approved version immediately before acting. A generic “recently authenticated” flag is insufficient.

The display path matters as much as the signature. A signed digest proves a relationship to bytes; it does not prove that an approver saw an honest description of those bytes. A high-assurance design needs a trustworthy confirmation surface and an enrollment process that binds the authenticator to the correct person.

An ordinary passkey login does not automatically provide transaction signing. The application must explicitly bind its challenge and execution checks to the intended operation. An attacker-controlled browser or approval interface changes the threat model and may require a separately protected confirmation channel.

Biometrics can unlock an authenticator. They cannot explain intent.

A fingerprint or face check can activate a cryptographic authenticator. The server can verify the resulting proof under the chosen protocol without receiving a raw biometric template.

NIST's guidance permits biometrics as part of multifactor authentication with a physical authenticator, requires a non-biometric alternative, and prohibits voice-based biometric comparison in that framework. A familiar-sounding voice should therefore never be marketed as equivalent to a strong cryptographic approval. [4]

The engineering objective is to bind a properly enrolled credential to a specific, clearly presented transaction. Biometrics may support that process; they do not establish that the beneficiary is legitimate or that the human was free from manipulation.

A person can successfully authenticate and still be deceived. That is why vendor verification, separation of duties, financial limits, and review of newly changed destinations remain essential.

The ERP example: a vendor EFT change deserves its own boundary

Consider a distributor using Epicor Prophet 21. A proposed change to a vendor's electronic-payment details should be treated as a security-sensitive business event, not routine contact maintenance.

This is a proposed control design, not an allegation about a Prophet 21 vulnerability or a claim that a particular EFT endpoint exists. Epicor documents configurable business rules and extensibility; the supported mechanism for a specific financial change must be verified against the customer's version, permissions, and deployment. [6]

In the proposed workflow, the employee submits a pending change. An independent reviewer verifies it using vendor contact information already on file, rather than the phone number in the new email. The reviewer sees the old and proposed destination in a suitably protected presentation. Policy may require a waiting period or additional approval before the new destination becomes eligible for payment.

A separate payment-release decision checks whether the destination changed after the invoice or payment batch was approved. Approval of a legitimate invoice must not silently approve whatever bank account happens to be on the vendor record later.

Supported ERP interfaces and business rules must remain authoritative. A custom extension that bypasses them with direct writes can create the very gap it was intended to close. Test manual screens, imports, APIs, scheduled jobs, and administrative overrides: a control is incomplete if one alternate route can bypass it.

Two approvals are meaningful only when they represent independently authorized people and actions. Two clicks from the same compromised identity—or two approvals based entirely on the same fraudulent email—provide much less protection.

SQL Server should enforce the decision, not merely record the damage

Database engineering turns policy into rules that an ordinary application caller cannot negotiate away.

For a custom approval service, the runtime identity can be denied direct writes to protected records while receiving permission to execute narrowly scoped routines. Those routines validate tenant ownership, permitted state transitions, approver separation, and the approved action version. The application cannot pass an arbitrary approver ID and expect the database to accept it as authority.

Microsoft documents certificate-signed stored procedures as a way to give a routine the permissions it needs without granting callers equivalent access to the underlying objects. The signature does not validate the human's intent; the procedure still needs correct authorization logic. [7]

Controls should be enforced in code and permissions, with business thresholds maintained through authorized, audited configuration. Hard-coding every amount or reviewer rule makes policy harder to govern and change safely.

There is no SQL Server isolation level called “forensic transaction isolation.” Isolation levels govern locking and row-versioning behavior. Appropriate locking or optimistic version checks can prevent a record changing between validation and commitment; they cannot determine whether the CFO authorized it. [8]

A short database transaction can atomically consume an approval and record an execution request. It cannot make an external bank transfer atomic with that database commit. The executor still needs durable status, safe retry behavior, and reconciliation when a response disappears. Never issue a new transfer simply because the first request timed out.

The acceptance test is concrete: approve destination A, change the request to destination B, then try to execute it. The system must reject the mismatch. Repeat with an expired approval, another tenant's request, and the same approval submitted twice.

Immutable evidence is not the same as a legitimate transaction

Investigators need the proposed change, the previous value, the authorizing identities, policy version, approval times, execution outcome, and correlation references. Sensitive bank details and authenticators need protection; copying everything into logs creates another exposure.

SQL Server ledger provides tamper-evidence capabilities and preserves historical changes for verification. It is relevant to evidentiary integrity, but it does not make a fraudulent transaction legitimate merely because the history is cryptographically verifiable. Protect and verify the evidence independently of the people whose actions it records. [9]

Similarly, an append-only application table is not automatically immutable against a database administrator. Administrative access, recovery procedures, key management, retention, and evidence export belong in the design. A reliable history must survive an incident involving privileged identities.

AI assistants must remain outside the approval authority

An assistant can summarize a vendor request, compare documents, and prepare a proposed change. It should not acquire the ability to approve its own proposal or execute a payment because an email says the CFO authorized it.

OWASP's LLM06:2025 Excessive Agency identifies excessive functionality, permissions, and autonomy as causes of damaging actions. Its mitigations include narrow tools, constrained downstream privileges, and approval of high-impact actions. [10]

A vendor document can be both useful evidence and an untrusted source of instructions. The model's confident summary does not change that classification. Financial execution should require independently verified evidence under deterministic policy, not a model's interpretation of apparent urgency.

Credential compromise is a real threat, but it is not a separately named category in OWASP's published 2025 LLM Top 10. Precise terminology matters: protecting secrets, defending against prompt injection, and restricting agent authority address related but different failure paths. [11]

Replace “be more careful” with a workflow that can say no

Employee training remains useful. It helps people pause, report pressure, and question a changed payment destination. The weak approach—call it “vibe security”—is expecting awareness alone to carry the financial control.

A better process gives the employee a legitimate response: “I can prepare the request, but the system requires independent verification and transaction-specific approval.” The boundary protects the employee as well as the money.

JWilliams & Associates publicly positions TitanForgeAI around trust-first security architecture for AI-driven threats and digital impersonation. That positioning fits the architectural question examined here: what must be established before a sensitive action becomes executable? It should be evaluated through demonstrable controls and deployment-specific testing, rather than inferred claims about biometric capabilities or guaranteed breach prevention. [12]

The practical review begins with a small set of high-consequence actions: vendor bank changes, payroll destination changes, refunds, payment release, and privileged-access recovery. Map who can propose, approve, execute, and override each one. Then test those boundaries using a compromised ordinary session.

Recovery deserves the same scrutiny. A help-desk caller should not be able to replace an approval authenticator and immediately release a high-value payment without the safeguards that normal approval requires. Emergency procedures need explicit authority, limits, and evidence.

The goal is not an enterprise that trusts nobody or interrupts every routine task. It is an enterprise that requires stronger evidence when the consequences justify it.

In the Friday-afternoon scenario, the employee may still hear a convincing voice. The malicious email may still arrive. But the payment remains blocked until the exact action satisfies independently enforced controls.

The strongest defense is not asking every employee to become a deepfake detector. It is ensuring that a convincing impersonation cannot, by itself, become financial authority.

Sources and research notes

Reviewed November 5, 2026. The opening scenario and proposed approval workflow are illustrative analysis. Documented campaigns are identified separately. Standards and vendor documentation support the technical distinctions; product positioning is attributed to JWA.

  1. Microsoft: AiTM code-of-conduct campaign (May 4, 2026)
  2. Microsoft: EvilTokens device-code phishing (September 22, 2026)
  3. Canadian Anti-Fraud Centre: AI impersonation advisory (June 23, 2025)
  4. NIST SP 800-63B-4: Authentication and authenticator management
  5. OWASP: Transaction authorization
  6. Epicor: Prophet 21 automation and business rules
  7. Microsoft: Certificate-signed stored procedures
  8. Microsoft: SQL Server transaction isolation levels
  9. Microsoft: SQL Server ledger overview
  10. OWASP LLM06:2025: Excessive Agency
  11. OWASP: 2025 LLM Top 10
  12. JWA: TitanForgeAI public positioning