Пример #1
0
 def __init__(self, pods):
     Vulnerability.__init__(self,
                            component=Kubelet,
                            name="Exposed Pods",
                            category=AccessKubeletAPITechnique,
                            vid="KHV052")
     self.pods = pods
     self.evidence = f"count: {len(self.pods)}"
Пример #2
0
 def __init__(self):
     Vulnerability.__init__(
         self,
         component=Kubelet,
         name="Exposed Port Forward",
         category=RemoteCodeExec,
         vid="KHV041",
     )
Пример #3
0
 def __init__(self):
     Vulnerability.__init__(
         self,
         component=Kubelet,
         name="Exposed System Logs",
         category=InformationDisclosure,
         vid="KHV045",
     )
Пример #4
0
 def __init__(self, kubedns_pod_ip):
     Vulnerability.__init__(self,
                            KubernetesCluster,
                            "Possible DNS Spoof",
                            category=IdentityTheft,
                            vid="KHV030")
     self.kubedns_pod_ip = kubedns_pod_ip
     self.evidence = "kube-dns at: {}".format(self.kubedns_pod_ip)
Пример #5
0
 def __init__(self):
     Vulnerability.__init__(
         self,
         KubernetesCluster,
         "Proxy Exposed",
         category=ConnectFromProxyServerTechnique,
         vid="KHV049",
     )
Пример #6
0
 def __init__(self, evidence):
     Vulnerability.__init__(
         self,
         KubernetesCluster,
         name="Created a namespace",
         category=AccessRisk,
     )
     self.evidence = evidence
Пример #7
0
 def __init__(self, evidence):
     Vulnerability.__init__(
         self,
         KubernetesCluster,
         name="Deleted A Pod",
         category=AccessRisk,
     )
     self.evidence = evidence
Пример #8
0
    def __init__(self, version):

        Vulnerability.__init__(self,
                               KubernetesCluster,
                               name="Etcd Remote version disclosure",
                               category=InformationDisclosure,
                               vid="KHV033")
        self.evidence = version
Пример #9
0
 def __init__(self, version):
     Vulnerability.__init__(
         self,
         KubernetesCluster,
         name="Etcd is accessible using insecure connection (HTTP)",
         category=UnauthenticatedAccess,
         vid="KHV034")
     self.evidence = version
Пример #10
0
 def __init__(self, evidence):
     Vulnerability.__init__(
         self,
         component=KubernetesCluster,
         name="Access to pod's secrets",
         category=AccessContainerServiceAccountTechnique,
     )
     self.evidence = evidence
Пример #11
0
 def __init__(self):
     Vulnerability.__init__(
         self,
         KubernetesCluster,
         "Possible Arp Spoof",
         category=ARPPoisoningTechnique,
         vid="KHV020",
     )
Пример #12
0
 def __init__(self):
     Vulnerability.__init__(
         self,
         component=Kubelet,
         name="Exposed Exec On Container",
         category=ExecIntoContainerTechnique,
         vid="KHV039",
     )
Пример #13
0
 def __init__(self):
     Vulnerability.__init__(
         self,
         component=Kubelet,
         name="Exposed Container Logs",
         category=AccessKubeletAPITechnique,
         vid="KHV037",
     )
Пример #14
0
 def __init__(self):
     Vulnerability.__init__(
         self,
         component=Kubelet,
         name="Anonymous Authentication",
         category=ExposedSensitiveInterfacesTechnique,
         vid="KHV036",
     )
Пример #15
0
 def __init__(self, evidence):
     Vulnerability.__init__(
         self,
         KubernetesCluster,
         name="Arbitrary Access To Cluster Scoped Resources",
         category=PrivilegeEscalation,
         vid="KHV026")
     self.evidence = evidence
Пример #16
0
 def __init__(self, status):
     Vulnerability.__init__(self,
                            Kubelet,
                            "Cluster Health Disclosure",
                            category=InformationDisclosure,
                            vid="KHV043")
     self.status = status
     self.evidence = f"status: {self.status}"
Пример #17
0
 def __init__(self, binary_version):
     Vulnerability.__init__(self,
                            KubectlClient,
                            "Kubectl Vulnerable To CVE-2019-1002101",
                            category=RemoteCodeExec,
                            vid="KHV028")
     self.binary_version = binary_version
     self.evidence = "kubectl version: {}".format(self.binary_version)
Пример #18
0
 def __init__(self, cmdline):
     Vulnerability.__init__(self,
                            Kubelet,
                            "Exposed Kubelet Cmdline",
                            category=InformationDisclosure,
                            vid="KHV046")
     self.cmdline = cmdline
     self.evidence = f"cmdline: {self.cmdline}"
Пример #19
0
 def __init__(self, evidence):
     Vulnerability.__init__(
         self,
         KubernetesCluster,
         name="Patched a cluster role",
         category=AccessRisk,
     )
     self.evidence = evidence
Пример #20
0
 def __init__(self, count):
     Vulnerability.__init__(self,
                            Kubelet,
                            "Exposed Running Pods",
                            category=InformationDisclosure,
                            vid="KHV038")
     self.count = count
     self.evidence = "{} running pods".format(self.count)
Пример #21
0
 def __init__(self, evidence):
     Vulnerability.__init__(
         self,
         component=KubernetesCluster,
         name="Access to pod's secrets",
         category=AccessRisk,
     )
     self.evidence = evidence
Пример #22
0
 def __init__(self, cidr):
     Vulnerability.__init__(self,
                            Azure,
                            "Azure Metadata Exposure",
                            category=InformationDisclosure,
                            vid="KHV003")
     self.cidr = cidr
     self.evidence = "cidr: {}".format(cidr)
Пример #23
0
 def __init__(self):
     Vulnerability.__init__(
         self,
         KubernetesCluster,
         "Possible Arp Spoof",
         category=IdentityTheft,
         vid="KHV020",
     )
Пример #24
0
 def __init__(self):
     Vulnerability.__init__(
         self,
         component=Kubelet,
         name="Anonymous Authentication",
         category=RemoteCodeExec,
         vid="KHV036",
     )
Пример #25
0
 def __init__(self, keys):
     Vulnerability.__init__(
         self,
         KubernetesCluster,
         name="Etcd Remote Read Access Event",
         category=AccessRisk,
         vid="KHV032")
     self.evidence = keys
Пример #26
0
 def __init__(self):
     Vulnerability.__init__(
         self,
         component=Kubelet,
         name="Exposed Run Inside Container",
         category=RemoteCodeExec,
         vid="KHV040",
     )
Пример #27
0
 def __init__(self):
     Vulnerability.__init__(
         self,
         component=Kubelet,
         name="Exposed Attaching To Container",
         category=RemoteCodeExec,
         vid="KHV042",
     )
Пример #28
0
 def __init__(self, evidence):
     Vulnerability.__init__(
         self,
         KubernetesCluster,
         name="Denial of Service to Kubernetes API Server",
         category=DenialOfService,
         vid="KHV023")
     self.evidence = evidence
Пример #29
0
 def __init__(self, pods):
     Vulnerability.__init__(self,
                            component=Kubelet,
                            name="Exposed Pods",
                            category=InformationDisclosure,
                            vid="KHV052")
     self.pods = pods
     self.evidence = f"count: {len(self.pods)}"
Пример #30
0
 def __init__(self):
     Vulnerability.__init__(
         self,
         component=Kubelet,
         name="Exposed Port Forward",
         category=GeneralDefenseEvasionTechnique,
         vid="KHV041",
     )