SlideShare a Scribd company logo
Breaking Vaults
Stealing LastPass protected
secrets
Martin Vigo
@martin_vigo
martinvigo.com
Who am I
• Product Security Engineer
• Spaniard / Galician
• Diver
• Gin tonic consumer
• @martin_vigo / martinvigo.com
Most beautiful beach in the world
Amazing seafood
Charlie Sheen’s grandfather was Galician
Wikipedia
“LastPass is a password management service
which seeks to resolve the password fatigue
problem by centralizing user password
management in the cloud”
Password Managers
Why targeting Password
Managers?
• All you want to hack is in one
place
• Social Networks
• Banks
• Email accounts
• Corporate credentials
Why LastPass?
• Enterprise edition
• Large companies use it
• “More than 10,000 corporate customers
ranging in size all the way up to the
Fortune 500”
• Not only credentials
• Credit Cards, Personal documentation,
Private notes, etc.
• Arguably the most popular password
manager
State of the art
• Vulnerabilities
• DNS poisoning
• XSS form injection
All focus on leaking specific secrets
Target: Master Password
All your secrets are belong to us
Architecture
Focus
Browser Plugin
• Javascript
• Sandboxed (SOP)
• Injects code into DOM
• Access to filesystem
Security claims
• LastPass has no access to your data
• Local encryption
• Secure storage
Reversing
Meaning making sense of 3MB of obfuscated JS
siesta.py
• Beautifies every JS file
• Injects a payload to every function
• console.log([file] [function] [params])
• Credits to Alberto Garcia (@algillera)
• Identified all accessed files
• Minimized JS
• Storage on Sqlite DBs
• Browser specific implementation
• Business logic
• File location
• Storage
• AES own implementation
• RSA is based on jsbn library
Logic and storage
Local encryption
• 256-bit AES
• CBC and ECB
• Their own implementation
• PBKDF2
• 500 / 5000 rounds (default)
• Unauthenticated query
Encryption key
PBKDF2(SHA-256, Username, Master Password, Iterations, 32)
Salt Password key length
LastPass has no access to
your data
PBKDF2(SHA-256, Master Password, k, 1, 32)
E/D(k, vault)
Encrypted Vault
Encrypted Vault
PBKDF2(SHA-256, Per user salt, k’, 100000, 32)
What does LastPass see?
The encrypted vault
A 1-round PBKDF2-SHA256 of
the encryption key
Stealing the Master Password
Remember password
• Stores the password locally
• Sqlite DB or prefs.js
• ECB or CBC
• u7W1PsEYsWrtAS1Ca7lOOH==
• !waXcJg8b7wI8XYZnV2l45A==|4d0Hiq+spx50pso2tEMtkQ==
Storage
Chrome Firefox Safari Opera
Windows
#{user_profile['LocalApp
Data']}/Google/Chrome/
User Data/Default/
databases/chrome-
extension_hdokiejnpimak
edhajhdlcegeplioahd_0
#{user_profile[
'AppData']}/
Mozilla/
Firefox/Profiles
#{user_profile['LocalAppData
']}/Apple Computer/Safari/
Databases/safari-
extension_com.lastpass.lpsaf
ariextension-n24rep3bmn_0
#{user_profile['AppData']}/
Opera Software/Opera
Stable/databases/chrome-
extension_hnjalnkldgigidg
gphhmacmimbdlafdo_0
Mac
#{user_profile['LocalApp
Data']}/Google/Chrome/
Default/databases/
chrome-
extension_hdokiejnpimak
edhajhdlcegeplioahd_0
#{user_profile['
LocalAppData']
}/Firefox/
Profiles
#{user_profile['AppData']}/
Safari/Databases/safari-
extension_com.lastpass.lpsaf
ariextension-n24rep3bmn_0
#{user_profile['LocalAppData']
}/com.operasoftware.Opera/
databases/chrome-
extension_hnjalnkldgigidggph
hmacmimbdlafdo_0
Unix
#{user_profile['LocalApp
Data']}/.config/google-
chrome/Default/
databases/chrome-
extension_hdokiejnpimak
edhajhdlcegeplioahd_0
#{user_profile['
LocalAppData']
}/.mozilla/firefox
#{user_profile[‘LocalApp
Data’]}/.opera/widgets/
wuid-*/pstorage
SQLite DB
• LastPassSavedLogins2 contains the encrypted
credentials
• No root needed
prefs.js (Firefox)
• extensions.lastpass.loginusers contains the usernames
• extensions.lastpass.loginpws contains encrypted passwords
• No root needed
Master password encryption
• AES-256
• IV: Random
• KEY: SHA256(username)
• Data: !L5b/dOyu4EMdmWCYkASQaw==|cHTFJDy1DQi8dPY0AJL/1B=
IV
24 chars (ignoring !)
Separator
26th char
Data
Starting 27th char
MP encryption key Vault encryption key
Profit!
• We located the files
• We know the encryption system
• We have the IV
• We have the key
• We have the data
What about 2 factor auth?
Bypassing 2-factor Auth
2-factor auth
• Supports multiple platforms
• Google Auth, Yubikey, Toopher, etc.
UUID is the “trust token”
What’s going on?
• How is the request forged?
• How is the token generated?
• How is it stored?
• Where is it stored?
How is the request forged?
The token is injected into the DOM
How is the token generated?
• At plugin installation 32 chars
length
• 0-9 A-Z a-z !@#$%^&*()_
length lowercase?
uppercase? digits?
special
chars?
min digits
ambiguous
chars?
make
pronounceable?
How/Where is it stored?
• In plaintext
• Firefox
• In the file “lp.suid”
• Chrome/Safari/Opera
• Local-storage SQLite DB
Design Problems?
• Browsers don’t encrypt local storage
• LocalStorage DB and lp.suid are
accessible and unencrypted
• The token is stored in plaintext
• Token is injected in DOM
• XSS means game over
More problems
• Same token for all browser users
• Fixed token till plugin is reinstalled
• Untrusting the browser has no real effect
• Same token when changing QR Code
• Token fixation
• Attacker can set a token on the client
• Proactive token stealing
• Steal token today, use it tomorrow
Profit!
• We have the file
• We know the encryption
• We have the data
• We have the IV
• We have the key
• We have the 2-factor token
What about if:
“Remember password” was not clicked
There was no way to obtain 2-factor auth token
Abusing Account recovery
Wait… What?
How is account recovery possible if LastPass
does not know my password?
Recovering the account
Provide your email
Recovering the account
Get a unique link
Recovering the account
Press the button
Boom!
• Full, unrestricted access to the vault
• Attacker can set a new password
• But does not have to!
• Bypasses 2 factor-auth
Recover account flow
Email
GET /s/?s=8aa37bb1bb3FAKE03ad4127
302 Location: /recover.php?
&time=1412381291&timehash=340908c353c099c9FAKE6b387002c5a4881ebdf1
&username=test%40test.com&usernamehash=fc7be7e5f6cbec9FAKE2995bd3331c097
POST /otp.php
&changepw=ccb2501724FAKE2b575a214e1052
d0fa27b0726b6HASHdb2e1da3952e
Recover button
Can I directly generate the
recover url?
• time: timestamp when the recovery was
initiated (the link “expires” in 2 hours)
• timehash: salted hash of the timestamp
• username: the email address
• usernamehash: salted hash of the email
302 Location: /recover.php?
&time=1412381291&timehash=340908c353c099c9FAKE6b387002c5a4881ebdf1
&username=test%40test.com&usernamehash=fc7be7e5f6cbec9FAKE2995bd3331c097
Challenges
• I need to generate a valid timestamp
• I need the be able to generate the hashes
• I need the salt
Let’s try…
• Request my own unique url and reuse the hashes in
the victims url
• BINGO!
• Same salt is used for all users
• Link does not truly expire, only the timestamp is
validated against the hash
• There is no need to request account recovery. You
only need a valid url
The salt is the secret
• Still, we need to change the username, and hash it.
• We are only missing the server salt to be able to
generate valid recover urls
• Salts are not designed to be a secret, only random
and unique.
• Oh wait…
“LastPass account email addresses, password reminders,
server per user salts, and authentication hashes were
compromised”
Can I forge the post
request?
• changepw: a derived “disabled OTP”
POST /otp.php
&changepw=ccb25017c4FAKE2b575a21441055d0fa27b0726b6HASHdb2e1da395e
OTPs in LastPass
• 2 types of OTPs
• “True” OTPs for authentication
• “Disabled” OTP
• Let’s call it dOTP
Disabled OTP
• Used to recover the vault
• Which ultimately means for authentication
• It’s set by default
• It’s not the encryption key
How/Where is it stored?
• Unprotected
• Firefox
• In the file {SHA256(username)}_ff.sotp (binary format)
• Needs the extra step: bin2hex
• Chrome/Safari/Opera
• SQLite DB
How is the request forged?
The dOTP is injected into the DOM
From dOTP to vault
Local-storage
getdOTP(username)
dOTP
token=SHA256(SHA256(username+dOTP)+dOTP)
/otp.php(username, token)
Set-Cookie: PHPSESSID
pwdeckey
GET /accts3.php
encrypted vault
What is”pwdeckey”?
• It’s not the key to decrypt any password
• It’s the seed to derive the key to decrypt the “vault
key”
• The vault key decrypts all the password, notes, etc.
in the vault
How/Where is the vault key
stored?
• Encrypted
• Firefox
• In the file {SHA256(username)}_lpall.slps
• Chrome/Safari/Opera
• SQLite DB
AES-ECB(SHA256(pwdeckey), encryptedVaultKey )
Vault key decryption
Profit!
• We located the token
• We know how to hash it
• We get the vault key
decryption key
• We get the vault
• We decrypt the vault key
• We decrypt the vault
Automating all the stuff
Metasploit module
• Steals and decrypts the master
password
• Steals the 2-factor auth token
• Steals the encryption key
• Decrypts the entire vault
• Supports:
• Win, Mac and Unix
• Chrome, Firefox, Safari and Opera
• Meterpreter and shell
• Multiuser
Demo
What about if there is:
No disabled OTP
No access to the machine
No Exploit
No nothing!
Google dorks
“extensions.lastpass.loginpws”
Stop sharing your LastPass
credentials with the entire world!!!!
Hardening LastPass
Hardening LastPass
• Use the binary version of the plugin
• Do not store your master password
• Disable “Account recovery”
• Do not use “Password reminder”
• Activate 2-factor auth
• Prompt for master password to make passwords visible
• Add country restriction
• Update/Randomize PBKDF2 iterations
• Disallow TOR logins
Thank you!
Questions?
@martin_vigo
martinvigo.com
martinvigo@gmail.com

More Related Content

What's hot

BlueHat v18 || The matrix has you - protecting linux using deception
BlueHat v18 || The matrix has you - protecting linux using deceptionBlueHat v18 || The matrix has you - protecting linux using deception
BlueHat v18 || The matrix has you - protecting linux using deception
BlueHat Security Conference
 
Defcon 22-david-wyde-client-side-http-cookie-security
Defcon 22-david-wyde-client-side-http-cookie-securityDefcon 22-david-wyde-client-side-http-cookie-security
Defcon 22-david-wyde-client-side-http-cookie-security
Priyanka Aash
 
44CON 2014 - Breaking AV Software
44CON 2014 - Breaking AV Software44CON 2014 - Breaking AV Software
44CON 2014 - Breaking AV Software
44CON
 
Joxean Koret - Database Security Paradise [Rooted CON 2011]
Joxean Koret - Database Security Paradise [Rooted CON 2011]Joxean Koret - Database Security Paradise [Rooted CON 2011]
Joxean Koret - Database Security Paradise [Rooted CON 2011]
RootedCON
 
1000 to 0
1000 to 01000 to 0
1000 to 0
Sunny Neo
 
Threat stack aws
Threat stack awsThreat stack aws
Threat stack aws
Jen Andre
 
Indicators of compromise: From malware analysis to eradication
Indicators of compromise: From malware analysis to eradicationIndicators of compromise: From malware analysis to eradication
Indicators of compromise: From malware analysis to eradication
Michael Boman
 
How to drive a malware analyst crazy
How to drive a malware analyst crazyHow to drive a malware analyst crazy
How to drive a malware analyst crazy
Michael Boman
 
Defcon 22-paul-mcmillan-attacking-the-iot-using-timing-attac
Defcon 22-paul-mcmillan-attacking-the-iot-using-timing-attacDefcon 22-paul-mcmillan-attacking-the-iot-using-timing-attac
Defcon 22-paul-mcmillan-attacking-the-iot-using-timing-attac
Priyanka Aash
 
"A rootkits writer’s guide to defense" - Michal Purzynski
"A rootkits writer’s guide to defense" - Michal Purzynski"A rootkits writer’s guide to defense" - Michal Purzynski
"A rootkits writer’s guide to defense" - Michal Purzynski
PROIDEA
 
"Into the Fog The Return of ICEFOG APT" - Chi en (Ashley) Shen
"Into the Fog The Return of ICEFOG APT" - Chi en (Ashley) Shen"Into the Fog The Return of ICEFOG APT" - Chi en (Ashley) Shen
"Into the Fog The Return of ICEFOG APT" - Chi en (Ashley) Shen
PROIDEA
 
Attacker Ghost Stories (CarolinaCon / Area41 / RVASec)
Attacker Ghost Stories (CarolinaCon / Area41 / RVASec)Attacker Ghost Stories (CarolinaCon / Area41 / RVASec)
Attacker Ghost Stories (CarolinaCon / Area41 / RVASec)
Rob Fuller
 
I See You
I See YouI See You
I See You
Andrew Beard
 
Hacker Halted 2014 - Post-Exploitation After Having Remote Access
Hacker Halted 2014 - Post-Exploitation After Having Remote AccessHacker Halted 2014 - Post-Exploitation After Having Remote Access
Hacker Halted 2014 - Post-Exploitation After Having Remote Access
EC-Council
 
How to discover 1352 Wordpress plugin 0days in one hour (not really)
How to discover 1352 Wordpress plugin 0days in one hour (not really)How to discover 1352 Wordpress plugin 0days in one hour (not really)
How to discover 1352 Wordpress plugin 0days in one hour (not really)
Larry Cashdollar
 
Writing malware while the blue team is staring at you
Writing malware while the blue team is staring at youWriting malware while the blue team is staring at you
Writing malware while the blue team is staring at you
Rob Fuller
 
Defcon 22-zoltan-balazs-bypass-firewalls-application-whiteli
Defcon 22-zoltan-balazs-bypass-firewalls-application-whiteliDefcon 22-zoltan-balazs-bypass-firewalls-application-whiteli
Defcon 22-zoltan-balazs-bypass-firewalls-application-whiteli
Priyanka Aash
 
Awesome_fuzzing_for _pentester_red-pill_2017
Awesome_fuzzing_for _pentester_red-pill_2017Awesome_fuzzing_for _pentester_red-pill_2017
Awesome_fuzzing_for _pentester_red-pill_2017
Manich Koomsusi
 
Red vs Blue- Modern Atice Directory Attacks, Detection & Protection by Sean M...
Red vs Blue- Modern Atice Directory Attacks, Detection & Protection by Sean M...Red vs Blue- Modern Atice Directory Attacks, Detection & Protection by Sean M...
Red vs Blue- Modern Atice Directory Attacks, Detection & Protection by Sean M...
Shakacon
 
Power on, Powershell
Power on, PowershellPower on, Powershell
Power on, Powershell
Roo7break
 

What's hot (20)

BlueHat v18 || The matrix has you - protecting linux using deception
BlueHat v18 || The matrix has you - protecting linux using deceptionBlueHat v18 || The matrix has you - protecting linux using deception
BlueHat v18 || The matrix has you - protecting linux using deception
 
Defcon 22-david-wyde-client-side-http-cookie-security
Defcon 22-david-wyde-client-side-http-cookie-securityDefcon 22-david-wyde-client-side-http-cookie-security
Defcon 22-david-wyde-client-side-http-cookie-security
 
44CON 2014 - Breaking AV Software
44CON 2014 - Breaking AV Software44CON 2014 - Breaking AV Software
44CON 2014 - Breaking AV Software
 
Joxean Koret - Database Security Paradise [Rooted CON 2011]
Joxean Koret - Database Security Paradise [Rooted CON 2011]Joxean Koret - Database Security Paradise [Rooted CON 2011]
Joxean Koret - Database Security Paradise [Rooted CON 2011]
 
1000 to 0
1000 to 01000 to 0
1000 to 0
 
Threat stack aws
Threat stack awsThreat stack aws
Threat stack aws
 
Indicators of compromise: From malware analysis to eradication
Indicators of compromise: From malware analysis to eradicationIndicators of compromise: From malware analysis to eradication
Indicators of compromise: From malware analysis to eradication
 
How to drive a malware analyst crazy
How to drive a malware analyst crazyHow to drive a malware analyst crazy
How to drive a malware analyst crazy
 
Defcon 22-paul-mcmillan-attacking-the-iot-using-timing-attac
Defcon 22-paul-mcmillan-attacking-the-iot-using-timing-attacDefcon 22-paul-mcmillan-attacking-the-iot-using-timing-attac
Defcon 22-paul-mcmillan-attacking-the-iot-using-timing-attac
 
"A rootkits writer’s guide to defense" - Michal Purzynski
"A rootkits writer’s guide to defense" - Michal Purzynski"A rootkits writer’s guide to defense" - Michal Purzynski
"A rootkits writer’s guide to defense" - Michal Purzynski
 
"Into the Fog The Return of ICEFOG APT" - Chi en (Ashley) Shen
"Into the Fog The Return of ICEFOG APT" - Chi en (Ashley) Shen"Into the Fog The Return of ICEFOG APT" - Chi en (Ashley) Shen
"Into the Fog The Return of ICEFOG APT" - Chi en (Ashley) Shen
 
Attacker Ghost Stories (CarolinaCon / Area41 / RVASec)
Attacker Ghost Stories (CarolinaCon / Area41 / RVASec)Attacker Ghost Stories (CarolinaCon / Area41 / RVASec)
Attacker Ghost Stories (CarolinaCon / Area41 / RVASec)
 
I See You
I See YouI See You
I See You
 
Hacker Halted 2014 - Post-Exploitation After Having Remote Access
Hacker Halted 2014 - Post-Exploitation After Having Remote AccessHacker Halted 2014 - Post-Exploitation After Having Remote Access
Hacker Halted 2014 - Post-Exploitation After Having Remote Access
 
How to discover 1352 Wordpress plugin 0days in one hour (not really)
How to discover 1352 Wordpress plugin 0days in one hour (not really)How to discover 1352 Wordpress plugin 0days in one hour (not really)
How to discover 1352 Wordpress plugin 0days in one hour (not really)
 
Writing malware while the blue team is staring at you
Writing malware while the blue team is staring at youWriting malware while the blue team is staring at you
Writing malware while the blue team is staring at you
 
Defcon 22-zoltan-balazs-bypass-firewalls-application-whiteli
Defcon 22-zoltan-balazs-bypass-firewalls-application-whiteliDefcon 22-zoltan-balazs-bypass-firewalls-application-whiteli
Defcon 22-zoltan-balazs-bypass-firewalls-application-whiteli
 
Awesome_fuzzing_for _pentester_red-pill_2017
Awesome_fuzzing_for _pentester_red-pill_2017Awesome_fuzzing_for _pentester_red-pill_2017
Awesome_fuzzing_for _pentester_red-pill_2017
 
Red vs Blue- Modern Atice Directory Attacks, Detection & Protection by Sean M...
Red vs Blue- Modern Atice Directory Attacks, Detection & Protection by Sean M...Red vs Blue- Modern Atice Directory Attacks, Detection & Protection by Sean M...
Red vs Blue- Modern Atice Directory Attacks, Detection & Protection by Sean M...
 
Power on, Powershell
Power on, PowershellPower on, Powershell
Power on, Powershell
 

Viewers also liked

Suns Out Guns Out: Hacking without a Vehicle by Charlie Miller & Chris Valasek
Suns Out Guns Out: Hacking without a Vehicle by Charlie Miller & Chris ValasekSuns Out Guns Out: Hacking without a Vehicle by Charlie Miller & Chris Valasek
Suns Out Guns Out: Hacking without a Vehicle by Charlie Miller & Chris Valasek
Shakacon
 
Exploiting Elevator Security Weaknesses by Deviant Ollam
Exploiting Elevator Security Weaknesses by Deviant OllamExploiting Elevator Security Weaknesses by Deviant Ollam
Exploiting Elevator Security Weaknesses by Deviant Ollam
Shakacon
 
Social Engineering the Windows Kernel by James Forshaw
Social Engineering the Windows Kernel by James ForshawSocial Engineering the Windows Kernel by James Forshaw
Social Engineering the Windows Kernel by James Forshaw
Shakacon
 
Automotive Exploitation Techniques by Craig Smith
Automotive Exploitation Techniques by Craig SmithAutomotive Exploitation Techniques by Craig Smith
Automotive Exploitation Techniques by Craig Smith
Shakacon
 
I am the 100% [*] by Chris Evans & Natalie Silvanovich
I am the 100% [*] by Chris Evans & Natalie SilvanovichI am the 100% [*] by Chris Evans & Natalie Silvanovich
I am the 100% [*] by Chris Evans & Natalie Silvanovich
Shakacon
 
There's Waldo by Patrick Wardle & Colby Moore
There's Waldo by Patrick Wardle & Colby MooreThere's Waldo by Patrick Wardle & Colby Moore
There's Waldo by Patrick Wardle & Colby Moore
Shakacon
 
Lock picking 2600
Lock picking 2600Lock picking 2600
Lock picking 2600
antitree
 
Elevator controller for multi story building security
Elevator controller for multi story building securityElevator controller for multi story building security
Elevator controller for multi story building security
Mayank Jain
 
New Indian Elevators, Maharashtra, Elevator Components
New Indian Elevators, Maharashtra, Elevator ComponentsNew Indian Elevators, Maharashtra, Elevator Components
New Indian Elevators, Maharashtra, Elevator Components
IndiaMART InterMESH Limited
 
The Search for the Perfect Door - Deviant Ollam
The Search for the Perfect Door - Deviant OllamThe Search for the Perfect Door - Deviant Ollam
The Search for the Perfect Door - Deviant Ollam
Shakacon
 
An Introduction to Machine Learning
An Introduction to Machine LearningAn Introduction to Machine Learning
An Introduction to Machine Learning
Angelo Simone Scotto
 
Diagram of an elevator
Diagram of an elevatorDiagram of an elevator
Diagram of an elevator
beccapr69
 
Omkar Electronics, Thane, Elevator Components
Omkar Electronics, Thane, Elevator ComponentsOmkar Electronics, Thane, Elevator Components
Omkar Electronics, Thane, Elevator Components
IndiaMART InterMESH Limited
 
Elevator
ElevatorElevator
Elevator
ElsMerveillie
 
Developing an Elevator Pitch
Developing an Elevator PitchDeveloping an Elevator Pitch
Developing an Elevator Pitch
Shai Goldman
 
Thysse krupp introducing tke_nov_2014_16-9_final
Thysse krupp introducing tke_nov_2014_16-9_finalThysse krupp introducing tke_nov_2014_16-9_final
Thysse krupp introducing tke_nov_2014_16-9_final
David Heaney
 
Elevator Controller
Elevator Controller Elevator Controller
Elevator Controller
Mayank Jain
 
vertical-transportation (mechanical)
vertical-transportation (mechanical)vertical-transportation (mechanical)
vertical-transportation (mechanical)
AnsherinaDelMundo
 
Elevator1
Elevator1Elevator1
Elevator1
cognosvlsi
 
Bucket Elevator Basics: Definitions & Details
Bucket Elevator Basics: Definitions & DetailsBucket Elevator Basics: Definitions & Details
Bucket Elevator Basics: Definitions & Details
Webster Industries Inc.
 

Viewers also liked (20)

Suns Out Guns Out: Hacking without a Vehicle by Charlie Miller & Chris Valasek
Suns Out Guns Out: Hacking without a Vehicle by Charlie Miller & Chris ValasekSuns Out Guns Out: Hacking without a Vehicle by Charlie Miller & Chris Valasek
Suns Out Guns Out: Hacking without a Vehicle by Charlie Miller & Chris Valasek
 
Exploiting Elevator Security Weaknesses by Deviant Ollam
Exploiting Elevator Security Weaknesses by Deviant OllamExploiting Elevator Security Weaknesses by Deviant Ollam
Exploiting Elevator Security Weaknesses by Deviant Ollam
 
Social Engineering the Windows Kernel by James Forshaw
Social Engineering the Windows Kernel by James ForshawSocial Engineering the Windows Kernel by James Forshaw
Social Engineering the Windows Kernel by James Forshaw
 
Automotive Exploitation Techniques by Craig Smith
Automotive Exploitation Techniques by Craig SmithAutomotive Exploitation Techniques by Craig Smith
Automotive Exploitation Techniques by Craig Smith
 
I am the 100% [*] by Chris Evans & Natalie Silvanovich
I am the 100% [*] by Chris Evans & Natalie SilvanovichI am the 100% [*] by Chris Evans & Natalie Silvanovich
I am the 100% [*] by Chris Evans & Natalie Silvanovich
 
There's Waldo by Patrick Wardle & Colby Moore
There's Waldo by Patrick Wardle & Colby MooreThere's Waldo by Patrick Wardle & Colby Moore
There's Waldo by Patrick Wardle & Colby Moore
 
Lock picking 2600
Lock picking 2600Lock picking 2600
Lock picking 2600
 
Elevator controller for multi story building security
Elevator controller for multi story building securityElevator controller for multi story building security
Elevator controller for multi story building security
 
New Indian Elevators, Maharashtra, Elevator Components
New Indian Elevators, Maharashtra, Elevator ComponentsNew Indian Elevators, Maharashtra, Elevator Components
New Indian Elevators, Maharashtra, Elevator Components
 
The Search for the Perfect Door - Deviant Ollam
The Search for the Perfect Door - Deviant OllamThe Search for the Perfect Door - Deviant Ollam
The Search for the Perfect Door - Deviant Ollam
 
An Introduction to Machine Learning
An Introduction to Machine LearningAn Introduction to Machine Learning
An Introduction to Machine Learning
 
Diagram of an elevator
Diagram of an elevatorDiagram of an elevator
Diagram of an elevator
 
Omkar Electronics, Thane, Elevator Components
Omkar Electronics, Thane, Elevator ComponentsOmkar Electronics, Thane, Elevator Components
Omkar Electronics, Thane, Elevator Components
 
Elevator
ElevatorElevator
Elevator
 
Developing an Elevator Pitch
Developing an Elevator PitchDeveloping an Elevator Pitch
Developing an Elevator Pitch
 
Thysse krupp introducing tke_nov_2014_16-9_final
Thysse krupp introducing tke_nov_2014_16-9_finalThysse krupp introducing tke_nov_2014_16-9_final
Thysse krupp introducing tke_nov_2014_16-9_final
 
Elevator Controller
Elevator Controller Elevator Controller
Elevator Controller
 
vertical-transportation (mechanical)
vertical-transportation (mechanical)vertical-transportation (mechanical)
vertical-transportation (mechanical)
 
Elevator1
Elevator1Elevator1
Elevator1
 
Bucket Elevator Basics: Definitions & Details
Bucket Elevator Basics: Definitions & DetailsBucket Elevator Basics: Definitions & Details
Bucket Elevator Basics: Definitions & Details
 

Similar to Breaking Vaults - Stealing Lastpass Protected Secrets by Martin Vigo

Breaking vaults: Stealing Lastpass protected secrets
Breaking vaults: Stealing Lastpass protected secretsBreaking vaults: Stealing Lastpass protected secrets
Breaking vaults: Stealing Lastpass protected secrets
Martin Vigo
 
Even the LastPass Will be Stolen Deal with It!
Even the LastPass Will be Stolen Deal with It!Even the LastPass Will be Stolen Deal with It!
Even the LastPass Will be Stolen Deal with It!
Martin Vigo
 
Nodejsvault austin2019
Nodejsvault austin2019Nodejsvault austin2019
Nodejsvault austin2019
Taswar Bhatti
 
Bsidesnova- Pentesting Methodology - Making bits less complicated
Bsidesnova- Pentesting Methodology - Making bits less complicatedBsidesnova- Pentesting Methodology - Making bits less complicated
Bsidesnova- Pentesting Methodology - Making bits less complicated
Octavio Paguaga
 
Killing Passwords with JavaScript
Killing Passwords with JavaScriptKilling Passwords with JavaScript
Killing Passwords with JavaScript
Francois Marier
 
[OWASP Poland Day] Saving private token
[OWASP Poland Day] Saving private token[OWASP Poland Day] Saving private token
[OWASP Poland Day] Saving private token
OWASP
 
Securing the Web without site-specific passwords
Securing the Web without site-specific passwordsSecuring the Web without site-specific passwords
Securing the Web without site-specific passwords
Francois Marier
 
Django cryptography
Django cryptographyDjango cryptography
Django cryptography
Erik LaBianca
 
WordPress Security 101 - Meetup Nairobi March 2020
WordPress Security 101 - Meetup Nairobi March 2020 WordPress Security 101 - Meetup Nairobi March 2020
WordPress Security 101 - Meetup Nairobi March 2020
stk_jj
 
How to discover 1352 Wordpress plugin 0days in one hour (not really)
How to discover 1352 Wordpress plugin 0days in one hour (not really)How to discover 1352 Wordpress plugin 0days in one hour (not really)
How to discover 1352 Wordpress plugin 0days in one hour (not really)
Larry Cashdollar
 
Bitcoin Keys, Addresses & Wallets
Bitcoin Keys, Addresses & WalletsBitcoin Keys, Addresses & Wallets
Bitcoin Keys, Addresses & Wallets
Christopher Allen
 
Maximize your Cache for No Cash
Maximize your Cache for No CashMaximize your Cache for No Cash
Maximize your Cache for No Cash
Yorick Phoenix
 
Managing your secrets in a cloud environment
Managing your secrets in a cloud environmentManaging your secrets in a cloud environment
Managing your secrets in a cloud environment
Taswar Bhatti
 
Shiny, Let’s Be Bad Guys: Exploiting and Mitigating the Top 10 Web App Vulner...
Shiny, Let’s Be Bad Guys: Exploiting and Mitigating the Top 10 Web App Vulner...Shiny, Let’s Be Bad Guys: Exploiting and Mitigating the Top 10 Web App Vulner...
Shiny, Let’s Be Bad Guys: Exploiting and Mitigating the Top 10 Web App Vulner...
Michael Pirnat
 
Securing your web apps now
Securing your web apps nowSecuring your web apps now
Securing your web apps now
Stephan Steynfaardt
 
Hacking sites for fun and profit
Hacking sites for fun and profitHacking sites for fun and profit
Hacking sites for fun and profit
David Stockton
 
Cloud Device Insecurity
Cloud Device InsecurityCloud Device Insecurity
Cloud Device Insecurity
Jeremy Brown
 
MS LAPS protection: portal for secure access to local admin passwords
MS LAPS protection: portal for secure access to local admin passwordsMS LAPS protection: portal for secure access to local admin passwords
MS LAPS protection: portal for secure access to local admin passwords
Nikolay Klendar
 
Defcon 25 Packet Hacking Village - Finding Your Way to Domain Access
Defcon 25 Packet Hacking Village - Finding Your Way to Domain AccessDefcon 25 Packet Hacking Village - Finding Your Way to Domain Access
Defcon 25 Packet Hacking Village - Finding Your Way to Domain Access
eightbit
 
Hacking sites for fun and profit
Hacking sites for fun and profitHacking sites for fun and profit
Hacking sites for fun and profit
David Stockton
 

Similar to Breaking Vaults - Stealing Lastpass Protected Secrets by Martin Vigo (20)

Breaking vaults: Stealing Lastpass protected secrets
Breaking vaults: Stealing Lastpass protected secretsBreaking vaults: Stealing Lastpass protected secrets
Breaking vaults: Stealing Lastpass protected secrets
 
Even the LastPass Will be Stolen Deal with It!
Even the LastPass Will be Stolen Deal with It!Even the LastPass Will be Stolen Deal with It!
Even the LastPass Will be Stolen Deal with It!
 
Nodejsvault austin2019
Nodejsvault austin2019Nodejsvault austin2019
Nodejsvault austin2019
 
Bsidesnova- Pentesting Methodology - Making bits less complicated
Bsidesnova- Pentesting Methodology - Making bits less complicatedBsidesnova- Pentesting Methodology - Making bits less complicated
Bsidesnova- Pentesting Methodology - Making bits less complicated
 
Killing Passwords with JavaScript
Killing Passwords with JavaScriptKilling Passwords with JavaScript
Killing Passwords with JavaScript
 
[OWASP Poland Day] Saving private token
[OWASP Poland Day] Saving private token[OWASP Poland Day] Saving private token
[OWASP Poland Day] Saving private token
 
Securing the Web without site-specific passwords
Securing the Web without site-specific passwordsSecuring the Web without site-specific passwords
Securing the Web without site-specific passwords
 
Django cryptography
Django cryptographyDjango cryptography
Django cryptography
 
WordPress Security 101 - Meetup Nairobi March 2020
WordPress Security 101 - Meetup Nairobi March 2020 WordPress Security 101 - Meetup Nairobi March 2020
WordPress Security 101 - Meetup Nairobi March 2020
 
How to discover 1352 Wordpress plugin 0days in one hour (not really)
How to discover 1352 Wordpress plugin 0days in one hour (not really)How to discover 1352 Wordpress plugin 0days in one hour (not really)
How to discover 1352 Wordpress plugin 0days in one hour (not really)
 
Bitcoin Keys, Addresses & Wallets
Bitcoin Keys, Addresses & WalletsBitcoin Keys, Addresses & Wallets
Bitcoin Keys, Addresses & Wallets
 
Maximize your Cache for No Cash
Maximize your Cache for No CashMaximize your Cache for No Cash
Maximize your Cache for No Cash
 
Managing your secrets in a cloud environment
Managing your secrets in a cloud environmentManaging your secrets in a cloud environment
Managing your secrets in a cloud environment
 
Shiny, Let’s Be Bad Guys: Exploiting and Mitigating the Top 10 Web App Vulner...
Shiny, Let’s Be Bad Guys: Exploiting and Mitigating the Top 10 Web App Vulner...Shiny, Let’s Be Bad Guys: Exploiting and Mitigating the Top 10 Web App Vulner...
Shiny, Let’s Be Bad Guys: Exploiting and Mitigating the Top 10 Web App Vulner...
 
Securing your web apps now
Securing your web apps nowSecuring your web apps now
Securing your web apps now
 
Hacking sites for fun and profit
Hacking sites for fun and profitHacking sites for fun and profit
Hacking sites for fun and profit
 
Cloud Device Insecurity
Cloud Device InsecurityCloud Device Insecurity
Cloud Device Insecurity
 
MS LAPS protection: portal for secure access to local admin passwords
MS LAPS protection: portal for secure access to local admin passwordsMS LAPS protection: portal for secure access to local admin passwords
MS LAPS protection: portal for secure access to local admin passwords
 
Defcon 25 Packet Hacking Village - Finding Your Way to Domain Access
Defcon 25 Packet Hacking Village - Finding Your Way to Domain AccessDefcon 25 Packet Hacking Village - Finding Your Way to Domain Access
Defcon 25 Packet Hacking Village - Finding Your Way to Domain Access
 
Hacking sites for fun and profit
Hacking sites for fun and profitHacking sites for fun and profit
Hacking sites for fun and profit
 

More from Shakacon

Web (dis)assembly
Web (dis)assemblyWeb (dis)assembly
Web (dis)assembly
Shakacon
 
Macdoored
MacdooredMacdoored
Macdoored
Shakacon
 
I can be apple and so can you
I can be apple and so can youI can be apple and so can you
I can be apple and so can you
Shakacon
 
Cloud forensics putting the bits back together
Cloud forensics putting the bits back togetherCloud forensics putting the bits back together
Cloud forensics putting the bits back together
Shakacon
 
Pwned in Translation - from Subtitles to RCE
Pwned in Translation - from Subtitles to RCEPwned in Translation - from Subtitles to RCE
Pwned in Translation - from Subtitles to RCE
Shakacon
 
Oversight: Exposing spies on macOS
Oversight: Exposing spies on macOS Oversight: Exposing spies on macOS
Oversight: Exposing spies on macOS
Shakacon
 
Modern Reconnaissance Phase on APT - protection layer
Modern Reconnaissance Phase on APT - protection layerModern Reconnaissance Phase on APT - protection layer
Modern Reconnaissance Phase on APT - protection layer
Shakacon
 
Shamoon
ShamoonShamoon
Shamoon
Shakacon
 
A Decompiler for Blackhain-Based Smart Contracts Bytecode
A Decompiler for Blackhain-Based Smart Contracts BytecodeA Decompiler for Blackhain-Based Smart Contracts Bytecode
A Decompiler for Blackhain-Based Smart Contracts Bytecode
Shakacon
 
Honey, I Stole Your C2 Server: A Dive into Attacker Infrastructure
Honey, I Stole Your C2 Server:  A Dive into Attacker InfrastructureHoney, I Stole Your C2 Server:  A Dive into Attacker Infrastructure
Honey, I Stole Your C2 Server: A Dive into Attacker Infrastructure
Shakacon
 
Dock ir incident response in a containerized, immutable, continually deploy...
Dock ir   incident response in a containerized, immutable, continually deploy...Dock ir   incident response in a containerized, immutable, continually deploy...
Dock ir incident response in a containerized, immutable, continually deploy...
Shakacon
 
Reviewing the Security of ASoC Drivers in Android Kernel
Reviewing the Security of ASoC Drivers in Android KernelReviewing the Security of ASoC Drivers in Android Kernel
Reviewing the Security of ASoC Drivers in Android Kernel
Shakacon
 
Silent Protest: A Wearable Protest Network
Silent Protest:  A Wearable Protest NetworkSilent Protest:  A Wearable Protest Network
Silent Protest: A Wearable Protest Network
Shakacon
 
WiFi-Based IMSI Catcher
WiFi-Based IMSI CatcherWiFi-Based IMSI Catcher
WiFi-Based IMSI Catcher
Shakacon
 
Sad Panda Analysts: Devolving Malware
Sad Panda Analysts:  Devolving MalwareSad Panda Analysts:  Devolving Malware
Sad Panda Analysts: Devolving Malware
Shakacon
 
reductio [ad absurdum]
reductio [ad absurdum]reductio [ad absurdum]
reductio [ad absurdum]
Shakacon
 
XFLTReat: a new dimension in tunnelling
XFLTReat:  a new dimension in tunnellingXFLTReat:  a new dimension in tunnelling
XFLTReat: a new dimension in tunnelling
Shakacon
 
Windows Systems & Code Signing Protection by Paul Rascagneres
Windows Systems & Code Signing Protection by Paul RascagneresWindows Systems & Code Signing Protection by Paul Rascagneres
Windows Systems & Code Signing Protection by Paul Rascagneres
Shakacon
 
When Encryption is Not Enough...Sumanth Naropanth, Chandra Prakash Gopalaiah ...
When Encryption is Not Enough...Sumanth Naropanth, Chandra Prakash Gopalaiah ...When Encryption is Not Enough...Sumanth Naropanth, Chandra Prakash Gopalaiah ...
When Encryption is Not Enough...Sumanth Naropanth, Chandra Prakash Gopalaiah ...
Shakacon
 
Swift Reversing by Ryan Stortz
Swift Reversing by Ryan StortzSwift Reversing by Ryan Stortz
Swift Reversing by Ryan Stortz
Shakacon
 

More from Shakacon (20)

Web (dis)assembly
Web (dis)assemblyWeb (dis)assembly
Web (dis)assembly
 
Macdoored
MacdooredMacdoored
Macdoored
 
I can be apple and so can you
I can be apple and so can youI can be apple and so can you
I can be apple and so can you
 
Cloud forensics putting the bits back together
Cloud forensics putting the bits back togetherCloud forensics putting the bits back together
Cloud forensics putting the bits back together
 
Pwned in Translation - from Subtitles to RCE
Pwned in Translation - from Subtitles to RCEPwned in Translation - from Subtitles to RCE
Pwned in Translation - from Subtitles to RCE
 
Oversight: Exposing spies on macOS
Oversight: Exposing spies on macOS Oversight: Exposing spies on macOS
Oversight: Exposing spies on macOS
 
Modern Reconnaissance Phase on APT - protection layer
Modern Reconnaissance Phase on APT - protection layerModern Reconnaissance Phase on APT - protection layer
Modern Reconnaissance Phase on APT - protection layer
 
Shamoon
ShamoonShamoon
Shamoon
 
A Decompiler for Blackhain-Based Smart Contracts Bytecode
A Decompiler for Blackhain-Based Smart Contracts BytecodeA Decompiler for Blackhain-Based Smart Contracts Bytecode
A Decompiler for Blackhain-Based Smart Contracts Bytecode
 
Honey, I Stole Your C2 Server: A Dive into Attacker Infrastructure
Honey, I Stole Your C2 Server:  A Dive into Attacker InfrastructureHoney, I Stole Your C2 Server:  A Dive into Attacker Infrastructure
Honey, I Stole Your C2 Server: A Dive into Attacker Infrastructure
 
Dock ir incident response in a containerized, immutable, continually deploy...
Dock ir   incident response in a containerized, immutable, continually deploy...Dock ir   incident response in a containerized, immutable, continually deploy...
Dock ir incident response in a containerized, immutable, continually deploy...
 
Reviewing the Security of ASoC Drivers in Android Kernel
Reviewing the Security of ASoC Drivers in Android KernelReviewing the Security of ASoC Drivers in Android Kernel
Reviewing the Security of ASoC Drivers in Android Kernel
 
Silent Protest: A Wearable Protest Network
Silent Protest:  A Wearable Protest NetworkSilent Protest:  A Wearable Protest Network
Silent Protest: A Wearable Protest Network
 
WiFi-Based IMSI Catcher
WiFi-Based IMSI CatcherWiFi-Based IMSI Catcher
WiFi-Based IMSI Catcher
 
Sad Panda Analysts: Devolving Malware
Sad Panda Analysts:  Devolving MalwareSad Panda Analysts:  Devolving Malware
Sad Panda Analysts: Devolving Malware
 
reductio [ad absurdum]
reductio [ad absurdum]reductio [ad absurdum]
reductio [ad absurdum]
 
XFLTReat: a new dimension in tunnelling
XFLTReat:  a new dimension in tunnellingXFLTReat:  a new dimension in tunnelling
XFLTReat: a new dimension in tunnelling
 
Windows Systems & Code Signing Protection by Paul Rascagneres
Windows Systems & Code Signing Protection by Paul RascagneresWindows Systems & Code Signing Protection by Paul Rascagneres
Windows Systems & Code Signing Protection by Paul Rascagneres
 
When Encryption is Not Enough...Sumanth Naropanth, Chandra Prakash Gopalaiah ...
When Encryption is Not Enough...Sumanth Naropanth, Chandra Prakash Gopalaiah ...When Encryption is Not Enough...Sumanth Naropanth, Chandra Prakash Gopalaiah ...
When Encryption is Not Enough...Sumanth Naropanth, Chandra Prakash Gopalaiah ...
 
Swift Reversing by Ryan Stortz
Swift Reversing by Ryan StortzSwift Reversing by Ryan Stortz
Swift Reversing by Ryan Stortz
 

Recently uploaded

Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
alexjohnson7307
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
Intelisync
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
GDSC PJATK
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
LucaBarbaro3
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
MichaelKnudsen27
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
fredae14
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
Dinusha Kumarasiri
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Alpen-Adria-Universität
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 

Recently uploaded (20)

Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 

Breaking Vaults - Stealing Lastpass Protected Secrets by Martin Vigo

  • 1. Breaking Vaults Stealing LastPass protected secrets Martin Vigo @martin_vigo martinvigo.com
  • 2. Who am I • Product Security Engineer • Spaniard / Galician • Diver • Gin tonic consumer • @martin_vigo / martinvigo.com Most beautiful beach in the world Amazing seafood Charlie Sheen’s grandfather was Galician
  • 3. Wikipedia “LastPass is a password management service which seeks to resolve the password fatigue problem by centralizing user password management in the cloud”
  • 5. Why targeting Password Managers? • All you want to hack is in one place • Social Networks • Banks • Email accounts • Corporate credentials
  • 6. Why LastPass? • Enterprise edition • Large companies use it • “More than 10,000 corporate customers ranging in size all the way up to the Fortune 500” • Not only credentials • Credit Cards, Personal documentation, Private notes, etc. • Arguably the most popular password manager
  • 7. State of the art • Vulnerabilities • DNS poisoning • XSS form injection All focus on leaking specific secrets
  • 8. Target: Master Password All your secrets are belong to us
  • 10. Focus
  • 11. Browser Plugin • Javascript • Sandboxed (SOP) • Injects code into DOM • Access to filesystem
  • 12. Security claims • LastPass has no access to your data • Local encryption • Secure storage
  • 13. Reversing Meaning making sense of 3MB of obfuscated JS
  • 14. siesta.py • Beautifies every JS file • Injects a payload to every function • console.log([file] [function] [params]) • Credits to Alberto Garcia (@algillera)
  • 15. • Identified all accessed files • Minimized JS • Storage on Sqlite DBs • Browser specific implementation • Business logic • File location • Storage • AES own implementation • RSA is based on jsbn library Logic and storage
  • 16. Local encryption • 256-bit AES • CBC and ECB • Their own implementation • PBKDF2 • 500 / 5000 rounds (default) • Unauthenticated query
  • 17. Encryption key PBKDF2(SHA-256, Username, Master Password, Iterations, 32) Salt Password key length
  • 18. LastPass has no access to your data PBKDF2(SHA-256, Master Password, k, 1, 32) E/D(k, vault) Encrypted Vault Encrypted Vault PBKDF2(SHA-256, Per user salt, k’, 100000, 32)
  • 19. What does LastPass see? The encrypted vault A 1-round PBKDF2-SHA256 of the encryption key
  • 21. Remember password • Stores the password locally • Sqlite DB or prefs.js • ECB or CBC • u7W1PsEYsWrtAS1Ca7lOOH== • !waXcJg8b7wI8XYZnV2l45A==|4d0Hiq+spx50pso2tEMtkQ==
  • 22. Storage Chrome Firefox Safari Opera Windows #{user_profile['LocalApp Data']}/Google/Chrome/ User Data/Default/ databases/chrome- extension_hdokiejnpimak edhajhdlcegeplioahd_0 #{user_profile[ 'AppData']}/ Mozilla/ Firefox/Profiles #{user_profile['LocalAppData ']}/Apple Computer/Safari/ Databases/safari- extension_com.lastpass.lpsaf ariextension-n24rep3bmn_0 #{user_profile['AppData']}/ Opera Software/Opera Stable/databases/chrome- extension_hnjalnkldgigidg gphhmacmimbdlafdo_0 Mac #{user_profile['LocalApp Data']}/Google/Chrome/ Default/databases/ chrome- extension_hdokiejnpimak edhajhdlcegeplioahd_0 #{user_profile[' LocalAppData'] }/Firefox/ Profiles #{user_profile['AppData']}/ Safari/Databases/safari- extension_com.lastpass.lpsaf ariextension-n24rep3bmn_0 #{user_profile['LocalAppData'] }/com.operasoftware.Opera/ databases/chrome- extension_hnjalnkldgigidggph hmacmimbdlafdo_0 Unix #{user_profile['LocalApp Data']}/.config/google- chrome/Default/ databases/chrome- extension_hdokiejnpimak edhajhdlcegeplioahd_0 #{user_profile[' LocalAppData'] }/.mozilla/firefox #{user_profile[‘LocalApp Data’]}/.opera/widgets/ wuid-*/pstorage
  • 23. SQLite DB • LastPassSavedLogins2 contains the encrypted credentials • No root needed
  • 24. prefs.js (Firefox) • extensions.lastpass.loginusers contains the usernames • extensions.lastpass.loginpws contains encrypted passwords • No root needed
  • 25. Master password encryption • AES-256 • IV: Random • KEY: SHA256(username) • Data: !L5b/dOyu4EMdmWCYkASQaw==|cHTFJDy1DQi8dPY0AJL/1B= IV 24 chars (ignoring !) Separator 26th char Data Starting 27th char MP encryption key Vault encryption key
  • 26. Profit! • We located the files • We know the encryption system • We have the IV • We have the key • We have the data
  • 27. What about 2 factor auth?
  • 29. 2-factor auth • Supports multiple platforms • Google Auth, Yubikey, Toopher, etc.
  • 30. UUID is the “trust token”
  • 31.
  • 32. What’s going on? • How is the request forged? • How is the token generated? • How is it stored? • Where is it stored?
  • 33. How is the request forged? The token is injected into the DOM
  • 34. How is the token generated? • At plugin installation 32 chars length • 0-9 A-Z a-z !@#$%^&*()_ length lowercase? uppercase? digits? special chars? min digits ambiguous chars? make pronounceable?
  • 35. How/Where is it stored? • In plaintext • Firefox • In the file “lp.suid” • Chrome/Safari/Opera • Local-storage SQLite DB
  • 36. Design Problems? • Browsers don’t encrypt local storage • LocalStorage DB and lp.suid are accessible and unencrypted • The token is stored in plaintext • Token is injected in DOM • XSS means game over
  • 37. More problems • Same token for all browser users • Fixed token till plugin is reinstalled • Untrusting the browser has no real effect • Same token when changing QR Code • Token fixation • Attacker can set a token on the client • Proactive token stealing • Steal token today, use it tomorrow
  • 38. Profit! • We have the file • We know the encryption • We have the data • We have the IV • We have the key • We have the 2-factor token
  • 39. What about if: “Remember password” was not clicked There was no way to obtain 2-factor auth token
  • 41. Wait… What? How is account recovery possible if LastPass does not know my password?
  • 43. Recovering the account Get a unique link
  • 45. Boom! • Full, unrestricted access to the vault • Attacker can set a new password • But does not have to! • Bypasses 2 factor-auth
  • 46. Recover account flow Email GET /s/?s=8aa37bb1bb3FAKE03ad4127 302 Location: /recover.php? &time=1412381291&timehash=340908c353c099c9FAKE6b387002c5a4881ebdf1 &username=test%40test.com&usernamehash=fc7be7e5f6cbec9FAKE2995bd3331c097 POST /otp.php &changepw=ccb2501724FAKE2b575a214e1052 d0fa27b0726b6HASHdb2e1da3952e Recover button
  • 47. Can I directly generate the recover url? • time: timestamp when the recovery was initiated (the link “expires” in 2 hours) • timehash: salted hash of the timestamp • username: the email address • usernamehash: salted hash of the email 302 Location: /recover.php? &time=1412381291&timehash=340908c353c099c9FAKE6b387002c5a4881ebdf1 &username=test%40test.com&usernamehash=fc7be7e5f6cbec9FAKE2995bd3331c097
  • 48. Challenges • I need to generate a valid timestamp • I need the be able to generate the hashes • I need the salt
  • 49. Let’s try… • Request my own unique url and reuse the hashes in the victims url • BINGO! • Same salt is used for all users • Link does not truly expire, only the timestamp is validated against the hash • There is no need to request account recovery. You only need a valid url
  • 50. The salt is the secret • Still, we need to change the username, and hash it. • We are only missing the server salt to be able to generate valid recover urls • Salts are not designed to be a secret, only random and unique. • Oh wait… “LastPass account email addresses, password reminders, server per user salts, and authentication hashes were compromised”
  • 51. Can I forge the post request? • changepw: a derived “disabled OTP” POST /otp.php &changepw=ccb25017c4FAKE2b575a21441055d0fa27b0726b6HASHdb2e1da395e
  • 52. OTPs in LastPass • 2 types of OTPs • “True” OTPs for authentication • “Disabled” OTP • Let’s call it dOTP
  • 53. Disabled OTP • Used to recover the vault • Which ultimately means for authentication • It’s set by default • It’s not the encryption key
  • 54. How/Where is it stored? • Unprotected • Firefox • In the file {SHA256(username)}_ff.sotp (binary format) • Needs the extra step: bin2hex • Chrome/Safari/Opera • SQLite DB
  • 55. How is the request forged? The dOTP is injected into the DOM
  • 56. From dOTP to vault Local-storage getdOTP(username) dOTP token=SHA256(SHA256(username+dOTP)+dOTP) /otp.php(username, token) Set-Cookie: PHPSESSID pwdeckey GET /accts3.php encrypted vault
  • 57. What is”pwdeckey”? • It’s not the key to decrypt any password • It’s the seed to derive the key to decrypt the “vault key” • The vault key decrypts all the password, notes, etc. in the vault
  • 58. How/Where is the vault key stored? • Encrypted • Firefox • In the file {SHA256(username)}_lpall.slps • Chrome/Safari/Opera • SQLite DB
  • 60. Profit! • We located the token • We know how to hash it • We get the vault key decryption key • We get the vault • We decrypt the vault key • We decrypt the vault
  • 62. Metasploit module • Steals and decrypts the master password • Steals the 2-factor auth token • Steals the encryption key • Decrypts the entire vault • Supports: • Win, Mac and Unix • Chrome, Firefox, Safari and Opera • Meterpreter and shell • Multiuser
  • 63. Demo
  • 64. What about if there is: No disabled OTP No access to the machine No Exploit No nothing!
  • 67. Stop sharing your LastPass credentials with the entire world!!!!
  • 69. Hardening LastPass • Use the binary version of the plugin • Do not store your master password • Disable “Account recovery” • Do not use “Password reminder” • Activate 2-factor auth • Prompt for master password to make passwords visible • Add country restriction • Update/Randomize PBKDF2 iterations • Disallow TOR logins