The saying that stuck with me was "defenders have to be right 100% of the time, while attackers only have to be right once".
You are suggesting this isn't correct?
> a defender gets to pick the surface area
What do you mean? You don't pick what you need to defend. Unless you choose not to build a feature. But that's a product design choice... Not a cybersecurity strategy.
It's correct but defenders also choose where that happens. 100% of the time on the locations and conditions that the defenders choose / allow. As a defender i need to be right 100% of the time, sure, but i can make it so that the things i have to be right about are very well known to me, unknown to others, maybe even extremely unlikely to be to known by others, difficult to get to know, (...). So that saying is true but over simplifies the situation. I know monkey brain likes simple phrase. But monkey not live in savannah anymore. Need to adapt and open mind to complex.
Today’s surface areas are gigantic and many of them will - in a typical company - not be chosen by cybersecurity experts. How do I hide the physical location of an office that offers physical access to the company’s network? How do I hide which OS the company is using? How do I hide the underlying technology of customer-facing systems? How do I hide which SaaS services I use?
> The saying that stuck with me was "defenders have to be right 100% of the time, while attackers only have to be right once".
> You are suggesting this isn't correct?
The intuition behind that is applicable only when correctness is stochastic. If you need to be waved in by a security guard, then one fake mustache might be the difference between being granted or denied entry. However, a keypad either works or it doesn't; entering the wrong PIN is guaranteed refusal.
The other breach of that intuition is defense in depth. Secure systems don't generally rely on a single binary trusted/untrusted status; the classified building still locks its interior doors. This is the part that has – in my view temporarily – changed most with frontier models, in that they are much more skilled at chaining together vulnerabilities than previous models (and much faster about it than human experts, even if potentially less skilled). If a system has a latent (0-day) vulnerability 50% of the time, then 10 independent layers would imply a ≈ 1/1000 chance that a critical compromise is possible.
However, these independent layers don't currently happen in practice because it's easier to write insecure code than secure code. With luck, modest discipline, and defensive use of frontier models I think that this gap will narrow with time, in much the same way that it would be plainly crazy to deploy root access via telnet today.
This is the same mentality that drives companies to sue cybersecurity researchers for exposing vulnerabilities in their software instead of fixing the software, or to insist on keeping software closed source for "security reasons".
If AI makes finding software vulnerabilities easier, then we should deploy it widely to find as many vulnerabilities as possible and fix them, not bury our heads in the sand and pretend the vulnerabilities don't exist as long as nobody knows about them. That's just the same "security by obscurity" strategy that has been tried and failed time and time again.
> "defenders have to be right 100% of the time, while attackers only have to be right once"
If you have an adaptive system that can react to attacks flexible (say, your own AI agent), then no, that's not correct. It is correct in the classical conception of cybersecurity where the defender is basically static.
Doesn’t this “adaptive system” just become part of the static defense? The same way that a bit of code that checks passwords against a db is “dynamic”, the options are either to beat the dynamic system (guess/phish a password, trick the AI) or find a way around it (use “forgot your password”, find a place that isn’t covered by the endpoint protection feeding the AI). I don’t see how inserting an agent somewhere fundamentally changes anything
It changes how many attempts you get until the attack surfaces changes to react to a failed attack, and it does so in a way that is not predictable to the attacker.
You need to communicate better. One of the most important steps is to know your audience. This means you need to understand where they are coming from. Without this understanding, your words are unlikely to be correct and useful. To communicate clearly is to think clearly.
If you can’t follow these basics, why are you even writing comments? Are you meant to be using the internet?
I’m not the one you replied to so I can’t give examples of that, but it is remarkable how much you can guide the output with claude.md.
I wrote in mine that I don’t really care that much about what it has to say, it should be concise and avoid unnecessary prose, and always lean on sharing relevant passages from the actual code with file names and line numbers and it helped my sanity a lot.
Is the code it’s quoting 100% accurate? I don’t know because I don’t double check it all. But I don’t feel like I’m losing my mind anymore and the stuff I have double checked was correct.
Not ignoring anything, just commenting on what the graph says as a singular piece of evidence. And it's "the hundreds of other signals that tell a similar story" that can lead to confirmation bias (ie. following a narrative arc) and potentially interpreting this piece of evidence more strongly than it actually deserves.
See, you're part of the problem. This perfectly demonstrates the point of confirmation bias. You've already decided what the evidence shows, so you don't need to analyze it independently and objectively. "We already know what it means! Stop thinking!"
This feels too broad. What modern government doesn't compel action?
reply