Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package marvin for openSUSE:Factory checked 
in at 2024-09-29 18:10:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/marvin (Old)
 and      /work/SRC/openSUSE:Factory/.marvin.new.29891 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "marvin"

Sun Sep 29 18:10:16 2024 rev:2 rq:1204242 version:0.2.6

Changes:
--------
--- /work/SRC/openSUSE:Factory/marvin/marvin.changes    2024-08-01 
22:06:32.113678353 +0200
+++ /work/SRC/openSUSE:Factory/.marvin.new.29891/marvin.changes 2024-09-29 
18:11:02.530632886 +0200
@@ -1,0 +2,7 @@
+Fri Sep 27 20:40:34 UTC 2024 - opensuse_buildserv...@ojkastl.de
+
+- Update to version 0.2.6:
+  * UD-1664: Add check for unauthenticated or anonymous subjects
+    within role bindings
+
+-------------------------------------------------------------------

Old:
----
  marvin-0.2.5.obscpio

New:
----
  marvin-0.2.6.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ marvin.spec ++++++
--- /var/tmp/diff_new_pack.y7mp9U/_old  2024-09-29 18:11:03.210660981 +0200
+++ /var/tmp/diff_new_pack.y7mp9U/_new  2024-09-29 18:11:03.214661146 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package marvin
 #
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -19,7 +19,7 @@
 %define __arch_install_post export NO_BRP_STRIP_DEBUG=true
 
 Name:           marvin
-Version:        0.2.5
+Version:        0.2.6
 Release:        0
 Summary:        Scans a k8s cluster for misconfigurations and vulnerabilities
 License:        Apache-2.0

++++++ _service ++++++
--- /var/tmp/diff_new_pack.y7mp9U/_old  2024-09-29 18:11:03.254662799 +0200
+++ /var/tmp/diff_new_pack.y7mp9U/_new  2024-09-29 18:11:03.258662964 +0200
@@ -3,7 +3,7 @@
     <param name="url">https://github.com/undistro/marvin</param>
     <param name="scm">git</param>
     <param name="exclude">.git</param>
-    <param name="revision">v0.2.5</param>
+    <param name="revision">v0.2.6</param>
     <param name="versionformat">@PARENT_TAG@</param>
     <param name="changesgenerate">enable</param>
     <param name="versionrewrite-pattern">v(.*)</param>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.y7mp9U/_old  2024-09-29 18:11:03.278663790 +0200
+++ /var/tmp/diff_new_pack.y7mp9U/_new  2024-09-29 18:11:03.282663956 +0200
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param name="url">https://github.com/undistro/marvin</param>
-              <param 
name="changesrevision">120531821e5b54859c50c2abf78ca9fd864adf75</param></service></servicedata>
+              <param 
name="changesrevision">70da7ad5cded412b46441bda987c49cf078565e3</param></service></servicedata>
 (No newline at EOF)
 

++++++ marvin-0.2.5.obscpio -> marvin-0.2.6.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/marvin-0.2.5/checks.md new/marvin-0.2.6/checks.md
--- old/marvin-0.2.5/checks.md  2024-07-30 20:16:21.000000000 +0200
+++ new/marvin-0.2.6/checks.md  2024-08-08 16:35:46.000000000 +0200
@@ -3,39 +3,40 @@
 In the table below, you can view all checks present on Marvin. Click on the 
#ID column item for more details about each check.
 
 
-| Framework        | #ID                                                       
                          | Severity | Message                                  
             |
-|------------------|-------------------------------------------------------------------------------------|----------|-------------------------------------------------------|
-| CIS Benchmarks   | 
[M-500](/internal/builtins/cis/M-500_default_namespace.yaml)                    
    | Medium   | Workloads in default namespace                        |
-| General          | 
[M-400](/internal/builtins/general/M-400_image_tag_latest.yaml)                 
    | Medium   | Image tagged latest                                   |
-|                  | 
[M-401](/internal/builtins/general/M-401_unmanaged_pod.yaml)                    
    | Low      | Unmanaged Pod                                         |
-|                  | 
[M-402](/internal/builtins/general/M-402_readiness_probe.yaml)                  
    | Medium   | Readiness and startup probe not configured            |
-|                  | 
[M-403](/internal/builtins/general/M-403_liveness_probe.yaml)                   
    | Medium   | Liveness probe not configured                         |
-|                  | 
[M-404](/internal/builtins/general/M-404_memory_requests.yaml)                  
    | Medium   | Memory requests not specified                         |
-|                  | 
[M-405](/internal/builtins/general/M-405_cpu_requests.yaml)                     
    | Medium   | CPU requests not specified                            |
-|                  | 
[M-406](/internal/builtins/general/M-406_memory_limit.yaml)                     
    | Medium   | Memory not limited                                    |
-|                  | [M-407](/internal/builtins/general/M-407_cpu_limit.yaml)  
                          | Medium   | CPU not limited                          
             |
-|                  | 
[M-408](/internal/builtins/general/M-408_sudo_container_entrypoint.yaml)        
    | Medium   | Sudo in container entrypoint                          |
-|                  | 
[M-409](/internal/builtins/general/M-409_deprecated_image_registry.yaml)        
    | Medium   | Deprecated image registry                             |
-|                  | 
[M-410](/internal/builtins/general/M-410_resource_using_invalid_restartpolicy.yaml)
 | Medium   | Resource is using an invalid restartPolicy            |
-| NSA-CISA         | 
[M-300](/internal/builtins/nsa/M-300_read_only_root_filesystem.yml)             
    | Low      | Root filesystem write allowed                         |
-| MITRE ATT&CK     | 
[M-200](/internal/builtins/mitre/M-200_allowed_registries.yml)                  
    | Medium   | Image registry not allowed                            |
-|                  | 
[M-201](/internal/builtins/mitre/M-201_app_credentials.yml)                     
    | High     | Application credentials stored in configuration files |
-|                  | 
[M-202](/internal/builtins/mitre/M-202_auto_mount_service_account.yml)          
    | Low      | Automounted service account token                     |
-|                  | [M-203](/internal/builtins/mitre/M-203_ssh.yml)           
                          | Low      | SSH server running inside container      
             |
-| PSS - Baseline   | 
[M-100](/internal/builtins/pss/baseline/M-100_host_process.yml)                 
    | High     | Privileged access to the Windows node                 |
-|                  | 
[M-101](/internal/builtins/pss/baseline/M-101_host_namespaces.yml)              
    | High     | Host namespaces                                       |
-|                  | 
[M-102](/internal/builtins/pss/baseline/M-102_privileged_containers.yml)        
    | High     | Privileged container                                  |
-|                  | 
[M-103](/internal/builtins/pss/baseline/M-103_capabilities.yml)                 
    | High     | Insecure capabilities                                 |
-|                  | 
[M-104](/internal/builtins/pss/baseline/M-104_host_path_volumes.yml)            
    | High     | HostPath volume                                       |
-|                  | 
[M-105](/internal/builtins/pss/baseline/M-105_host_ports.yml)                   
    | High     | Not allowed hostPort                                  |
-|                  | 
[M-106](/internal/builtins/pss/baseline/M-106_apparmor.yml)                     
    | Medium   | Forbidden AppArmor profile                            |
-|                  | 
[M-107](/internal/builtins/pss/baseline/M-107_selinux.yml)                      
    | Medium   | Forbidden SELinux options                             |
-|                  | 
[M-108](/internal/builtins/pss/baseline/M-108_proc_mount.yml)                   
    | Medium   | Forbidden proc mount type                             |
-|                  | 
[M-109](/internal/builtins/pss/baseline/M-109_seccomp.yml)                      
    | Medium   | Forbidden seccomp profile                             |
-|                  | 
[M-110](/internal/builtins/pss/baseline/M-110_sysctls.yml)                      
    | Medium   | Unsafe sysctls                                        |
-| PSS - Restricted | 
[M-111](/internal/builtins/pss/restricted/M-111_volume_types.yml)               
    | Low      | Not allowed volume type                               |
-|                  | 
[M-112](/internal/builtins/pss/restricted/M-112_privilege_escalation.yml)       
    | Medium   | Allowed privilege escalation                          |
-|                  | 
[M-113](/internal/builtins/pss/restricted/M-113_run_as_non_root.yml)            
    | Medium   | Container could be running as root user               |
-|                  | 
[M-114](/internal/builtins/pss/restricted/M-114_run_as_user.yml)                
    | Medium   | Container running as root UID                         |
-|                  | 
[M-115](/internal/builtins/pss/restricted/M-115_seccomp.yml)                    
    | Low      | Not allowed seccomp profile                           |
-|                  | 
[M-116](/internal/builtins/pss/restricted/M-116_capabilities.yml)               
    | Low      | Not allowed added/dropped capabilities                |
+| Framework        | #ID                                                       
                                           | Severity | Message                 
                                         |
+|------------------|------------------------------------------------------------------------------------------------------|----------|------------------------------------------------------------------|
+| CIS Benchmarks   | 
[M-500](/internal/builtins/cis/M-500_default_namespace.yaml)                    
                     | Medium   | Workloads in default namespace                
                   |
+| General          | 
[M-400](/internal/builtins/general/M-400_image_tag_latest.yaml)                 
                     | Medium   | Image tagged latest                           
                   |
+|                  | 
[M-401](/internal/builtins/general/M-401_unmanaged_pod.yaml)                    
                     | Low      | Unmanaged Pod                                 
                   |
+|                  | 
[M-402](/internal/builtins/general/M-402_readiness_probe.yaml)                  
                     | Medium   | Readiness and startup probe not configured    
                   |
+|                  | 
[M-403](/internal/builtins/general/M-403_liveness_probe.yaml)                   
                     | Medium   | Liveness probe not configured                 
                   |
+|                  | 
[M-404](/internal/builtins/general/M-404_memory_requests.yaml)                  
                     | Medium   | Memory requests not specified                 
                   |
+|                  | 
[M-405](/internal/builtins/general/M-405_cpu_requests.yaml)                     
                     | Medium   | CPU requests not specified                    
                   |
+|                  | 
[M-406](/internal/builtins/general/M-406_memory_limit.yaml)                     
                     | Medium   | Memory not limited                            
                   |
+|                  | [M-407](/internal/builtins/general/M-407_cpu_limit.yaml)  
                                           | Medium   | CPU not limited         
                                         |
+|                  | 
[M-408](/internal/builtins/general/M-408_sudo_container_entrypoint.yaml)        
                     | Medium   | Sudo in container entrypoint                  
                   |
+|                  | 
[M-409](/internal/builtins/general/M-409_deprecated_image_registry.yaml)        
                     | Medium   | Deprecated image registry                     
                   |
+|                  | 
[M-410](/internal/builtins/general/M-410_resource_using_invalid_restartpolicy.yaml)
                  | Medium   | Resource is using an invalid restartPolicy       
                |
+|                  | 
[M-411](/internal/builtins/general/M-411_role_binding_referencing_anonymous_or_unauthanticated.yaml)
 | Medium   | Role Binding referencing anonymous user or unauthenticated group |
+| NSA-CISA         | 
[M-300](/internal/builtins/nsa/M-300_read_only_root_filesystem.yml)             
                     | Low      | Root filesystem write allowed                 
                   |
+| MITRE ATT&CK     | 
[M-200](/internal/builtins/mitre/M-200_allowed_registries.yml)                  
                     | Medium   | Image registry not allowed                    
                   |
+|                  | 
[M-201](/internal/builtins/mitre/M-201_app_credentials.yml)                     
                     | High     | Application credentials stored in 
configuration files            |
+|                  | 
[M-202](/internal/builtins/mitre/M-202_auto_mount_service_account.yml)          
                     | Low      | Automounted service account token             
                   |
+|                  | [M-203](/internal/builtins/mitre/M-203_ssh.yml)           
                                           | Low      | SSH server running 
inside container                              |
+| PSS - Baseline   | 
[M-100](/internal/builtins/pss/baseline/M-100_host_process.yml)                 
                     | High     | Privileged access to the Windows node         
                   |
+|                  | 
[M-101](/internal/builtins/pss/baseline/M-101_host_namespaces.yml)              
                     | High     | Host namespaces                               
                   |
+|                  | 
[M-102](/internal/builtins/pss/baseline/M-102_privileged_containers.yml)        
                     | High     | Privileged container                          
                   |
+|                  | 
[M-103](/internal/builtins/pss/baseline/M-103_capabilities.yml)                 
                     | High     | Insecure capabilities                         
                   |
+|                  | 
[M-104](/internal/builtins/pss/baseline/M-104_host_path_volumes.yml)            
                     | High     | HostPath volume                               
                   |
+|                  | 
[M-105](/internal/builtins/pss/baseline/M-105_host_ports.yml)                   
                     | High     | Not allowed hostPort                          
                   |
+|                  | 
[M-106](/internal/builtins/pss/baseline/M-106_apparmor.yml)                     
                     | Medium   | Forbidden AppArmor profile                    
                   |
+|                  | 
[M-107](/internal/builtins/pss/baseline/M-107_selinux.yml)                      
                     | Medium   | Forbidden SELinux options                     
                   |
+|                  | 
[M-108](/internal/builtins/pss/baseline/M-108_proc_mount.yml)                   
                     | Medium   | Forbidden proc mount type                     
                   |
+|                  | 
[M-109](/internal/builtins/pss/baseline/M-109_seccomp.yml)                      
                     | Medium   | Forbidden seccomp profile                     
                   |
+|                  | 
[M-110](/internal/builtins/pss/baseline/M-110_sysctls.yml)                      
                     | Medium   | Unsafe sysctls                                
                   |
+| PSS - Restricted | 
[M-111](/internal/builtins/pss/restricted/M-111_volume_types.yml)               
                     | Low      | Not allowed volume type                       
                   |
+|                  | 
[M-112](/internal/builtins/pss/restricted/M-112_privilege_escalation.yml)       
                     | Medium   | Allowed privilege escalation                  
                   |
+|                  | 
[M-113](/internal/builtins/pss/restricted/M-113_run_as_non_root.yml)            
                     | Medium   | Container could be running as root user       
                   |
+|                  | 
[M-114](/internal/builtins/pss/restricted/M-114_run_as_user.yml)                
                     | Medium   | Container running as root UID                 
                   |
+|                  | 
[M-115](/internal/builtins/pss/restricted/M-115_seccomp.yml)                    
                     | Low      | Not allowed seccomp profile                   
                   |
+|                  | 
[M-116](/internal/builtins/pss/restricted/M-116_capabilities.yml)               
                     | Low      | Not allowed added/dropped capabilities        
                   |
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/marvin-0.2.5/internal/builtins/general/M-411_role_binding_referencing_anonymous_or_unauthanticated.yaml
 
new/marvin-0.2.6/internal/builtins/general/M-411_role_binding_referencing_anonymous_or_unauthanticated.yaml
--- 
old/marvin-0.2.5/internal/builtins/general/M-411_role_binding_referencing_anonymous_or_unauthanticated.yaml
 1970-01-01 01:00:00.000000000 +0100
+++ 
new/marvin-0.2.6/internal/builtins/general/M-411_role_binding_referencing_anonymous_or_unauthanticated.yaml
 2024-08-08 16:35:46.000000000 +0200
@@ -0,0 +1,33 @@
+# Copyright 2023 Undistro Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+id: M-411
+slug: role binding referencing anonymous or unauthenticated
+severity: Medium
+message: "Role Binding referencing anonymous user or unauthenticated group"
+match:
+  resources:
+    - group: "rbac.authorization.k8s.io"
+      version: v1
+      resource: rolebindings
+    - group: "rbac.authorization.k8s.io"
+      version: v1
+      resource: clusterrolebindings
+validations:
+  - expression: >
+      !has(object.subjects) ||
+      object.subjects.all(subject,
+        !(subject.kind == "User" && subject.name == "system:anonymous") &&
+        !(subject.kind == "Group" && subject.name == "system:unauthenticated")
+      )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/marvin-0.2.5/internal/builtins/general/M-411_role_binding_referencing_anonymous_or_unauthanticated_test.yaml
 
new/marvin-0.2.6/internal/builtins/general/M-411_role_binding_referencing_anonymous_or_unauthanticated_test.yaml
--- 
old/marvin-0.2.5/internal/builtins/general/M-411_role_binding_referencing_anonymous_or_unauthanticated_test.yaml
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/marvin-0.2.6/internal/builtins/general/M-411_role_binding_referencing_anonymous_or_unauthanticated_test.yaml
    2024-08-08 16:35:46.000000000 +0200
@@ -0,0 +1,123 @@
+# Copyright 2023 Undistro Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+- name: "anonymous user in role binding"
+  pass: false
+  input: |
+    apiVersion: rbac.authorization.k8s.io/v1
+    kind: RoleBinding
+    metadata:
+      name: binding-name
+      namespace: binding-namespace
+    roleRef:
+      apiGroup: rbac.authorization.k8s.io
+      kind: Role
+      name: role-name
+    subjects:
+    - apiGroup: rbac.authorization.k8s.io
+      kind: User
+      name: system:anonymous
+    - kind: ServiceAccount
+      name: zora-operator
+      namespace: zora-system
+
+- name: "anonymous user in cluster role binding"
+  pass: false
+  input: |
+    apiVersion: rbac.authorization.k8s.io/v1
+    kind: ClusterRoleBinding
+    metadata:
+      name: binding-name
+    roleRef:
+      apiGroup: rbac.authorization.k8s.io
+      kind: Role
+      name: role-name
+    subjects:
+    - apiGroup: rbac.authorization.k8s.io
+      kind: User
+      name: system:anonymous
+    - kind: ServiceAccount
+      name: zora-operator
+      namespace: zora-system
+
+- name: "unauthenticated group in role binding"
+  pass: false
+  input: |
+    apiVersion: rbac.authorization.k8s.io/v1
+    kind: RoleBinding
+    metadata:
+      name: binding-name
+      namespace: binding-namespace
+    roleRef:
+      apiGroup: rbac.authorization.k8s.io
+      kind: Role
+      name: role-name
+    subjects:
+    - apiGroup: rbac.authorization.k8s.io
+      kind: Group
+      name: system:unauthenticated
+    - kind: ServiceAccount
+      name: zora-operator
+      namespace: zora-system
+
+- name: "unauthenticated group in cluster role binding"
+  pass: false
+  input: |
+    apiVersion: rbac.authorization.k8s.io/v1
+    kind: ClusterRoleBinding
+    metadata:
+      name: binding-name
+    roleRef:
+      apiGroup: rbac.authorization.k8s.io
+      kind: Role
+      name: role-name
+    subjects:
+    - apiGroup: rbac.authorization.k8s.io
+      kind: Group
+      name: system:unauthenticated
+    - kind: ServiceAccount
+      name: zora-operator
+      namespace: zora-system
+
+- name: "valid role binding"
+  pass: true
+  input: |
+    apiVersion: rbac.authorization.k8s.io/v1
+    kind: RoleBinding
+    metadata:
+      name: binding-name
+    roleRef:
+      apiGroup: rbac.authorization.k8s.io
+      kind: Role
+      name: role-name
+    subjects:
+    - kind: ServiceAccount
+      name: zora-operator
+      namespace: zora-system
+
+- name: "valid cluster role binding"
+  pass: true
+  input: |
+    apiVersion: rbac.authorization.k8s.io/v1
+    kind: ClusterRoleBinding
+    metadata:
+      name: binding-name
+    roleRef:
+      apiGroup: rbac.authorization.k8s.io
+      kind: Role
+      name: role-name
+    subjects:
+    - kind: ServiceAccount
+      name: zora-operator
+      namespace: zora-system
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/marvin-0.2.5/pkg/loader/builtin_test.go 
new/marvin-0.2.6/pkg/loader/builtin_test.go
--- old/marvin-0.2.5/pkg/loader/builtin_test.go 2024-07-30 20:16:21.000000000 
+0200
+++ new/marvin-0.2.6/pkg/loader/builtin_test.go 2024-08-08 16:35:46.000000000 
+0200
@@ -23,5 +23,5 @@
 func TestBuiltins(t *testing.T) {
        assert.NotNil(t, Builtins)
        assert.Greater(t, len(Builtins), 0)
-       assert.Equal(t, len(Builtins), 34)
+       assert.Equal(t, 35, len(Builtins))
 }

++++++ marvin.obsinfo ++++++
--- /var/tmp/diff_new_pack.y7mp9U/_old  2024-09-29 18:11:03.446670732 +0200
+++ /var/tmp/diff_new_pack.y7mp9U/_new  2024-09-29 18:11:03.450670896 +0200
@@ -1,5 +1,5 @@
 name: marvin
-version: 0.2.5
-mtime: 1722363381
-commit: 120531821e5b54859c50c2abf78ca9fd864adf75
+version: 0.2.6
+mtime: 1723127746
+commit: 70da7ad5cded412b46441bda987c49cf078565e3
 

++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/marvin/vendor.tar.gz 
/work/SRC/openSUSE:Factory/.marvin.new.29891/vendor.tar.gz differ: char 5, line 
1

Reply via email to