cto, alcide gadi naor webinar...copyright ©2019 alcide.io, all rights reserved → → example:...

20
Copyright ©2019 Alcide.io, All Rights Reserved Webinar Kubernetes Audit Log Gadi Naor CTO, Alcide

Upload: others

Post on 16-Mar-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved

Webinar

Kubernetes Audit Log

Gadi Naor CTO, Alcide

Page 2: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved

about# gadi.naor --from tel_aviv--enjoy sk8boarding--kernel-dev @check_point --kernel-dev @altor_networks --kernel-dev @juniper_networks --cloud-native @alcideio validate k8s cluster

@alcideio@gadinaor

Page 3: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved

Kubernetes Security Framework

Runtime Detection & Protection

HygieneScan

Source Scan

ArtifactScan

MicroserviceDeploymentAdmission Controller

Compliance &

Behavior AnomalyDetection

Multi-Cluster

Page 4: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved

→ authentication

→ authorization

→→ admission control

→ validation

Kubernetes API Server

Istio Control Plane

Page 5: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved

Who/What Access Kubernetes API Server

Page 6: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved6

Raw Audit logs Critical threats in the Audit logs

Page 7: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved

Collect→

Filter & Transform → Audit Features→ →→

Feature Analysis→

Report→

7

Page 8: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved

Kubernetes API Server Audit Log - Stream Analysis

Page 9: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved

{

"kind": "Event",

"apiVersion": "audit.k8s.io/v1",

...

"requestURI": "/api/v1/namespaces/ default/configmaps",

"verb": "create",

"user": {

"username": "someuser",

"groups": ["system:authenticated"]

},

"userAgent": "GoogleContainerEngine",

...

"sourceIPs": ["192.168.99.1"],

...

"annotations": {

"authorization.k8s.io/decision": "allow",

"authorization.k8s.io/reason": ""

}

...

Kubernetes API Server Audit Log

namespace

resource kind

principal

client

location

decision

api operation

Page 10: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved10

Cluster Troubleshooting → What:

When:→

Page 11: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved11

Alert On Pod Access → What:

→ When:→

Page 12: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved12

Detect Unauthorized Access → What:

→ How:

Page 13: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved13

Detect Credential Theft → What:

→ How:

Page 14: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved14

Resource Checks

Workload Level Protection

Performance Monitoring

Page 15: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved15

Page 16: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved16

Stolen Token & Credentials

Misconfigured RBAC

Exploited Vulnerabilities in Kubernetes API Server

Compliance best practices

Page 17: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved

❏ Early Access Alcide kAudit alcide.io/kaudit-K8s-forensics

❏ Free Cloud Account www.alcide.io/advisor-free-trial/

❏ CD Integrations github.com/alcideio/pipeline

❏ Tutorials: codelab.alcide.io

Page 18: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved

Page 19: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved19

Page 20: CTO, Alcide Gadi Naor Webinar...Copyright ©2019 Alcide.io, All Rights Reserved → → Example: Taking and restoring backups of that application’s state → Example: Handling upgrades

Copyright ©2019 Alcide.io, All Rights Reserved

→ Example: Taking and restoring backups of that application’s state→ Example: Handling upgrades of application code

→ ClusterRole→ Example: Prometheus Operator - cluster-wide Pod list & delete, secret create, read, Secret get, create,..→ Example: Strimzi Kafka Operator - cluster-wide Pod create, list, delete, update , Secret get, create,..

? Jobs vs. Controllers ?

Pick Your Poison - https://operatorhub.io