【代码审计】iCMS_v7.0.7 search.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/search/search.admincp.php 第15-27行:
- public function do_iCMS(){
- if($_GET['keywords']) {
- $sql =" WHERE `search` like '%{$_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@__search_log` {$sql}","G");
- iUI::pagenav($total,$maxperpage,"条记录");
- 10. $rs = iDB::all("SELECT * FROM `#iCMS@__search_log` {$sql} order by {$orderby} LIMIT ".iUI::$offset." , {$maxperpage}");
- 11. $_count = count($rs);
- 12. include admincp::view("search.manage");
- 13. }
这段函数中将获取到的参数keywords、orderby、maxperpage,然后进行SQL语句拼接,其中keywords有单引号保护,maxperpage强制转换为数字类型,orderby参数未经任何处理,带入数据库执行,导致程序在实现上存在SQL注入漏洞,攻击者可利用该漏洞获取数据库敏感信息。
0x02 漏洞利用
根据漏洞位置,构造出参数 Payload:
http://127.0.0.1/admincp.php?app=search&perpage=20&keywords=1111&orderby=1 and 1=(updatexml(1,concat(0x3a,(select user())),1))—

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

【代码审计】iCMS_v7.0.7 search.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 keywords.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 ...
- 【代码审计】XIAOCMS_后台database.php页面存在SQL注入漏洞
0x00 环境准备 XIAOCMS官网: http://www.xiaocms.com/ 网站源码版本:XiaoCms (发布时间:2014-12-29) 程序源码下载:http://www.xi ...
- iCMSv7.0.15后台database.admincp文件仍存在SQL注入漏洞
闲着无聊,国庆时间没事做,又在Q群看到这种公告,只好下个icms慢慢玩.(PS:医院和学校居然都关网站了) 无奈自己太菜,审不出问题.只好上网百度icms之前的漏洞.然后居然成功在iCMSv7.0.1 ...
- 【代码审计】五指CMS_v4.1.0 后台存在SQL注入漏洞分析
0x00 环境准备 五指CMS官网:https://www.wuzhicms.com/ 网站源码版本:五指CMS v4.1.0 UTF-8 开源版 程序源码下载:https://www.wuzhi ...
随机推荐
- 使用OpenOffice.org将各类文档转为PDF
http://blog.zhaojie.me/2010/05/convert-document-to-pdf-via-openoffice.html ————————————————————————— ...
- HTML5数据推送SSE原理及应用开发
JavaScript表达行为,CSS表达外观,注意HTML既表达结构(逻辑结构),又表达内容(数据本身)通常需要更新数据时,并不需要更新结构,正是这种不改变组织结构仅改变数据的诉求,推动了数据拉取和数 ...
- Struts 2应用程序安全功能的配置详解
安全性是Web应用程序开发工作中最关键的问题之一.在基于servlet的应用程序里,保护应用程序资源的办法有两种:一是对应用程序进行配置(web.xml),二是使用Java代码硬编码到程序中.前一种方 ...
- python-迭代器与生成器的区别
这里涉及几个知识点:迭代器.生成器.yieId 先用个例子看一下迭代器与生成器的区别吧 #L是个list,迭代用for循环即可,L取出来是存放在内存中的,再多次去循环取出都可以>>> ...
- e587. Filling Basic Shapes
There are two ways to fill basic shapes like lines and rectangles. The first is to use specific draw ...
- Sql实现PadLeft
/******************************************************************************** 格式化字符串 ----------- ...
- keystone源码分析(一)——Paste Deploy的应用
本keystone源码分析系列基于Juno版Keystone,于2014年10月16日随Juno版OpenStack发布. Keystone作为OpenStack中的身份管理与授权模块,主要实现系统用 ...
- Python学习注脚
python版本:2.7.6 Python基础学习书摘. 变量命名规范: python的变量名只能由字母和数字组成,且必须以字母开头. python的变量名不能使用系统已有的关键字,包括: and c ...
- C# 使用 Task 替换 ThreadPool ,异步监测所有线程(任务)是否全部执行完毕
using Microsoft.VisualStudio.TestTools.UnitTesting; using System.Collections.Generic; using System.T ...
- spring cloud feign 上传文件报not a type supported by this encoder解决方案
上传文件调用外部服务报错: not a type supported by this encoder 查看SpringFormEncoder类的源码: public class SpringFormE ...