SlideShare une entreprise Scribd logo
1  sur  41
Télécharger pour lire hors ligne
SSL/TLS

M
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
T 
L 
S
Awesome
Sauce,
or...
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
H 

Exception
in
thread
"main"
javax.net.ssl.SSLHandshakeException:
sun.security.validator.ValidatorException:
PKIX
path
building
failed:
sun.security.p




at
sun.security.ssl.Alerts.getSSLException(Alerts.java:192)





at
sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1949)





at
sun.security.ssl.Handshaker.fatalSE(Handshaker.java:302)





at
sun.security.ssl.Handshaker.fatalSE(Handshaker.java:296)





at
sun.security.ssl.ClientHandshaker.serverCertif cate(ClientHandshaker.java:1506)





at
sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:216)





at
sun.security.ssl.Handshaker.processLoop(Handshaker.java:979)





at
sun.security.ssl.Handshaker.process_record(Handshaker.java:914)





at
sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1062)





at
sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375)





at
sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403)





at
sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387)





at
sun.net. .protocol.https.HttpsClient.afterConnect(HttpsClient.java:559)





at
sun.net. .protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185)





at
sun.net. .protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1512)





at
sun.net. .protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1440)





at
sun.net. .protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:254)





at
it.mulders.maarten.Demo.main(Demo.java:13)

Caused
by:
sun.security.validator.ValidatorException:
PKIX
path
building
failed:
sun.security.provider.certpath.SunCertPathBuilderException:
unable





at
sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:387)





at
sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:292)





at
sun.security.validator.Validator.validate(Validator.java:260)





at
sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:324)





at
sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:229)





at
sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:124)





at
sun.security.ssl.ClientHandshaker.serverCertif cate(ClientHandshaker.java:1488)





 
13
more

Caused
by:
sun.security.provider.certpath.SunCertPathBuilderException:
unable
to
f nd
valid
certif cation
path
to
requested
target





at
sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:146)





at
sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:131)





at
java.security.cert.CertPathBuilder.build(CertPathBuilder.java:280)

at sun security validator PKIXValidator doBuild(PKIXValidator java:382)
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
7
L 
 
OSI
M
data
unit layers
Data
Data
Data
Segments
Packets
Frames
Bits
Application

Network
Process
to
Application
Presentation

Data
Representation

and
Encryption
Session

Interhost
Communication
Transport

End­to­End
Connections

and
Reliability
Network

Path
Determination
and

Logical
Addressing
(IP)
Data
Link

Physical
Addressing

(MAC
and
LLC)
Physical

Media,
Signal
and

Binary
Transmission
Host
Layers
Media
Layers
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
H 
 
SSL
 
TLS
SSL
1.0 never
released
SSL
2.0 1995
-
2011
(POODLE)
SSL
3.0 1996
-
2014
(POODLE)
TLS
1.0 1999
-
2011
(BEAST)
TLS
1.1 2006
TLS
1.2 2008
TLS
1.3 2018
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
D 
 

What's
the
issue?!
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
H 
 

1.
public/private
key
encryption
2.
signed
certificates
3.
certificate
authorities
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
1 
P 
 
P
K 
E
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
M 

1.
Select
two
prime
numbers:

2.
Calculate
product:

3.
Select
random
number
<
product:

4.
Find
 ,
so
that

a.

b.

c.

d.


 
varies
with
 :
when
 .
p = 11, q = 17
p ∗ q = 187
e = 3
d (d ∗ e) − 1 mod (p − 1) ∗ (q − 1) = 0
(d ∗ 3) − 1 mod (10 ∗ 16) = 0
320 mod 160 = 0
(321 − 1) mod 160 = 0
(107 ∗ 3) = 321 ⇒d = 107
d e e = 75, d = 183
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
N ,
 
 
P
 
Q

1.

2.
Find
d,
so
that

Pretty
hard
without
knowing
 
and
 !

When
you
know
 ,
calculating
 
is
easy.
p ∗ q = 299, e = 5
(d ∗ e) − 1 mod (p − 1) ∗ (q − 1) = 0
p q
p = 13, q = 23 d = 317
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
For
big
enough
 
and
 ,
finding
those
factors
will
cost
an
eternity!
So
we
can
distribute
 
and
even
 !
p q
p ∗ q e
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
L 
 
"G"
p ∗ q = 187, e = 3, G ⇒ 7
= = 343
7
e
7
3
343 mod 187 = 156
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
L 
 
"156"
Since
we
know
 
and
 ,
we
can
calculate

p q d = 107
= ≈ 4.6 ∗
156
d
156
107
10
234
mod 187 = 7
156
107
7 ⇒ G
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
N 
 
 

Client Server
1 ClientHello →
2 ← ServerHello
3 ← Certificate
4 ← ServerKeyExchange
5 ← ServerHelloDone
6 ClientKeyExchange →
7 ChangeCipherSpec →
8 Finished →
9 ← ChangeCipherSpec
10 ← Finished
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
D 
 

No-one
is
eavesdropping!
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
2 
S
C
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
A
certificate
contains:
Serial
Number
Subject
Validity
Usage
Public
Key
Fingerprint
Algorithm
Fingerprint
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
But
wait...
anyone
could
create
a
certificate!
So
we
also
need
Signature
Algorithm
Signature
Issuer
...
and
a
way
to
sign
certificates.
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
A
signature
is
a
mathematical
relationship
between
a
message

,
a
private
key
 
and
a
public
key
 .
It
consists
of
two
functions:
1.
signing
function

2.
verifying
function

x sk pk
t = f (sk, x)
[accept, reject] = g(pk, t, x)
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
3 
C
A
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
An
entity
that
issues
digital
certificates,
certifying
the
ownership
of
a
public
key
by
the
subject
of
the
certificate.
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
I
John
?
Alice
So,
who
is
John,
anyway?
“I
can
trust
you,
because
I
trust
John,
and
John
trusts
Alice,
and
Alice
trusts
you.
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
Top-notch
security
procedures,
including
"key
ceremonies"
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
/**
intentionally
left
blank
*/
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
W 
 

Google
blacklists
247
certificates
in
Chromium
Microsoft
removes
the
DigiNotar
root
certificate
from
all
supported
Windows-releases
*
Mozilla
revokes
trust
in
the
DigiNotar
root
certificate
in
all
supported
versions
Apple
issued
Security
Update
2011-005


Update
Certificate
Revocation
Lists
(although
these
are
self-
signed)
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
D 
 

Trust
(for
what
it's
worth)
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
T ,
T 
 
T
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
Simple
HTTP
client
with
TLS
support:


curl
­v
­k
<address>
Troubleshoot
trust
issues
and
see
certificates
being
used:


openssl
s_client
­showcerts
­servername
<address>
­
connect
<address>:443
Troubleshoot
supported
protocols,
ciphers,
...:


nmap
­­script
ssl­enum­ciphers
­p
443
<address>
Trace
(or
even
decrypt)
TLS
traffic:


ssldump
­i
eth0
port
443
and
host
<address>
(add
­Ad
­k
<keyfile>
­p
<password>
for
decryption)
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
JVM
S
­Djavax.net.ssl.trustStore=<file>


Denotes
where
a
truststore
can
be
found:
a
file
that
contains
trusted
certs.


­Djavax.net.ssl.trustStorePassword=changeit


is
the
password
to
that
file.
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
JVM
S
­Djavax.net.ssl.keyStore=<file>


Denotes
where
a
keystore
can
be
found:
a
file
that
contains
public
and/or
private
keys.


­Djavax.net.ssl.keyStorePassword=changeit


is
the
password
to
that
file.
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
JVM
S
­Djavax.net.debug=ssl[:flag]


Include
debug
logging
for
TLS
handshake
and
connections.
Additional
flags:
record session sessioncache pluggability plaintext
handshake defaultctx keymanager data packet
keygen sslctx trustmanager verbose
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
P
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
P 
 
 -
1.
Don't
use
SSL!


Use
TLS
v1.2
or
v1.3.
2.
Be
careful
whom
you
trust!
3.
When
in
doubt,
open
your
toolbox:


openssl,
curl,
nmap,
ssldump
and
Portecle
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals
Q
















I 

Router
by

Public
Key
Krüpto
by
 ,
 ,
and
 
( )
Puss
In
Boots
by

IANA
Root
KSK
Ceremony
#36
@

Beverwijk
by
 
@

unknown
author
Sándor
P.
Fekete Sebastian
Morr Sebastian
Stiller @ideainstruction
kisspng
https://www.iana.org/dnssec/ceremonies/36
Gerard
Hogervorst Wikimedia
Commons
Maarten
Mulders
(@mthmulders)
  Devoxx
UK
 #tlsformortals

Contenu connexe

Tendances

Security Hole #11 - Unusual security vulnerabilities - Yuriy Bilyk
Security Hole #11 - Unusual security vulnerabilities - Yuriy BilykSecurity Hole #11 - Unusual security vulnerabilities - Yuriy Bilyk
Security Hole #11 - Unusual security vulnerabilities - Yuriy Bilyk
Nazar Tymoshyk, CEH, Ph.D.
 

Tendances (10)

SSL/TLS for Mortals (JavaOne 2017)
SSL/TLS for Mortals (JavaOne 2017)SSL/TLS for Mortals (JavaOne 2017)
SSL/TLS for Mortals (JavaOne 2017)
 
SSL/TLS for Mortals (Devoxx FR 2018)
SSL/TLS for Mortals (Devoxx FR 2018)SSL/TLS for Mortals (Devoxx FR 2018)
SSL/TLS for Mortals (Devoxx FR 2018)
 
Security Hole #11 - Unusual security vulnerabilities - Yuriy Bilyk
Security Hole #11 - Unusual security vulnerabilities - Yuriy BilykSecurity Hole #11 - Unusual security vulnerabilities - Yuriy Bilyk
Security Hole #11 - Unusual security vulnerabilities - Yuriy Bilyk
 
Dodging WebCrypto API Landmines
Dodging WebCrypto API LandminesDodging WebCrypto API Landmines
Dodging WebCrypto API Landmines
 
Connascence
ConnascenceConnascence
Connascence
 
Some tales about TLS
Some tales about TLSSome tales about TLS
Some tales about TLS
 
Secure shell(ssh) AND telnet AND CONSOLE
Secure shell(ssh)  AND telnet AND CONSOLESecure shell(ssh)  AND telnet AND CONSOLE
Secure shell(ssh) AND telnet AND CONSOLE
 
TLS Interception considered harmful (Chaos Communication Camp 2015)
TLS Interception considered harmful (Chaos Communication Camp 2015)TLS Interception considered harmful (Chaos Communication Camp 2015)
TLS Interception considered harmful (Chaos Communication Camp 2015)
 
JEEConf 2017 - How to find deadlock not getting into it
JEEConf 2017 - How to find deadlock not getting into itJEEConf 2017 - How to find deadlock not getting into it
JEEConf 2017 - How to find deadlock not getting into it
 
From grep to BERT
From grep to BERTFrom grep to BERT
From grep to BERT
 

Similaire à SSL/TLS for Mortals (Devoxx UK)

Assignment2 – Simplified DES Encrypt and Decrypt .docx
Assignment2 – Simplified DES Encrypt and Decrypt                  .docxAssignment2 – Simplified DES Encrypt and Decrypt                  .docx
Assignment2 – Simplified DES Encrypt and Decrypt .docx
mckellarhastings
 
Assignment2 – Simplified DES Encrypt and Decrypt .docx
Assignment2 – Simplified DES Encrypt and Decrypt                  .docxAssignment2 – Simplified DES Encrypt and Decrypt                  .docx
Assignment2 – Simplified DES Encrypt and Decrypt .docx
edmondpburgess27164
 
Using DDS to Secure the Industrial Internet of Things (IIoT)
Using DDS to Secure the Industrial Internet of Things (IIoT)Using DDS to Secure the Industrial Internet of Things (IIoT)
Using DDS to Secure the Industrial Internet of Things (IIoT)
Gerardo Pardo-Castellote
 

Similaire à SSL/TLS for Mortals (Devoxx UK) (20)

SSL/TLS for Mortals (UtrechtJUG)
SSL/TLS for Mortals (UtrechtJUG)SSL/TLS for Mortals (UtrechtJUG)
SSL/TLS for Mortals (UtrechtJUG)
 
SSL/TLS for Mortals (Devoxx)
 SSL/TLS for Mortals (Devoxx) SSL/TLS for Mortals (Devoxx)
SSL/TLS for Mortals (Devoxx)
 
SSL/TLS for Mortals (Voxxed Days Luxembourg)
SSL/TLS for Mortals (Voxxed Days Luxembourg)SSL/TLS for Mortals (Voxxed Days Luxembourg)
SSL/TLS for Mortals (Voxxed Days Luxembourg)
 
Whispered secrets
Whispered secretsWhispered secrets
Whispered secrets
 
Encrption in mule
Encrption in muleEncrption in mule
Encrption in mule
 
Pgp security mule
Pgp security   mulePgp security   mule
Pgp security mule
 
Whispered secrets
Whispered secretsWhispered secrets
Whispered secrets
 
DevOps Guide to Container Networking
DevOps Guide to Container NetworkingDevOps Guide to Container Networking
DevOps Guide to Container Networking
 
Conf2015 d waddle_defense_pointsecurity_deploying_splunksslbestpractices
Conf2015 d waddle_defense_pointsecurity_deploying_splunksslbestpracticesConf2015 d waddle_defense_pointsecurity_deploying_splunksslbestpractices
Conf2015 d waddle_defense_pointsecurity_deploying_splunksslbestpractices
 
mastering the curl command line.pdf
mastering the curl command line.pdfmastering the curl command line.pdf
mastering the curl command line.pdf
 
Beyond php - it's not (just) about the code
Beyond php - it's not (just) about the codeBeyond php - it's not (just) about the code
Beyond php - it's not (just) about the code
 
Beyond php - it's not (just) about the code
Beyond php - it's not (just) about the codeBeyond php - it's not (just) about the code
Beyond php - it's not (just) about the code
 
Actor Concurrency
Actor ConcurrencyActor Concurrency
Actor Concurrency
 
Security for Microservices in GCP
Security for Microservices in GCPSecurity for Microservices in GCP
Security for Microservices in GCP
 
Grokking Grok: Monitorama PDX 2015
Grokking Grok: Monitorama PDX 2015Grokking Grok: Monitorama PDX 2015
Grokking Grok: Monitorama PDX 2015
 
Assignment2 – Simplified DES Encrypt and Decrypt .docx
Assignment2 – Simplified DES Encrypt and Decrypt                  .docxAssignment2 – Simplified DES Encrypt and Decrypt                  .docx
Assignment2 – Simplified DES Encrypt and Decrypt .docx
 
Assignment2 – Simplified DES Encrypt and Decrypt .docx
Assignment2 – Simplified DES Encrypt and Decrypt                  .docxAssignment2 – Simplified DES Encrypt and Decrypt                  .docx
Assignment2 – Simplified DES Encrypt and Decrypt .docx
 
Real-Time Web Apps & .NET. What Are Your Options? NDC Oslo 2016
Real-Time Web Apps & .NET. What Are Your Options? NDC Oslo 2016Real-Time Web Apps & .NET. What Are Your Options? NDC Oslo 2016
Real-Time Web Apps & .NET. What Are Your Options? NDC Oslo 2016
 
Net
NetNet
Net
 
Using DDS to Secure the Industrial Internet of Things (IIoT)
Using DDS to Secure the Industrial Internet of Things (IIoT)Using DDS to Secure the Industrial Internet of Things (IIoT)
Using DDS to Secure the Industrial Internet of Things (IIoT)
 

Plus de Maarten Mulders

Plus de Maarten Mulders (20)

What's cooking in Maven? (Devoxx FR)
What's cooking in Maven? (Devoxx FR)What's cooking in Maven? (Devoxx FR)
What's cooking in Maven? (Devoxx FR)
 
Making Maven Marvellous (Devnexus)
Making Maven Marvellous (Devnexus)Making Maven Marvellous (Devnexus)
Making Maven Marvellous (Devnexus)
 
Making Maven Marvellous (Java.il)
Making Maven Marvellous (Java.il)Making Maven Marvellous (Java.il)
Making Maven Marvellous (Java.il)
 
Making Maven Marvellous (JavaZone)
Making Maven Marvellous (JavaZone)Making Maven Marvellous (JavaZone)
Making Maven Marvellous (JavaZone)
 
Dapr: Dinosaur or Developer's Dream? (v1)
Dapr: Dinosaur or Developer's Dream? (v1)Dapr: Dinosaur or Developer's Dream? (v1)
Dapr: Dinosaur or Developer's Dream? (v1)
 
Dapr: Dinosaur or Developer Dream? (J-Fall)
Dapr: Dinosaur or Developer Dream? (J-Fall)Dapr: Dinosaur or Developer Dream? (J-Fall)
Dapr: Dinosaur or Developer Dream? (J-Fall)
 
React in 40 minutes (Voxxed Days Romania)
React in 40 minutes (Voxxed Days Romania) React in 40 minutes (Voxxed Days Romania)
React in 40 minutes (Voxxed Days Romania)
 
React in 40 minutes (JCON)
React in 40 minutes (JCON) React in 40 minutes (JCON)
React in 40 minutes (JCON)
 
React in 50 minutes (Bucharest Software Craftsmanship Community)
React in 50 minutes (Bucharest Software Craftsmanship Community)React in 50 minutes (Bucharest Software Craftsmanship Community)
React in 50 minutes (Bucharest Software Craftsmanship Community)
 
React in 50 Minutes (JNation)
 React in 50 Minutes (JNation)  React in 50 Minutes (JNation)
React in 50 Minutes (JNation)
 
Making Maven Marvellous (J-Fall)
Making Maven Marvellous (J-Fall)Making Maven Marvellous (J-Fall)
Making Maven Marvellous (J-Fall)
 
Building a DSL with GraalVM (Oracle Groundbreaker APAC Virtual Tour)
Building a DSL with GraalVM (Oracle Groundbreaker APAC Virtual Tour)Building a DSL with GraalVM (Oracle Groundbreaker APAC Virtual Tour)
Building a DSL with GraalVM (Oracle Groundbreaker APAC Virtual Tour)
 
Building a DSL with GraalVM (javaBin online)
Building a DSL with GraalVM (javaBin online)Building a DSL with GraalVM (javaBin online)
Building a DSL with GraalVM (javaBin online)
 
React in 50 Minutes (OpenValue)
React in 50 Minutes (OpenValue) React in 50 Minutes (OpenValue)
React in 50 Minutes (OpenValue)
 
React in 50 Minutes (DevNexus)
React in 50 Minutes (DevNexus) React in 50 Minutes (DevNexus)
React in 50 Minutes (DevNexus)
 
React in 45 Minutes (Jfokus)
React in 45 Minutes (Jfokus)React in 45 Minutes (Jfokus)
React in 45 Minutes (Jfokus)
 
Building web applications with React (Jfokus)
Building web applications with React (Jfokus)Building web applications with React (Jfokus)
Building web applications with React (Jfokus)
 
Building a DSL with GraalVM (CodeOne)
Building a DSL with GraalVM (CodeOne)Building a DSL with GraalVM (CodeOne)
Building a DSL with GraalVM (CodeOne)
 
Building a DSL with GraalVM (Full Stack Antwerpen)
Building a DSL with GraalVM (Full Stack Antwerpen)Building a DSL with GraalVM (Full Stack Antwerpen)
Building a DSL with GraalVM (Full Stack Antwerpen)
 
Building a DSL with GraalVM (Devoxx PL)
Building a DSL with GraalVM (Devoxx PL) Building a DSL with GraalVM (Devoxx PL)
Building a DSL with GraalVM (Devoxx PL)
 

Dernier

%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
masabamasaba
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 

Dernier (20)

WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 

SSL/TLS for Mortals (Devoxx UK)