Kali Linux 中的社会工程

2025年3月17日 | 阅读13分钟

“社会工程学”一词源于“社会”“工程”两个词,其中“社会”指的是个人、职业以及我们日常的生活。另一方面,“工程”涉及完成工作的综合过程,以达到既定目标。换句话说,它是一套方法。

当社会和工程结合在一起时,我们就得到了社会工程学,它涉及基于人际互动的入侵。这是一种非技术性入侵,在这种入侵中,人们常常被欺骗,打破了机构已经设定的通用安全准则。

社会工程学工具包

社会工程学工具包是免费且开源的工具,用于社会工程学攻击,如网络钓鱼、发送短信、伪造电话等。这是一个免费工具,随 Kali Linux 一起提供,或者我们可以直接从Github下载并安装。社会工程学工具包由一位名叫Dave Kennedy的程序员设计和开发。安全研究人员和渗透测试人员使用此工具来检查全球系统中存在的网络安全问题。社会工程学工具包的目标是在他们的机器上执行攻击技术。该工具包还包括网站向量攻击和自定义向量攻击,允许我们克隆任何网站,执行网络钓鱼攻击

社会工程学工具包的特点

以下是社会工程学工具包的特点:

  • 社会工程学工具包是免费的,并且是开源的。
  • 社会工程学工具包是便携式的,这意味着我们可以快速切换攻击向量。
  • 社会工程学工具包支持与第三方模块集成。
  • 社会工程学工具包已安装在我们的 Kali Linux 中,但我们也可以从Github下载并安装。
  • 社会工程学工具包是多平台工具;我们可以在Windows、LinuxUnix上运行它。
  • 社会工程学工具包包含对Fast-Track 渗透测试平台的访问。
  • 社会工程学工具包提供各种攻击向量,如网站攻击、感染媒介生成器、网站攻击等。

社会工程学工具包的用途

社会工程学工具包有多种用途:

  1. Web 攻击
  2. 大规模邮件攻击
  3. 网络钓鱼攻击
  4. 创建有效载荷和监听器

1. Web 攻击

在 SET 中,Web 攻击是一个模块。此模块结合了各种选项来远程攻击受害者。使用此模块,我们可以使用Metasploit 浏览器漏洞利用创建一个有效载荷并将其分发给我们的受害者浏览器。Web 攻击具有凭据收集器方法,允许我们克隆任何网站进行网络钓鱼攻击,并将该网页的链接发送给受害者,以获取用户和密码字段的信息。

2. 网络钓鱼攻击

我们可以使用社会工程学工具包对我们的受害者执行网络钓鱼攻击。使用 SET,我们可以为各种网站创建网络钓鱼页面,包括Google、Facebook、Instagram等。SET 将生成我们选择的选项的链接,然后我们可以将该 URL 发送给受害者。一旦受害者点击该 URL,他/她将看到一个真实的网站的合法网页,该网页本质上是一个网络钓鱼页面。一旦他/她输入了自己的 ID 和密码,我们就会在我们终端屏幕上收到该 ID 和密码,这就是 SET 如何进行网络钓鱼攻击。

3. 创建有效载荷和监听器

当我们首次执行社会工程学工具包时。我们将看到第 4 个选项,用于使用该 SET 模块生成有效载荷和监听器,我们可以开发适用于 Windows 的恶意有效载荷,包括Shell Reverse_TCP、Shell Reverse_ HTTPS TCP X64、Meterpreter ReverseReverse_TCP Meterpreter。这些有效载荷可以以与我们使用 metasploitable 有效载荷相同的方式使用。

4. 大规模邮件攻击

在社会工程学工具包中,大规模邮件攻击者是一个模块,我们使用它向目标邮件帐户发送大量电子邮件,为此我们也可以使用我们自己的 Gmail 帐户,或者我们可以拥有一个服务器。

这些是我们使用社会工程学工具包可以使用的部分攻击向量。当我们运行 SET 时,我们会很享受,因为它相当容易使用。

社会工程学的阶段

在最终结果获得之前,社会工程学有各种阶段。这些包括:

  1. 研究阶段
  2. 钩子阶段
  3. 博弈阶段
  4. 退出阶段

1. 研究阶段

在研究阶段,收集与目标相关的信息。无论目标是公司还是个人,第一阶段都是相同的。攻击者可以通过多种方式获取与其目标相关的信息。这些包括从公共领域获取文件、访问相关机构的网站,有时还包括建设性的面对面交流。此外,在此攻击阶段,垃圾箱搜寻也是必要的。

2. 钩子阶段

钩子阶段是攻击的第二阶段。在此阶段,攻击者会与他们的受害者目标展开讨论。

在钩子之后,博弈阶段会加强攻击者和目标之间的联系。攻击者利用这个机会调查获取他们想要的信息。

3. 退出阶段

这是最后阶段,攻击者必须小心,不要设置任何可能引起目标怀疑的情况。其想法是在不透露任何行动迹象的情况下退出目标。

我们可以通过 Kali Linux 中预装的各种社会工程学工具来启动这些步骤,而其他工具需要手动安装。

我们不必担心,因为社会工程学工具包是一个开源的渗透测试平台,专注于社会工程学。这一套工具经过精心调整,使我们能够在几秒钟内发起攻击。

社会工程学工具包的安装

为了安装社会工程学工具包,我们需要遵循几个步骤:

步骤 1:首先,我们需要打开 Kali Linux 终端并进入桌面。


Social Engineering in Kali Linux

步骤 2:现在,我们在桌面上,使用以下命令创建一个名为 SEToolkit 的新目录。


Social Engineering in Kali Linux

步骤 3:现在,我们在 Desktop 目录中,我们已经创建了一个 SEToolkit 目录,使用以下命令进入 SEToolkit 目录。


Social Engineering in Kali Linux

步骤 4:现在我们在 SEToolkit 目录中,我们需要从 GitHub 克隆 SEToolkit 以便使用它。


Social Engineering in Kali Linux

步骤 5:现在,社会工程学工具包已下载到我们的目录中,我们需要使用以下命令导航到社会工程学工具包的内部目录。


Social Engineering in Kali Linux

步骤 6:现在我们已成功将社会工程学工具包下载到我们的 SEToolkit 目录中。现在,我们可以使用以下命令来安装所需的依赖项。


Social Engineering in Kali Linux

步骤 7:所有依赖项都已下载到我们的 setoolkit 中。现在是时候安装我们下载的依赖项了。


Social Engineering in Kali Linux

步骤 8:最后,所有安装过程都已完成。现在是时候运行社会工程学工具包了。我们需要输入以下命令来运行 SEToolkit。

步骤 9:此时,setoolkit 会询问我们(y)或(n)。当我们输入 y 时,我们的社会工程学工具包将开始运行。


Social Engineering in Kali Linux

步骤 10:现在我们的 SEToolkit 已下载到我们的系统中,是时候使用它了。现在,我们需要从以下选项中选择一个。我们选择了选项 2

Social Engineering in Kali Linux

网站攻击向量

步骤 11:现在,我们准备设置一个网络钓鱼页面,我们将选择选项 3,这是一个凭据收集器攻击方法


Social Engineering in Kali Linux

步骤 12:因为我们要创建一个网络钓鱼页面;我们将选择选项 1,这是一个Web 模板


Social Engineering in Kali Linux

步骤 13:社会工程学工具现在将在我们的本地主机上创建一个网络钓鱼页面。

Social Engineering in Kali Linux

步骤 14:选择选项 2以创建一个 Google 网络钓鱼页面,将在我们的本地主机上生成一个网络钓鱼页面。

Social Engineering in Kali Linux

步骤 15:使用社会工程学工具包正在创建Google网络钓鱼页面。正如我们所见,SEToolkit在我们的本地主机(即我们的 IP 地址)上生成了 Google 的网络钓鱼页面。社会工程学工具集就是这样工作的。社会工程学工具包将设计我们的网络钓鱼页面。一旦受害者在字段中输入了ID 和密码ID 和密码就会显示在我们运行 SET 的终端上。

Social Engineering in Kali Linux

社会工程学工具包的用法

社会工程学工具包 (SET) 是一个开源的渗透测试框架,专为社会工程学设计。SET 包含多种自定义攻击向量,使我们能够在短时间内发起可信的攻击。这些工具利用人的行为来欺骗他们进行攻击向量。

让我们看看社会工程学工具包是如何使用的:

步骤 1:要打开 SET,我们需要转到 Applications → Social Engineering Tools → 点击“SET”社会工程学工具。

Social Engineering in Kali Linux

步骤 2:它会问我们是否同意使用条款。输入 'y',如下图所示。

Social Engineering in Kali Linux

步骤 3:下面截图中的大多数菜单都是不言自明的,其中最重要的是编号 1 “社会工程学攻击”

Social Engineering in Kali Linux

步骤 4:接下来,我们需要输入“1”然后按Enter。将打开一个子菜单。如果我们再次按 Enter 键,我们将看到每个子菜单的解释。

Social Engineering in Kali Linux

我们可以使用鱼叉式网络钓鱼模块来创建自定义电子邮件消息,并将其连同附加的文件格式恶意有效载荷一起发送给我们的目标受害者。例如,发送恶意的 PDF 文档,如果受害者打开它,将危及系统。如果我们想伪造我们的电子邮件地址,请确保已安装“Sendmail”apt-get install sendmail)并将 config/set_config SENDMAIL=OFF 标志修改为 SENDMAIL=ON。

鱼叉式网络钓鱼攻击可以有两种方式进行:

  • 执行大规模电子邮件攻击
  • 创建文件格式有效载荷和社会工程学模板。

第一种方式是让 SET 处理所有事情(选项 1),第二种是编写我们自己的文件格式有效载荷并在我们自己的攻击中使用它。

我们需要输入“99”以返回主菜单,然后输入“2”进入“Web 攻击向量”

Social Engineering in Kali Linux

Web 攻击模块是一种独特的对目标受害者进行妥协的方法,通过结合多种基于 Web 的攻击。如果受害者点击链接,此模块可用于对受害者执行网络钓鱼攻击。点击链接可能会触发各种攻击。

我们需要输入“99”以重新运行主菜单,然后输入“3”

感染性USB/CD/DVD模块将生成一个 autorun.inf 文件和一个 Metasploit 有效载荷。

将有效载荷和 autorun 文件刻录或复制到USB驱动器上。当DVD、USBCD被加载到受害者的计算机中时,它将触发 autorun 功能(如果 autorun 已启用),并理想地危及系统。我们可以选择要使用的攻击向量:错误文件格式或直接可执行文件。

感染性媒介生成器有多种选项:

  • 文件格式漏洞利用
  • 标准 Metasploit 可执行文件

我们需要输入“99”以返回主菜单。然后,输入“4”进入“Web 攻击向量”

Social Engineering in Kali Linux

一种简单的方法是创建有效载荷和监听器来创建Metasploit有效载荷。它将为我们导出 exe 文件并创建一个监听器。我们将需要说服受害者下载 exe 文件并执行它以获取 shell。

我们需要输入“99”以返回主菜单,然后输入“5”进入“Web 攻击向量”

Social Engineering in Kali Linux

我们可以使用大规模邮件攻击来向受害者发送大量电子邮件并定制消息。大规模邮件发送程序有两个选项;第一个是发送电子邮件到单个电子邮件地址。第二个选项允许我们导入所有收件人的电子邮件列表,然后它会向该列表中的尽可能多的收件人发送我们的消息。

  • 电子邮件攻击单个电子邮件地址
  • 电子邮件攻击大规模邮件发送

输入“99”以返回主菜单,然后输入“9”以进入“PowerShell 攻击向量”

Social Engineering in Kali Linux

PowerShell 攻击向量模块允许我们创建PowerShell 特定攻击。这些攻击使我们能够使用 PowerShell,它包含在所有操作系统 Windows Vista 及更高版本中。PowerShell 为部署有效载荷和执行由预防技术触发或执行的函数提供了一个丰富的环境。

  • PowerShell 字母数字 Shellcode 注入器
  • PowerShell 反向 Shell
  • PowerShell 绑定 Shell
  • PowerShell 转储 SAM 数据库

Kali Linux 中社会工程学的 Top 5 工具

以下是 Kali Linux 中社会工程学的 5 种工具:

  1. Maltego
  2. 社会工程学工具包 (SET)
  3. Wifiphisher
  4. Metasploit MSF
  5. MSFvenom 有效载荷创建器 (MSFPC)

1. Maltego

Maltego 是一个开源情报(OSINT)调查工具,它显示各种信息位是如何相互关联的。我们可以使用 Maltego 来查找人与各种信息资产之间的联系,包括电子邮件地址、用户名社交资料,以及连接某人到服务或组织的更多信息。

通过所有这些信息,我们可以模拟社会工程学攻击,以帮助我们评估员工的安全意识。Maltego 可以通过 Kali 菜单启动,或者通过转到Applications> Kali Linux > Top 10 Security Tools >选择 Maltego 五来启动。

Social Engineering in Kali Linux

Maltego 具有图形用户界面,可以轻松地查看关系。

Maltego 的优点

以下是 Maltego 的优点:

  • 安装简单快捷。
  • Maltego 使用 Java,使其在 Windows、Linux 和 Mac 上可用。
  • 它有一个图形用户界面,可以轻松地查看关系。
  • 它可以帮助用户发现隐藏的信息。
  • 它为用户提供了一个强大的搜索实用程序。
  • 我们可以在发起攻击之前使用 Maltego 进行信息收集阶段。
  • 它使用强大而灵活的框架,我们可以快速自定义以满足用户的需求。

2. 社会工程学工具包 (SET)

社会工程学工具包 (SET) 是一个开源的、由 Python 驱动的社会工程学渗透测试工具包。SET 提供了多种自定义攻击向量,使我们能够快速、轻松地设置可靠的攻击。

SET 配备了一个网站工具,可以将我们的 Kali Linux 转换为 Web 服务器,并提供多种漏洞利用,可以攻破大多数浏览器。目标是向目标提供一个链接,将他们重定向到我们的网站,该网站会自动下载并在其系统上执行漏洞利用。

为了使漏洞利用看起来更真实,我们可以使用 SET 中的预设模板来克隆一个合法的网站。SET 包含针对 Google、Yahoo、Facebook 和 Twitter 等知名网站的预格式化网络钓鱼页面。

如果我们想在 Kali Linux 中打开 SET,我们需要转到Applications > KaliLinux > Exploitation Tools > Social Engineering Toolkit | toolkit 或者在 shell 提示符下输入 setoolkit。

Social Engineering in Kali Linux

3. Wifiphisher

Wifiphisher 是一种独一无二的社会工程学工具,它自动化 Wi-Fi 网络上的网络钓鱼攻击,以获取目标用户群的WPA/WPA2密码。该工具可以选择任何附近的 Wi-Fi 接入点,对其进行干扰(解除所有用户的身份验证),并创建一个不需要密码即可加入的克隆接入点。

任何连接到类似“邪恶双胞胎”的开放网络的人都会看到一个看似合法的网络钓鱼页面,要求输入 Wi-Fi 密码以下载固件更新,该更新被引用为 Wi-Fi 不起作用的原因。

一旦目标输入了密码,Wifiphisher 就会发出警报,并暂停一段时间。在传输捕获的密码后,它会显示一个假的重启计时器和一个假的更新屏幕,以给我们时间来测试捕获的密码。这是一个评估我们针对基于 Wi-Fi 的社会工程学安全防御的有用工具。

通过输入以下命令,我们可以安装 wifiphisher:


Social Engineering in Kali Linux

Wifiphisher 的特点

以下是 Wifiphisher 的特点:

  1. Wifiphisher 灵活且支持各种参数,以及大量的社区驱动的网络钓鱼模板。
  2. Wifiphisher 是开源的,并拥有活跃的开发人员和用户社区。
  3. 它提供了一个非常用户友好的交互式文本用户界面。
  4. 它是模块化的,因为它允许用户用 Python 开发简单和复杂的自定义模块。

4. Metasploit MSF

Metasploit Framework 是一个渗透测试工具,可用于查找、利用和评估安全漏洞。它提供了内容、工具和基础设施来执行渗透测试以及全面的安全审计。Metasploit 中包含的强大功能之一是设置假SMB 服务器的选项。这意味着当网络上的某人尝试访问服务器时,他们的系统必须以其“域密码哈希”的形式显示其凭据。

如果我们等待足够长的时间,当我们尝试连接 SMB 服务器时,我们可能会捕获域凭据。向目标发送嵌入式 UNC 路径有助于我们在用户单击时收集其域凭据。

MSF 会定期更新,并且一旦其创建者发布新漏洞,就会立即添加。Metasploit 可以通过 Kali Linux 菜单启动,或者通过在终端中键入以下命令来启动。


Social Engineering in Kali Linux

5. MSFvenom 有效载荷创建器 (MSFPC)

MSFPC 是一个易于使用的工具,可以轻松创建基本有效载荷。它允许用户在无需键入长MSFvenom命令的情况下生成有效载荷。有了这个生成器,我们可以用最少的参数创建有效载荷。

我们可以使用 MSFPC 为Windows、LinuxAndroid生成有效载荷。当我们需要快速创建简单有效载荷时,它的脚本可以节省大量时间。尽管这不包括用于绕过防病毒软件的编码,但了解这一点仍然很有帮助。

Social Engineering in Kali Linux

有时,我们只需要创建一个简短的有效载荷,将其放置在某个地方,然后继续我们的例程。在这种情况下,msfpc.sh会很有用。要使用 MSFPC,我们只需通过文件扩展名或我们将要放置它的平台来定义所需的有效载荷。在终端中键入msfpc将使我们能够运行该工具。


下一个主题Kali Linux Tree 命令