Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CIS Cri-O Benchmark v1.0 #90

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open

Conversation

nregelink
Copy link

Dear reader,

Thank you for taking your time to read this.

This is a CRI-O runtime security benchmark based on de Aquasecurity Docker-Benchmark.

We are a group of 4 students from the Netherlands currently in our last year for our Bachelor in Computer Sciences.
For a project we are assigned a research in building a Cri-O runtime benchmark which is based on the AquaSecurity Docker-Benchmark.
This project is carried out in cooperation with a company which specialises in software development and IT-architecture.

We've developed a Cri-O config 1.0 for the Aquasecurity Benchmark.
The definitions of the Docker-Benchmark have been evaluated and assesed for applicability on a Cri-O runtime environment.
In order to run the Benchmark, run the Aquasecurity benchmark with the following argumet: --benchmark crio-1.0
!Note!: if you have customised your Cri-O container storage location, please change the value of "crio-storage" in config.yaml

For now the company name will be undisclosed until further notice. This project is being carried out for Saxion University of Applied Sciences: https://www.saxion.edu/ For any questions, please do not hesitate in creating an active issue or by contacting me via mail: [email protected]

Please note that this is our first time creating a pull request in github, if we've made any mistakes, please do let us know.
We'd love to hear your feedback on our work so far.
Happy holidays !

Kind Regards,
Niels Regelink

@codecov
Copy link

codecov bot commented Dec 25, 2020

Codecov Report

Merging #90 (c4e793a) into main (190869d) will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##             main      #90   +/-   ##
=======================================
  Coverage   59.18%   59.18%           
=======================================
  Files           4        4           
  Lines         147      147           
=======================================
  Hits           87       87           
  Misses         50       50           
  Partials       10       10           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 190869d...c4e793a. Read the comment docs.

@yoavrotems yoavrotems self-requested a review December 29, 2020 10:45
@yoavrotems
Copy link
Contributor

Hey! very nice contribution! :)
I didn't started to go through the PR yet, but I have a couple of questions first,

  1. on which benchmark did you based it? (CIS 1.2?)
  2. Secondly did you used cri official data source or just tested it locally and found where is what?
    Beside that any special comments or thing I should know before starting to review this PR?

@nregelink
Copy link
Author

nregelink commented Dec 30, 2020 via email

@yoavrotems
Copy link
Contributor

It will take me a while because I want to validate all information is documented in cri-o documentation, and if its valid for which cri-o releases.
In the meanwhile, I would recommend you to add to code autodetection for running cri-o, same as we check for docker version to know what CIS version to choose.

@nregelink
Copy link
Author

Dear Yoav,

Today we've updated the cri-o config definitions.yaml.
There were some typ-o's and general formatting errors.
We've also removed some further tests which turned out to be non-applicable.

We are now in the process of finalizing our documentation and are considering issuing this config for review in the cri-o community github as well.

Can I commit the changes to the definitions.yaml in the pull request or do you want me to send it separately?

Thanks in advance!

Niels Regelink.

@yoavrotems
Copy link
Contributor

Do it here :)

@nregelink
Copy link
Author

I can't seem to upload the definitions.yaml into this section, it keeps saying file not supported.
I've tried uploading a ZIP, didn't work either.
An updated version can be found here:
https://github.com/nregelink/CIS-CRI-O-Benchmark/tree/main/crio-1.0

@lizrice
Copy link
Contributor

lizrice commented Jan 11, 2021

@nregelink thank you for making this contribution! It's a really nice idea to have a benchmark for CRI-O and we'd love to get one published but there are a couple of things that would need to happen first.

Our test files for docker-bench, kube-bench etc implement the tests specified in benchmark documents published by the CIS. We try to stick as closely as possible to those community benchmark specifications, and we can't describe a benchmarks as CIS unless it's published by them. So one thing you might want to consider is getting in touch with them and publishing it there, and then the test files can be published here as an implementation of a CIS benchmark.

Another thing I think would be really valuable would be to work with the CRI-O maintainers as they are in a better position than we are to comment on the validity of the tests being suggested here. Looping in @rhatdan @mrunalp @runcom for comment.

@nregelink
Copy link
Author

Dear @lizrice ,
Thank you for your reply.
@yoavrotems , the new version has been updated in the pull request!

Kind regards,
Niels Regelink.

@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants