0%

hexo编码问题

最近重拾起刷题,又需要重新推一下博客,遇到了之前遇到过但是没有解决的问题,今天重新花时间整理了一下,大致解决了问题
但是经过一次全部的重构之后

title处不能使用特殊字符

该问题可以通过html编码解决,将[]替换为html编码&#91&#93即可,但是出现了一些衍生错误,标题中不能使用空格,否则标题可能会缺一部分,使用下划线替代空格之后显示的又是空格,暂时不清楚怎么回事

找到另一个替代方法,将title用单引号包裹起来即可,展示时不会出现单引号,较为方便,在标题不出现单引号的情况下用单引号包裹title可以保证其他特殊字符不出现解析错误

阅读全文 »

[FBCTF2019]RCEService

buu上的题,最近打工开始划水,又要搞网鼎杯了,赶紧报一下佛脚

json文件格式

我太菜了,json属性字段一定要用双引号括起来,单引号是不可以的,为此我一开始试了半天,为什么输入什么东西都显示上了waf。。。

题解

阅读全文 »

[GWCTF 2019]枯燥的抽奖

伪随机数安全的一个题,通过php_mt_rand这个工具逆向出随机数种子,然后通过种子获取字符串

贴一下源码

<?php
header("Content-Type: text/html;charset=utf-8");
session_start();
if(!isset($_SESSION['seed'];)){
$_SESSION['seed'];=rand(0,999999999);
}

mt_srand($_SESSION['seed'];);
$str_long1 = "abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
$str='';
$len1=20;
for ( $i = 0; $i < $len1; $i++ ){
    $str.=substr($str_long1, mt_rand(0, strlen($str_long1) - 1), 1);       
}
$str_show = substr($str, 0, 10);
echo "<p id='p1'>".$str_show."</p>";


if(isset($_POST['num'];)){
    if($_POST['num'];===$str){x
        echo "<p id=flag>抽奖,就是那么枯燥且无味,给你flag{xxxxxxxxx}</p>";
    }
    else{
        echo "<p id=flag>没抽中哦,再试试吧</p>";
    }
}
show_source("check.php");

mt_rand(min,max)函数返回该区间内的任意一个数,通过如下脚本得到逆向所需数据,通过php_mt_rand工具爆破出种子

阅读全文 »

极客大挑战 RCE ME

三叶草招新赛里面一个比较难的题,无字母数字命令执行+bypass disable_function
当时做的时候不会手搓上传就弃了,今天在buu上复现重做了一遍

无字母数字命令执行

<?php
error_reporting(0);
if(isset($_GET['code'];)){
    $code=$_GET['code'];;
        if(strlen($code)>40){
            die("This is too Long.");
            }
        if(preg_match("/[A-Za-z0-9];+/",$code)){
            die("NO.");
            }
    @eval($code);
}
else{
    highlight_file(__FILE__);
}

// ?>

相比于SUCTF的命令执行简单了很多,直接使用取反~就能节约很多字符,也没有对使用字符种类的限制,可以直接构造简单的执行语句
var_dump(scandir(‘/‘));扫描目录发现根目录下有flag文件和readflag,直接读读不出来没权限,那么就是需要执行readflag了,但是从phpinfo里面可以看到禁止了能用的所有执行命令行的函数,但是有一个assert可以用,就构造一个assert($_GET[_];)进行命令执行,跳出长度限制,任意执行命令

阅读全文 »

[BJDCTF 2nd]部分wp

据说是萌新赛,就目前做的几个题来说的确较为简单

fake google

SSTI,测一下可以发现用的jinja2,搜一个payload直接打
SSTI上一次的BJDCTF也考过,具体判断什么的可以看上次比赛的WP

old-hack

阅读全文 »