dev-sec / linux-baseline

DevSec Linux Baseline - InSpec Profile
https://dev-sec.io/baselines/linux/
Apache License 2.0
764 stars 184 forks source link

Normative specification as a benchmark in an audit - CIS or DISA #110

Open naman opened 5 years ago

naman commented 5 years ago

Is your feature request related to a problem? Please describe. Currently, the project doesn't have a normative specification that can be used as a benchmark in an audit - we can use CIS or DISA . A security baseline standard should be a norm for auditing purposes.

Describe the solution you'd like We could either add support for a baseline standard or mention deviations from it.

Here is the original issue raised in the ansible-os-hardening repo https://github.com/dev-sec/ansible-os-hardening/issues/76

chris-rock commented 5 years ago

Thank you @naman for raising the issue. I think it is a very valid question.

The dev-sec baselines are not following one specific ruleset by intention. There are many regulations out there and you named CIS and DISA STIG as two examples. Other non-US countries have others. Most approaches I've seen follow just one regulation but if you look into those specs they share (in most cases) about 80% of the same rules. In addition, dev-sec hardening modules and baselines are split by logical components e.g. linux core, ssh. CIS and DISA aggregate everything into one baseline. The CIS/DISA approach has a lot of disadvantages from maintenance perspective since e.g. ssh controls should really just be defined once. In addition all CIS/DISA baselines have known challenges with minimal-linux environments like Docker containers. Therefore, I believe the following approach works best:

Does that make any sense?

artem-sidorenko commented 5 years ago

@naman this is a very good point. I share the view of @chris-rock here completely

Just to bring a similar example from my employer: I had a similar discussion within DT last week. DT has its own security papers and requirements, 80-90% of them are identical with CIS/DISA/.... So my colleagues are trying to establish internally something like dev-sec.io: basically a marketplace where any project or technical user can just pull the baseline/implementations and after executing them you can be sure that the system is compliant to the given security requirements.

It's not possible for DT to rely completely on dev-sec.io:

The idea we had in this discussion is:

chris-rock commented 5 years ago

@artem-sidorenko I recommend to use InSpec overlay profiles for that use case. Overlays can add additional tags to existing controls.

artem-sidorenko commented 5 years ago

@chris-rock thanks! this is the idea, we will see how it evolves..