Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
WTF, 2FA!? Y U NO PROTECT ME?
Search
Christine
April 05, 2019
Technology
0
79
WTF, 2FA!? Y U NO PROTECT ME?
Two factor authentication the worst, the best, and everything in-between.
Christine
April 05, 2019
Tweet
Share
More Decks by Christine
See All by Christine
One does not simply add MFA
tech_christine
0
51
Listening - Your Communication Superpower
tech_christine
0
210
Hanami 2.0 and You
tech_christine
1
270
ONE DOES NOT SIMPLY ADD MFA
tech_christine
0
360
One does not simply add MFA
tech_christine
0
200
MFA_Petfriendly.pdf
tech_christine
0
210
Hack Your Brain - Improve yourself and your work
tech_christine
0
560
A tale of two sides of 2FA
tech_christine
0
520
A tale of two sides of 2FA
tech_christine
0
560
Other Decks in Technology
See All in Technology
The Role of Developer Relations in AI Product Success.
giftojabu1
0
140
DynamoDB でスロットリングが発生したとき_大盛りver/when_throttling_occurs_in_dynamodb_long
emiki
1
440
iOS/Androidで同じUI体験をネ イティブで作成する際に気をつ けたい落とし穴
fumiyasac0921
1
110
組織成長を加速させるオンボーディングの取り組み
sudoakiy
2
220
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
770
100 名超が参加した日経グループ横断の競技型 AWS 学習イベント「Nikkei Group AWS GameDay」の紹介/mediajaws202411
nikkei_engineer_recruiting
1
170
アジャイルでの品質の進化 Agile in Motion vol.1/20241118 Hiroyuki Sato
shift_evolve
0
180
TypeScript、上達の瞬間
sadnessojisan
46
13k
オープンソースAIとは何か? --「オープンソースAIの定義 v1.0」詳細解説
shujisado
10
1.3k
OCI Vault 概要
oracle4engineer
PRO
0
9.7k
DynamoDB でスロットリングが発生したとき/when_throttling_occurs_in_dynamodb_short
emiki
0
270
CysharpのOSS群から見るModern C#の現在地
neuecc
2
3.5k
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
What's new in Ruby 2.0
geeforr
343
31k
GraphQLとの向き合い方2022年版
quramy
43
13k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Designing Experiences People Love
moore
138
23k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
How GitHub (no longer) Works
holman
310
140k
Practical Orchestrator
shlominoach
186
10k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Transcript
@tech_christine WTF, 2FA!? Y U NO PROTECT ME? Two factor
authentication the worst, the best, and everything in-between
None
@tech_christine
None
@tech_christine Back to the beginning
@tech_christine What was the hacker up to? Calling your mobile
provider
@tech_christine Still on the phone with your mobile provider... Using
social engineering
@tech_christine And now they have all the access... Sim swap/sim
hijacking
@tech_christine
“ @tech_christine We learned that SMS-based authentication is not nearly
as secure as we would hope, and the main attack was via SMS intercept Christopher Slowe Reddit chief technology officer and founding engineer August 2018
@tech_christine What is authentication? The process of verifying that someone
or something is the actual entity that they claim to be. - OWASP.org (these people know what they are talking about when it comes to security)
@tech_christine ... but what are the different factors of auth?
1 factor is knowledge (i.e. your password) 2 is the other method choice - Possession (token/soft token) - Identity (biometrics)
@tech_christine 2FA == 2SV == MFA 2FA = Two factor
authentication 2SV = Two Step verification MFA = Multi-factor authentication What about all those other acronyms...
@tech_christine Why didn't 2FA help? •SMS was used •2FA wasn't
even enabled
@tech_christine •Most common method •Most compromised •Not recommended by NIST
since 2016 SMS
@tech_christine Let's figure out all the ways SMS can be
hacked... 1. Sim-swap (aka what just happened to us) 2. Port-out scam 3. Brute force on the application itself
@tech_christine Time-based One Time Password aka App based aka soft
token •Authy •Google Authenticator •1Password TOTP
@tech_christine •Associated with the certain authorized devices •Not visible on
a locked phone screen Push Based Authentication
@tech_christine Token based Physical keys that can auth •USB drive
•near-field communication •Many use U2F (Universal 2nd Factor)
What would you change now?
@tech_christine So what could you have changed? •Setting up with
a VOIP number •Secure with alternate authentication method •Pin/password protect phone provider Keep on being @awesome
@tech_christine ...wait I lost my phone/app access/token Use a recovery
code Allows you access to application
@tech_christine More on recovery codes •Stored as hashes •One time
use •Shown only once
@tech_christine 2FA Implementation Best Practices • Rate limiting prevents brute
force attacks • Use a truncated exponential back-off algorithm
@tech_christine What is an exponential back-off algorithm?
@tech_christine Example in Ruby login_request if retries <= max_retries retries
+= 1 sleep (retries + rand(100)/1000) retry else raise "You've hit your max retries!" end
@tech_christine Get user buy-in Enforce authentication on all pages Users
with the most amount of privilege, 2FA is a requirement not optional
@tech_christine Now you are the info sec professional
None
@tech_christine Thank you Kernelcon and all the staff Tyson Reeder
for the final graphic(@tysondreeder) For references and further reading checkout https://christine-seeman.com/talks/