UNCTF 2022 部分WP

Web: ezgame;我太喜欢billibili大学啦;签到;easy_upload

Pwn: welcomeUNCTF;石头剪刀布

Reverse:whereisyourkey;ezzzzre

Crypto: md5-1;dddd;caesar;single-table;md5-2;ezRSA

Misc: magic_word;找得到我吗;syslog

  1. single-table

 

 

这道题是古典密码,做了一点变形,table被倒过来了,所以移位和替换规则都要反着弄

 

不过最后的X要删除

  1. welcomeUNCTF

 

无壳,32位,上IDE

 

主函数中发现strcmp()函数,就是字符串对比,要对比的就是s和s2,其他就没什么要做的了。

新建靶机,上kali

 

改成.py文件,运行

 

 

Flag就出来了,不过要注意,pwn的题目都是动态的,我做了没立即提交,搞得我后面又做了一次。

  1. 剪刀石头布

查进制就不截图了,上ida

 

可以看懂出题人想玩游戏,有了ezgame的经验,还担心什么,上靶机玩

 

连上靶机之后可以看到游戏规则,0.rock,1.scissor,2.paper。并且采用回合制,试玩发现每一回合能赢的方式是固定的,输了就得从头来,由于不知道是多少回合结束,我玩到16回合就放弃了,回ida继续看代码。发现srand(0xAu),这不就是我大一写的随机数种子吗?这样就可以把每个回合的答案找到了。至于多少回合,我肯定先猜121。

 

 

至于为什么要先-1,再mod 3,自己找找规律写写代码就出来了。

接下来当然是再上靶机玩游戏,注意每次输入不要输错,粗心的就像我一样调整一下

 

 

游戏在100回合就结束了,想知道为什么的,可以再去看看代码

  1. MD5-1

就是一个md5在线爆破,就不写过程了。

  1. Caesar

 

 

其实就是古典密码凯撒密码

  1. ezzzzre

查壳

 

 

Upx -d 脱壳,上ide

 

主函数看懂这三句代码就够了,key是字符串,这里对字符做了运算,所以肯定转ASCLL值,不过还要先看key的内容是什么。

 

当然是HELLOCTF,接下来按照算法规则运算就行,得到key=KESSYAcG,这里就不写了

最后运行.exe文件,输入key就能得到flag。

  1. Syslog

题目提示好好看压缩包,然后发现解压flag.txt需要密码,所以如下图

 

看见密码格式就知道是base64编码,所以先解密,然后再解压flag.txt即得

 

  1. web的ezgame我就不说了,我看参赛人员都做出来了。

  1. 我太喜欢bilibili大学啦。

进去直接找flag就行,比syslog还简单,基本不用耗费精力

  1. web的签到

 

登录发现没有,先后尝试万能密码,抓包,sql语句和sqlmap,发现都没用,看来只有爆破了,直接单点爆破

 

 

 

一个一个点就行,flag就出来了:

flag{bfff6d206cbcd6ac0870a4f48c7c313b}

  1. easy_upload

上bp抓包,直接传图片马,马也显示在bp里面的,下面截图有马

 

 

上传成功,文件放在uplO4d里面,用蚁剑连接

 

 

连上之后找找就出来了。

  1. dddd

 

第一反应就是..-/-.小学就看过的摩斯密码?翻译一下

 

接下来对着表查flag就出来了。

  1. whereisyourkey

查壳无壳,32位

 

根据它的算法,for i-->10; oooo(v5[i])就是我们的flag

 

然后根据它的算法写一下就出来了,最后转Ascll:yesiamflag

 

  1. 你找的到我吗

 

解压题目文件是一个文档,改颜色有如上字体。接下来就是各种尝试misc压缩包技巧汇总:

将docx改成zip这个方式是对的,再次解压,发现明文

 

 

接下来就是找了,最终在一个页面发现:

 

flag就出来了。

  1. ezRSA

学了信安数论,不玩玩RSA?

 

题目给的代码如上,这应该是几道RSA中最简单的一道,这道题要用的模块libnum和算法都写明白了,和每个数据的计算方式都给出来了。

自己上python编译一下代码就行

 

里面有一个难点就是求phi_n,题目写了phi_n=p**4-p**3,而n=p**4,所以p为n开4次根号,带到算法里面运行,flag就出来了。其他几道RSA有点难,没整出来

  1. magic_word

这道题跟着题目提示来就行了,乱码+零宽隐写

所以就是一个工具问题,去乱码恢复网站

 

再去隐写网站

 

就出来了。

17.MD5-2

这道题目算是最折腾人的了

 

我在注释里已经把思路讲清楚了,接下来写算法

 

拿去md5爆破

 

找找规律,后面就不写了,缺位的前面补0,因为16进制,flag就出来了。

CTF3个月新手一枚,只会这么多了

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值