 |
Asterisk chan_skinny远程缓冲区溢出漏洞 |
|
|
| Asterisk chan_skinny远程缓冲区溢出漏洞 |
|
| 作者:佚名 文章来源:不详 点击数: 更新时间:2007-1-26 15:09:08 |
|
2006-10-23 10:24:31
发布日期:2006-10-18 更新日期:2006-10-19
受影响系统:Asterisk Asterisk 1.2-branch <= 1.2.12.1
Asterisk Asterisk 1.0-branch <= 1.0.12 不受影响系统:Asterisk Asterisk 1.4.0-beta2
Asterisk Asterisk 1.4.0-beta1 描述:
BUGTRAQ ID: 20617
Asterisk是一款PBX系统的软件,运行在Linux系统上,支持使用SIP、IAX、H323协议进行IP通话。
Asterisk的chan_skinny.c文件中的static int get_input(struct skinnysession *s)函数没有正确地验证报文头中用户所提供的长度。远程攻击者可以通过发送特制报文来触发缓冲区溢出漏洞,导致执行任意指令。
asterisk-1.2.12.1/channels/chan_skinny.c的2860-2870中的漏洞代码:
----------------
res = read(s->fd, s->inbuf, 4); // <- integer read from attacker
if (res != 4) {
ast_log(LOG_WARNING, "Skinny Client sent less data than expected.\n");
return -1;
}
dlen = letohl(*(int *)s->inbuf); // <- input 0xfffffffa
// interpreted as signed
if (dlen+8 > sizeof(s->inbuf)) // <- integer wrap to +2
dlen = sizeof(s->inbuf) - 8; // bypasses this check
}
*(int *)s->inbuf = htolel(dlen); // casting just for amusement
res = read(s->fd, s->inbuf+4, dlen+4); /* <- dlen now unsigned again
* permitting read() to write
* up to 0xfffffffa bytes off
* the end of s->inbuf
*/
----------------
<*来源:Adam Boileau (adam.boileau@security-assessment.com)
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=116121567530170&w=2
*>
建议:
临时解决方法:
* 禁用chan_skinny模块。
* 在防火墙过滤2000/tcp端口上的通讯。
厂商补丁:
Asterisk
--------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://www.asterisk.org/
|
|
| 新闻录入:admin 责任编辑:admin |
|
|
上一篇新闻: Oracle 2006年10月更新修复多个安全漏洞 下一篇新闻: IBM Lotus Notes本地不安全默认目录权限漏洞 |
|
|
| 【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |
|
|
网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
|
|
|
|
|