SYCTF 官方WP MISC 图片 #W1ndys#
暴力破解压缩包密码得到
丢进winhex看一下
看可以看到IHDR判断为png文件,先把png文件后缀补全,发现缺少了文件头
补全文件头即可,可以手搓,也可以工具梭哈
联系题目得知盲水印拿到flag
MISC签到 下载附件得到一个exe文件
双击打开弹出一个框,
输入1返回1 ,尝试输入flag得到flag{acnbjksbjkvbujsewbuo}
小鲨鱼 下载附件得到一个名为shark.pcapng的流量包,放进wireshark中打开
通过搜索字符串得到flag:CTF{Liu_Ye_De_Kui_Zeng}
Steg 下载附件得到一个名字为steg的文件,没有后缀名,将其拖入kali中用file命令查询其文件属性
可以看到是一个zip文件
将其改为zip文件后打开发现一张图片和一个密钥
对key进行解密得到key=123456
根据题目名以及有key判断为steghide加密
得到flag:SYCTF{steg_hide_!!!}
Oursercet 下载附件里卖弄有一张图片和一个txt文件
文本文件中的密文为莫斯电码,对其解密
由题目名联想到可能为oursercet加密,将其放入软件中,输入123456得到flag.txt
flag:flag{2cf95c04-fa7f-4014-8de7-9f331352696d}
CRYPTO Rot W1ndys✌ 70 76 80 71 83 123 108 97 82 113 73 57 45 84 101 73 70 113 72 45 65 108 71 68 48 115 45 97 57 83 120 97 75 45 90 125
十进制ASCII码转字符串
FLPGS{laRqI9-TeIFqH-AlGD0s-a9SxaK-Z}
rot13解密
SYCTF{ynEdV9-GrVSdU-NyTQ0f-n9FknX-M}
凯撒大帝又爱又恨的培根 W1ndys✌ BABAB AAAAB AABAB BABBA ABAAA AABBB AABBB BABAB AABBA AABAB BBAAA ABBAA BBAAA AAAAB AAAAB
培根解密
vbfwihhvgfymybb
凯撒解密
key1 #3: syctfeesdcvjvyy
flag提交格式为SYCTF{小写字符串}
SYCTF{eesdcvjvyy}
CRYPTO签到 W1ndys✌ 熊出没,就是熊菲特密码咯(埃特巴什码)
SYCTF{CRYPTO_IS_SO_EASY}
你知道异或吗 根据题目提示再结合题目名称,得到可能为xor50加密
下载附件
可以看到有乱码
直接用脚本读取文件内容进行解密
SYCTF{vl2pre-KYDkvs-UPc6L0-tfwVlr-9}
exp:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 with open('xor.txt' , 'r' ) as f: content = f.read() byte\_array = bytearray(content, 'utf-8' )for i in range(len(byte\_array)): byte\_array[i] ^= 50 decrypted\_content = str(byte\_array, 'utf-8' )print (decrypted\_content)
md5 下载附件得到
判断为md5爆破
将所给数据放入脚本中
得到原始md5值
将原始md5值用SYCTF{}包裹起来得到flag:SYCTF{F0AF1443B1F463EAFFF7AEBB8B2AC4E6}
WEB 签到 打开url,页面只有一串字符
查看源代码发现flag:SYCTF{d94e9772-a3fb-4e6e-90be-d907c3a7c142}
宝宝巴士
打开发现如上代码,可以看到cat/tac,flag和空格被过滤了,用uniq,fla?,%09尝试绕过
payload:
1 2 3 4 ?rce=ls %09/ ?rce=uniq %09/fla?
拼接url得到flag:SYCTF{01b5542f-8c68-41b5-9038-3a2dc1663886}
登录 打开可以看到需要登录
点击登录跳转到登录框页面
尝试弱口令:admin,password登录,得到flag: SYCTF{98972343-7e94-4a04-ade4-28a446a2f996}
Rce 打开地址得到
可以看到过滤了flag,php,file这几个字符,尝试绕过
payload:
url拼接上payload得到flag:SYCTF{Web_1_0Wo_Bu_Hui}
PWN NC 使用nc工具连接服务器之后 ls查看文件列表 cat flag 查看flag
REVERSE RE签到 下载附件得到一个exe文件
双击无法打开,尝试命令行./打开,得到flag:ISCTF{873c-298c-2948-23bh-291h-kt30}
01 程序逻辑:将flag异或“随机数”后得到正确flag,再直接与输入比较。
只要srand的参数确定了,一系列rand()返回值都能确定。其中flag原值可通过IDA Pro的LazyIDA一键导出(需要另行安装)。
exp:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 using namespace std; char flag[]={0xa1,0x7c,0x7a,0xb2,0x13,0x68,0x28,0xe5,0x25,0x5,0xca,0x8c,0xce,0x7f,0xf3,0xaa,0x50,0x5a,0x50,0x63,0x17,0x5b,0x18,0xd7,0x51,0xae,0x14,0x87,0x7f,0x7f,0x79,0xa4,0xc4,0x24,0xa7,0x89,0xa4,0xab,0x4b,0xae,0xb8,0x06,0xdf}; int main(void){ srand(0xDEADC0DE); for (int i=0;i<43;i++) printf ("%c" ,flag[i]^(rand()&0xFF)); return 0; };
02 Go语言代码阅读题,加密逻辑:flag先异或0x9C,再经过换表Base64后转十六进制。
异或解密:
1 2 3 4 5 6 7 8 9 enc=[0xf7,0xce,0xde,0xaf,0xf0,0xa8,0xec,0xc4,0xf4,0xa8,0xf3,0xce,0xff,0xe6,0xf3,0xd2,0xf9,0xaf,0xff,0xd6,0xfb,0xcc,0xeb,0xc8,0xfb,0xe5,0xcd,0xcd,0xf8,0xe6,0xef,0xd3,0xfe,0xf6,0xff,0xcc,0xfb,0xcd,0xa8,0xd6,0xf8,0xcc,0xf7,0xd3,0xf8,0xcd,0xff,0xcc,0xf4,0xaf,0xf8,0xaa,0xf8,0xdd,0xf7,0xce,0xea,0xfb,0xa1,0xa1]for i in range(len(enc)): enc[i]^=0x9c print (chr(enc[i]),end='' )
CyberChef脚本
1 2 3 From\_Hex('Auto' ) From\_Base64('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ+/=' ,true ,false )
03 用jadx打开,发现为AES加密,其中密钥为“SYCTF2023yyds666”,密文在flag数组中。解密exp:
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 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 import java.security.\ import javax.crypto.\ import javax.crypto.spec.SecretKeySpec; import java.math.BigInteger; public class exp{ public static void main(String[]args){ byte[] flag=new byte[]{0x4, (byte) 0xe0, (byte) 0xc7,0x4c, (byte) 0x92, (byte) 0x89,0x60,0x18, (byte) 0xe3,0x3c, (byte) 0xa0,0x75, (byte) 0xa2,0x13,0x51,0x68, (byte) 0x93, (byte) 0xd4, (byte) 0xda,0x3b, 0x47,0x3e,0x0, (byte) 0x94,0x59, (byte) 0x9f, (byte) 0xd4,0x41,0xa, (byte) 0xf7, (byte) 0xdd, (byte) 0xe8, (byte) 0x80,0x37,0x3c,0x6d, (byte) 0xd9, (byte) 0xee, (byte) 0xb8, (byte) 0x80,0x6e, (byte) 0xcd,0x0, (byte) 0xbc,0x1b,0x1c,0x35,0x76}; String key="SYCTF2023yyds666" ; byte[] decryptData=DecryptAES(key,flag); System.out.println(new String(decryptData)); }; private static byte[] DecryptAES(String key,byte[] data){ try{ SecretKey secretKey=new SecretKeySpec(key.getBytes(),"AES" ); Cipher cipher=Cipher.getInstance("AES/ECB/PKCS5Padding" ); cipher.init(Cipher.DECRYPT\_MODE,secretKey); return cipher.doFinal(data); } catch(Exception e){ e.printStackTrace(); }; return new byte[]{0}; }; };
也可以用赛博厨子做:
1 2 3 Input:04e0c74c92896018e33ca075a213516893d4da3b473e0094599fd4410af7dde880373c6dd9eeb8806ecd00bc1b1c3576 AES\_Decrypt({'option' :'UTF8' ,'string' :'SYCTF2023yyds666' },{'option' :'Hex' ,'string' :'' },'ECB/NoPadding' ,'Hex' ,'Raw' ,{'option' :'Hex' ,'string' :'' },{'option' :'Hex' ,'string' :'' }) Output:SYCTF{CE07DDE4-A771-8499-56A8-49AC9D04817F}.....