当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2012-011575

漏洞标题:从按键音中推测出周总手机号码(360音频分析)

相关厂商:奇虎360

漏洞作者: Hilbert

提交时间:2012-08-31 00:53

修复时间:2012-10-15 00:53

公开时间:2012-10-15 00:53

漏洞类型:重要资料/文档外泄

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2012-08-31: 细节已通知厂商并且等待厂商处理中
2012-08-31: 厂商已经确认,细节仅向厂商公开
2012-09-03: 细节向第三方安全合作伙伴开放
2012-10-25: 细节向核心白帽子及相关领域专家公开
2012-11-04: 细节向普通白帽子公开
2012-11-14: 细节向实习白帽子公开
2012-10-15: 细节向公众公开

简要描述:

从按键音中听出360总裁周鸿祎的手机号码

详细说明:

在优酷首页关于360和百度的搜索战的报道中放出了这么一个视频:

视频的第33秒到43秒,可以清晰地听到优酷记者给周鸿祎拨号的整个过程,的确用人耳听会觉得每个音都差不多,但是将它们转化成图形以后,就可以很清楚地看到它们的差别了。
先用ffmpeg将这段声音截出来,转成PCM Signed 24位的单声道wav文件,然后用Adobe Soundbooth打开它:


绿色那部分是波形图(waveform),绿线和横轴交点的密度代表频率(音调),一个周期内最高点和最低点的距离代表振幅(响度),但是这种图丢失了很多信息,一般用不上;
下半图是加上时间后的频谱图(sound spectrum),事实上,我们听到的每个声音,它的每一小段都是由很多个不同强度和不同频率的声音(note)组成的。下半图很好地展现了这些信息,横坐标代表了时间,而纵坐标则代表频率,颜色代表强度(深色弱浅色强),故下半图中的一个点,表示的是在某个时间点上,某个频率的声音的强度;从上图中我们可以很清晰地看到11根由黄色和红色组成的“柱子”,估计你也猜到了,就是按那11个数字的时候产生的按键音


而我们平常所用的电话,是通过DTMF信号来向交换机传递命令的,每按下电话键盘上的一个键,就会同时发出两个不同频率的声音,转化成电流在对面解析(可以回忆柯南剧场版中通过唱歌拨电话)。也就是说,记者按下的每个键的声音,实际上是由两个纯粹的音(tone)构成的,通过上表可以看到每个数字由哪两个频率的声音构成,接下来就好办了
将400Hz到1700Hz以内的频谱图放大,然后找出浅色(强度高)的频率段:


周总的手机号是:1370**9**98
注:1、因为音频的质量,开头的数字1无法从频谱图中得出,但是地球人都知道中国大陆手机号开头是1;
2、最后的“8”,因为必须由一个高音构成,虽然不明显,但是相比1477Hz和1209Hz,1366Hz最强;
3、下面的一片黄色,是环境音和座机按键的机械声音造成的,当发出否个频率的声音时,黄色会散布在频率线的两侧,故中间的数字“9”的低音,选择的是852Hz而不是941Hz;
4、因为这涉及隐私,所以就不把号码全公布出来了,部分某些数字的频谱区域打了马赛克,数字标记为“*”

漏洞证明:

验证:
1 号码归属地:


2 我在手机上按了一遍号码,并把它录下来了,结果完全一样

3 晚上十点,我打了个电话给他:= =
我:“喂,您好,请问是周先生吗?”
他:“我在开会,你有事吗?”
(我当时很紧张,完全不知道怎么说)
我:“抱歉我打错了”
(然后就把电话挂了,当时好纠结没有问“请问您是360的周先生吗”这样=。=)
4 关键证据,Google了一下电话号码,因为防止里面的信息被用来作为关键字再Google出号码,所以打了很多马赛克

修复方案:

1 我们平常用手机拨号,或者在门禁处或者一些机器上输入密码的时候,千万要注意身旁有没有人录音,通过上面的例子你们也会发现,除非有人在现场唱美声,否则输入的整个过程是可以通过声音被还原出来的;
2 电视媒体在拨给公众人物的时候,不要把拨号过程也放出来,这是很危险的

版权声明:转载请注明来源 Hilbert@乌云


漏洞回应

厂商回应:

危害等级:低

漏洞Rank:5

确认时间:2012-08-31 10:27

厂商回复:

感谢您的反馈,但是这个昨天微博上就有了。楼主不是来骗WB的吧。。。

最新状态:

暂无