Extended Module Player...

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

BUGTRAQ ID: 27047 Extended Module Player(XMP)是用于播放老式MOD文件的命令行播放器。 XMP实现上存在多个缓冲区溢出漏洞,远程攻击者可能利用此漏洞控制用户系统。 --------------------------------------------- A] test_oxm/decrunch_oxm缓冲区溢出 --------------------------------------------- 由于可以绕过ilen > 263的检查,导致处理OXM文件格式的函数中存在缓冲区溢出,将ilen设置为负值就可以触发这个溢出,导致执行任意指令。以下是misc/oxm.c文件中的漏洞代码: int test_oxm(FILE *f) { int i, j; int hlen, npat, len, plen; int nins, nsmp, ilen; int slen[256]; uint8 buf[1024]; ... ilen = read32l(f); if (ilen > 263) return -1; fseek(f, -4, SEEK_CUR); fread(buf, ilen, 1, f); /* instrument header */ ... ------------------------------ B] dtt_load缓冲区溢出 ------------------------------ dtt_load()函数中的溢出允许用任意数据覆盖pofs和plen数组,以下是loaders/dtt_load.c中的漏洞代码: static int dtt_load(struct xmp_context *ctx, FILE *f, const int start) ... uint32 pofs[256]; uint8 plen[256]; int sdata[64]; ... m->xxh->pat = read32l(f); ... for (i = 0; i < m->xxh->pat; i++) pofs[i] = read32l(f); ... Extended Module Player xmp 2.5.1 Extended Module...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息