Yelp无效URI格式串漏洞
发布日期:2008-08-13
更新日期:2008-09-05
受影响系统:GNOME yelp 2.23.1
描述:
BUGTRAQ ID:
30690
CVE(CAN) ID:
CVE-2008-3533
Yelp是Gnome中的帮助查看器,在需要时按下F1就可以获得帮助信息。
yelp在使用gtk_message_dialog报告无效的URI时存在格式串漏洞。如果使用ftp://或file:// 指定了无效的URI,就会在yelp-window.c文件的1008行创建The requested URI %s is invalid错误消息,gchar字符串被传送到了同一文件1129行的window_error函数,然后没有使用yelp-window.c文件1156行的格式串不安全的创建了GTK对话框。
gtk_message_dialog_format_secondary_markup的函数原型为:
void gtk_message_dialog_format_secondary_markup (GtkMessageDialog
*message_dialog,
const gchar
*message_format,
...);
这里message_format为printf()样式标记字符串。
如果用户受骗点击了恶意链接的话,这个漏洞可能导致执行任意代码。由于yelp的网络功能,在注册了man或ghelp URI的Firefox、Evolution 等浏览器中这个漏洞还可以被远程利用。
<*来源:Aaron Grattafiori
链接:
http://secunia.com/advisories/31465
http://bugzilla.gnome.org/show_bug.cgi?id=546364
http://security.gentoo.org/glsa/glsa-200809-01.xml
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
yelp ftp://%08x.%08x.%08x.%08x.%08x.%08x
yelp %x%x%x%x%x%x://
yelp %08x%08x
建议:
厂商补丁:
GNOME
-----
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://security.ubuntu.com/ubuntu/pool/main/y/yelp/yelp_2.20.0-0ubuntu3.1_i386.deb
Gentoo
------
Gentoo已经为此发布了一个安全公告(GLSA-200809-01)以及相应补丁:
GLSA-200809-01:yelp: User-assisted execution of arbitrary code
链接:
http://security.gentoo.org/glsa/glsa-200809-01.xml
补丁下载:
所有yelp用户都应升级到最新版本:
# emerge --sync
# emerge --ask --oneshot --verbose ">=gnome-extra/yelp-2.22.1-r2"
# emerge --sync
# emerge --ask --oneshot --verbose ">=gnome-extra/yelp-2.20.0-r1"
浏览次数:2592
严重程度:0(网友投票)