第三届xcitc-ctf招新赛部分题解

write up

reverse

Ez_ez

Ez_ez然后找ida64打开这个helloELF这个文件搜索ida工具使用教程然后按了f5答案就出来了

ez_asm

ez_asm 打开发现里面有H,H在计算机中表示16进制,让后尝试16进制转换为10进制让后换算出来ASCII

依次类推转换完就是pflag{Hello_Assembly}

welcome_login

welcome_login下载发现是一个可执行文件然后使用ida64打开发现没有然后使用ida32位打开选中几个字段然后跳转到地址然后上下找发现分成三段然后一个一个复制让后就出来了答案

WEB

欢迎欢迎

欢迎欢迎题首先打开里面的连接,习惯性的按f12查看内存中的源代码发现里面又一行注释falg.txt让后在端口后面/flag.txt发现flag{welcome_to_xcitc_21}

easyphp

easyphp进入先看if 条件 发现是get传参数flag如果等于0就输出结果

让后就开始做题端口后面加/?flag[]=0 结果就出来了flag{f97c5d29941bfb1b2fdab0874906ab82}

还不能相同?

还不能相同?进入先看单行多if 条件 发现是get传参数username和password让后条件是

username和password两个不能相同让后我们就在端口后面加/?username[]=huaji&password[]=zhien

结果就出来了Flag: flag{1bc29b36f623ba82aaf6724fd3b16718}

大飞机,呼呼呼

大飞机,呼呼呼这个就不一样了一开始以为是账号密码破解试了好久不对,让后就闲着没事打开kali使用burp suite扫一下这个地址不扫不知道发现里面有flag: Wm14aFozdG9kSFJ3WDJobFlXUmxjbDlvYUdoOQ==,看到后面有两个==直接幻想base64

然后网上搜索在线base64解密使用发现还是密文ZmxhZ3todHRwX2hlYWRlcl9oaGh9就在次复制上次解密一次的base64继续解密发现了flag让后结果就出来了flag{http_header_hhh}

一起打篮球吧。。。。

一起打篮球吧。。。。打开题按f12查看内存中的源代码发现里面又一行注释robots.txt 让后/robots.txt

1
2
3
4
User-agent: *
Disallow: /admin/
Disallow: /admin/shell/
Disallow: /admin/shell/flag.php

发现/admin/shell/flag.php 访问发现啥也没有让后思考思考想不出来

让后的有一个点击获取flag,点击之后发现/?file=hint.html 让后靠我的百度搜

php有file漏洞

就按照百度方法改改/?file=php://filter/read=convert.base64-encode/resource=admin/shell/flag.php

让后发现是密文PD9waHAKJGZsYWcgPSAnZmxhZ3tMRklfMXNfZjRufSc7Ci8vIGVjaG8gJGZsYWc7Cj8+Cg==

让后找在线base64解密

1
2
3
4
<?php
$flag = 'flag{LFI_1s_f4n}';
// echo $flag;
?>

然后结果就出来了flag{LFI_1s_f4n}

Pwn

NC之光

NC之光我先用kali 终端命令行输入nc 121.40.134.251:10000 让后提示地址不存在,让后进群划水得知去掉”:”让后nc 121.40.134.251 10000进入了发现有flag.txt 让后cat flag.txt

让后结果就出来了flag{f3857b88-c92c-4426-89a6-ee94e4eac938}

crypto

crypto

前十个都是浏览器搜索名称让后就出结果了等等等。。。。。。

asc

asc打开是ASCII偏移根据提示偏移-4然后根据提示的ord和cha

python写出如下脚本

1
2
3
4
5
6
keys='Iew}cewgchigshi%%%'
flag=""

for i in keys:
flag+=chr(ord(i)-4)
print(flag)

Ez_xor

看百度加谷歌加哔哩哔哩同时做出的题

1
2
3
4
5
6
7
8
9
10
11
keys='Qtwjqf~Tof3hfZwj\Wf6qlw\]4Wf\sf7zZFdp|\]3W"$"x'
flag=""
ii = 0
for i in keys:
if ii == 0 :
​ flag+=chr(ord(i)^3)
​ ii=ii+1
else:
​ flag+=chr(ord(i)^5)
​ ii=ii-1
print(flag)

MISC

flag好像要扫一扫

flag好像要扫一扫打开压缩包提示密码使用PassperforZIP_v3.6.0.1工具按照题提示走的密码直接出密码为1234

打开尽然是个微信二维码好友加好友就给我flag让后结果忘记了

大吉

大吉是一个pdf百度得知pdf在ctf中直接转换为word就可以弄出让后使用网页在线pdf转换word

转换之后打开文件把照片移走就是答案了

乌贼乌贼

乌贼乌贼是一个图片百度得知图片在ctf中用16进制打开就是答案让后我下载了hex工具打开之后从下往上在最后面看到flag让后就出来了

奇怪的压缩包

奇怪的压缩包直接打开压缩包让后打开里面word文件里面就是答案

Ez_png

Ez_png是一个压缩包里面有一个图片让后打开是一个500*500的图片让后百度搜索ctf图片隐写然后尝试使用010editor工具按照百度上面的改宽度高度都是600发现打不开然后改成1000还是打不开然后陷入思考在看题提示然后就尝试单独改高度改成600发现下面又flag然后就出来答案了

你知道GIF嘛

你知道GIF嘛是一个压缩包里面一个jpg图片然后一直找不到思路让后在群里面别人在了在了聊java环境和stegsolve然后我就在想这是那个题让后发现你知道GIF嘛这个题提示看到stegsolve然后在网上弄了工具打开然后一直切换颜色发现一直不出答案然后就靠百度搜索搜索stegsolve用法发现有analyse下面的frame browse 发现有三个图片然后切换发现答案

正经的jpg?

正经的jpg?根据Ez_png的那一题百度知道使用kali终端binwalk 命令

然后binwalk cover.jpg

└─$ binwalk cover.jpg

1
2
3
4
5
DECIMAL       HEXADECIMAL     DESCRIPTION                                            
--------------------------------------------------------------------------------
0 0x0 JPEG image data, JFIF standard 1.01
58499 0xE483 JPEG image data, EXIF standard
58511 0xE48F TIFF image data, big-endian, offset of first image directory: 8

里面是两个文件让后尝试进入Windows把图片后缀改成zip然后打不开然后就继续百度使用

1
2
dd if=cover.jpg of=2.jpg skip=58499 bs=1 
记录了882232+0 的读入 记录了882232+0 的写出 882232字节(882 kB,862 KiB)已复制,1.30735 s,675 kB/s

然后提示写入一个文件我让后在kali里面双击进入发现打不开然后陷入思考想不出来就把他拖拉到Windows里面想着备份然后拖拉过来之后发现可以打开然后就出来答案了

flag为flag{号码进行一次md5加密}

flag为flag{号码进行一次md5加密}打开发现是一个zip里面一个wav音频格式让后播放发现是声音还能播放然后百度得知可以使用工具audacity然后弄了很久还是没有弄出来可能是不会使用这个工具让后尝试使用手机的按键声音和ctf中的声音对比发现啥也听不过来让后在次使用百度搜索拨号码提取工具让后在GitHub中找到一款手机上面的一款DTMFdecodeer让后电脑播放音乐手机使用这个软件听出是783083491然后在百度中搜索md5加密让后转换提交发现不对然后看了还有其他的加密选项64位大写小写32位等然后一个一个尝试发现64位小数还是大写忘记了然后答案出来了


第三届xcitc-ctf招新赛部分题解
https://huajien.gitee.io/2021/11431/
作者
HUAJI
发布于
2021年10月13日
许可协议