3 ms·
As an experienced software developer I feel like I have decent understanding of how to harden my code both line-by-line and through sound architectural decision
by rectang 5y ago
As an experienced software developer I feel like I have decent understanding of how to harden my code both line-by-line and through sound architectural decisions, avoiding mistakes from memory safety to injection to permissions to race conditions to what-have-you. But I will gladly acknowledge that I'm not an expert system administrator and generally need to rely on others who have the necessary skills to set up servers and avoid misconfigurations to the standard I feel like can uphold in my own code.
Seeing a formulaic approach to pen-testing is inspiring. I feel as though if I were to practice, I would eventually be able to develop routines and understanding of how to test for and detect common errors. It would be nice to build additional competence and collaborate more effectively with expert sysadmins, even if I don't plan to masquerade as one.
What sort of basic checks should one perform after provisioning a server or making a service available? (Perform a port scan, validate that an internal server is inaccessible from the wider net, etc.)
- CodeGlitch 5y ago> What sort of basic checks should one perform after provisioning a server or making a service available? Automate everything, as in the provisions. Even if it's a one-shot job. This way if something does go wrong you can go look back at the script and it will give you an idea of where things went wrong (misconfiguration, etc).
- rectang 5y agoThanks, that's a perfect suggestion! I'm accustomed to writing automated unit and integration tests for my code. What sort of tests should I add to the provisioning routine to prove that I got it right? I appreciate that a skilled pentester would likely uncover service-specific or instance-specific vulnerabilities, but there are surely some testing principles that would make sense for every single server. Or is it really that at a high level, a port scan suffices and from there everything is service-specific (or at least requires going through a port)? I don't know what I don't know, here. Is there any way that a machine can be vulnerable from a network connection except through a port? (Let's ignore attacks which require physical access for the time being.)