4 ms·
PostgreSQL and FIPS Mode
- deleted 3y ago[deleted]
- nickvanw 3y agoThis is the un-fun work needed to get open source software into many different parts of the enterprise and government. It's not fun, and sometimes it's not even very difficult, but its usually very tie consuming and full of arcane knowledge. Signed, someone who was dropped a big application and asked to make it FIPS compliant ASAP.
- pixl97 3y agoOpen, closed, it's all a bunch of fun getting working in FIPS mode. Especially 3rd party applications. They'll call a library, that calls a library that uses something not compliant. While FIPS is a pain in the ass, can show you potential failures your software has with using ancient crypto methods that are easy to enable and completely compromise the security of your software.
- chii 3y agobut i think there's some requirements in FIPS that are really just checkbox rather than actual security. I suppose it's easier to have a list of checkboxes to tick from a compliance perspective.
- walth 3y agoThere is also a large difference between FIPS compliant and FIPS certified. The former is running in FIPS mode and the latter is running a cryptographic module that has been inspected and verified by the CMVP. And then the whole thing is really terrible security theater as you are technically out of certification if you apply any non-inspected updates.
- p_l 3y agoOpenSSL 3 made a huge improvements in getting oneself FIPS certified, by isolating the FIPS-covered code to small auditable module that doesn't have to be updated all that much, thus letting you update OpenSSL in general while retaining CMVP-verified crypto. Now, getting it into some of the open source code was a PITA, especially when you have things like components that depended on MD5 somewhere...
- hedora 3y agoI’ve heard this approach called the “draw an imaginary and arbitrary box in your architecture diagram” approach to FIPS compliance. Fun fact: the fips compliant stuff doesn’t have to be on the data path if you draw the rectangle correctly. In other news, my smart refrigerator has military grade encryption, so no one can steal my sandwich.
- wahern 3y ago> And then the whole thing is really terrible security theater as you are technically out of certification if you apply any non-inspected updates. The days when FIPS compliance required using relatively weak ciphers and modes were lamentable. But all the other tedious box checking work arguably shows that cipher bike shedding is the real security theater. If you don't have a plan--and follow that plan--to track software origins and updates, or an ability to quickly resolve dependency issues that make it difficult to refactor or even update your systems, then you have much bigger problems than whether your latest software is using the Noise protocol or has migrated from BLAKE2 to BLAKE3. Which is not to say that maintaining FIPS certification or FedRAMP compliance equates to good security. It's trivial to identify simplifications that would result in better operational security. But the vast majority of projects and organizations struggling to meet those standards are struggling precisely because their security posture is horrendously poor when looked at comprehensively.
- somat 3y agoThe saying goes something like. Good operational security will get you through times of bad crypto. But the converse is not true. Good crypto will not save you from bad opsec.
- waynesonfire 3y agocurious to know which roles in an organization require a deep understanding of technical standards like FIPS or ISO. Is it typically expected of entry-level engineers, senior engineers, principals, tech leads, and/or project managers? Have you ever needed to immerse yourself in a FIPS or ISO standard? Was it out of necessity for a project (just-in-time learning), or do some of you explore these standards in your spare time? These standards are complex and mastering them is no small feat. It's interesting that people don't often brag about this expertise on their resumes. Have you ever listed such standards as part of your skill set? Why or why not? I'm eager to hear your experiences and insights. How has your understanding of these standards impacted your career or projects?
- linuxguy2 3y agoOooo for once, my time to shine! Or maybe, my time to shine??? > Is it typically expected of entry-level engineers, senior engineers, principals, tech leads, and/or project managers? Working at a company that provides FedRAMP-approved services, the knowledge of FIPS within the company is a bit sparse. InfoSec definitely needed to understand it in order to explain to developers that they have to use BouncyCastle over the default java crypto provider, etc, but it took someone else to _really_ understand it and tell InfoSec that they were initially asking for the wrong thing. Entry-level? No. Senior? At least minimal understanding of how cryptography works in their language of choice and the impact of FIPS. Principal? Same Tech leads? Not a well-defined role. Probably. Project managers? No. > Have you ever needed to immerse yourself in a FIPS or ISO standard? Yes. Multiple times. I argue with third-party auditors and the FedRAMP Joint Advisory Board about interpretation of these standards. > Was it out of necessity for a project (just-in-time learning), or do some of you explore these standards in your spare time? Necessity. See FedRAMP. However I can say ISO8601 was just for fun. ISO8601 gang represent! > These standards are complex and mastering them is no small feat. It's interesting that people don't often brag about this expertise on their resumes. I've seen a couple people who listed those standards or similar (FedRAMP again). Given the choice between two identical candidates while one has FedRAMP/FIPS/ISO experience I'll pick the one listing the standards. > Have you ever listed such standards as part of your skill set? Why or why not? I've not updated my resume since acquiring skills in the relevant standards but will probably include them when I do update my resume. They're a specialization that commands a premium when it comes to salary, if you're willing to work in the industries / companies that play in that space. Some people wouldn't include it because they truly hate working with rigorous standards. > How has your understanding of these standards impacted your career or projects? Understanding them has certainly proved to be a benefit to my career given how closely I work with them.
- josephcsible 3y ago> “FIPS mode” is a thing provided by OpenSSL that, well, makes it more secure A well-configured system would either be unchanged or be made less secure by enabling FIPS mode. Nobody should ever use it without a legal requirement to do so.
- gleenn 3y agoHow would it become less secure? Because newer crypto algos aren't in the set allowed by FIPS?
- hedora 3y agoFIPS usually implies a bunch of counterproductive architectural decisions and makes it harder/slower to produce security patches. Also, FIPS used to mandate support for an almost-certainly-backdoored cryptographically secure random number generator, and continued to do so well after it was obviously flawed: https://en.m.wikipedia.org/wiki/Dual_EC_DRBG https://en.m.wikipedia.org/wiki/Dual_EC_DRBG
- patmorgan23 3y agoFIPS is designed for standardization/predictability/interoperability not Security. The only reason to turn it on is if you have a regulatory requirement to do so.
- josephcsible 3y agoLots of reasons. Yours is one, and another is that FIPS disallows you from patching security vulnerabilities in a timely manner.
- Nursie 3y agoLast time I had a FIPS project, which is a long old time now, activating FIPS mode meant disabling weak ciphers but it also meant disabling stuff like DH/DHE key exchange. It seemed to be like that because it's government, and they may want to decode their traffic at a future date, for auditing or leak detection, so 'PFS' measures were not allowed. I am talking about FIPS 140-2 though, and almost 20 years ago!
- MrResearcher 3y agoHow come Ed25519 is not approved?
- cipherboy 3y agoIt is in FIPS 186-5 which is a very recent standard. Likely the underlying implementation has not undergone recertification to include it, as NIST has quite the backlog for FIPS certifications. See: https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdf https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdf and https://csrc.nist.gov/projects/cryptographic-module-validation-program/modules-in-process/modules-in-process-list https://csrc.nist.gov/projects/cryptographic-module-validati...
- linuxguy2 3y agoI used FIPS 186-5 in an argument with my InfoSec team to get ed25519 added to the list of accepted SSH key types on SSH servers running in FIPS mode. What a fun day :P
- thayne 3y ago> "FIPS mode” is a thing provided by OpenSSL that, well, makes it more secure Well, it makes it more compliant. In some ways it can make it less secure. For example, you can't use the newer algorithms (which becomes more important the longer it's been since the latest FIPS standard was released). And if you need to be FIPS certified, you have to wait for security patches to go through a lengthy review process.
- anticensor 3y agoWhy not operate it in the FIPS mode all the time?