1
C u s t
- m
c r y p t
- p
- l
i c i e s b y e x a m p l e s
T
- m
á š M r á z P r i n c i p a l S W E n g i n e e r , R e d H a t
C u s t o m c r y p t o p o l i c i e s b y e - - PowerPoint PPT Presentation
C u s t o m c r y p t o p o l i c i e s b y e x a m p l e s T o m M r z P r i n c i p a l S W E n g i n e e r , R e d H a t 1 A G E N D A W h a t w e l l b
1
T
á š M r á z P r i n c i p a l S W E n g i n e e r , R e d H a t
2
A G E N D A
M
i v a t i
C r y p t
i c i e s C u s t
c r y p t
i c i e s E x a m p l e s F u t u r e S u m m a r y
3
4
M
i v a t i
C r y p t
r a p h y a n d c r y p t a n a l y s i s g
a n d i n h a n d a n d t h e e v
u t i
a l g
i t h m s a n d p r
s i s f a s t e r a n d f a s t e r . Y
c a n n e v e r t h i n k t h a t a c r y p t
y s t e m d e p l
e d i n y e a r X w i l l b e s t i l l g
e n
g h i n y e a r X + 1 . W e n e e d t
e t u s e d t
h a n g e s .
5
M
i v a t i
6
M
i v a t i
7
M
i v a t i
W h a t i f y
n e e d t
p p l y t h e c r y p t
e l a t e d c
fi g u r a t i
c h a n g e s r e g u l a r l y t
u n d r e d s
m a c h i n e s p h y s i c a l a n d v i r t u a l i n h e t e r
e n
s e n v i r
m e n t ?
8
M
i v a t i
T
p l i c a t e t h i n g s e v e n m
e – v a r i
s m a c h i n e s h a v e v a r i
s l e v e l s
n e e d t
m u n i c a t e w i t h l e g a c y s y s t e m s a n d d e v i c e s . E v e r y
e c a n n
a c c
a t e e v e r y c h a n g e .
9
1
C r y p t
i c i e s
C e n t r a l l y m a n a g e d
t h e s y s t e m M u l t i p l e p r e
e s i g n e d p
i c y l e v e l s F I P S s u p p
t s i m p l i fi c a t i
1 1
C r y p t
i c i e s
S i n g l e c
m a n d
: update-crypto-policies --set <LEVEL>
1 2
C r y p t
i c i e s
C
t r
s
: G n u T L S O p e n S S L K e r b e r
5 B i n d N S S J a v a O p e n S S H c l i e n t O p e n S S H s e r v e r l i b s s h l i b r e s w a n
1 3
C r y p t
i c i e s
W h e n t h e u p d a t e
r y p t
i c i e s c
m a n d i s r u n i t t r a n s f
m s a s i m p l e p
i c y d e fi n i t i
i n t
e p a r a t e c
fi g u r a t i
fi l e s n i p p e t s t h a t a r e l
d e d
i n c l u d e d i n t
e f a u l t c
fi g u r a t i
s
t h e s u p p
t e d b a c k e n d s .
1 4
C r y p t
i c i e s
L E G A C Y L e g a c y d e v i c e s i n t e r
e r a b i l i t y , R C 4 , 3 D E S > = 6 4 b i t s e c u r i t y D E F A U L T R e a s
a b l e b u t i n t e r
e r a b l e d e f a u l t > = 8 b i t s e c u r i t y N E X T F e d
a
l y e q u i v a l e n t
R H E L
D E F A U L T R e mo v e s T L S
. , 1 . 1 , r e q u i r e s D H > = 2 4 8 b i t s F U T U R E C
s e r v a t i v e l e v e l , n
H A 1 , 2 5 6 b i t c i p h e r s
l y > = 1 2 8 b i t s e c u r i t y F I P S F I P S a p p r
e d / a l l
e d a l g
i t h ms
l y > = 1 1 2 b i t s e c u r i t y
1 5
C r y p t
i c i e s
J u s t r u n
: fips-mode-set --enable reboot
1 6
C r y p t
i c i e s
R H E L 7 f
c
p a r i s
:
yum install dracut-fips dracut -f <your-favourite-command-to-edit-boot-cfg> reboot
1 7
C r y p t
i c i e s
C e n t r a l l y m a n a g e d
t h e s y s t e m
S i n g l e c
m a n d c
t r
s a l l t h e c
e c r y p t
i b r a r i e s a n d a p p l i c a t i
s u s i n g c r y p t
M u l t i p l e p r e
e s i g n e d p
i c y l e v e l s
U p
a t e s e c u r i t y , c
m u n i c a t i
w i t h l e g a c y s y s t e m s , p r e p a r a t i
f
f u t u r e
F I P S s u p p
t
S i m p l i f y F I P S e n a b l e m e n t
W h e r e ?
C u r r e n t F e d
a a n d R e d H a t E n t e r p r i s e L i n u x 8
1 8
C r y p t
i c i e s
B u t w h a t t
f t h e p r e
e fi n e d p
i c y l e v e l s d
m a t c h y
r r e q u i r e m e n t s ?
1 9
2
C u s t
c r y p t
i c i e s
D e fi n e y
r
n c r y p t
i c y f r
s c r a t c h O r m
i f y t h e e x i s t i n g p r e
e fi n e d p
i c y l e v e l s
2 1
C u s t
c r y p t
i c i e s
P l a c e m e n t
t h e f u l l p
i c y d e fi n i t i
fi l e s :
/etc/crypto-policies/policies /usr/share/crypto-policies/policies
T h e fi l e n e e d s t
e n a m e d < P O L I C Y > . p
( t h e u p p e r c a s e i n t h e fi l e n a m e i s i m p
t a n t ) .
2 2
C u s t
c r y p t
i c i e s
S e e c r y p t
i c i e s ( 7 ) m a n u a l p a g e f
a l l t h e k e y a n d a l g
i t h m n a m e s
:
hash = SHA2-256 SHA2-384 SHA2-512 \ SHA3-256 SHA3-384 SHA3-512 SHA2-224 group = X25519 X448 SECP256R1 SECP384R1 \ SECP521R1 FFDHE-3072 FFDHE-4096 FFDHE-6144 \ FFDHE-8192 min_tls_version = TLS1.2 min_rsa_size = 3072
e x c e r p t f r
/ u s r / s h a r e / c r y p t
i c i e s / p
i c i e s / F U T U R E . p
2 3
C u s t
c r y p t
i c i e s
P l a c e m e n t
t h e p
i c y m
i fi e r fi l e s :
/etc/crypto-policies/policies/modules /usr/share/crypto-policies/policies/modules
T h e m
u l e fi l e n e e d s t
e n a m e d < M O D U L E > . p m
( t h e u p p e r c a s e i n t h e fi l e n a m e i s a g a i n i m p
t a n t ) .
2 4
C u s t
c r y p t
i c i e s
D i s a b l e S H A 1 h a s h
:
hash = -SHA1 sign = -RSA-PSS-SHA1 -RSA-SHA1 -ECDSA-SHA1
/ u s r / s h a r e / c r y p t
i c i e s / p
i c i e s / m
u l e s / N O
H A 1 . p m
T h e h a s h v a l u e a f f e c t s
h e r u s e t h a n s i g n a t u r e s .
2 5
C u s t
c r y p t
i c i e s
G e n e r a t e a n d s e t t h e c u s t
i z e d p
i c y :
update-crypto-policies --set DEFAULT:NO-SHA1 A n y p
i c y m
i fi e r m
u l e c a n b e a p p l i e d t
h e r p
i c i e s a s w e l l .
2 6
C u s t
c r y p t
i c i e s
G e n e r a t e a n d s e t t h e c u s t
i z e d p
i c y :
update-crypto-policies --set FUTURE:NO-SHA1 S
h i s c a n b e u s e d a s w e l l , a l t h
g h i t w
l d n
b e t
s e f u l .
2 7
C u s t
c r y p t
i c i e s
E n a b l e C a m e l l i a c i p h e r s w i t h p r i
i t y t
h e m
:
tls_cipher = +CAMELLIA-128-CBC +CAMELLIA-128-GCM \ +CAMELLIA-256-CBC +CAMELLIA-256-GCM cipher = +CAMELLIA-128-CBC +CAMELLIA-128-GCM \ +CAMELLIA-256-CBC +CAMELLIA-256-GCM
Y
c a n p u t t h i s fi l e f
e x a m p l e i n t
e t c / c r y p t
i c i e s / p
i c i e s / m
u l e s / C A M E L L I A . p m
2 8
C u s t
c r y p t
i c i e s
E n a b l e C a m e l l i a c i p h e r s b u t l e a v e t h e m l a s t
:
tls_cipher = CAMELLIA-256-GCM+ CAMELLIA-256-CBC+ \ CAMELLIA-128-GCM+ CAMELLIA-128-CBC+ cipher = CAMELLIA-256-GCM+ CAMELLIA-256-CBC+ \ CAMELLIA-128-GCM+ CAMELLIA-128-CBC+
2 9
C u s t
c r y p t
i c i e s
D i s a b l e
d T L S p r
v e r s i
s :
protocol = -TLS1.1 -TLS1.0 -DTLS1.0 min_tls_version = TLS1.2 min_dtls_version = DTLS1.2
S
e b a c k
n d s d
a l l
d i s a b l i n g p r
v e r s i
s s e l e c t i v e l y . T h e m i n _ t l s _ v e r s i
v a l u e a p p l i e s t
h e m .
3
C u s t
c r y p t
i c i e s
A l l
s m a l l e r D H p a r a m e t e r s a n d R S A k e y s i n F U T U R E p
i c y :
# Parameter sizes min_dh_size = 2048 min_rsa_size = 2048
3 1
C u s t
c r y p t
i c i e s
A l l
l y E C D H E a n d E C D H E w i t h P S K k e y e x c h a n g e s :
key_exchange = -RSA -DHE -DHE-RSA -PSK -DHE-PSK
U n f
t u n a t e l y t h e c u r r e n t v e r s i
d
s n
a l l
c
p l e t e l y
e r r i d i n g a p a r t i c u l a r l i s t v a l u e i n p
i c y m
i fi e r m
u l e .
3 2
C u s t
c r y p t
i c i e s
A l l
l y E C D H E a n d E C D H E w i t h P S K k e y e x c h a n g e s :
key_exchange = ECDHE ECDHE-PSK
S
h i s w
l d n
w
k p r
e r l y c u r r e n t l y .
3 3
C u s t
c r y p t
i c i e s
M u l t i p l e m
i fi e r s c a n b e a p p l i e d :
update-crypto-policies --set DEFAULT:NO-SHA1:CAMELLIA
3 4
C u s t
c r y p t
i c i e s
T h e b a c k
n d c
fi g u r a t i
fi l e s i n / e t c / c r y p t
i c i e s / b a c k
n d s a r e g e n e r a t e d w h e n u p d a t e
r y p t
i c i e s i s b e i n g r u n . T h i s a l l
s m
i f y i n g t h e c r y p t
i b r a r i e s a n d /
t h e c
fi g u r a t i
g e n e r a t
s i n r e g a r d s t
h e s u p p
t e d a l g
i t h m s . E v e n c
p l e t e l y n e w b a c k
n d s c
l d b e a d d e d i n f u t u r e a n d t h e p
i c y w i l l b e s t i l l a p p l i e d t
h e m w i t h
t n e e d f
m
i fi c a t i
.
3 5
C u s t
c r y p t
i c i e s
E x a m p l e : O p e n S S L b a c k
n d c
l d a l l
m
e fi n e
r a i n e d c
fi g u r a t i
T L S s i g n a t u r e a l g
i t h m s i n f u t u r e u p d a t e . O r i t c
l d a l l
d i f f e r e n t b e h a v i
i n r e g a r d s t
H A 1 s i g n a t u r e s i n T L S p r
v s . c e r t i fi c a t e s i g n a t u r e s .
3 6
C u s t
c r y p t
i c i e s
D e fi n e y
r
n c r y p t
i c y f r
s c r a t c h
I n a s i m p l e p
i c y d e fi n i t i
fi l e
O r m
i f y t h e e x i s t i n g p r e
e fi n e d p
i c y l e v e l s
B y a d d i n g
r e m
i n g e n a b l e d a l g
i t h m s
p r
s
G e n e r a t i
b a c k
n d c
fi g u r a t i
s
W h e n u p d a t e
r y p t
i c i e s i s r u n .
3 7
3 8
F u t u r e
H a n d l i n g
S H A 1 d e p r e c a t i
A f t e r t h e r e c e n t c
l i s i
a t t a c k i m p r
e m e n t s t h e S H A 1 u s e r e a l l y n e e d s t
e a b a n d
e d .
M
e fi n e
r a i n e d b a c k
n d c
fi g u r a t i
s
G n u T L S a l r e a d y i m p r
e d , O p e n S S L s h
l d f
l
.
C r y p t
i c i e s a n d d a t a a t r e s t
W e n e e d t
h i n k a b
t t h i s .
3 9
4
S u m m a r y
S i n g l e c
m a n d t
u l e t h e m ( a l g
i t h m s a n d l i b r a r i e s ) a l l M u l t i p l e p r e
e s i g n e d p
i c y l e v e l s C u s t
p
i c i e s c a n b e c r e a t e d f r
s c r a t c h
b y p
i c y m
i fi c a t i
S i m p l e p
i c y d e fi n i t i
f
m a t
C O N F I D E N T I A L D e s i g n a t
l i n k e d i n . c
/ c
p a n y / r e d
a t y
t u b e . c
/ u s e r / R e d H a t V i d e
f a c e b
. c
/ r e d h a t i n c t w i t t e r . c
/ R e d H a t
4 1
h t t p s : / / g i t l a b . c
/ r e d h a t
r y p t
f e d
a
r y p t
i c i e s