Progress 4GL Compiler Datatype本地缓冲区溢出漏洞

漏洞信息详情

Progress 4GL Compiler Datatype本地缓冲区溢出漏洞

漏洞简介

Progress 4GL Compiler是Progress应用程序编译器。
Progress 4GL编译器在编译.p文件时不正确处理用户定义的数据类型,本地攻击者可以利用这个漏洞触发缓冲区溢出,可能以高权限用户执行任意指令。
一般一个合法的数据类型为\”char\”, \”integer\”, \”date\”等,当编译器尝试解析非法数据类型时会显示如下信息:
** Invalid datatype — sample types are: char, integer, date, logical (222)
** overflow.p Could not understand line 1. (196)
在显示信息后,用户按空格键会退出。
如果非法数据类型超过364字符,编译器由于不正确使用memmove()函数,会导致段错误。如下面的数据类型:
def var andrew as AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAA00001111
上面的0000就会覆盖EBP,1111会覆盖EIP。
精心构建非法数据类型,并诱使其他用户使用编译器处理.p文件,就可能以其他用户权限在系统上执行任意指令。

漏洞公告

厂商补丁:
Progress
——–
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://www.progress.com” target=”_blank”>
http://www.progress.com

参考网址

来源: BID
名称: 7997
链接:http://www.securityfocus.com/bid/7997

来源: BUGTRAQ
名称: 20030620 SRT2003-06-20-1232 – Progress 4GL Compiler datatype overflow
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=105613243117155&w=2

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享