天天看点

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

reverse

1.heythere

用IDA64 打开文件,按F5查看main函数代码

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

发现flag应该为输入字符串的每一位字符与i的异或。

双击s,查看原始的字符串、

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

可以知道串中的每个字符都是用16进制表示的。

接下来可以用Python或者c++编程,将每一位异或,转换为ASCII码的形式输出。

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

于是就得到flag啦~

2.sysucsa_0

用ida打开文件

进入hex view

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

看出flag为sysucsa{Try_4no7h3w_nor}

3.sysucsa

巧妙方法:

进入ida,按f5查看伪代码

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

双击变量查看变量的值。

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

进入hex view 发现flag的藏身处

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

从左到右,自上而下,分别将字符从0x00~0x0D编号。

根据变量值找到对应字符。

获取flag:sysucsa{s1mp13_R3v_1}

Misc

1.Misc签到题

打开题目,发现除了一堆乱码什么都没有。

V1hwT2MyVnRVbGhVYm5CYVYwaE9ORnBGV1RWak1 rMTRUMWh3VGxKcWJITldWRXBIVGxkYVVsQlVNRDA9

这堆代码貌似很像base64加密后的结果。于是用base64解密一次:WXpOc2VtUlhUbnBaV0hONFpFWTVjMk14T1hwTlJqbHNWVEpHTldaUlBUMD0=

发现还是乱码,用这个再解密一次:

YzNsemRXTnpZWHN4ZEY5c2MxOXpNRjlsVTJGNWZRPT0=

还是没解出来,但是变短了,那就再试一次:

c3lzdWNzYXsxdF9sc19zMF9lU2F5fQ==

又变短了,感觉就要成功了,再用base64解密一次!

sysucsa{1t_ls_s0_eSay}

没错,这就是flag了~

2.More Png

打开题目发现是一张不完整的png格式的图片。。这可怎么办呢?

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

不着急,用010editor打开这张图片

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

发现这张图高度有点不对劲,将00修改为01试试?

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

保存后再打开该图片:

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

这么大的flag就出现在了我们眼前!

3.Python是世界上最好的两种语言?

文件貌似不能用图片查看器打开。

只能先用010编辑器打开看看了。。

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

感觉有点不妙,PNG头部貌似被修改了。

把PNG头部改回来试试

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

然后保存一下,图片应该就可以打开了

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

打开发现是个二维码,但是缺失了两块,用画图工具把右上角的图案复制到缺失的两个位置。

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

然后就可以扫一扫了

03F30D0A8EBA985B6300000000000000000100000040000000730D0000006400008400005A0000640100532802000000630000000003000000250000004300000073A5000000640100640200640100640300640400640100640500640600640700640800640900640A00640B00640C00640D00640E00640F00640D00641000640A00641100640D00641200641100640F00640900640D00640E00641300640C006414006415006413006414006411006416006417006725007D00006418007D0100781E007C0000445D16007D02007C01007400007C0200830100377D0100718200577C010047486400005328190000004E69530000006959000000695500000069430000006941000000697B00000069500000006935000000697400000069680000006930000000696E000000695F000000693100000069730000006932000000696500000069330000006961000000696700000069750000006921000000697D000000740000000028010000007403000000636872280300000074030000007374727404000000666C616774010000006928000000002800000000730500000070792E707952030000000100000073520000000002030103010301030103010301030103010301030103010301030103010301030103010301030103010301030103010301030103010301030103010301030103010301030103010301090206010D0114014E28010000005203000000280000000028000000002800000000730500000070792E707974080000003C6D6F64756C653E010000007300000000

竟然得到了这样的一堆乱码。。

保存为txt格式,用010editor打开。

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

64后的数字是i后面字母的编码,从01到17.

破解出flag为SYSUCSA{P5thon_1s_2he_3est_1anguage!}}

pwn

1.cat flag 签到题

进入kali linux 系统

打开终端,输入指令nc -v sysucsa.me 5054

输入cat flag

得到flag:FLAG{cat flag? dog flag!}

crypto

1.f___

打开txt格式文件。发现又是一堆符号

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

应该是进行了JSFuck加密

百度JSFuck在线解密

获取flag:sysu{CryPt0 15 AmazIN9!!!}

2.莫尔斯与凯撒的约会

-…-/-…/-…-/–…/…/-…-/…-./…/.—/…-./-…-/.—/.–/-./-…-/…/-/-/–.-/

一看题目就知道是进行了凯撒加密,又转成了摩尔斯电码

先进行莫斯电码解密:X D X Z H X F H J F X J W N X H T T Q

再进行凯撒解密:

SYSUCSA reverse pwn Misc Crypto部分题解Miscpwncrypto

6次解密后获取flag!