Well, security by obscurity is no security at all, right?
Most of EE’s security comes from how it handles requests and the personal support people who encourage secure behavior. Security is a mindset and has much more to do with behavior than with a system configuration.
The key is to build-in security measures that are inherent, such as washing all POST and GET requests through a sanitizer, and then encourage all comers to utilize that inherent security.
If it’s bypassed, though, you’re right back where you started, which is the support policy comes in. Do not encourage insecure behavior, which re-inforces the system’s ability to manage the security itself.
Security is a reputational risk for a company like EE. They’ve built their business around professional clients with specific needs, but engineered a brilliant system for making it simple and effective to hook into that security (which is what Mark was getting at).
The only security measure I haven’t seen emphasized by EE is putting the system folder below the root folder, where it could never be accessed directly by external means.
Of course, htaccess can provide non-local security measures (such as not allowing looking into directories), but I would imagine EE takes the point of view that the decision to do so would be in the developers hands, who would know the necessity.
BTW, this is not related, but talking about security as a mindset, if you have never heard of or read Bruce Schneier’s Crypto-Gram newsletter, I highly recommend it:
http://www.schneier.com/crypto-gram.html