二次验证机制
二次校验是一个很好的保护账号的安全机制,当一个用户登入网站时候,不但仅仅是输入用户ID和密码,还需要另外的认证要素,一般情况下是产生动态验证码,这个随机串会通过邮箱或者手机短信发送给用户,由于这个邮箱和手机可以认为是可信的,这样保证用户ID和密码泄露后,这个随机串攻击者是不知道的,也是无法登入受害者的账户的,这种方式在现在的web应用中很常见。
Cookie传递攻击
浏览器cookie使web应用程序能够存储用户身份验证信息,因此用户可以保持登录状态,而无需每次导航到网站上的新页面时都提供用户名和密码。 (这类似于Kerberos或NTLM身份验证,在该身份验证中,工件存储在用户系统中,用于将来的身份验证。)
如果启用了MFA,用户必须提供其身份的额外证明,例如通过在其移动设备上接受推送通知。一旦用户通过了MFA,就会为您的Web会话创建并存储浏览器cookie。
虽然cookies简化了用户体验,但它们显然存在漏洞:如果有人能够提取正确的浏览器cookie,他们就可以在另一个系统上的完全独立的Web浏览器会话中验证其他用户。简而言之,他们可以使用cookie通过MFA绕过身份验证。 (这类似于Active Directory中的“传递哈希”攻击。)
攻击者如何提取浏览器cookie
让我们看看攻击者如何使用Google Chrome浏览器的例子来提取cookies。 Chrome将cookies存储在SQLite数据库中的以下位置:
For Windows: %LocalAppData%\Google\Chrome\User Data\Default\Cookies
For macOS: ~/Library/Application Support/Google/Chrome/Default/Cookies
For Linux: ~/.config/google-chrome/Default/Cookies
为给定用户加密的cookies使用与该用户通过Microsoft Data Protection API(DPAPI)相关联的密钥。 要访问cookie数据库并解密cookies,攻击者可以使用以下mimikatz命令:
privilege::debug
sekurlsa::logonpasswords
privilege::debug命令使攻击者能够获得访问cookie数据库所必需的权限。 sekurlsa::logonpasswords命令提取用户的登录凭据,包括他们的密码哈希,可用于解密cookies。
一旦攻击者获得了用户的密码哈希,他们就可以使用它来解密cookies,并可能用它们来绕过MFA并在网站上验证受害者。 重要的是要注意,这只是提取cookies和绕过MFA的一种潜在方法。 根据具体情况,攻击者可能会使用其他方法。
mimikatz.exe privilege::debug log "dpapi::chrome /in:%localappdata%\google\chrome\USER DATA\default\cookies /unprotect" exit
利用上面命令即可提取到浏览器下面的cookie。
进行攻击
直接通过下面步骤进行攻击
还没有评论,来说两句吧...