▲ | Davidzheng 5 days ago | ||||||||||||||||||||||
I'm not a security person at all. But this comments reads against the best practices which I've heard. Like that the best defense is using open source & well-tested protocols with extremely small attack surface to minimize the space of possible exploits. Curious what I'm not understanding here. | |||||||||||||||||||||||
▲ | fnordsensei 5 days ago | parent | next [-] | ||||||||||||||||||||||
Just because it’s open source doesn’t mean it’s well tested, or well pen tested, or whatever the applicable security aspect is. It could also mean that attacks against it are high value (because of high distribution). Point is, license isn’t a great security parameter in and of itself IMO. | |||||||||||||||||||||||
▲ | tetha 5 days ago | parent | prev | next [-] | ||||||||||||||||||||||
This area of security always feels a bit weird because ideally, you should think about your assumptions being subverted. For example, our development teams are using modern, stable libraries in current versions, have systems like Sonar and Snyk around, blocking pipelines for many of them, images are scanned before deployment. I can assume this layer to be well-secured to the best of their ability. It is most likely difficult to find an exploit here. But once I step a layer downwards, I have to ask myself: Alright, what happens IF a container gets popped and an attacker can run code in there? Some data will be exfiltrated and accessible, sure, but this application server should not be able to access more than the data it needs to access to function. The data of a different application should stay inaccessible. As a physical example - a guest in a hotel room should only have access to their own fuse box at most, not the fuse box of their neighbours. A normal person (aka not a youtuber with big eye brows) wouldn't mess with it anyway, but even if they start messing around, they should not be able to mess with their neighbour. And this continues: What if the database is not configured correctly to isolate access? We have, for example, isolated certain critical application databases into separate database clusters - lateral movement within a database cluster requires some configuration errors, but lateral movement onto a different database cluster requires a lot more effort. And we could even further. Currently we have one production cluster, but we could isolate that into multiple production clusters which share zero trust between them. An even bigger hurdle putting up boundaries an attacker has to overcome. | |||||||||||||||||||||||
▲ | mindcrime 5 days ago | parent | prev | next [-] | ||||||||||||||||||||||
But "defense in depth" is a security best practice. I'm not following exactly how the gp post is reading against any best practices. | |||||||||||||||||||||||
| |||||||||||||||||||||||
▲ | adastra22 5 days ago | parent | prev | next [-] | ||||||||||||||||||||||
Security person here. Open sourcing your entire stack is NOT best practices. The best defense is defense in depth, with some proprietary layers unknown to the attacker. | |||||||||||||||||||||||
▲ | 0xDEAFBEAD 5 days ago | parent | prev | next [-] | ||||||||||||||||||||||
It should be possible to add layers without increasing attack surface. | |||||||||||||||||||||||
▲ | vlovich123 5 days ago | parent | prev [-] | ||||||||||||||||||||||
Who have you been listening to? |