kubearmor / KubeArmor

Runtime Security Enforcement System. Workload hardening/sandboxing and implementing least-permissive policies made easy leveraging LSMs (BPF-LSM, AppArmor).
https://kubearmor.io/
Apache License 2.0
1.47k stars 340 forks source link

feat: Store kubearmor policies in OCI registeries and Leverage OCI Hooks for Container Events #1130

Open kranurag7 opened 1 year ago

kranurag7 commented 1 year ago

Store KubeArmor policies in OCI registeries and use OCI hooks to get container events

Credits & References:

Amishakumari544 commented 1 year ago

Hello, I'm interested in working and learning more about this under GSOC. I'm finished with the KubeArmor development setup. Next step is to get familiar with the references provide above right?

ShivangShandilya commented 1 year ago

@kranurag7 I'm pretty intrigued with this project, so are the references provided in the issue description enough to get started??

ShivangShandilya commented 1 year ago

@kranurag7 so I have been studying this issue for a while now, correct me if I misunderstood anything. So, basically what we have to do is store the kubearmor policies in an OCI artifact so that kuberarmor-client can perform functions like push and pull of various policies. Upon further reading I found that DockerHub is currently not supporting OCI artifacts, so we might have to use an alternative such Amazon ECR or Github Container Registry. After doing this task all we have to do is list all those policies on artifacthub. Am I correct?? If I understood this correctly I would definitely like to work on this.

akashsawan1 commented 1 year ago

Is KubeArmor planning to participate with this issue in LFX June term? I am really looking forward to work on it under a mentor.

nyrahul commented 1 year ago

Is KubeArmor planning to participate with this issue in LFX June term? I am really looking forward to work on it under a mentor.

Yep, KubeArmor maintainers will submit the proposals for LFX June term.

akashsawan1 commented 1 year ago

Is KubeArmor planning to participate with this issue in LFX June term? I am really looking forward to work on it under a mentor.

Yep, KubeArmor maintainers will submit the proposals for LFX June term.

I know Goland and have meduim-level understanding of containers. I would be happy to work on this issue. Firstly, I will go through the documentation and try to set up the project locally. I am eager to participate and will submit my application as soon as the mentee applications open.

akashsawan1 commented 1 year ago

Hey, I have understanding of Go(basic) and K8s, and I also have some familiarity with Open container Initiative(OCI). I'm interested in participating in the LFX mentorship program. To begin, I plan to explore and set up Kubearmor locally. I will go through the issue and will try to understand. Could you please recommend some resources that can help me understand the topic better?

akashsawan1 commented 1 year ago

So,Our goal is to save the KubeArmor policy in an OCI (Open Container Initiative) registry, which will enable the Kubearmor client to communicate with the OCI registry. That includes pushing, pulling, and verifying the policies, like container images. Additionally, by implementing OCI hooks, we can capture container start and stop events. I would like to work on this issue.

rootxrishabh commented 1 year ago

Hey @kranurag7, I have an understanding of OCI's , kuberenetes, golang and docker. I am interested in applying for this project, and will apply soon : )

akshay196 commented 1 year ago

Write a design proposal with sample implementation example: https://docs.google.com/document/d/1aSUvvl0_JQtDsZ1mF_VmQBmKIsgIqfGaOeycPv7hY6Y/edit#

Please add your comments/suggestions.

akshay196 commented 1 year ago

Progress of OCI registry feature can be tracked here: https://github.com/akshay196/kubearmor-client/tree/oci-registry-pull-push (I will raise PR for review once I add sufficient code and tested it)

Sanskarzz commented 1 year ago

Hello , Is this issue is available for Term 3 ?

nyrahul commented 1 year ago

Hello , Is this issue is available for Term 3 ?

Nope. This issue is well handled in the current term by @akshay196 and we anticipate to close it in this term itself.

But we will update the new issues that we intend to add to term 3 by today. Stay tuned.