webcrack4那把人吓尿的声音提取
郁闷,我的无线路由器登陆密码搞忘了。
没事时,在网上搜了个路由器密码破解软件webcrack4。
当然密码也没破解掉,但结束的声音让我打了个激灵,有点吓尿了我。
。。。。
试着想把这声音从软件里搞出来。一个文件。
先用peid看看加壳了没有。(没有)
接着试了几个资源编辑工具exescope、resScope、freeRes0.94等。(没搞成)
......
看来得下点功夫了。
用W32dsm看导入表,发现winmm.sndPlaySound函数。
BOOL sndPlaySound(
LPCTSTR lpszSoundName,
UINT fuSound
);
播放WAV,只有两个参数,1,内存指针,2,声音类型的标志。
看来内存中指向的位置是关键,即声音文件wave在内存中的位置。
试着用OllyICE下断点bp sndPlaySoundA
拦下,剩下的就简单了。
搜了下常用语音编码的WAVE文件头格式剖析
偏移地址 字节数 数据类型 内容 文件头定义为
00H 4 char "RIFF" char riff_id[4]="RIFF"
04H 4 long int 文件总长-8 long int size0=文总长-8
08H 8 char "WAVEfmt " char wave_fmt[8]
可以看到WAV文件的开头是"RIFF"标志 ,然后是大小,然后是“WAVEfmt”标志。
可以在内存中搜以上的关键字。
找到后复制二进制,在Hex Workshop v5生成二进制文件,另存为wav格式。
一切OK。
我的铃声也设为哪恐怖的哭声了,当然听多了也不会吓尿了。呵呵。
附件 84895声音文件
郁闷,我的无线路由器登陆密码搞忘了。
没事时,在网上搜了个路由器密码破解软件webcrack4。
当然密码也没破解掉,但结束的声音让我打了个激灵,有点吓尿了我。
。。。。
试着想把这声音从软件里搞出来。一个文件。
先用peid看看加壳了没有。(没有)
接着试了几个资源编辑工具exescope、resScope、freeRes0.94等。(没搞成)
......
看来得下点功夫了。
用W32dsm看导入表,发现winmm.sndPlaySound函数。
BOOL sndPlaySound(
LPCTSTR lpszSoundName,
UINT fuSound
);
播放WAV,只有两个参数,1,内存指针,2,声音类型的标志。
看来内存中指向的位置是关键,即声音文件wave在内存中的位置。
试着用OllyICE下断点bp sndPlaySoundA
拦下,剩下的就简单了。
搜了下常用语音编码的WAVE文件头格式剖析
偏移地址 字节数 数据类型 内容 文件头定义为
00H 4 char "RIFF" char riff_id[4]="RIFF"
04H 4 long int 文件总长-8 long int size0=文总长-8
08H 8 char "WAVEfmt " char wave_fmt[8]
可以看到WAV文件的开头是"RIFF"标志 ,然后是大小,然后是“WAVEfmt”标志。
可以在内存中搜以上的关键字。
找到后复制二进制,在Hex Workshop v5生成二进制文件,另存为wav格式。
一切OK。
我的铃声也设为哪恐怖的哭声了,当然听多了也不会吓尿了。呵呵。
附件 84895声音文件