201303-lnk文件格式分析以及木马利用-willj[4st TeAm]

前不久在卡饭爆出各种木马利用快捷方式启动绕过杀毒软件的主动防御,随分析下。

0x01. Lnk文件介绍

lnk文件是用于指向其他文件的一种文件。 这些文件通常称为快捷方式文件.通常它以快捷方式放在硬盘上.以方便使用者快速的调用,其扩展名为.lnk。

0x02. Lnk文件格式解析

Lnk文件头


Shell Item Id List段(可选)


文件本地信息段


描述字符串段(可选)


相对路径段(可选)


工作目录段(可选)


命令行段(可选)


图标文件段(可选)


附加信息段(可选)

@Lnk文件头结构

偏移


大小/类型


描述


00h


1 DWORD


常被设置为0000004CH


04h


16 BYTES


GUID,.link文件的唯一标识符


14h


1 DWORD


标志位,用于标识哪些段是可选(重要字段)


18h


1 DWORD


目标文件属性(可读,可写,隐藏……)


1ch


1 QWORD


文件创建时间


24h


1 QWORD


文件修改时间


2ch


1 DWORD


文件最后一次访问时间


34h


1 DWORD


目标文件长度


38h


1 DWORD


自定义图标个数


3ch


1 DWORD


目标文件执行窗口显示方式(正常,Q最大,最小)


40h


1 DWORD


热键


44h


2 DWORD


未知

Lnk文件头偏移14H的标志位说明

Bit位


为1时表示存在


0


Shell Item Id List


1


指向文件或者文件夹,为0表示指向其它


2


描述字符串


3


相对路径


4


工作路径


5


命令行参数


6


自定义图标

Lnk文件头偏移18H处目标文件属性说明

Bit位


为1时表示


0


只读属性


1


隐藏属性


2


系统文件属性


3


卷标属性


4


文件夹属性


5


上次存档后被修改过


6


加密属性


7


文件属性


8


临时属性


9


稀疏文件属性


10


Reparse point


11


压缩属性


12


文件脱机属性

Lnk文件还是算比较简单的,下面对利用lnk方式启动的木马作为例子分析

Lnk文件头

偏移


数据


说明


0x00


4C000000


常常为这个值


0x04


0114020000000000C000000000000046


lnk文件GUID


0x14


E1000000


flag标志(存在Shell Item ID List,命令参数,自定义图标)


0x18


00000000


目标文件属性


0x1c


0000000000000000


文件创建时间


0x24


0000000000000000


文件修改时间


0x2c


0000000000000000


文件最后一次访问时间


0x34


00000000


目标文件长度


0x38


00000000


自定义文件图标个数


0x3c


01000000


窗口显示方式(正常显示)


0x40


59060000


热键(Ctrl+Alt+Y)


0x44


0000000000000000


未知(0)

Shell Item ID List段说明

此段为数据结构

typedef struct _SHITEMID {

USHORT cb;

BYTE abID[0];

} SHITEMID, * LPSHITEMID;

cb表示SHITEMID结构体大小,abID[0]为可变长度值。

Shell Item ID List段开始为整个Shell Item ID List段的大小值

偏移


数据


说明


0x4c


3901


总大小,结束位置,0x4e+0x139=0x187


0x4e


14001F50E04FD020EA3A6910A2D808002B30309D


第一个


0x62


19002F433A5C00000000000000000000000000000000000000


第二个


0x7b


520031000000000000000000100057696E646F7773003C0008000400EFBE00000000000000002A00000000000000000000000000000000000000000000000000570069006E0064006F007700730000001600


第三个


0xcd


560031000000000000000000100073797374656D333200003E0008000400EFBE00000000000000002A00000000000000000000000000000000000000000000000000730079007300740065006D003300320000001800


第四个


0x123


6200320000AE0000EE3AD009200872756E646C6C33322E6578650000460008000400EFBEED3A36BDED3A36BD2A000000517B0000000001000000000000000000000000000000720075006E0064006C006C00330032002E0065007800650000001C00


第五个


0x186


0000


结束

       

Shell Item ID List可以猜测到这里存储了目标文件路径的ASCII以及UNICODE,木马的目标文件为C:\windows\system32\rundll32.exe。

接下来是命名参数:

“MemDraw.dll MemDrawPic”

最后是自定义图标,这个不会解析了,感觉这方面的资料也很少,好多未知的地方。

上一张图片1.lnk属性图

属性和我们解析的lnk文件格式相同。意思是调用rundll32.exe去执行MemDraw.dll的导出函数MemDrawpic。这样做的原因可能是为了突破杀毒软件的主动防御吧。

简单看了下木马是一个远控,更新服务器在微博链接:http://t.qq.com/testlogin1280

代码中有明显的键盘记录等后门操作

木马作者能想到这里还是很不错的,木马也写得很有质量,隐藏性很高,打开快捷方式首先会打开一张图片,关于游戏装备的,猜想这个样本主要用于游戏交易中发送过去控制对方盗取对方的游戏装备。

通过了解lnk文件格式可以进一步解析lnk,找出可疑点,写出批量处理异常lnk文件。

201303-lnk文件格式分析以及木马利用-willj[4st TeAm]

时间: 2024-08-11 03:27:08

201303-lnk文件格式分析以及木马利用-willj[4st TeAm]的相关文章

201310-安卓收集用户信息样本分析-willj[4st TeAm]

报告更新日期: 2013-10-14 样本发现日期: 2013-01-22 样本类型: Android 样本文件大小/被感染文件变化长度: 1.15 MB (1,209,713 字节) 样本文件MD5 校验值: 001769fd059d829a568b4196f07c6df9 壳信息:无 可能受到威胁的系统: Android OS 已知检测名称: Win32.Backdoor.Ginmaster.x 作者:willJ 简介 该样本为伪装成Android游戏盗取用户信息,病毒推广APP的木马. 详

PE文件格式分析

第一阶段:PE文件格式分析 使用UltraEdit观察PE文件例子程序hello-2.5.exe的16进制数据,在打印稿中画出该PE文件基本结构. 使用Ollydbg对该程序进行初步调试,了解该程序功能结构,在内存中观察该程序的完整结构. 熟悉各类PE文件格式查看和编辑工具(PEView.Stud_PE等). 使用UltraEdit修改该程序,使得该程序仅弹出第二个对话框. 第二阶段:熟悉并分析PE文件的引出表 找到系统System32目录下的user32.dll文件,用UltraEdit打开并

AVI 文件格式分析

************************************************************************ AVI 文件格式分析 --- 2014/8/23 16:40:05 ************************************************************************ avi含三部分:文件头.数据块和索引块. 1.文件头包括文件的通用信息,定义数据格式,所用的压缩算法等参数. 2.数据块包含实际数据流,即图

wav文件格式分析详解

wav文件格式分析详解 文章转载自:http://blog.csdn.net/BlueSoal/article/details/932395 一.综述    WAVE文件作为多媒体中使用的声波文件格式之一,它是以RIFF格式为标准的.RIFF是英文Resource Interchange File Format的缩写,每个WAVE文件的头四个字节便是"RIFF".    WAVE文件是由若干个Chunk组成的.按照在文件中的出现位置包括:RIFF WAVEChunk, Format C

OBJ文件格式分析工具: objdump, nm,ar

首先简要阐述关于gcc.glibc和 binutils模块之间的关系 一.关于gcc.glibc和binutils模块之间的关系 1.gcc(gnu collect compiler)是一组编译工具的总称.它主要完成的工作任务是"预处理"和"编译",以及提供了与编译器紧密相关的运行库的支持,如 libgcc_s.so.libstdc++.so等. 2.binutils提供了一系列用来创建.管理和维护二进制目标文件的工具程序,如汇编(as).连接(ld).静态库归档(

mpeg文件格式分析

MPEG-1流比特层次结构分析总结 1.简要介绍Mpeg 2.Mpeg-1数据流分析 2.1视频序列层(VideoStream) 2.2画面组层(GOP) 2.3画面层(Pictures) 2.4片层(Slice) 2.5宏块层(Macroblock) 2.6块层(Block) 3.加密位置的思考 附录 MPEG-1流比特层次结构分析总结 1.简要介绍Mpeg Mpeg是Motion Picture Expert Group的缩写.活动图像专家组是在1988年由ISO和IEC联合成立的专家组,负

多媒体(2):WAVE文件格式分析

目录 多媒体(1):MCI接口编程 多媒体(2):WAVE文件格式分析 多媒体(3):基于WindowsAPI的视频捕捉卡操作 多媒体(4):JPEG图像压缩编码 多媒体(2):WAVE文件格式分析

Linux及安全实践四——ELF文件格式分析

Linux及安全实践四——ELF文件格式分析 一.ELF文件格式概述 1. ELF:是一种对象文件的格式,用于定义不同类型的对象文件中都放了什么东西.以及都以什么样的格式去放这些东西. 二.分析一个ELF文件 以一个最简单的helloworld程序为例 1. ELF文件头 使用工具查看ELF文件头:readelf -h obj 在/usr/include/elf.h中可以找到文件头结构定义: 大小总共为64字节,换算成十六进制为0x40.在十六进制代码中找到前0x40字节,即为文件头信息部分(阅

Windows 10 LNK File分析

前情提要:警方接获线报,黑道份子阿强涉及制造与贩卖毒品,警方在其住处扣得笔记本电脑及数个U盘,送往实验室进行取证分析. 取证人员对证物进行证物镜像制作,并进行证物处理(Evidence Processing),开始进行取证分析.得知阿强的笔电的操作系统为Windows 10 专业版 64bit,本机的硬盘分割区为C盘与E盘,而D盘则是光驱,如下图所示. 检视文件内容或网页浏览纪录中,并未发现任何与毒品相关的迹证.但在LNK File的分析结果中,却发现有大量的可疑文件存取痕迹,皆与毒品有关,如下