skip to content

A sanctioned 40 GB partner transfer fired an exfiltration rule. Why is closing it 'false positive' wrong?

level: middleimportance: should knowfreq 58%

answer

  1. the record shows action, never authorisation
  2. the rule read every field correctly
  3. dispositions are the rule's performance history
  4. the fix for a false positive removes coverage
  5. loud is a scoping argument, not wrongness

basics

~20 s

The rule was not wrong. It reported the transfer exactly as it happened; only a signed contract makes the transfer acceptable. A false-positive label records a working detection as defective, and defective detections get narrowed or retired.

solid answer

~50 s

The audit trail shows the transfer really happened: a records account copied 812 files, 40 GB, to an external tenant through the sanctioned sync client. The detection read that correctly, so nothing about its logic failed. What makes the case harmless is authorisation, which lives outside the telemetry entirely - a contract, an owner who confirms it. That is a **benign true positive**. Closing it *false positive* writes a lie into the one record the detection has: it now appears on the broken list. Repeat that for a quarter and the rule shows a poor precision history, and a portfolio review will narrow its scope, exclude the sync client, or retire it - at which point a real bulk exfiltration through the same path produces no alert at all. The false-positive code is for a rule that misread the data, and this one did not.

code

json · 12 lines
json
{
  "time": "2026-03-04T09:41:22Z",
  "actor": "[email protected]",
  "actor_group": "records-team",
  "event": "file.copy_to_external_tenant",
  "client": "corp-sanctioned-sync-agent",
  "destination_tenant": "partner-legal.example",
  "file_count": 812,
  "bytes": 42949672960,
  "content_match": "case-file-classifier",
  "...": "..."
}

go deeper

for a junior

Know that a rule reporting real activity is not wrong just because the activity turned out to be allowed. Be able to name the correct code and say why it is not a false positive.

for a middle

Explain the mechanics: which fields the rule read, that authorisation is absent from the telemetry, and how a false-positive history leads to narrowing or retirement of a working detection.

for a senior

Show that you see the exclusion the mislabel invites, and that you would scope on the authorised combination rather than blinding the rule to a sanctioned tool an adversary would happily borrow.

for a principal

Own the framing that disposition accuracy is what makes detection-portfolio decisions defensible, and that a culture rewarding fast closures will corrupt those decisions long before anyone notices coverage is gone.

## What the record establishes, and what it does not The audit entry is unambiguous about mechanics: a named account in the records team copied 812 files totalling roughly 40 GB to an external tenant, using the client the organisation itself deploys and sanctions, and a content classifier matched the files as case material. Every field the rule keyed on is populated correctly and means what the rule's author thought it meant. The record is equally clear about what it cannot tell you: **whether anyone was allowed to do this**. Authorisation is not a field in a SaaS audit trail. It lives in a contract, a ticket, an approval from a records manager. The telemetry can only establish that the action happened. So the case splits cleanly. *Did the rule read the data correctly?* Yes. *Was the activity permitted?* Also yes, once you check the contract. That combination has exactly one honest code: **benign true positive**. ## Why the wrong label is not a harmless shorthand A detection is not a piece of software anyone watches. It is a rule that emits alerts into a queue, and the dispositions written on those alerts are the entire record of how it performs. Everything downstream - the review that decides whether the rule survives, the argument about whether the SOC is drowning, the engineer's decision about which rule to fix first - reads those codes. Write *false positive* on a correct firing and you have made three false statements at once: 1. **About the rule.** Its history now says it misreads data. It does not. 2. **About the estate.** Someone reading the closures learns nothing about the fact that this organisation legitimately moves large volumes of case files to partners - which is a real, useful fact about the environment. 3. **About the fix.** The obvious remedy for a false positive is to change the logic: exclude the sanctioned sync client, drop the classifier condition, raise the byte threshold above 40 GB. Each of those carves a hole exactly the shape of the authorised behaviour - and an adversary who uses the sanctioned client, or stays under the new threshold, now walks through it silently. That third point is the whole danger. The mislabel does not merely misfile a case; it argues for a change that removes coverage, and it argues for it with evidence that looks legitimate. ## The counter-error The opposite mistake is to reach for *benign* whenever an explanation exists. Benign is a verified claim. To hold it you need the authorisation named and confirmed by someone who can grant it - the contract reference, the records-team manager, the destination tenant matching the partner in that contract. "The user said it was fine" is a lead. An intruder operating a legitimate account through the sanctioned client produces the same story, and the story is cheap. If the queue is deep and the authorisation is unverified, the case is open, not benign. ## How to state the verdict A well-formed benign closure is short and checkable: the rule fired correctly on a bulk transfer to `partner-legal.example`; the transfer matches contract reference C-2291; confirmed with the records-team manager; destination tenant matches the contract; disposition **benign true positive**. Every clause is something a later reader - another analyst, an auditor - can re-test. ## Volume is a different argument If that transfer happens weekly, the rule is going to keep firing, and analysts will keep spending real time on it. That is a genuine problem, but it is a **scoping** problem - the environment does the behaviour legitimately - and it is answered by recording the expected activity with an owner and an expiry, not by declaring the rule wrong. Keeping those two arguments apart is what makes the disposition data worth anything: *is the rule accurate?* and *is the rule well scoped to this estate?* are separate questions with separate remedies, and the false-positive code answers only the first.

  • What would you have to see in that audit entry to make it a genuine false positive?
    Evidence the rule misread the data: the destination tenant is actually an internal one the rule failed to recognise, the byte count is a cumulative counter rather than this transfer, or the content classifier matched a template pack rather than case files. A false positive requires the described behaviour not to have occurred as described.
  • The engineer proposes excluding the sanctioned sync client from the rule. What is your objection?
    That exclusion is shaped by the authorised case, not by the rule's accuracy. The sanctioned client is the most attractive path for an adversary precisely because it is trusted and ubiquitous. If scoping is needed, narrow on the combination that was authorised - that group to that partner tenant - rather than blinding the rule to the whole client.
  • Does closing this benign mean the detection needs no change at all?
    Not necessarily, but the case is not evidence that its logic is faulty. If the same authorised transfer recurs, the answer is a recorded expected-activity entry with an owner and an expiry so future firings resolve fast. Any change to the rule itself has to be justified on its own accuracy, not on this closure.

saying these in an interview costs you the question

  • Calls it a false positive because nothing bad happened
  • Proposes excluding the sanctioned client to stop the noise
  • Claims the audit record proves the transfer was authorised
  • Treats disposition codes as having no downstream consequence
  • Accepts the user's word as the authorisation evidence

context