【总结】2021unctf校内(cry&misc)

       毕竟初次接触正规比赛题,没什么经验,题型也没见多少,再加上基础知识方面还很欠缺,不了解原理题目变化就会很头疼。

 下面总结一下本次解题思路:(参考官方wp)


misc

  • LPL:

  1. 下载附件是一个zip压缩包,直接解压得到.png和.zip文件                                                 
  2. 图片win可以打开(linux打不开),没有信息,再看压缩包需要密码(010观察是真加密),无法爆破,猜测密码应该隐藏在图片中
  3. 010打开图片发现提示,根据官方wp的方法,缺少IDAT模块引起错误
  4. CRC错误根据文本找出密码:以下面的一个crc为例,按顺序找出密码
  5. 得到密码:EDGnb!!(中文叹号,建议直接从文本上复制,免得被坑)
  6. 解压.zip得到.png和flag.txt(不破不立第1集-纪录片-高清独家在线观看-bilibili-哔哩哔哩)     日期和视频链接

      7.打开链接视频,在评论区找到对应日期的那条评论 (顺便把纪录片也看了...)

ps:密码确实没想到(是在下的脑洞过时了),以为是crc的类型题,更改crc的十六进制值,没注意文本信息,但事实上方向就错了,根据LPL(英雄联盟职业联赛),联系之前EDG夺冠,应该有可能根据crc错误的文本内容联想到,但根本就没往那方面想,挺不错的原创题。

  • 电信诈骗:

       加密账户 qi]m^roVibdVbXUU`h 

 

  1. 根据题目万军,指挥官之类的有可能暗示凯撒加密
  2. 但应该不会这么简单,看账户中有一些特殊字符(^这类的),可能是变异凯撒
  3. 转ASCII看十进制数值(113 105 93 109 94 114 111 86 105 98 100 86 98 88 85 85 96 104 10),首部对比unctf(117 110 99 116 102 )
  4. 前者ascii值逐个递增4,5,6.......最后再转为字符串得

附py脚本: 得到 unctf{yauoreright}

c = "qi]m^roVibdVbXUU`h"     #对比unctf或者flag看出位移
move = 4                     #位移
flag = ""
for i in c:
    flag += chr(ord(i) + move)
    move += 1
print(flag)
  • 倒立洗头 :

  1. 下载得到.txt文件,打开是十六进制数据,看开头结尾是d9ff和ffd8(jpg文件标志),结合题目提示“倒立”,将文本倒叙(脚本,我用的在线工具将文本倒叙,分割再词倒叙)
    f = open("key.txt", "rb")
    s = f.read()
    f.close()
    f = open("newtext.txt", "wb")
    f.write(s[::-1])
    f.close()
     
    
  2. 结合暗示洗头,将D8FF改为FFD8,内容复制到010中,看文本信息发现base64加密内容(不知道怎么找出来的,反正打开图片是不完整的)
  3. base64解码

与佛论禅解密(日ri改成曰yue,虽说看起来一样,但是解不出来会很恼火,坑!)

简单日志审计:

  1. 下载得到juexue.log日志文件,notepad++打开,找到base64编码段
  2. 用自带插件base64解码,得到  'cat /CTF?YouShouJiuXing'
  3. flag:unctf{CTF?YouShouJiuXing}(本来以为是引号内全部内容,结果一直无法提交...无语)

Crypto

  • 探秘中世纪城堡

  1. 下载附件得到 小纸条.txt,根据提示大帝(凯撒加密),64位(bsae64),双重阻拦(栅栏加密)
  2. 先凯撒所有可能跑一遍,放到base64中解密(在线工具即可,我这里用的CaptfEncoder)
  3. 找到明显的结构:UCFsbciet_inwnaoagNT{usrb_oXagadmwn}  (其他解的都是乱码)
  4. 在线工具栅栏解密:UNCTF{subscribe_to_Xiangwandamowang}
  • easy_rsa

  1. 下载得到p,q,c,e(n=p*q),直接上脚本(py2)
import gmpy2
from Crypto.Util.number import long_to_bytes
 
q= 9961202707366965556741565662110710902919441271996809241009358666778850435448710324711706845973820669201482939820488174382325795134659313309606698334978471
p= 12525187149887628510447403881107442078833803097302579419605689530714690308437476207855511625840027119860834633695330551080761572835309850579517639206740101
c= 28587419802025513525354713621431206010395084854419372005671024739235625817936539010481222419824634956610184430308528941304950093228826213143262329902946812513518444587906469224383320964300417189270202019231856531012143472434842753891213128487132962453421971000901646523331476667655739056951415917218673801225
e = 65537

n=p*q
phi = (p-1)*(q-1)

d = gmpy2.invert(e, phi)  
m = pow(c, d, n)  
print (long_to_bytes(m)) 

  • 电信诈骗pro

 

  1. 根据题目提示:四坑七排,罗马帝国—> rot47(凯撒位移为47位的加密)
  2. 对比ascii值(unctf),相差64位,CyberChef在线

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值