37

如何绕过2FA执行钓鱼攻击?

 4 years ago
source link: https://www.freebuf.com/articles/web/201868.html?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

*严正声明:本文仅适用于教育目的,切勿越过法律规定的边界范围!

几个礼拜前,我突然对网络钓鱼活动以及它们是如何执行的产生了浓厚的兴趣,在本文中我将这个故事分成了多个部分来进行。

uU7VfiM.jpg!web

钓鱼域名

让我们从一条钓鱼短信说起。可以看到短信中告知我丢失的苹果手机已被找到,只需点击短信中的链接即可获取相关信息。

7nemmaF.jpg!web

这里的接收者是合法的。手机位置链接与真正的icloud链接非常相似,并且连接为https。

我相信大部分用户根本无法看出这会是一个钓鱼链接,并会相信它是一个来自苹果的真实地址。

这里,我强烈建议使用Kali Linux工具箱中的 UrlCrazy ,或者你也可以使用 catphish

JnQ32am.jpg!web

在该示例中,你可以看到许多用于网络钓鱼和欺诈的注册域。你可以使用任何类型的域名“Typo”。 如字符省略,位反转,同形异义字等。

实际上在某些情况下,同形异义字可能是最有意思的。

JNfYjeE.jpg!web

假设我们已经准备好了域名,并在GoDaddy中进行了注册。

此外,你还可以在此处注册免费域,并在攻击场景中使用子域名。

保护 DMARC,DKIM,SPF

yQzeIzR.jpg!web

DMARC(基于域的消息验证,报告和一致性)通过声明应该使用上述工具的明确策略并允许设置可以使用的地址来授权SPF(发件人策略框架)和DKIM(DomainKeys识别邮件) 发送有关接收方针对特定域收集的邮件消息统计信息的报告。我不会在这里解释如何使用该策略配置邮件服务器。但大多数情况下,这是域名和邮件服务器的DNS管理工具中的正确配置。

我使用了一个免费的邮件服务器 – 来自Yandex的Mail for Domain

完成配置安全策略的所有活动后,我强烈建议你通过检查配置得分来测试电子邮件,它不需要被放置到垃圾邮箱中。

fq26Bn2.jpg!web

好的电子邮件得分应该像上面一样。为了检查我的电子邮件和邮件服务器的所有设置,我使用了该服务 – Mail Tester

电子邮件地址 OSINT

如果我们对公司电子邮件地址执行攻击 – 我们可以在以下资源上发现一些泄漏数据。

Public Database Directory – Public DB Host

Find the source of your leaks

Search Engine

Find email addresses in seconds * Hunter (Email Hunter)

但别忘了使用 theHarvester 搜索谷歌,这同样非常的有帮助。

绕过 2FA 的 MITM 攻击框架

在此之前的一切都是在为攻击做准备。现在所有内容都已配置完毕,我们已经准备好向受害者发送电子邮件中有趣的内容。在这个部分主要是配置2fa-mitm端点,这样我们可以捕获会话,即使帐户受2fa保护(Github帐户、LinkedIn帐户等)

所以我决定从这些框架中选择一个: CredsnipperReelphishEvilginx

我选择的是 Evilginx2.2.0版本

Evilginx2是一个中间人攻击框架,用于网络钓鱼登录凭证和会话cookie,从而允许绕过双因素身份验证保护。

MZv2uar.jpg!web

作为使用Evilginx服务器的虚拟机,我使用了带有Ubuntu镜像的AWS EC2实例。

MzQvumN.jpg!web

使用SSH连接可以轻松启动和控制。

接下来,我们只需更新并安装我们的框架:

apt-get update
apt-get upgrade
wget https://github.com/kgretzky/evilginx2/releases/download/2.2.0/evilginx_linux_x86_2.2.0.zip
apt-get install unzip
unzip evilginx
cd evilginx
chmod +x install.sh
chmod +x evilginx

并确保没有服务侦听端口TCP 443,TCP 80和UDP 53。你可能需要关闭apache或nginx以及用于解析可能正在运行的DNS的任何服务。如果无法在任何这些端口上打开侦听套接字,Evilginx会在启动时告知你。

如果端口发生此类冲突 – 那么你将需要在我们的EC2计算机上运行该命令。

systemctl disable systemd-resolved
systemctl stop systemd-resolved
rm /etc/resolv.conf
echo 'nameserver 8.8.8.8' > /etc/resolv.conf

所有其他必需的说明都在 readme 中。

Evilginx2 和网络钓鱼域的配置部分

对于我们的AWS EC2机器,我们有一个公共IP地址。

7Rr6Jjy.jpg!web

在DNS管理中我们应该这样:

A3Q3Ebv.jpg!web

目标 – 是我们的EC2公共IP地址。

名称 – 是我们将使用的子域名。(phishing.valyaroller.tk)

之后,我们需要使用我们的AWS EC2的域名和公共IP配置Evilginx。

VjeeyeV.jpg!web

这里我们有一个最终的配置。

接下来,我们需要为我们的网络钓鱼域获取SSL/TLS证书。

phishlets hostname linkedin phishing.valyaroller.tk

neIrmyv.jpg!web

phishlets enable linkedin

vmeERjY.jpg!web

现在,我们就可以在我们的测试帐户上进行演示了。

如你所见,该框架可以支持端到端验证。如果我们尝试使用错误的密码登录 – 我们将看到验证消息,并且当受害者提供sms code时 – 我们将捕获有效的会话。

总结

通过一步步的对钓鱼活动的深入和了解,我学到了许多有趣的东西。在此声明,我没有进行任何非法的活动。我也强烈建议你不要尝试越过法律的边界,去做法律不允许的事情。如你所见,大多数时候这些钓鱼链接看起来像是合法的并且还支持https。你有没有2FA保护并不重要,我想唯一可以保护你的应该是你的观察和注意力。

此外,这里还有一些教育企业员工的防御攻击培训服务:

https://phishinsight.trendmicro.com/en/

https://ironscales.com/


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK