ISCTF2023-Misc

队名

图书馆五楼风很大

队员ID

k1sme4
fault
L1ngYu

特别鸣谢

感谢全栈大爹fault✌带飞
感谢全栈大爹fault✌带飞
感谢全栈大爹fault✌带飞
感谢全栈大爹fault✌带飞
感谢全栈大爹fault✌带飞
感谢全栈大爹fault✌带飞

[签到题]

公众号去年关注了,拼图就省了,直接发消息拿flag就好
image.png
最终flag:

ISCTF{W3lcom3_7O_2023ISCTF&BlueShark}

[小蓝鲨的秘密]

两个伪加密,010里改一下
image.png
图片拖进010有报错,说明高度被修改,工具梭一下
image.png
得到密码:

15CTF2023

看flag.txt中的密文特征,一眼对称加密,网站解一下拿到flag:
image.png
最终flag:

ISCTF{2832-3910-232-3742-7320}

[easy_zip]

签到题,直接纯数字暴力破解秒了
最终flag:

ISCTF{ad84ba7d-a344-40d2-adf7-e82f56198995}

[杰伦可是流量明星]

010打开发现是rar
image.png
改后缀打开压缩文件,直接看里面的流量包,随便追踪一下http流看到url编码过的flag
image.png
解一下url再把flag头改成ISCTF即可
在这里插入图片描述
最终flag:

ISCTF{wddhr836459_83}

[一心不可二用]

拿到手是个apk,直接改后缀为zip,翻了翻找到一个加密的flag.zip文件
image.png
看到有注释
image.png
结合题目,去搜索该报错正确的格式,找到一篇文章
在这里插入图片描述
猜测压缩包密码为:

SyntaxError

解压得到flag,最终flag:

flag{Err0R_is_no7_ex1ste9}

[小猫]

Stegsolve找到一张坐标表
image.png|280
然后提取最低位的BGR拿到一张社会主义核心价值观的图片
image.png|425
手对一下,最后社会主义核心价值观解码拿到flag
image.png|475
最终flag:

flag{aca195fd3d0f2392548d029767dbf766}

[小白小黑]

根据题目描述,可知数字0、1、2、3、9对应白色像素块,数字4,5,6,7,8对应黑色像素,直接在记事本里都替换成0和1,然后01转二维码

from PIL import Image

strings = open('output_without_newlines.txt','r').read()
print(strings)
pic = Image.new("RGB",(256,256))
num = 0
for x in range(256):
    for y in range(256):
        if strings[num] == '1':
            pic.putpixel((x,y),(0,0,0))
        else:
            pic.putpixel((x,y),(255,255,255))
        num = num + 1

pic.show()


save_path = "./output.png"  # 图片保存路径,可以根据需要修改文件名和格式
pic.save(save_path)
print("图片已保存到当前路径: ", save_path)

拿到二维码,扫描出flag
image.png|475
最终flag:

ISCTF{115b0e09-5d8a-4828-b9c7-307e74315fc4}

[你说爱我?尊嘟假嘟]

你说爱我替换为Ook.,尊嘟替换为Ook!,假嘟替换为Ook?,然后Ook解密解密
image.png|425
一个变表base64拿到flag
image.png
最终flag:

ISCTF{9832h-s92hw-23u7w-2j8s0}

[spalshes]

题目说换个思路,那就直接暴力破解
image.png|375
解密后扫二维码得到flag
image.png|375
最终flag:

ISCTF{8374-su23-9s7e-237s-js65-55sg}

[蓝鲨的福利]

修复png文件头,改文件后缀为.png即可
image.png
最终flag:

ISCTF{blueshark_welcome_you}

[Ez_misc]

对ppt用strings,看到一个很像密码的字符串
image.png
解密后拿到jpg图片,明显是经过AI处理的二维码,百度发现只需要补上定位块就可以扫描,我这里还用Stegsolve反了一下色
image.png|500
最终flag:

flag{5e093f8a-6b8c-4fa5-b9f7-0ae3b6b0da56}

[镜流]

一眼构造明文爆破
image.png
恢复hint.txt
image.png
提示将图片缩小十倍,写个脚本就可以

from PIL import Image

def extract_pixels(input_image_path, output_image_path):
    image = Image.open(input_image_path)
    width, height = image.size
    extracted_image = Image.new('RGB', (width // 10, height // 10))

    for x in range(0, width, 10):
        for y in range(0, height, 10):
            pixel = image.getpixel((x, y))
            extracted_image.putpixel((x // 10, y // 10), pixel)

    extracted_image.save(output_image_path)

input_image_path = '12345.png' 
output_image_path = 'output.png' 
extract_pixels(input_image_path, output_image_path)

得到的图片用zsteg分离一下,得到包含flag的图片
image.png|475
image.png
image.png
最终flag:

ISCTF{JINGLIU_IS_SO_COOL}

[张万森,下雪了]

用给出的字典直接字典爆破
image.png|325
打开后先解tip.txt里的base64,然后字频统计
image.png|475
得到密码:

ISCTFZ023

根据题目,一眼snow隐写
image.png
最终flag:

ISCTF{34da-a87s-sk87-s384-3982-398233}

[EZcrc]

根据hint,对爆破出的汉字与字母进行对应,数字也是繁体汉字,最后得到一串base64
image.png
解两次base64即可得到flag
image.png
最终flag:

ISCTF{5f24523e-4422-4700-8166-b65acd52c9d3}

[ezUSB]

脚本可以提出后半部分的键盘流量,前半部分蓝牙传输的提取脚本没写出来,于是手提
有几个要注意的点:
1、键盘流量中39对应的是大写锁定
image.png
2、02开头代表按键时同时按下了shift
image.png
键盘流量中2f对应的应该是“[”,但这里02开头,那么得到的字符就是“{”
最后提取出的信息为:

AGGSZ{Kp_wn_YRV_sov_jmfyffjs!!!}

感觉像维吉尼亚,没有找到密码,但考虑到“AGGSZ”对应的肯定为“ISCTF”,所以一一对应,再补全为有意义的完整字符串,得到密码为:

soezusb

解密得到flag
image.png
最终flag:

ISCTF{So_ez_USB_and_vigenere!!!}

[MCSOG-猫猫]

在群里发flag在哪,拿到回复,然后零宽一把梭
image.png
最终flag:

ISCTF{[o]F0oO.LliI_Bu_D4Ng_r3N}

[DISK]

取证大师直接开,定位到日志文件
image.png
提取出来上图标记的文件,用NTFS Log Tracker把日志文件转成数据库文件
image.png
image.png
看到一些文件重命名的过程,将原始文件名提出来,考虑到应该就是加密过的flag字符串,诸多尝试无果,最后用libsum库中的n2s()函数解密
经尝试几种排列组合后得到脚本:

from libnum import *
flag = ''
l = [1230193492,1182487903,1918846768,811884366,1413895007,1298230881,1734701693]
for i in range(7):
    a = l[i]
    b  = n2s(a)
    c = b.decode("utf-8")
    flag += c
print(flag)

运行结果:
image.png
最终flag:

ISCTF{U_r_G00d_NTFS_Manager}

[stream]

一眼sql盲注,wireshark中导出http流量
image.png|500
这里直接手对就好,对完十进制转ASCII码拿到flag
最终flag:

ISCTF{0ops!-Y0u-F1nd-Th3-S3cret-flag!!!}

[sudopy]

先执行以下命令,看看用户都有什么权限:

cat /etc/sudoers

发现我们的ctf用户可以在任何主机上以任何用户身份使用sudo命令执行"/usr/bin/python3 /home/ctf/web.py",而且不需要输入密码
image.png
于是修改一下web.py的代码,让它读取flag文件

def cat_file(file_path):
    try:
        with open(file_path, 'r') as file:
            content = file.read()
            print(f"File Content:\n{content}")
    except FileNotFoundError:
        print(f"File not found: {file_path}")
    except Exception as e:
        print(f"An error occurred: {e}")
        
file_path = "/home/ctf/flag"
cat_file(file_path)

运行得到flag:
image.png
最终flag:

ISCTF{fc1d9711-035f-4a1a-8b8e-6a6145561bc4}

[PNG的基本食用]

第一部分改png宽高
image.png
第二部分用stegsolve
image.png
第三部分在文件尾找到一个7z,解压就是flag的part3
image.png
image.png
最终flag:

ISCTF{png-is-so-ez-for-you}

[Wonderful New World]

进行一个非预期
首先在日志文件2023-11-27-1.log中找到后半部分flag
image.png
image.png|500
别的地方没找到前半段,看后半段flag格式突发奇想,直接试着输入WELCOME_TO,结果正确
最终flag:

ISCTF{WELCOME_TO_MC_WORLD_IN_ISCTF}

[status]

这道题的/etc/sudoers文件上权限了不可读,ls看到/home/ctf目录下有一个可执行文件checkgenshin,于是想到通过写入脚本的方式和可执行文件获取flag
首先在/home/ctf目录创建一个脚本,实现读取flag文件的功能,命令如下:

echo -e '#!/bin/bash\ncat /home/ctf/flag' > /home/ctf/service

然后将文件的执行权限设置为可执行,由此可以运行这个脚本,命令如下:

chmod =x /home/ctf/service

下面将/home/ctf目录添加到当前shell进程的PATH环境变量中,由此执行命令时,系统会首先在/home/ctf目录中查找可执行文件,然后再在其他目录中查找,命令如下:

export PATH=/home/ctf:$PATH

最后运行可执行文件checkgenshin,得到flag,命令如下:

./checkgenshin

image.png
最终flag:

ISCTF{6421ed24-3e4f-45f1-9417-7fc5ab5752f1}

[小蓝鲨的问卷]

填写问卷即可
d7523e6df29ddd00a679022fa4a5bdd.jpg|400
最终flag:

ISCTF{2024ISCTF_WELCOME_YOU}
  • 20
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值