强网杯 部分web

Hard_APT_jeesite

题目很明显,就是个jeesite1.2.7,从github可以拿到相应源码,因为题目描述中重点说了需要shiro的配置文件,所以我们主要关注源码中文件读取的部分。

方法1

可以首先查看web.xml的路由

image-20210615135105503

主要关注到这个路由,跟进方法查看

image-20210615135133714

是一个很明显的任意文件读

image-20210615135547097

会截取截取/userfiles/后面的字符读文件,但是由于../会被tomcat认为是穿越所以直接穿越读取肯定不成功,但我们可以通过userfiles;/能访问到接口,再使用/userfiles;/userfiles/../../就可以读到我们想要的文件

image-20210615140022795

然后读配置文件就可以拿到邮箱了

image-20210615135825440

方法2

审计由于jeesite有前台,我们也可以从前台入手

src/main/java/com/thinkgem/jeesite/modules/cms/web/front/FrontController.java

image-20210615140035576我们可以看到在comment的路由下的theme参数可控,而此参数可以与web路径拼接返回,所以此处我们也可以通过利用,

我们可以通过comment/?theme=../../../的方式返回上层

但是会有一个问题,此处会拼接frontcomment的路径需要绕

其实也很简单,我们在传入路径后加入?这样web服务就会把后面的路由当做参数去请求,所以绕过了拼接

最终也可以读到相应东西

image-20210615140321834

踩坑

由于本地搭不起来这个环境,把源码的关键部分抄了一下本地实现了

image-20210615135244020

发现可以成功,这时候出现了问题,发现远程一直没有成功

(似乎是应用只允许读/web-inf的东西,而我一直文件读/etc/passwd,或者是因为拼接问题,tcl)

java目录穿越对于穿越层数有着严格的限制,不能多不能少,若../../../后为根,如果输入../../../../则会报错,且本题任意文件读一直在测试读passwd,没有测试java相关文件,导致以为找到的接口有误。。

EasyWeb

前面先读文件

image-20210612231919420

告诉我们扫端口

Hint:
Try to scan 35000-40000 ^_^.
All tables are empty except for the table where the username and password are located
Table: employee

36842/tcp

访问 sqlmap

image-20210612231954850

admin 99f609527226e076d668668582ac4420

登录,然后扫目录file 文件上传

image-20210612232036816

内网

image-20210612232048503

访问发现只有8006可以访问,有个3.jsp

image-20210612232109847

发现目录的3.jsp为jsp马

image-20210612232126385

flag

image-20210612232133532

flag{V3ry_v3rY_E3si_a_w3B_Ch@1l3ng3}

Hard_Penetration

Shiro Rce,github随便找个工具,写个冰蝎内存马

挂到本地扫下 发现开了8005端口 访问是Baocms

github找个源码审计下

方法1

有display路由可以包含文件

image-20210612233541197

http://...../App/Common/display?templateFile=../../../../../../../../../../../../../../../../../../tmp/

image-20210612232953692

发现会拼接.html。那我们写个文件叫1.html.html

image-20210612233228242

Rce 直接拿flag就行了

方法2

image-20210615141356030

我们发现这里get的code会与

if(include($class_dir . '/BCG' . $_GET['code'] . '.barcode.php'))

完成代码拼接,所以在tmp写下同名文件,目录穿越到tmp即可包含恶意php代码,完成rce

[强网先锋]寻宝

KEY1:trips懒得说了

ppp[number1]=9e9 &ppp[number2]=9e9&ppp[number3]=0~!OT&ppp[number4]=00000e9&ppp[number5]=NULL

KEY2:搜key2。某个docx里有key2

image-20210614145848788

image-20210614145856329

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

Protected with IP Blacklist CloudIP Blacklist Cloud