// engagement · against your own product · stage 3 of 6
One bug is a finding. A chain is the answer.
We boot your firmware and walk the chain end to end, then say exactly what each step was proven on. No product subscription required.
What this is, and what it is not
The industry uses one phrase for three different products. This is the one that ends in a fix.
If you are comparing quotes, the differences matter more than the price. This is exploit research pointed at a target you own, ending in a reproduction handed to whoever can fix it. It is not a penetration test of your corporate network: no phishing, no directory services, no lateral movement through your office, because our input is a product rather than an estate. It is not a detection exercise measuring whether your analysts noticed, which is a different deliverable for a different buyer. And it is never the sale of offensive capability.
Find the primitives, chain them past the mitigation meant to stop each one, walk the chain to the end state in a system we booted, then name the single change that breaks it. It is usually not the bug you would have prioritized.
No implant development, no endpoint-detection evasion, no command-and-control frameworks, no exploit sold as a deliverable, and no work against a target that is not yours. This is a standing company rule, not a per-engagement negotiation.
You do not have to ship us the device
We rehost your firmware: the real kernel, the real init, the real daemons, booted under full-system emulation from the image you already publish.
Most of this work happens in a booted emulated system rather than on a bench, and that is a feature of the engagement rather than a compromise in it. A rehosted target starts in minutes, so a chain can be attempted hundreds of times instead of twice. It can be snapshotted mid-chain, which is what makes step three reproducible after step two destroys the heap. It runs under instrumentation no physical board exposes, so a crash is attributed to the write that caused it rather than to the symptom. And it costs you no hardware, no lab shipment, and no customs form: an image and an authorization are enough to start.
- What emulation proves. That the bug is real, that the primitive works, that the chain composes, and that the mitigation you believed was on is or is not. These are properties of your code and your build, and a booted guest answers them.
- What it does not prove. Anything that lives in your silicon: a fused key, a secure element, a hardware root of trust, a peripheral with no model, or a timing window that only exists at the real clock. An emulated success is not a silicon claim, and we never promote one to the other.
- What we do about the gap. Steps that depend on hardware are re-walked on a device, yours or ours where one exists. Where no device can be had, the step is reported as proven in emulation only, with the specific hardware behavior it assumes written down so your own engineers can confirm it in an afternoon.
Every verdict says which substrate it was proven on, because that is what tells you how much weight to put on it when you decide whether to ship a fix.
The end state is the scope
Two things decide what this engagement is worth, and both are settled before any work starts.
- Where we have to get. Persistent code execution across a factory reset. A key off the device. A signed update you did not sign. Unauthenticated control from the network. Name it, and the engagement has a pass and a fail; leave it as "see what you can get" and you have bought a report nobody can act on.
- Where the attacker starts. Network-adjacent, a hostile peripheral, a malicious update server, or a device in hand on a bench. The starting position is most of the answer, and a review that assumes a shell on the device has skipped the part you are paying for.
A chain that reaches the end state from a position no attacker holds is interesting and not urgent. We say which it is.
What we go after
Pointed at the layers most reviews declare out of scope, because that is where the assumptions live.
- Shipped firmware and embedded devices. The daemon on a router, camera or controller, reached from a network position rather than a shell you were given.
- The boot and update path. A product whose application layer is sound and whose update path is not has one bug, and it is the update path.
- Memory-safety chains in native code. A write primitive is not an outcome. We take it to a reached end state and say where the chain would have broken if a mitigation had held.
- The mitigation inventory, measured from the binary rather than from your build system's opinion of it.
- Agents and their tool graph. Where an autonomous system can be talked into acting, what it may do when it does, and whether the record can be trusted afterwards.
Where a target's interior is sealed behind hardware we do not have, we name the exact step that stops us, so you know where the work ended and why.
How it runs
What you get back
And the changes that do not help: closing three steps of a four-step chain buys you nothing if the fourth step has no second route.
The dual-use line
Stated here rather than in a terms document, because it changes what you can buy.
Exploit research is a capability we keep, not a product we sell. We develop exploits to prove exploitability against a customer's own product, and the working code goes to that customer and to whoever maintains the affected component. It does not go anywhere else, and it is not licensed, brokered or resold.
Every engagement passes a project review. Identity, plus authorization for the specific target. We refuse work that fails this, including work we would find interesting, and including work from a customer we already have a contract with.
A chain we cannot walk is reported as unproven, and an emulated walk is reported as emulated. A hypothesised chain reads better than four steps and a wall, and "we got code execution" reads better than "we got code execution in a guest", which is exactly why we write the weaker sentence. A simulation that found no chain does not mean your product is secure; it means no chain was found from this starting position, under this scope, in this budget.
Vulnerabilities in software we do not maintain go through coordinated disclosure. If we find a bug in a component your product depends on, the vendor gets notified before anyone else, on the clock published in our disclosure policy. We will not sit on it as leverage and we will not publish it to make a point.
Related
Two engagements sit next to this one, and the difference is where each one starts.
Threat research
Starts from an adversary and asks whether their technique reaches you. This page starts from your product and asks whether any chain reaches an end state you named.
Threat research →Firmware and secure-boot review
Starts from your image and a set of trust decisions. Cheaper than a simulation, and the right first engagement if the boot chain has never been looked at.
Firmware review →