SlideShare una empresa de Scribd logo
1 de 79
Descargar para leer sin conexión
1
Ofer Rivlin
Product security lead, Cyberark
AI Dev
Dev Team
Lead
Security
Architect
Product
Security Lead
Dev Architect
Security
Researcher & Architect
AI Dev
My path
3
4
5
6
This is how it all began…
7
Apr 7, 2014
8
Openssl 0day
9
10
11
12
OpenSSL Heartbeat
Client
Message
Create Message
1
Message
Encrypt the
Message
2
Message
Decrypt the
Message
3
Response
Includes the
client message
Create Response
4
Response
Encrypt the
Message
5
Compare Response
with sent Message
6
Server
7
Response
Decrypt the
Response
13
14
15
16
17
18
What went wrong
19
OpenSSL Heartbeat
Client
Message
Create Message
1
Message
Encrypt the
Message
2
Message
Decrypt the
Message
3
Response
Includes the
client message
Create Response
4
Response
Encrypt the
Message
5
Compare Response
with sent Message
6
Server
7
Response
Decrypt the
Response
20
char *message-payload
int payload-length
Message Struct
Prepare the Response with the Client message
Client Server
Copies the message data to its memory
21
char *message-payload
int payload-length
Message Struct
Prepare the Response with the Client message
Client Server
char *pl
int payload
// pointer to the payload (message data)
// the length of the payload
22
char *message-payload
int payload-length
Message Struct
Prepare the Response with the Client message
Client Server
char *pl
int payload
buffer = malloc(payload)
// allocate memory as the payload length
// pointer to the payload (message data)
// the length of the payload
23
char *message-payload
int payload-length
Message Struct
HAT
3
Prepare the Response with the Client message
Client Server
char *pl
int payload
buffer = malloc(payload)
memcpy(buffer, pl, payload)
// allocate memory as the payload length
// copy the payload into the new allocated memory
// pointer to the payload (message data)
// the length of the payload
3H
24
char *message-payload
int payload-length
Message Struct
HAT
3
Prepare the Response with the Client message
Client Server
char *pl
int payload
buffer = malloc(payload)
memcpy(buffer, pl, payload)
// allocate memory as the payload length
// copy the payload into the new allocated memory
// pointer to the payload (message data)
// the length of the payload
3H
25
Prepare the Response with the Client message
Eve Server
char *pl
int payload
buffer = malloc(payload)
memcpy(buffer, pl, payload)
// allocate memory as the payload length
// copy the payload into the new allocated memory
// pointer to the payload (message data)
// the length of the payload
char *message-payload
int payload-length
Message Struct
HAT
500
Give me all your
secrets !
500H
27
28
29
30
The server
sends its secrets
to the client
31
32
Worst case scenario !
Cloudfalre had set up a nginx server with a vulnerable version of OpenSSL
and challenged the community to steal its private key
33
34
OpenSSL Heartbeat
35
Lessons Learned
36
{review}
Review is a responsibility!
37
Macros
Bad param names
Hardcoded values
Misleading names
38
Audit
Syslog
39
Security
&
Open Source
40
Feb 8, 2017
41
42
43
Hello &
Session ID
use session key
Done
Okay
Done
Encrypted communication using session key
Check if Session
IDs are equal
Session ID
use session key
Done
Check if Session
ID is okay
ID=e7
ID=e7
ID=e7
ID=e7
Resume TLS
Session
ID
Session
Key
e7 e5 a8 79
dd 33 a2 d4
Session
ID
Session
Key
e7 e5 a8 79
44
Hello &
Session ID
use session key
Done
Okay
Done
Encrypted communication using session key
Check if Session
IDs are equal
Session ID
use session key
Done
Check if Session
ID is okay
ID=a5
ID=a5ID=a5
ID=a5
Resume TLS
With Ticket
Session Key
Encrypted
STEK
Client generated!
session ticket
encryption key
45
46
The Ticketbleed Story
Railgun
agent
Edge Server
Cloudflare customer with F5 BIG-IP LB has issues with their TLS connection
TLS
47
The Ticketbleed Story
Railgun
agent
Edge Server
TLS
48
Try to Resume TLS
FATAL!
49
Hello &
Session ID
Check if Session
IDs are equal
Session ID
use session key
Done
Check if Session
ID is okay
ID=e2
ID=e2ID=e2
ID=e2
Encrypted
Client generated ID!
Resume TLS
With Ticket
STEKSession Key
session ticket
encryption key
50
Session ID debugging
RG 16 bytes
51
Session ID debugging
RG 16 bytes
F5 32 bytes
52
Session ID debugging
RG 16 bytes
F5 32 bytes
That's... Memory!
F5 always return 32 bytes
Potential of 31 bytes of sensitive data leak
(Heartbleed ~ 64KB)
53
F5 vulnerable products:
Advanced Firewall Manager
Application Security Manager (WAF)
Access Policy Manager
54
Lessons Learned
55
Design & Code
Review
56
Dynamic Analysis
&
Fuzzing
57
Feb 17, 2017
58
https://googleprojectzero.blogspot.com/
59
60
61
62
63
if ( ++p pe )
goto eof_handler;
==
/* end of a buffer (file)? */
/* p = current character */
/* pe = character at end of buffer (file) */
64
if ( ++p pe )
goto eof_handler;
==>=
Pointer may jump past the end of the buffer  buffer overrun
/* end of a buffer (file)? */
/* p = current character */
/* pe = character at end of buffer (file) */
65
<script>
<script#
Read text until end-of-tag character
If found '>'
great!
parse this tag
--p;
goto check-if-eof
If found unexpected char
log "error"
goto check-if-eof
check-if-eof:
if ( ++p == pe )
stop
>
pe
pe
#
*p - current character
*pe - character at end
of buffer
(eof in this case)
Memory
eof
66
pe
<script>
Read text until end-of-tag character
If found '>'
great!
parse this tag
--p;
goto check-if-eof
If found unexpected char
log "error"
goto check-if-eof
check-if-eof:
if ( ++p == pe )
stop
*p - current character
*pe - character at end
of buffer
(eof in this case)
Memory
eof
67
Memory<script#
Read text until end-of-tag character
If found '>'
great!
parse this tag
--p;
goto check-if-eof
If found unexpected char
log "error"
goto check-if-eof
check-if-eof:
if ( ++p == pe )
stop
pe
*p - current character
*pe - character at end
of buffer
(eof in this case)
Continue…
?
X
eof
68
<script#
Read text until end-of-tag character
If found '>'
great!
parse this tag
--p;
goto check-if-eof
If found unexpected char
log "error“
--p;
goto check-if-eof
check-if-eof:
if ( ++p >= pe )
stop
*p - current character
*pe - character at end
of buffer
(eof in this case)
Memory
eof
69
Lessons Learned
70
Code Review
71
Unit Testing
Testing the
extreme cases
72
Summary
73
Summary
TLS TLS
Security
Services
74
Summary
75
Summary
TLS TLS
Security
Services
76
Summary
TLS TLS
Security
Services
77
Summary
TLS TLS
Security
Services
X X
78
Conclusions
increase the attack surface!
Security products
like any other products
79
Conclusions
▪Follow standards & best practices
■ Design & Code Review
■ Audit logs
■ Clear secrets from memory
■ Test: Unit Test, Static & Dynamic, PT, and more.
■ Etc.
80
Thank You!

Más contenido relacionado

La actualidad más candente

Possibility of arbitrary code execution by Step-Oriented Programming
Possibility of arbitrary code execution by Step-Oriented ProgrammingPossibility of arbitrary code execution by Step-Oriented Programming
Possibility of arbitrary code execution by Step-Oriented Programmingkozossakai
 
For the Greater Good: Leveraging VMware's RPC Interface for fun and profit by...
For the Greater Good: Leveraging VMware's RPC Interface for fun and profit by...For the Greater Good: Leveraging VMware's RPC Interface for fun and profit by...
For the Greater Good: Leveraging VMware's RPC Interface for fun and profit by...CODE BLUE
 
OpenSSH: keep your secrets safe
OpenSSH: keep your secrets safeOpenSSH: keep your secrets safe
OpenSSH: keep your secrets safeGiovanni Bechis
 
Docker: please contain your excitement
Docker: please contain your excitementDocker: please contain your excitement
Docker: please contain your excitementjohnnnl
 
X64服务器 lnmp服务器部署标准 new
X64服务器 lnmp服务器部署标准 newX64服务器 lnmp服务器部署标准 new
X64服务器 lnmp服务器部署标准 newYiwei Ma
 
Pursue the Attackers – Identify and Investigate Lateral Movement Based on Beh...
Pursue the Attackers – Identify and Investigate Lateral Movement Based on Beh...Pursue the Attackers – Identify and Investigate Lateral Movement Based on Beh...
Pursue the Attackers – Identify and Investigate Lateral Movement Based on Beh...CODE BLUE
 
Http3 fullstackfest-2019
Http3 fullstackfest-2019Http3 fullstackfest-2019
Http3 fullstackfest-2019Daniel Stenberg
 
PLNOG 17 - Patryk Wojtachnio - DDoS mitygacja oraz ochrona sieci w środowisku...
PLNOG 17 - Patryk Wojtachnio - DDoS mitygacja oraz ochrona sieci w środowisku...PLNOG 17 - Patryk Wojtachnio - DDoS mitygacja oraz ochrona sieci w środowisku...
PLNOG 17 - Patryk Wojtachnio - DDoS mitygacja oraz ochrona sieci w środowisku...PROIDEA
 
BlockChain implementation by python
BlockChain implementation by pythonBlockChain implementation by python
BlockChain implementation by pythonwonyong hwang
 
Camping: Going off the Rails with Ruby
Camping: Going off the Rails with RubyCamping: Going off the Rails with Ruby
Camping: Going off the Rails with RubyEleanor McHugh
 
Automatic Sound Signals Quality Estimation Integration
Automatic Sound Signals Quality Estimation IntegrationAutomatic Sound Signals Quality Estimation Integration
Automatic Sound Signals Quality Estimation Integrationwillemvandrunen
 
2017 dev nexus_deconstructing_rest_security
2017 dev nexus_deconstructing_rest_security2017 dev nexus_deconstructing_rest_security
2017 dev nexus_deconstructing_rest_securityDavid Blevins
 
DEF CON 27 - MAKSIM SHUDRAK - zero bugs found hold my beer afl how to improve...
DEF CON 27 - MAKSIM SHUDRAK - zero bugs found hold my beer afl how to improve...DEF CON 27 - MAKSIM SHUDRAK - zero bugs found hold my beer afl how to improve...
DEF CON 27 - MAKSIM SHUDRAK - zero bugs found hold my beer afl how to improve...Felipe Prado
 
Basic NLP with Python and NLTK
Basic NLP with Python and NLTKBasic NLP with Python and NLTK
Basic NLP with Python and NLTKFrancesco Bruni
 
Redis学习笔记
Redis学习笔记Redis学习笔记
Redis学习笔记yongboy
 

La actualidad más candente (20)

Openssl
OpensslOpenssl
Openssl
 
mod_perl 2.0 For Speed Freaks!
mod_perl 2.0 For Speed Freaks!mod_perl 2.0 For Speed Freaks!
mod_perl 2.0 For Speed Freaks!
 
Possibility of arbitrary code execution by Step-Oriented Programming
Possibility of arbitrary code execution by Step-Oriented ProgrammingPossibility of arbitrary code execution by Step-Oriented Programming
Possibility of arbitrary code execution by Step-Oriented Programming
 
For the Greater Good: Leveraging VMware's RPC Interface for fun and profit by...
For the Greater Good: Leveraging VMware's RPC Interface for fun and profit by...For the Greater Good: Leveraging VMware's RPC Interface for fun and profit by...
For the Greater Good: Leveraging VMware's RPC Interface for fun and profit by...
 
WordPress Performance Tuning
WordPress Performance TuningWordPress Performance Tuning
WordPress Performance Tuning
 
OpenSSH: keep your secrets safe
OpenSSH: keep your secrets safeOpenSSH: keep your secrets safe
OpenSSH: keep your secrets safe
 
Docker: please contain your excitement
Docker: please contain your excitementDocker: please contain your excitement
Docker: please contain your excitement
 
X64服务器 lnmp服务器部署标准 new
X64服务器 lnmp服务器部署标准 newX64服务器 lnmp服务器部署标准 new
X64服务器 lnmp服务器部署标准 new
 
Pursue the Attackers – Identify and Investigate Lateral Movement Based on Beh...
Pursue the Attackers – Identify and Investigate Lateral Movement Based on Beh...Pursue the Attackers – Identify and Investigate Lateral Movement Based on Beh...
Pursue the Attackers – Identify and Investigate Lateral Movement Based on Beh...
 
Http3 fullstackfest-2019
Http3 fullstackfest-2019Http3 fullstackfest-2019
Http3 fullstackfest-2019
 
PLNOG 17 - Patryk Wojtachnio - DDoS mitygacja oraz ochrona sieci w środowisku...
PLNOG 17 - Patryk Wojtachnio - DDoS mitygacja oraz ochrona sieci w środowisku...PLNOG 17 - Patryk Wojtachnio - DDoS mitygacja oraz ochrona sieci w środowisku...
PLNOG 17 - Patryk Wojtachnio - DDoS mitygacja oraz ochrona sieci w środowisku...
 
Computer Security
Computer SecurityComputer Security
Computer Security
 
BlockChain implementation by python
BlockChain implementation by pythonBlockChain implementation by python
BlockChain implementation by python
 
Camping: Going off the Rails with Ruby
Camping: Going off the Rails with RubyCamping: Going off the Rails with Ruby
Camping: Going off the Rails with Ruby
 
Automatic Sound Signals Quality Estimation Integration
Automatic Sound Signals Quality Estimation IntegrationAutomatic Sound Signals Quality Estimation Integration
Automatic Sound Signals Quality Estimation Integration
 
Rust Hack
Rust HackRust Hack
Rust Hack
 
2017 dev nexus_deconstructing_rest_security
2017 dev nexus_deconstructing_rest_security2017 dev nexus_deconstructing_rest_security
2017 dev nexus_deconstructing_rest_security
 
DEF CON 27 - MAKSIM SHUDRAK - zero bugs found hold my beer afl how to improve...
DEF CON 27 - MAKSIM SHUDRAK - zero bugs found hold my beer afl how to improve...DEF CON 27 - MAKSIM SHUDRAK - zero bugs found hold my beer afl how to improve...
DEF CON 27 - MAKSIM SHUDRAK - zero bugs found hold my beer afl how to improve...
 
Basic NLP with Python and NLTK
Basic NLP with Python and NLTKBasic NLP with Python and NLTK
Basic NLP with Python and NLTK
 
Redis学习笔记
Redis学习笔记Redis学习笔记
Redis学习笔记
 

Similar a Product security lead discusses OpenSSL Heartbleed vulnerability and lessons learned

Juggling Chainsaws: Perl and MongoDB
Juggling Chainsaws: Perl and MongoDBJuggling Chainsaws: Perl and MongoDB
Juggling Chainsaws: Perl and MongoDBDavid Golden
 
Tips
TipsTips
Tipsmclee
 
iPhone Lecture #1
iPhone Lecture #1iPhone Lecture #1
iPhone Lecture #1Jaehyeuk Oh
 
Unix And Shell Scripting
Unix And Shell ScriptingUnix And Shell Scripting
Unix And Shell ScriptingJaibeer Malik
 
Fluentd unified logging layer
Fluentd   unified logging layerFluentd   unified logging layer
Fluentd unified logging layerKiyoto Tamura
 
Apidays Paris 2023 - Forget TypeScript, Choose Rust to build Robust, Fast and...
Apidays Paris 2023 - Forget TypeScript, Choose Rust to build Robust, Fast and...Apidays Paris 2023 - Forget TypeScript, Choose Rust to build Robust, Fast and...
Apidays Paris 2023 - Forget TypeScript, Choose Rust to build Robust, Fast and...apidays
 
Big Data, Data Lake, Fast Data - Dataserialiation-Formats
Big Data, Data Lake, Fast Data - Dataserialiation-FormatsBig Data, Data Lake, Fast Data - Dataserialiation-Formats
Big Data, Data Lake, Fast Data - Dataserialiation-FormatsGuido Schmutz
 
Win pcap filtering expression syntax
Win pcap  filtering expression syntaxWin pcap  filtering expression syntax
Win pcap filtering expression syntaxVota Ppt
 
Computer network (4)
Computer network (4)Computer network (4)
Computer network (4)NYversity
 
Introduction to InSpec and 1.0 release update
Introduction to InSpec and 1.0 release updateIntroduction to InSpec and 1.0 release update
Introduction to InSpec and 1.0 release updateAlex Pop
 
Eight simple rules to writing secure PHP programs
Eight simple rules to writing secure PHP programsEight simple rules to writing secure PHP programs
Eight simple rules to writing secure PHP programsAleksandr Yampolskiy
 
Streams, sockets and filters oh my!
Streams, sockets and filters oh my!Streams, sockets and filters oh my!
Streams, sockets and filters oh my!Elizabeth Smith
 
Learning the basics of Apache NiFi for iot OSS Europe 2020
Learning the basics of Apache NiFi for iot OSS Europe 2020Learning the basics of Apache NiFi for iot OSS Europe 2020
Learning the basics of Apache NiFi for iot OSS Europe 2020Timothy Spann
 
Application Logging in the 21st century - 2014.key
Application Logging in the 21st century - 2014.keyApplication Logging in the 21st century - 2014.key
Application Logging in the 21st century - 2014.keyTim Bunce
 
Ngrep commands
Ngrep commandsNgrep commands
Ngrep commandsRishu Seth
 
Task 4 The key is hardcoded in the provided source DES enc.pdf
Task 4  The key is hardcoded in the provided source DES enc.pdfTask 4  The key is hardcoded in the provided source DES enc.pdf
Task 4 The key is hardcoded in the provided source DES enc.pdfabcfootcare
 
Use perl creating web services with xml rpc
Use perl creating web services with xml rpcUse perl creating web services with xml rpc
Use perl creating web services with xml rpcJohnny Pork
 
Chef - industrialize and automate your infrastructure
Chef - industrialize and automate your infrastructureChef - industrialize and automate your infrastructure
Chef - industrialize and automate your infrastructureMichaël Lopez
 

Similar a Product security lead discusses OpenSSL Heartbleed vulnerability and lessons learned (20)

Juggling Chainsaws: Perl and MongoDB
Juggling Chainsaws: Perl and MongoDBJuggling Chainsaws: Perl and MongoDB
Juggling Chainsaws: Perl and MongoDB
 
Tips
TipsTips
Tips
 
Fuzzing - Part 1
Fuzzing - Part 1Fuzzing - Part 1
Fuzzing - Part 1
 
iPhone Lecture #1
iPhone Lecture #1iPhone Lecture #1
iPhone Lecture #1
 
Unix And Shell Scripting
Unix And Shell ScriptingUnix And Shell Scripting
Unix And Shell Scripting
 
Fluentd unified logging layer
Fluentd   unified logging layerFluentd   unified logging layer
Fluentd unified logging layer
 
Apidays Paris 2023 - Forget TypeScript, Choose Rust to build Robust, Fast and...
Apidays Paris 2023 - Forget TypeScript, Choose Rust to build Robust, Fast and...Apidays Paris 2023 - Forget TypeScript, Choose Rust to build Robust, Fast and...
Apidays Paris 2023 - Forget TypeScript, Choose Rust to build Robust, Fast and...
 
Big Data, Data Lake, Fast Data - Dataserialiation-Formats
Big Data, Data Lake, Fast Data - Dataserialiation-FormatsBig Data, Data Lake, Fast Data - Dataserialiation-Formats
Big Data, Data Lake, Fast Data - Dataserialiation-Formats
 
005. FILE HANDLING.pdf
005. FILE HANDLING.pdf005. FILE HANDLING.pdf
005. FILE HANDLING.pdf
 
Win pcap filtering expression syntax
Win pcap  filtering expression syntaxWin pcap  filtering expression syntax
Win pcap filtering expression syntax
 
Computer network (4)
Computer network (4)Computer network (4)
Computer network (4)
 
Introduction to InSpec and 1.0 release update
Introduction to InSpec and 1.0 release updateIntroduction to InSpec and 1.0 release update
Introduction to InSpec and 1.0 release update
 
Eight simple rules to writing secure PHP programs
Eight simple rules to writing secure PHP programsEight simple rules to writing secure PHP programs
Eight simple rules to writing secure PHP programs
 
Streams, sockets and filters oh my!
Streams, sockets and filters oh my!Streams, sockets and filters oh my!
Streams, sockets and filters oh my!
 
Learning the basics of Apache NiFi for iot OSS Europe 2020
Learning the basics of Apache NiFi for iot OSS Europe 2020Learning the basics of Apache NiFi for iot OSS Europe 2020
Learning the basics of Apache NiFi for iot OSS Europe 2020
 
Application Logging in the 21st century - 2014.key
Application Logging in the 21st century - 2014.keyApplication Logging in the 21st century - 2014.key
Application Logging in the 21st century - 2014.key
 
Ngrep commands
Ngrep commandsNgrep commands
Ngrep commands
 
Task 4 The key is hardcoded in the provided source DES enc.pdf
Task 4  The key is hardcoded in the provided source DES enc.pdfTask 4  The key is hardcoded in the provided source DES enc.pdf
Task 4 The key is hardcoded in the provided source DES enc.pdf
 
Use perl creating web services with xml rpc
Use perl creating web services with xml rpcUse perl creating web services with xml rpc
Use perl creating web services with xml rpc
 
Chef - industrialize and automate your infrastructure
Chef - industrialize and automate your infrastructureChef - industrialize and automate your infrastructure
Chef - industrialize and automate your infrastructure
 

Más de Ofer Rivlin, CISSP

Ofer rivlin BGU - department seminar
Ofer rivlin   BGU - department seminarOfer rivlin   BGU - department seminar
Ofer rivlin BGU - department seminarOfer Rivlin, CISSP
 
Security architecture design patterns iltam 2018 - ofer rivlin
Security architecture design patterns   iltam 2018 - ofer rivlinSecurity architecture design patterns   iltam 2018 - ofer rivlin
Security architecture design patterns iltam 2018 - ofer rivlinOfer Rivlin, CISSP
 
Android's security architecture
Android's security architectureAndroid's security architecture
Android's security architectureOfer Rivlin, CISSP
 
Connected cars - the security challenge: Vehicles, Networks & Protocols
Connected cars - the security challenge: Vehicles, Networks & ProtocolsConnected cars - the security challenge: Vehicles, Networks & Protocols
Connected cars - the security challenge: Vehicles, Networks & ProtocolsOfer Rivlin, CISSP
 
How to hack cryptographic protocols with Formal Methods
How to hack cryptographic protocols with Formal MethodsHow to hack cryptographic protocols with Formal Methods
How to hack cryptographic protocols with Formal MethodsOfer Rivlin, CISSP
 

Más de Ofer Rivlin, CISSP (6)

Zk bug bounty
Zk bug bountyZk bug bounty
Zk bug bounty
 
Ofer rivlin BGU - department seminar
Ofer rivlin   BGU - department seminarOfer rivlin   BGU - department seminar
Ofer rivlin BGU - department seminar
 
Security architecture design patterns iltam 2018 - ofer rivlin
Security architecture design patterns   iltam 2018 - ofer rivlinSecurity architecture design patterns   iltam 2018 - ofer rivlin
Security architecture design patterns iltam 2018 - ofer rivlin
 
Android's security architecture
Android's security architectureAndroid's security architecture
Android's security architecture
 
Connected cars - the security challenge: Vehicles, Networks & Protocols
Connected cars - the security challenge: Vehicles, Networks & ProtocolsConnected cars - the security challenge: Vehicles, Networks & Protocols
Connected cars - the security challenge: Vehicles, Networks & Protocols
 
How to hack cryptographic protocols with Formal Methods
How to hack cryptographic protocols with Formal MethodsHow to hack cryptographic protocols with Formal Methods
How to hack cryptographic protocols with Formal Methods
 

Último

Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFMichael Gough
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sectoritnewsafrica
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...itnewsafrica
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxAna-Maria Mihalceanu
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Karmanjay Verma
 

Último (20)

Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDF
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance Toolbox
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#
 

Product security lead discusses OpenSSL Heartbleed vulnerability and lessons learned

Notas del editor

  1. A talk about certain type of vulnerabilities: the bleed type that enables servers memory to leak This is also an example for how such presentations can be used within the dev org to increase awareness and explain best practices to the dev teams.
  2. Far in the past I was an AI(Artificial Intelligence) developer in a few gaming startups in Israel and then in Canada. Joined SAP back in Israel as a development architect where I started my security career as security researcher and a security architect. In parallel to that I was also a lead developer in an open source project. Today I am leading the product security at Cyberark.
  3. I want to take you to England. The year is 2011 It is New Year's Eve, and 2012 just minutes away
  4. Stephen Henson receives an update code for OpenSSL by Robin Seggelmann. Robin Seggelmann is a respected academic who's an expert in communication and encryption protocols. Stephen Henson, co-founder of OpneSSL and its lead developer till today.
  5. Almost midnight and everyone are partying outside. Stephen Henson reviews the code and submits it.
  6. Moving forward in time, about 2.5 years later
  7. Neel Mehta of Google's security team
  8. considered by many experts to be the worst security bug ever. OpenSSL is one of the internet infrastructure projects and is critical to the functioning of the Internet. (and is the first project to be funded by "Core Infrastructure Initiative" which was initiated due to HB and is sponsored by many companies).
  9. Configurable – run every second or a few minutes
  10. Client: “I am sending you a payload ‘bird’ with 4 letters” Server returns ‘bird’ with 4 letters
  11. Client: “I am sending you a payload ‘hat’ with 500 letters”. Server returns ‘hat’ with 500 letters. The 497 other characters are memory secrets. OpenSSL servers handle connection secrets.
  12. Yahoo server on April 8, 2014, a day after the disclosure, exposed to HB
  13. I am using the original parameter names – very confusing names
  14. Payload-length is completely controlled by the user while there is no check on its value on the server
  15. Eve the evil gets the server’s memory
  16. Linux target machine running nginx ("engine-x") server with the vulnerable OpenSSL version. TLS 1.2 with the best certificate. A user (victim) fills a form with sensitive data and sends that info to the vulnerable server The attacker identifies the machine that is vulnerable to Heartbleed using Nmap (with the ssl-heartbleed script). The attacker manages to get a dump of 64K of memory including this user’s sensitive data using a Python script that exploits the Heartbleed vulnerability
  17. But it gets worse. What can be worse than sending secrets to the client
  18. The challenge opened 2 days after the vuln was published Within a few hours, 2 people managed to download the private key from remote. About 70% of all servers on the internet were exposed to HB (Google, Yahoo, FB, banks, etc.). Did all of our information was compromised?
  19. And it gets even worse still. What can be worse than what we saw so far? About 70% of all servers on the internet were exposed to HB (Google, Yahoo, FB, banks, etc.). Did all of our information was compromised?
  20. We can’t know what was compromised. About 70% of all servers on the internet were exposed to HB (Google, Yahoo, FB, banks, etc.). Did all of our information was compromised?
  21. The reviewer has to reject such code. Hard to read code blocks the reviewer from seeing vulnerabilities.
  22. Audit and syslog that can be connected with alarm systems
  23. Fillipo Valsorda from Cloudflare
  24. Tickets: Server doesn’t cache session info session key is encrypted using a server’s key (STEK – session ticket encryption key, that should be rotated often) Not enable “Perfect Forward Secrecy” (because all previous tickets can be decrypted if STEK is compromised) Because there is no use of Diffie-Hellman. This is fixed in TLS 1.3 by implementing changes in the TLS protocol
  25. Cloudflare: CDN - Content delivery network Speeding the delivery of content of websites with high traffic or global reach (cached and compressed content). CDNs also provide protection from large surges in traffic and can provide other security services.
  26. Every Resume-TLS have failed
  27. Out of sync Don’t follow the communication protocol
  28. F5 BIG-IP products family
  29. 9 days later
  30. Cloudflare: CDN - Content delivery network Speeding the delivery of content of websites with high traffic or global reach (cached and compressed content). CDNs also provide protection from large surges in traffic and can provide other security services.
  31. Anyone sees the problem here?
  32. Anyone sees the problem here?
  33. https://blog.cloudflare.com/incident-report-on-memory-leak-caused-by-cloudflare-parser-bug/
  34. Direct open connection
  35. CIA triad: Confidentiality, Integrity, and Availability
  36. No security protection at all (MITM, etc) CIA triad: Confidentiality, Integrity, and Availability
  37. CIA triad: Confidentiality, Integrity, and Availability
  38. CIA triad: Confidentiality, Integrity, and Availability