A flaw requires a valid account to exploit. Why is that not a reason to call it low risk?
answer
- position in an intrusion, not difficulty
- who already holds that position?
- count the population, not the steps
- authenticated is not the same as trusted
- self-service signup collapses the distinction
basics
~10 sA precondition says where in an intrusion a flaw becomes usable, not how hard the attack is. Accounts are widely held and cheap to obtain, so "authenticated only" excludes almost no adversary.
solid answer
~50 sA precondition is a position, not a barrier. "Requires a valid account" tells you the flaw is usable from the moment someone has any account, which places it just after initial access rather than out of reach. The next question is always who already holds that position: every employee and contractor, every self-service signup on a multi-tenant product, every service account whose password sits in a repository, and anyone who buys or phishes a working credential. On a product where anyone with an email address can register, "authenticated" is functionally the same audience as "unauthenticated". What the precondition genuinely changes is the actor set and the shape of the attack, because it forces a preceding step; it does not make the flaw unreachable. Ranking a backlog by how many preconditions each entry lists is the mistake this question is testing for.
go deeper
Be ready to say what a precondition is and to give the population test in one line: who already has an account here? Do not equate 'needs authentication' with 'hard to reach'.
Explain why the same wording carries different weight on a self-service multi-tenant product than on a hand-provisioned internal tool, and name the concrete ways an attacker obtains a working credential.
Show that you rate chains rather than rows, and that you can spot the pair where an unauthenticated finding supplies the account that an authenticated finding needs.
Own the consequence for how a whole programme sorts work: any ranking driven by advisory wording rather than by who holds the position will misorder the backlog consistently, not occasionally.
## What a precondition actually is A precondition is the state of the world that must already hold before an exploit's first instruction runs. The common ones are short and familiar: the attacker needs an account on the system, needs to be running code on the host already, needs a person to click something, or needs to be on the same network segment as the target. There are two ways to read that list, and only one of them is right. **The wrong reading is a difficulty scale.** Under this reading, preconditions are obstacles stacked in front of the flaw: three preconditions is harder than one, and harder means lower risk. This produces the classic backlog sorted by precondition count, where "unauthenticated, no interaction" floats to the top and "authenticated, local" sinks whether or not anyone has checked what those words mean in this particular estate. **The right reading is a coordinate.** A precondition names the stage of an intrusion at which the flaw becomes usable. "Requires a valid account" does not say the attack is hard; it says the flaw belongs to the phase after initial access. Since initial access is a thing adversaries do routinely, for a living, all day, that placement is a description of *when* the flaw pays out, not a claim that it never will. ## The population test The test that converts the coordinate into a real judgment is a single question: **who already holds this position?** Enumerate them honestly: - Every employee and every contractor with a directory account. - Every customer, if the product is multi-tenant and self-service. On a system anyone can sign up for with a credit card or a free trial, "requires authentication" describes the entire internet with one extra minute of work. - Every service account, including the ones whose credentials are checked into a repository or baked into an image. - Anyone holding a credential obtained by phishing, by reuse against a breach corpus, or by purchase. Working credentials are among the cheapest things an adversary can acquire, which is precisely why credential theft is such a large share of real intrusions. - Anyone holding a live session or token, which is not the same population as "people who know a password". If that enumeration returns thousands of principals, the precondition is not a barrier. It is a formality, and the honest severity of the flaw is close to what it would be with no precondition at all. ## Authenticated is not trusted A related confusion sits underneath the wrong reading: treating "authenticated" as a synonym for "an insider we vetted". Authentication proves that a credential was accepted. It does not prove who presented it, and on a self-service product it does not even imply an employment relationship. A flaw reachable by any authenticated principal on a multi-tenant system is reachable by any attacker willing to become a tenant. ## What the precondition does legitimately tell you It is not noise. Read as a position, it tells you three useful things: 1. **Which actors can use it.** A flaw needing physical presence in a locked facility genuinely does exclude most of the world. A flaw needing an account excludes almost nobody on a public product and quite a lot of people on an air-gapped one with four operators. The same wording carries different weight in different estates, which is the whole point. 2. **The shape of the attack.** A required preceding step means the technique cannot be fully self-driving; something has to supply the position first. That constrains how the attack composes with others. 3. **Where a chain can be cut.** Choosing the control class that removes a precondition is a separate discipline with its own substitution test, and it is not this question, but the precondition is the input to it. ## Preconditions compose, so ranking in isolation hides chains The most expensive version of the mistake is rating each entry alone. An unauthenticated flaw that yields a low-privilege account is often rated moderate because it grants "only" a weak account. An authenticated flaw that yields administrative control is rated moderate because it "needs an account". Chained, they are one unauthenticated path to administrative control, and no single row in the list says so. Preconditions are the joints where findings snap together; a list sorted by precondition count is exactly the list that makes those joints invisible. ## Saying it in an interview The answer an interviewer is listening for is the reframe plus the test: a precondition is a position in the intrusion rather than a barrier in front of it, so name the population that already occupies that position, and let the size of that population drive the judgment. Then add the honest caveat, which is that preconditions do matter in estates where the position is genuinely scarce, and that telling those two cases apart is the actual skill.
- Where would 'requires a valid account' genuinely be a strong precondition?Where the population holding an account is small, vetted and not remotely reachable: an isolated control system with four named operators, or an internal tool whose accounts are issued by hand and cannot be self-served. The test is the same one; it simply returns a small number. That is why the answer is an enumeration rather than a rule of thumb about the word 'authenticated'.
- Two findings each look moderate: one gives an unauthenticated attacker a low-privilege account, the other needs any account and gives admin. How do you rate them?Together, as one unauthenticated path to admin. The first supplies exactly the precondition the second needs, so the pair is worth far more than either row suggests. Rating entries in isolation systematically hides this, because the precondition is the joint where they connect. When you fix, breaking either link breaks the chain, which is often the cheaper of the two.
- A peer sorts the backlog by how many preconditions each finding lists. What is the one sentence that shows the flaw in that method?Precondition count measures the wording of the advisory, not the reachability of the position in your estate. Three preconditions that your own architecture hands out for free rank below one precondition nobody can satisfy, and the sort has no way to see that. Sort by who already holds the position instead.
A precondition is a postcode, not a lock. It tells you where the flaw lives in the attack, and you still have to ask how many people already live there.
saying these in an interview costs you the question
- Ranks findings by how many preconditions the advisory lists
- Treats authenticated as meaning vetted employee only
- Assumes an account can only be obtained by cracking a password
- Calls a precondition a barrier the attacker must break through
- Rates each finding alone and misses that one supplies the other's precondition