最早出现是几年前, 最近几年貌似蛮流行的.
微软官方对lnk文件的介绍
phrozen的三篇文章:
shortcut as entrypoint of malware part1
shortcut as entrypoint of malware part2
shortcut as entrypoint of malware part2
主要内容概括:
第一篇讲到建立快捷方式, 然后在快捷方式目标栏利用系统内置
bitsadmin.exe 下载文件
第二篇讲到把一个EXE转成脚本中的数组, 然后将脚本放到目标栏中. lnk执行后, 执行脚本释放EXE并执行.
第三篇讲到把一个EXE用base64编码后, 写到lnk文件的尾部. 在lnk目标栏中的脚本功能为, 用findstr找到自身文件尾部base64编码后的PE文件的开始位置, 读取数据后用certutil解码后释放PE文件并运行.
第二篇的的限制是EXE文件不能太大, 因为EXE数据是转成脚本中的数组数据形式存在的, 所以填入目标栏会很长.
第三篇就解决了第二篇的限制, 因为它的数据是写在lnk文件的尾部, 所以就可以想多大就多大.
这边除了用cmd, 也还可以用powershell, 然后这两个东西的字符串混淆方式也很多, 所以想光靠静态检测目标栏字符串来判断lnk文件是否恶意就不靠谱.
有关混淆的, powershell混淆, cmd混淆
另外, 在目标栏前面写0x104个空格, 这样就可以隐藏你目标栏参数.