网安科普之瞒天过海之快捷方式钓鱼

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZlJZP4h0-1690791570184)(https://image.3001.net/images/20230613/1686643391_648822bf7ba9da86ae98d.jpg!small)]

00 背景

想必大家对快捷方式文件类型都不陌生,日常办公中桌面快捷方式可以很方便的管理操作软件。在攻击者的角度,其也会利用快捷方式文件进行钓鱼攻击,甚至部分APT组织将LNK文件作为其投递的主要载荷。未知攻,焉知防,本文将站在攻击者的角度,引领大家深入探讨一下攻击者如何利用快捷方式进行钓鱼攻击。

01 威胁实现初探

毋庸置疑,对于用户来讲,快捷方式文件是一个非常成功的发明。创建快捷方式非常简单,只需要右键单击要创建快捷方式的文件或程序,然后选择“发送到”>“桌面快捷方式”即可。除了桌面,还可以将快捷方式固定到任务栏或开始菜单,方便快速访问。相比于直接打开文件或程序,使用快捷方式可以极大的提高工作效率。

快捷方式除了可以设置一些特殊的属性,例如“目标”、“起始位置”、“备注”,它还具备几个显而易见的特点:1、支持带参数执行任意目标文件;2、支持显示目标文件的图标;3、支持设置文件启动方式;4、文件名和后缀名可以完全自定义。很明显这些特点是为了帮助用户更好地管理和使用快捷方式,但是利用这些特性,黑客也可以方便的进行网络钓鱼欺骗。

如图,我们只需要简单的几步,就通过快捷方式实现了一个看起来像是“密码.docx”的执行恶意命令的钓鱼文件。稍不留神,即使是具备一定安全意识的人也很容易就被文件名和图标迷惑,而一旦双击就会导致命令被执行。

图:构造执行命令的欺骗性快捷方式

图:双击快捷方式导致命令执行

02 复杂利用手段分析

修改文件大小

由于快捷方式文件本身的文件大小是比较小的,所以只经过简单伪造的快捷方式,受害者仍然可以通过文件大小引起警觉。但事实上,在快捷方式文件中拼接垃圾数据并不会影响其运行。如图,通过简单的一条dos命令就可以改变快捷方式的文件大小。

图:修改快捷方式的文件大小

修改文件图标

快捷方式的图标默认可以被手动修改,但是由于系统自带图标有限,加上相同文件类型的图标可能由于软件环境的不同,导致伪造成特定格式的快捷方式文件可能由于软件环境差异,从而被受害者引起警觉。但扎心的是,快捷方式的图标也能被攻击者完美伪造,原理很简单,原本系统会根据你修改的图标路径去解析对应的文件图标,如图,只要把对应的路径改成pdf文件类型后缀的路径,系统就会认为这个快捷方式指向的是pdf类型的文件,从而显示对应类型的文件图标。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nwRzXArf-1690791570190)(https://image.3001.net/images/20230613/1686643679_648823df995d91a06dab5.png!small)]图:系统原本的文件图标解析路径

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TqhGixGq-1690791570191)(https://image.3001.net/images/20230613/1686643724_6488240c976b48a42c38f.png!small)]

图:修改文件图标解析路径

图:修改后的快捷方式在wps环境下的图标显示

修改文件指向显示

如图,快捷方式文件的属性默认支持查看指向的目标,右键属性可以看到快捷方式实际的指向文件。但大部分人不知道的是,这里的目标指向显示也能伪造。攻击者可以通过修改快捷方式文件结构来任意控制目标指向的显示:EnvironmentVariableDataBlock中的TargetAnsi及TargetUnicode,LinkTargetIDList结构中的第五个ItemID。

在下面的例子中,目标指向显示已经被修改为了一个不存在的文件,但是快捷方式文件依然能够正常运行。如果大家对快捷方式的文件结构感兴趣,可以对照微软的官方介绍文档自行研究:https://learn.microsoft.com/en-
us/openspecs/windows_protocols/ms-
shllink/ae350202-3ba9-4790-9e9e-98935f4ee5af。

图:右键属性查看快捷方式的目标显示

图:修改快捷方式文件LinkTargetIDList结构的ItemID

图:修改快捷方式文件EnvironmentVariableDataBlock中的TargetAnsi及TargetUnicode

图:快捷方式的目标属性已被修改

03 Internet快捷方式

大部分人可能不了解Internet快捷方式文件类型,简单介绍一下:相比于普通的快捷方式,Internet快捷方式是一种用于连接到互联网上的资源或网站的快捷方式,它同样支持任意图标修改、文件名和后缀名完全自定义。与普通快捷方式相比,Internet快捷方式文件后缀名为.URL,并且支持与网页相关的属性设置。

创建Internet快捷方式很简单,如图,在创建快捷方式的对象位置中输入目标url就能成功创建,系统默认显示为网页类型的图标,通过查看Internet快捷方式的文件内容,可以看到指向目标链接的url属性。

图:创建Internet快捷方式文件

恶意利用

攻击者利用Internet快捷方式不仅可以将受害者导向恶意链接,还可以将url设置成file路径去执行文件,例如:URL=file:\\\\\\C:\\Users\\xxx.exe。如图,攻击者还可以通过Internet快捷方式结合文件共享来实现远程文件运行。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xrOkJ2Va-1690791570197)(https://image.3001.net/images/20230613/1686644139_648825ab9835ef64ca584.png!small)]图:利用Internet快捷方式打开远程文件

欺骗伪造

除了url属性外,Internet快捷方式还支持很多其他的属性,攻击者可以通过IconFile、IconIndex来控制文件图标的显示,有个好消息是,由于微软取消了Internet快捷方式的远程ico引用,目前只能显示当前电脑中已存在的图标,不过即使如此攻击者仍然可以构建欺骗性很强的钓鱼文件。

如图,通过修改文件属性将图标显示成了pdf的文件图标。同样,Internet快捷方式仍然可以通过拼接的方式任意改变文件大小。

图:修改Internet快捷方式的文件图标

图:修改Internet快捷方式的文件大小

04 写在最后

利用快捷方式的网络钓鱼攻击很早就出现了,虽然目前有很多对应的安全防护策略,但是该类型攻击依然是很多APT组织的主力攻击手段(例如:海莲花、响尾蛇等)。未知攻击可能随时出现,社会工程学攻击也将永远伴随人类的技术发展永存,大家需要时刻保持警惕。

全防护策略,但是该类型攻击依然是很多APT组织的主力攻击手段(例如:海莲花、响尾蛇等)。未知攻击可能随时出现,社会工程学攻击也将永远伴随人类的技术发展永存,大家需要时刻保持警惕。

接下来我将给各位同学划分一张学习计划表!

学习计划

那么问题又来了,作为萌新小白,我应该先学什么,再学什么?
既然你都问的这么直白了,我就告诉你,零基础应该从什么开始学起:

阶段一:初级网络安全工程师

接下来我将给大家安排一个为期1个月的网络安全初级计划,当你学完后,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web渗透、安全服务、安全分析等岗位;其中,如果你等保模块学的好,还可以从事等保工程师。

综合薪资区间6k~15k

1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(1周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(1周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(1周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)

那么,到此为止,已经耗时1个月左右。你已经成功成为了一名“脚本小子”。那么你还想接着往下探索吗?

阶段二:中级or高级网络安全工程师(看自己能力)

综合薪资区间15k~30k

7、脚本编程学习(4周)
在网络安全领域。是否具备编程能力是“脚本小子”和真正网络安全工程师的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力。

零基础入门的同学,我建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习
搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime;

Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,没必要看完

用Python编写漏洞的exp,然后写一个简单的网络爬虫

PHP基本语法学习并书写一个简单的博客系统

熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选)

了解Bootstrap的布局或者CSS。

阶段三:顶级网络安全工程师

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

学习资料分享

当然,只给予计划不给予学习资料的行为无异于耍流氓,这里给大家整理了一份【282G】的网络安全工程师从入门到精通的学习资料包,可点击下方二维码链接领取哦。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值