Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be...

19
Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher Experience with IDP, NGFW, Decryption ;-(, Networking,…

Transcript of Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be...

Page 1: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

Bug ID : 1408647Decryption, E_WHUT?! And why we should be afraid of it.

def-not-root@unimportant-machine:~$ whoami

Roy van DongenSecurity ResearcherExperience with IDP, NGFW, Decryption ;-(, Networking,…

Page 2: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a intro

What is this talk about?

def-not-root@unimportant-machine:~$ cat /etc/apt/sources.d/presentation1) Just me myself and I

Page 3: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a intro

• Intro) small introduction.• 1) How does the www work (simplified)• 2) What is SSL and how does it work?• 3) What is Decryption and how does it work?• 4) Why is Decryption bad, and what is actually happening?

• 5) Bug ID: 1408647????• 6) How can a certain government use decryption against you?

• 7) What can you do?

Page 4: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a chapter1

How does a normal HTTP request look like ?

def-not-root@unimportant-machine:~$ cat /etc/apt/sources.d/presentation1) https://en.wikipedia.org/wiki/Transport_Layer_Security

Client_______________

| ___________ || | | || | | || | | || | | || |___ ___| ||_____|\_/|_____|

_|__|/ \|_|_/ ********** \

/ ************ \--------------------

Server,---------,

," ,"|," ," |

," ," |+---------+ || -==----'| || | ||`---= | ||==== ooo | ;|(((( [33]| ,"|(((( | ,"| |,"+---------+

Request HTTP Connection (http://www.reddit.com/r/Catloaf/)1.

2.Servers starts transfer of data ( Cat pictures!!11!!eleven!1!! )\ /\) ( ')( / )\(__)|

Page 5: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a chapter1

These days when browsing the internet, we are tought to use mostlyHTTPS websites because «experts» tell us it is really secure!

How did this even start? Why do we need HTTPS? I’ve got nothing to hide…

1969DARPA creates first

ARPANET link

1977TCP/IP Standard

Agreed on

1981TCP/IP RFC’s published

1981CERN migrates to IPv4Protocol goes global

1989World Wide Web is born,

First HTTP standard

1995First Government

Authorised network wiretap

2000HTTPS RFC-2818

created

±2006NSA first uses BullrunTo decrypt SSL(HTTPS)

1950 Present Day

def-not-root@unimportant-machine:~$ cat /etc/apt/sources.d/presentation1) https://www.wikipedia.org

or do I?

Page 6: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a chapter2

Title: What is SSL and how does it work?

def-not-root@unimportant-machine:~$ cat /etc/apt/sources.d/presentation1) https://en.wikipedia.org/wiki/Transport_Layer_Security

Client_______________

| ___________ || | | || | | || | | || | | || |___ ___| ||_____|\_/|_____|

_|__|/ \|_|_/ ********** \

/ ************ \--------------------

Server,---------,

," ,"|," ," |

," ," |+---------+ || -==----'| || | ||`---= | ||==== ooo | ;|(((( [33]| ,"|(((( | ,"| |,"+---------+

Request SSL Connection (https://www.reddit.com/r/Catloaf/)

Servers will now send its certificate

The client now validates the server certificate locally

Client generates and sends a session key to the server

Servers starts encrypted transfer of data ( Cat pictures!!11!!eleven!1!! )

1.

2.

3.

4.

5.

\ /\) ( ')( / )\(__)|

Page 7: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a chapter2

Looks good doesn’t it?

Let me give you a hint…

Client_______________

| ___________ || | | || | | || | | || | | || |___ ___| ||_____|\_/|_____|

_|__|/ \|_|_/ ********** \

/ ************ \--------------------

Server,---------,

," ,"|," ," |

," ," |+---------+ || -==----'| || | ||`---= | ||==== ooo | ;|(((( [33]| ,"|(((( | ,"| |,"+---------+

The client now validates the server certificate locally3.

def-not-root@unimportant-machine:~$ cat /etc/apt/sources.d/presentation1) https://en.wikipedia.org/wiki/Transport_Layer_Security

Already got an idea what’s happening here?

Page 8: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a chapter3

Title: What is Decryption and how does it work?

def-not-root@unimportant-machine:~$ cat /etc/apt/sources.d/presentation1) https://www.techopedia.com/definition/1773/decryption

Decryption is the process of transforming data thathas been rendered unreadable through encryptionback to its unencrypted form.

Page 9: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a chapter3

def-not-root@unimportant-machine:~$ cat /etc/apt/sources.d/presentation1) https://live.paloaltonetworks.com/t5/Configuration-Articles/How-to-Implement-and-Test-SSL-Decryption/ta-p/59719

Client_______________

| ___________ || | | || | | || | | || | | || |___ ___| ||_____|\_/|_____|

_|__|/ \|_|_/ ********** \

/ ************ \--------------------

Server,---------,

," ,"|," ," |

," ," |+---------+ || -==----'| || | ||`---= | ||==== ooo | ;|(((( [33]| ,"|(((( | ,"| |,"+---------+

Client requests SSL Connection(https://www.reddit.com/r/Catloaf/)

Server will now send its certificate

The client now validates the server certificate locally

Client generates and sendsa session key to the server

Servers starts encrypted transfer of data ( Cat pictures!!11!!eleven!1!! )

1.

3.

9. 8.

2.

3th Party device requests SSL Connection(https://www.reddit.com/r/Catloaf/)

3th Party device signs anew certificate with hisown CA Certificate 4.

5.

Dunno? The NSA ?+----------+| ╔═══╗ || ║╔═╗║ || ╚╝╔╝║ || ──║╔╝ || ──╔╗ || ──╚╝ |+----------+

+----------+| ╔═══╗ || ║╔═╗║ || ╚╝╔╝║ || ──║╔╝ || ──╔╗ || ──╚╝ |+----------+

3th Party device generates and sendsa new session key to the server6. 7.

Precious cat pictures

\ /\) ( ')( / )\(__)|

-> ??? E_WHUT

Page 10: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a chapter3

def-not-root@unimportant-machine:~$ cat /etc/apt/sources.d/presentation1) http://knowyourmeme.com/memes/did-you-just-assume-my-gender

Did you just assume my trust ?

The client now validates the server certificate locally5.

Page 11: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a chapter4

It’s now about time we start talking about trust…

def-not-root@unimportant-machine:~$ cat /etc/apt/sources.d/presentation1) https://en.wikipedia.org/wiki/Chain_of_trust

-> reddit.com ?

Page 12: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a chapter4

How does this work IRL?

def-not-root@unimportant-machine:~$ cat /etc/apt/sources.d/presentation1) Google Chrome on OSX

Page 13: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a chapter4

This is where the pre-defined system roots kick in

def-not-root@unimportant-machine:~$ cat /etc/apt/sources.d/presentation1) Privately owned Windows, Linux and OSX System

Page 14: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a chapter5

Titel: «Bug ID: 1408647\?\?\?\?»

def-not-root@unimportant-machine:~$ cat /etc/apt/sources.d/presentation1) https://bugzilla.mozilla.org/show_bug.cgi?id=1408647

Page 15: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a chapter5

Proposal for: «Wet op de Inlichtingen en Veiligheidsdiensten 2017»

def-not-root@unimportant-machine:~$ cat /etc/apt/sources.d/presentation1) https://zoek.officielebekendmakingen.nl/stb-2017-317.html

Page 16: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a chapter6

So when will this…

def-not-root@unimportant-machine:~$ cat /etc/apt/sources.d/presentation1) Google Chrome on OSX

become this ?

Page 17: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a chapter7

Title: What can you do?

def-not-root@unimportant-machine:~$ cat /etc/apt/sources.d/presentation1) https://en.wikipedia.org/wiki/HTTP_Public_Key_Pinning2) https://en.wikipedia.org/wiki/DNS_Certification_Authority_Authorization

Page 18: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a chapter7

def-not-root@unimportant-machine:~$ cat /etc/apt/sources.d/presentation1) https://en.wikipedia.org/wiki/HTTP_Public_Key_Pinning2) https://en.wikipedia.org/wiki/DNS_Certification_Authority_Authorization

DNS CAA

Public Key Pinning

Untrusted Certificates List ( OS Dependant )

Page 19: Bug ID : 1408647 · 2019. 9. 17. · Bug ID : 1408647 Decryption, E_WHUT?! And why we should be afraid of it. def-not-root@unimportant-machine:~$ whoami Roy van Dongen Security Researcher

def-not-root@unimportant-machine:~$ ./presentation –a outro

def-not-root@unimportant-machine:~$ cat /etc/apt/sources.d/presentation1) https://pixelbar.nl2) https://stazidernederlanden.org