原文始发于Adams:企业钓鱼攻击演练方案 – 边窗/SideWindow
概述
钓鱼攻击是一种社会工程学攻击,即攻击者通过伪装成可信实体的方式来欺骗用户,以获取敏感信息或进行其他恶意行为。通常,攻击者会通过电子邮件、短信、即时通讯工具等方式向受害者发送虚假信息,伪装成信任的组织或个人,要求受害者提供敏感信息,例如登录凭据、银行账户信息、身份证号码等。
钓鱼攻击过程中通常会使用的社会工程学技巧众多,例如诱骗、威胁、欺骗等手段来引导受害者操作。攻击者通常会利用人们的好奇心、恐惧心理、贪婪心理、信任感等心理因素,从而让受害者陷入陷阱。另外,还可以利用漏洞或技术手段来进一步加强攻击效果,例如伪造网站、安装恶意软件、利用网络钓鱼、欺骗受害者转账等。
对于企业信息安全建设而言,加强员工安全意识是安全教育的工作之一,强安全意识的人员可以避免、缓解企业在面对外部攻击或渗透攻击时风险和损失。对于个人安全而言,警惕各种未知来源的信息,并在提供敏感信息之前进行仔细的验证和确认,提升安全意识亦能够避免信息诈骗、钓鱼带来的个人财产损失。 在企业中进行常态化钓鱼攻击演练,可以帮助员工了解钓鱼攻击的手段、形态,增进对于钓鱼攻击的识别和意识防范,从而提升企业内部安全意识与能力。
目的
钓鱼攻击演练的主要目的是为了测试和提高企业或组织对钓鱼攻击的防御能力,帮助员工和管理层识别和避免钓鱼攻击,降低企业或组织的安全风险。
- 测评安全防护能力:钓鱼攻击演练可以帮助组织评估自身的安全防护能力,发现安全漏洞和薄弱点,制定针对性的安全计划和策略,提高组织的安全防范水平。
- 提高员工安全意识:通过钓鱼攻击演练,组织可以提高员工对安全威胁的认识和意识,帮助员工识别和避免钓鱼攻击,减少人为疏忽或错误操作带来的安全风险。
- 降低安全风险:钓鱼攻击演练可以帮助组织及时发现并处理钓鱼攻击事件,减少被攻击造成的数据泄露、业务中断等安全风险。
- 改善组织安全文化:通过钓鱼攻击演练,组织可以加强安全培训和意识教育,建立健康的安全文化和习惯,增强组织的安全素质和反欺诈能力。
演练流程
钓鱼攻击演练是在企业内部进行的模拟攻击演练,旨在通过无危害的方式检测、培训、改善企业员工的信息安全意识。同时,需要企业高层的批准和同意,结合企业的办公场地、员工特点、办公特点等设计实施方案,以及考虑演练的效果。
钓鱼攻击演练的流程如下:
- 明确演练的受众:对演练受众进行确认,包括规避敏感人群或岗位;
- 受众环境调研:对演练受众工作内容、习惯和场景进行调研;
- 钓鱼方案设计:基于调研结果进行方案设计,确认场景和技术方案;
- 管理层授权批准:向管理层汇报演练方案,并获得管理层授权;
- 通知企业相关方:同步相关安全或运维部门方案,避免演练引起误会;
- 钓鱼样本制作:根据演练方案制作相关的钓鱼样本、环境或平台;
- 钓鱼演练执行:执行演练方案,并监测执行过程,做好应急准备;
- 演练结果分析:对于演练结果进行分析,检验演练效果及风险特点;
- 安全策略优化:根据演练结果调整必要的安全策略、安全控制措施;
- 安全意识宣贯:基于演练结果面向员工开展安全意识宣传、培训或考试;
方案设计
钓鱼攻击演练中所用到技术多样,根据攻击目标的特点和攻击的方式,可以分为:钓鱼攻击、鱼叉攻击、水坑攻击。本方案中的钓鱼攻击演练仅指钓鱼攻击。
根据攻击目标所用到的媒介,常见的钓鱼攻击方式包括并不限于:邮件钓鱼、WiFi钓鱼、短信钓鱼、语音(电话)钓鱼、U盘钓鱼、宣传物钓鱼。
演练方案需要结合受众群体和受众分析的结果进行详细设计,方案内容包括:
- 方案执行时间
- 方案技术选型
- 场景内容设计
- 钓鱼统计分析
技术选型
钓鱼邮件
常见的钓鱼邮件是通过两个部分内容的伪造来构建邮件内容:发件人和发件内容,发件人可以是外部发件人或伪造的企业内部邮箱,发件内容的伪造包括链接伪造和附件伪造。 链接伪造包括超链接的伪造,通过href标签和<a>标签的不同构造虚假链接,以及页面伪造,通过构建邮件内容的HTML信息呈现伪造邮件图文和按钮信息,从而欺骗访问者点击图片链接或按钮链接,并在链接中呈现伪造的登录页面或注册页面获取员工账户信息,该信息可以作为演练结束后的分析源。
附件伪造通常会通过伪装成Office文档,在文档中嵌入宏脚本或其他链接,诱导访问者进行执行或点击,从而获得相关的访问者信息。
钓鱼邮件的发送时间通常在上班期间,尤其是刚刚上班或午休之后等员工刚刚进入工作状态。
邮件内容需要考虑到:
- 邮件内容的设备兼容性(包括PC/Mac/Web/App);
- 标题和内容具备足够的迷惑性;
- 发件人需要具备一定的迷惑性,比如人事部门;
- 页面链接或附件链接需要具备唯一token用于统计点击人员;
- 页面内容需要结合企业自身和热点新闻进行设计,比如邮箱账户信息收集;
钓鱼Wi-Fi
钓鱼Wi-Fi是在受众群体所在的场合设立伪造的Wi-Fi热点,欺骗受众连接伪造的Wi-Fi热点上网,并从热点的设备信息和设备流量获取相关的访问者信息。
与Wi-Fi攻击不同,钓鱼Wi-Fi不能使用攻击性的技术手段,因此,可选择的技术方式通常只有伪造诱惑性的SSID名称。钓鱼Wi-Fi由于是被动式的,相比钓鱼邮件需要更长的演练时间来获得演练效果。
另外,通过伪造Wi-Fi热点进行设备流量分析,在企业内部已经有设备网络管理的前提下能够更容易通过设备MAC地址识别到员工信息,如果没有,则需要通过流量内容进行分析定位,或者无法定位到具体的员工。
短信钓鱼
短信钓鱼是通过发送短信的方式来进行信息获取,通过发送伪装成银行、社交媒体平台、电子商务等合法机构的短信,诱骗受众点击链接或回复短信,从而窃取受众的敏感信息,如用户名、密码、验证码等,或者诱导受众下载恶意软件。
短信钓鱼与邮件钓鱼类似,发送时间同样需要在员工工作状态进入到高峰期之前,同样需要构造具有诱惑性或诱导性的短信内容和链接,并借助移动端浏览器的特点(屏幕小、地址栏隐藏)构建访问页面,通过表单登记或App下载获得受众的身份信息。
语音钓鱼
语音钓鱼是一种利用电话或语音进行的钓鱼攻击,伪装成个人或机构通过电话或语音诱导受众提供个人信息或进行金融转账等操作。
语音钓鱼受限于VoIP在国内的应用,以及对于社工能力有较高要求,在钓鱼演练中不常使用,结合国内社交软件的环境,比如微信、QQ、微博等,可以通过常用的社交软件或平台进行钓鱼攻击。
除平台不同之外,内容设计与邮件、短信钓鱼类似,需要结合受众特点进行设计,比如女性对于美妆的喜好,男性对于游戏的热爱。与邮件、短信不同,社交钓鱼执行时需要挑选非工作时间,例如晚上20点之后,通过社交平台私信、加好友等方式发送钓鱼信息,从而进一步获得受众的信息。
U盘钓鱼
BadUSB的制作成本低廉,网络平台购买类似硬件的成本不超过5元(通常在2元左右),样本制作过程中会使用到Arduino IDE进行脚本编写,比如执行CMD命令或者执行PowerShell命令,并通过回连上传受众信息。钓鱼演练由于仅为测试员工的信息安全意识,因此脚本编写成本和周期相对低廉和简短。
在场景设计中,U盘钓鱼需要基于员工办公的场景和办公内容,并在多个地方放置样本U盘,常见的场合包括:办公区地上、公司走廊、会议室桌面等等。
宣传物钓鱼
宣传物钓鱼是指通过设计有恶意二维码的海报、传单等宣传物,在公司办公区周边进行散发,通过宣传内容诱导受众进行二维码扫描,扫描结果被设计为表单形式,从而获取受众信息。
宣传物钓鱼执行的时间点建议设置在下午到下班时间段,这时员工的心情和状态较为松弛,更容易接受和注意到宣传的内容。
此类钓鱼案例可参考2017年国内某安全公司的做法:
演练汇报
演练结束之后,需要通知相关部门(安全部门/运维部门)恢复演练过程相关的安全事件监测和应急,并需要撰写演练报告向上进行汇报,展示钓鱼攻击演练的成果,以及针对成果需要开展的员工培训、考核等工作。
汇报内容的结构可以参考:
- 演练背景
- 演练目的
- 演练过程(包括方案设计和技术选型)
- 演练结果(包括时间段、被钓人员清单、人员分析)
- 总结与计划(包括演练效果的总结、下一步的工作计划)