AhnLab V3是韩国安博士公司开发的系列杀毒产品。 AhnLab V3杀毒引擎在解析.ZIP文件时没有正确地检查某些字段的值,这可能导致远程内核内存破坏。 ZIP文件头格式如下: 偏移 长度 内容 0 4 bytes Local file header signature (0x04034b50) 4 2 bytes Version needed to extract 6 2 bytes General purpose bit flag 8 2 bytes Compression method 10 2 bytes Last mod file time 12 2 bytes Last mod file date 14 4 bytes CRC-32 18 4 bytes Compressed size (n) 22 4 bytes Uncompressed size 26 2 bytes Filename length (f) 28 2 bytes Extra field length (e) (f)bytes Filename (e)bytes Extra field (n)bytes Compressed data 在26(0x1a)偏移处为文件名长度。AhnLab AV会拷贝文件名并在末尾添加空字节,但根据从0x1a偏移所读取的WORD值存储空字节。 kd> r eax=0000dddd ebx=8162f340 ecx=e1dade60 edx=e1dac060 esi=815a54f8 edi=e1dac054 eip=f72df075 esp=f8063834 ebp=f8063848 iopl=0 nv up ei pl zr na pe nc cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010246 v3engine+0xb4075: f72df075 c6040100 mov byte ptr [ecx+eax],0 AX是直接从zip文件读取的,因此受攻击者控制,这就导致了有限的用空字节覆盖任意内存地址。如果AhnLab启用了实时保护的话(默认配置),就可能触发内核内存破坏,导致蓝屏死机或执行内核态代码。
AhnLab V3是韩国安博士公司开发的系列杀毒产品。 AhnLab V3杀毒引擎在解析.ZIP文件时没有正确地检查某些字段的值,这可能导致远程内核内存破坏。 ZIP文件头格式如下: 偏移 长度 内容 0 4 bytes Local file header signature (0x04034b50) 4 2 bytes Version needed to extract 6 2 bytes General purpose bit flag 8 2 bytes Compression method 10 2 bytes Last mod file time 12 2 bytes Last mod file date 14 4 bytes CRC-32 18 4 bytes Compressed size (n) 22 4 bytes Uncompressed size 26 2 bytes Filename length (f) 28 2 bytes Extra field length (e) (f)bytes Filename (e)bytes Extra field (n)bytes Compressed data 在26(0x1a)偏移处为文件名长度。AhnLab AV会拷贝文件名并在末尾添加空字节,但根据从0x1a偏移所读取的WORD值存储空字节。 kd> r eax=0000dddd ebx=8162f340 ecx=e1dade60 edx=e1dac060 esi=815a54f8 edi=e1dac054 eip=f72df075 esp=f8063834 ebp=f8063848 iopl=0 nv up ei pl zr na pe nc cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010246 v3engine+0xb4075: f72df075 c6040100 mov byte ptr [ecx+eax],0 AX是直接从zip文件读取的,因此受攻击者控制,这就导致了有限的用空字节覆盖任意内存地址。如果AhnLab启用了实时保护的话(默认配置),就可能触发内核内存破坏,导致蓝屏死机或执行内核态代码。