Orchestrating Least Privilege by Diogo Monica

47
Orchestrating Least Privilege

Transcript of Orchestrating Least Privilege by Diogo Monica

Page 1: Orchestrating Least Privilege by Diogo Monica

Orchestrating Least Privilege

Page 2: Orchestrating Least Privilege by Diogo Monica

What is an Orchestrator?

Page 3: Orchestrating Least Privilege by Diogo Monica

What is an Orchestra?

Page 4: Orchestrating Least Privilege by Diogo Monica
Page 5: Orchestrating Least Privilege by Diogo Monica
Page 6: Orchestrating Least Privilege by Diogo Monica
Page 7: Orchestrating Least Privilege by Diogo Monica
Page 8: Orchestrating Least Privilege by Diogo Monica
Page 9: Orchestrating Least Privilege by Diogo Monica

SWARM

Page 10: Orchestrating Least Privilege by Diogo Monica

Job of a Conductor

-Casting-Assign sheet music-Unify performers-Set the tempo

Page 11: Orchestrating Least Privilege by Diogo Monica

Job of an Orchestrator

-Node management-Task assignment-Cluster state reconciliation-Resource Management

Page 12: Orchestrating Least Privilege by Diogo Monica

What is a Least Privilege

Orchestrator?

Page 13: Orchestrating Least Privilege by Diogo Monica

What is Least Privilege?

Page 14: Orchestrating Least Privilege by Diogo Monica
Page 15: Orchestrating Least Privilege by Diogo Monica

A process must be able to access only the information and

resources that are necessary for its legitimate purpose. Principle of Least Privilege

Page 16: Orchestrating Least Privilege by Diogo Monica

Why Least Privilege?

Page 17: Orchestrating Least Privilege by Diogo Monica
Page 18: Orchestrating Least Privilege by Diogo Monica
Page 19: Orchestrating Least Privilege by Diogo Monica
Page 20: Orchestrating Least Privilege by Diogo Monica
Page 21: Orchestrating Least Privilege by Diogo Monica
Page 22: Orchestrating Least Privilege by Diogo Monica
Page 23: Orchestrating Least Privilege by Diogo Monica
Page 24: Orchestrating Least Privilege by Diogo Monica
Page 25: Orchestrating Least Privilege by Diogo Monica
Page 26: Orchestrating Least Privilege by Diogo Monica
Page 27: Orchestrating Least Privilege by Diogo Monica

What do we need to achieve Least

Privilege Orchestration?

Page 28: Orchestrating Least Privilege by Diogo Monica

Mitigating External Attacker

-Externally accessible service ports are explicitly defined

-Administration endpoints are authenticated and authorized

Page 29: Orchestrating Least Privilege by Diogo Monica

Mitigating Internal Network Attacker

-Authentication of both network and cluster control-plane communication

-Service to service communication is authorized, with orchestrator managed ACLs

Page 30: Orchestrating Least Privilege by Diogo Monica

Mitigating MiTM Attacker

-All control and data-plane traffic is encrypted.

Page 31: Orchestrating Least Privilege by Diogo Monica

Mitigating Malicious Worker

‣Should only have access to resources currently in use‣Push VS Pull‣No ability to modify or access any cluster state except their own.‣Identity is assigned, never requested

Page 32: Orchestrating Least Privilege by Diogo Monica

Mitigating Malicious Manager

‣Can’t run arbitrary code on workers‣No access to secret material‣No ability to spin up unauthorized nodes/impersonate existing nodes.‣No ability to read service-to-service communication

Page 33: Orchestrating Least Privilege by Diogo Monica

Byzantine Consensus.

Page 34: Orchestrating Least Privilege by Diogo Monica
Page 35: Orchestrating Least Privilege by Diogo Monica

SWARM

Page 36: Orchestrating Least Privilege by Diogo Monica

Mutual TLS by default

• First node generates a new self-signed CA.

Page 37: Orchestrating Least Privilege by Diogo Monica

Mutual TLS by default

• First node generates a new self-signed CA.

• New nodes can get a certificate issued w/ a token.

Page 38: Orchestrating Least Privilege by Diogo Monica

Mutual TLS by default

• First node generates a new self-signed CA.

• New nodes can get a certificate issued w/ a token.

• Workers and managers identified by their certificate.

Page 39: Orchestrating Least Privilege by Diogo Monica

Mutual TLS by default

• First node generates a new self-signed CA.

• New nodes can get a certificate issued w/ a token.

• Workers and managers identified by their certificate.

• Communications secured with Mutual TLS.

Page 40: Orchestrating Least Privilege by Diogo Monica

The Token

SWMTKN-1-mx8susrv1etsmc8omaom825bet6-cm6zts22rl4hly2

Prefix to allow VCSsearches for leaked

Tokens

Token Version

Cryptographic Hashof the CA Root Certificate

for bootstrap

Randomly generatedSecret

Page 41: Orchestrating Least Privilege by Diogo Monica

Bootstrap

1. Retrieve and validate Root CA Public key material.

2. Submit new CSR along with secret token.

3. Retrieve the signed certificate.

Page 42: Orchestrating Least Privilege by Diogo Monica

Automatic Certificate Rotation

1. Submit new CSR using old key-pair.

2. Retrieve the new signed certificate.

Page 43: Orchestrating Least Privilege by Diogo Monica

Support for External CAs

• Managers support BYO CA.

• Forwards CSRs to external CA.

Page 44: Orchestrating Least Privilege by Diogo Monica

Demo

Page 45: Orchestrating Least Privilege by Diogo Monica
Page 46: Orchestrating Least Privilege by Diogo Monica
Page 47: Orchestrating Least Privilege by Diogo Monica

Thank you