大连海事大学第一届“启航杯”CTF校园网络安全竞赛
签到题
0. dlmuctf2020
flag{welcome_to_dlmuctf2020}
dlmuctf{welcome_to_dlmuctf2020}
1. 早安,贝丝人
TVJXRzI1TERPUlRIV1NCV09aU1Y2TlM3TTRZREFaQzdNUTNIU0lMNQ==
很明显的Base64编码,解密后得到MRWG25LDORTHWSBWOZSV6NS7M4YDAZC7MQ3HSIL5,在进行Base32解码,拿到flag:dlmuctf{H6ve_6_g00d_d6y!}
Misc
2. lsp了
题目叫lsp,第一反应想到的就是LSB加密。

可以看到,PK开头,可知是zip压缩文件,保存,打开,得到flag:flag{Good_Job_kkk}
3. base2sth
打开flag.txt,里边有一堆代码,简单看一下,字母全是小写,最高位没有超过f,推测是HEX编码,解码一下。解码后,可以在开头位置看到data:image/png;base64 说明是Base64加密的图片,Base64转图片得到flag。

4. docz
下载下来是docx文件,但是打不开,第一反应看16进制,用010editor打开

明显PK开头,改后缀名为zip,打开后里边又是一层zip,打开里边有一个密码.zip,打开后内部是加密的,结合注释“真的有密码?”猜测是伪加密,用010editor打开,去除伪加密,打开里边的爆破.zip,根据提示6位数字密码,进行zip爆破,爆破得到密码233333(过程不展示了,工具到处都是),打开得到flag。
5. jigsaw
题目叫做jigsaw,翻译一下就是拼图的意思,打开压缩包,里边有黑白图片一共10000张,推测是拼起来是个二维码,这里用的工具是ImageMagick 下的montage (具体安装方法百度吧)
在终端下输入:
montage *.png -tile 100X100 -geometry +0+0 flag.png
运行后得到flag.png

直接扫扫不出来,我当时是拖到word里加个滤镜,缩小一下扫出来的。。。

P.S.这道题做得我血压飙升,一万张图,在虚拟机跑好久,切一下后台kali就给我杀进程。。。期间卡死无数次。。。
Crypto
6. 经典三合一
o{rnhBuRcj_Hjb_uN?p_auJ}
先栅栏得oujp{Rb_rc_anjuuh_NJBH?},再凯撒得到flag{Is_it_really_EASY?}
7. XOR
题目XOR,肯定就是异或了,百度查阅了好多异或加密的资料,写代码:
#include <stdio.h>
main()
{
char a[]="DsfvD-jZ|,+p}sX.zIfvzYrh|pSvWMX'";
char c[100];
int i;
for(int j=1;j<200;j++)
{
for(i=0;a[i];i++)
c[i]=a[i]^j;
printf("You Password: %s\n",c);
}
}
运行结果:

这个时候就要看你对Base64的敏感度了,最后一行很像Base64,直接一手解码,啪!很快啊,拿到flag:flag{Congratulations!!!}
8. RSA
RSA是一种很经典的加密算法,以前只听说过没有研究过,查了好多资料后,大概了解了,用Python写代码:
import gmpy2
p=0xEB4360DF0E0C824D57AE20700BBF6C1BA8324A94DB7B3608DDA40DE07A59082F
q=0xA5B8BA7304F15C70BA82FF60F8A4A5F156ED04896EC94A7E99B96B4E11727A8F
e=0x10001
c=5849414025349869533962909975439563212209275395646853474539897994585461763870010917408284076946095324877247807213532724048271531587570791138002392138818496
n=p*q
s = (p-1)*(q-1)
d = gmpy2.invert(e,s)
m = pow(c,d,n)
print ("hex: " + hex(m))
把得到的16进制的明文HEX转码,拿到flag
9. RSA_plus
这道题给出了dp的值,查阅资料后,发现这叫dp泄露,进行简单的公式推导之后,写代码:
import gmpy2
import binascii
n

最低0.47元/天 解锁文章
2789

被折叠的 条评论
为什么被折叠?



