首页
社区
课程
招聘
[原创]PPStream MP3文件溢出
发表于: 2011-6-14 12:07 7440

[原创]PPStream MP3文件溢出

2011-6-14 12:07
7440

近日发现PPStream在播放MP3文件格式存在缓冲区溢出,
原因在于PPStream在播放MP3文件时会自动构造lrc文件路径,查找其对应歌词文件。
溢出出现在构造lrc文件时,没有对缓冲区大小进行检查,故过长的文件名会造成溢出。

该文件会出现在在播放列表中。
跟踪到列表文件为C:\Documents and Settings\Administrator\Application Data\PPStream\MediaList\PlayList\默认播放列表.XML

<?xml version="1.0" encoding="UTF-8"?>
<Root>
<Medias>
<PLF Name="123.mp3" NamePinYin="123.mp3" ExtName=".mp3" Duration="4:43" FileSize="2269530">
C:\Documents and Settings\Administrator\桌面\123.mp3</PLF>
</Medias>
</Root>

[培训]科锐逆向工程师培训第53期2025年7月8日开班!

收藏
免费 7
支持
分享
最新回复 (13)
雪    币: 37
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
沙发再说!!!
2011-6-14 12:38
0
雪    币: 88
活跃值: (25)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
3
看看再说!!
2011-6-14 12:43
0
雪    币: 656
活跃值: (458)
能力值: ( LV12,RANK:360 )
在线值:
发帖
回帖
粉丝
4
找跳板?我也不太懂,去看下为0DAY的书....
2011-6-14 14:07
0
雪    币: 387
活跃值: (76)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
8B4D F4       mov ecx,dword ptr ss:[ebp-C] ,如果能覆盖到ebp-c,就可以将ebp-c覆盖为一个无效地址,指令执行到这里会access violation,到SEH处执行。
2011-6-14 14:15
0
雪    币: 111
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
6
[QUOTE=zycxy;969569]8B4D F4       mov ecx,dword ptr ss:[ebp-C] ,如果能覆盖到ebp-c,就可以将ebp-c覆盖为一个无效地址,指令执行到这里会access violation,到SEH处执行。[/QUOTE]

已经盖过去了.但是在下面的Check出问题以后,程序直接退了,没有执行到SEH
2011-6-14 14:24
0
雪    币: 387
活跃值: (76)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
不会吧,如果这里出了问题,应该会直接到SEH执行啊。还有,为什么我没找到那个.xml文件。。
2011-6-14 14:25
0
雪    币: 656
活跃值: (458)
能力值: ( LV12,RANK:360 )
在线值:
发帖
回帖
粉丝
8
[QUOTE=zycxy;969569]8B4D F4       mov ecx,dword ptr ss:[ebp-C] ,如果能覆盖到ebp-c,就可以将ebp-c覆盖为一个无效地址,指令执行到这里会access violation,到SEH处执行。[/QUOTE]

这时候的ECX是上次的SEH处理地址吧?

把他的地址覆盖成无效地址..那还怎么到SEH处执行?不解
2011-6-14 14:28
0
雪    币: 387
活跃值: (76)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
9
啊!是SEH地址啊。。大家无视我把。。
2011-6-14 14:30
0
雪    币: 111
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
10
C:\Documents and Settings\Administrator\Application Data\PPStream\MediaList\PlayList\默认播放列表.XML

你先把文件拖到程序上面,然后在程序的本地列表里就可以看到那个文件.
xml的目录去当前用户的\Application Data下面会有.
2011-6-14 14:31
0
雪    币: 656
活跃值: (458)
能力值: ( LV12,RANK:360 )
在线值:
发帖
回帖
粉丝
11
从你的例子中,我明白了cookie的作用,哈哈...
2011-6-14 14:35
0
雪    币: 111
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
12
怎一个蛋疼了得..
2011-6-14 14:36
0
雪    币: 656
活跃值: (458)
能力值: ( LV12,RANK:360 )
在线值:
发帖
回帖
粉丝
13
编译器会在可能发生缓冲区溢出的函数插入Cookie变量和安全检查

0c6K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4N6%4N6#2)9J5k6h3W2@1P5Y4c8F1i4K6u0W2j5$3!0E0i4K6u0r3N6r3g2U0K9q4)9J5c8X3S2@1L8h3I4Q4x3V1j5^5x3e0k6Q4x3X3g2Z5N6r3#2D9
2011-6-14 14:40
0
雪    币: 111
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
14
这程序里异常过不掉GS,我没辙了
2011-6-14 14:42
0
游客
登录 | 注册 方可回帖
返回