apt-www-proxy远程格式串溢出漏洞
发布日期:2002-12-09
更新日期:2002-12-16
受影响系统:apt-www-proxy apt-www-proxy 0.1
描述:
BUGTRAQ ID:
6340
apt-www-proxy是一款代理服务器,特别设计用于apt-get http:// 形式的知识库。
apt-www-proxy由于不正确使用syslog()函数记录错误日志,远程攻击者可以利用这个漏洞提交恶意字符串覆盖内存任意地址,以服务进程在系统上执行任意指令。
在''src/utils.c'文件中173上的awp_log()函数:
__
173 void awp_log(int level, const char *message)
...
222 if((level < LOG_DEBUG) || (1 == logit))
224 /* log that information */
227 syslog(level, message); // Here.
...
--
由于调用syslog()时对参数缺少正确处理,攻击者如果提交恶意的包含格式字符串的错误信息,就可以破坏堆栈内容,精心提交格式串数据可能以服务进程的权限在系统上执行任意指令。
<*来源:dong-h0un U (
xploit@hackermail.com)
链接:
http://marc.theaimsgroup.com/?l=bugtraq&m=103953928107521&w=2
*>
建议:
临时解决方法:
如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:
* "dong-h0un U" <
xploit@hackermail.com>提供如下第三方补丁:
=== utils.patch ===
--- utils.c Mon Oct 22 15:20:29 2001
+++ utils.patch.c Sat Nov 30 02:26:35 2002
@@ -224,11 +224,11 @@
/* log that information */
if(background)
{
- syslog(level, message);
+ syslog(level, "%s", message);
}
else
{
- fprintf(stderr, message);
+ fprintf(stderr, "%s", message);
}
}
}
@@ -265,6 +265,10 @@
struct urlmask *curu = urls;
int found = 0;
+ if(client->get==NULL)
+ {
+ return(0);
+ }
/* now match against the archives */
if(!strncmp("http://", client->get, 7))
{
=== eof ===
厂商补丁:
apt-www-proxy
-------------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://ironsides.terrabox.com/~ahzz/index.html浏览次数:3795
严重程度:0(网友投票)