日常练习week1

——从i春秋的基础分类开始做起——

1.小苹果

日常练习week1_第1张图片
下载就是一个很普通的小苹果.wav,这是我第一见到音频隐写的题目,这个题目很简单用到一个工具叫silentEye,SilentEye是一个跨平台的应用程序设计,可以轻松地使用隐写术,在这种情况下,可以将消息隐藏到图片或声音中。它提供了一个很好的界面,并通过使用插件系统轻松集成了新的隐写算法和加密过程。
下载地址:http://www.opdown.com/soft/88597.html(含有翻译对照和安装步骤)
日常练习week1_第2张图片
Open这个下载的wav放进去decode就有了flag。
另外关于音频加密的题目,这里有一个博客:https://www.sqlsec.com/2018/01/ctfwav.html

2.看我回旋13踢

日常练习week1_第3张图片
从题目来看是一个叫做“回转13位”的加密方式,是凯撒加密的一种变体。对任何字元x:ROT13(ROT13(x))=ROT26(x)=x。一段文字上仅仅只需要检查字元字母顺序并取代它在13位之后的对应字母,有需要超过时则重新绕回26英文字母开头即可。
//ROT47是ROT13的衍生物,它除了打乱基本字母外,也对数字与常见符号做处理。
也就是说回转13位在解密时也可以看作是位移为13的凯撒加密方式。(上图为用凯撒解密)
日常练习week1_第4张图片
也可以用专门的ROT13的计算器计算,可以看到答案是一样的。
日常练习week1_第5张图片

3.爱吃培根的你

日常练习week1_第6张图片
培根隐写算法,实际上就是一种替换密码,根据所给表一一对应转换即可加密解密
它的特殊之处在于:可以通过不明显的特征来隐藏密码信息,比如大小写、正斜体等,只要两个不同的属性,密码即可隐藏。
这里有一个对照表:
日常练习week1_第7张图片
可以看到表中的字母都是由ab组成的,这题里面的属性只有大小写不同,于是只有两种解法:1.把大写字母换成a,小写字母换成b 2.把小写字母换成a,大写字母换成b
于是我们首先吧上面的内容分组,去掉符号和空格然后五个一组分组。再进行上面的替换于是可以变成:1.bbbba bbbbb bbbbb baaba baabb babbb abbba baabb baaba abbab bbaba baaba baaba bbbaa
2.aaaab aaaaa aaaaa abbab abbaa abaaa baaab abbaa abbab baaba aabab abbab abbab aaabb
然后对照上表替换内容时可以发现,表中没有bbbba这种组合,所以应该是第二种替换方式。
结果是:baanmirmnsfnnd
(???)
然后发现培根加密有两种方式,第二种方式的对照表如下:
日常练习week1_第8张图片
(虽然百度百科只给了第一种的对照表,但是这个照片藏在相册里)
这样重新对应的话就能得到:baconisnotfood
当然这里也可以写一个py来解决

list1 = []
list2 = []
list3 = []
list4 = []
res1 = []
res2 = []
strs = "bacoN is one of aMerICa'S sWEethEartS. it's A dARlinG, SuCCulEnt fOoD tHAt PaIRs FlawLE"
for i in strs:
         if i.isupper():
                   list1.append('b')
         elif i.islower():
                   list1.append('a')
strs1 = ''.join(list1)
len1 = len(list1)
for i in range(0,len1+1,5):
         list2.append(i)
len2 = len(list2)
for i in range(len2):
         if i != len2 - 1:
                   list3.append(strs1[list2[i]:list2[i+1]])
for i in list3:
         list4.append(i.upper())
dir1 = {'A':'aaaaa','B':'aaaab','C':'aaaba','D':'aaabb','E':'aabaa','F':'aabab','G':'aabba','H':'aabbb','I':'abaaa','J':'abaab','K':'ababa','L':'ababb','M':'abbaa','N':'abbab','O':'abbba','P':'abbbb','Q':'baaaa','R':'baaab','S':'baaba','T':'baabb','U':'babaa','V':'babab','W':'babba','X':'babbb','Y':'bbaaa','Z':'bbaab'}
dir2 = {'a':'AAAAA','g':'AABBA','n':'ABBAA','t':'BAABA','b':'AAAAB','h':'AABBB','o':'ABBAB','u/v':'BAABB','c':'AAABA','i/j':'ABAAA','p':'ABBBA','w':'BABAA','d':'AAABB','k':'ABAAB','q':'ABBBB','x':'BABAB','e':'AABAA','l':'ABABA','r':'BAAAA','y':'BABBA','f':'AABAB','m':'ABABB','s':'BAAAB','z':'BABBB'}
for i in range(len(list3)):
         for j in dir1:
                   if list3[i] == dir1[j]:
                            res1.append(j)
print (''.join(res1))
for i in range(len(list4)):
         for j in dir2:
                   if list4[i] == dir2[j]:
                            res2.append(j)
print (''.join(res2))

4.easy RSA

日常练习week1_第9张图片
RSA的算法涉及三个参数,n、e1、e2。其中,n是两个大质数p、q的积,n的二进制表示时所占用的位数,就是所谓的密钥长度。e1和e2是一对相关的值,e1可以任意取。
RSA加解密的算法完全相同,设A为明文,B为密文,则:
​ A=B^d mod n;
​ B=A^e mod n;
也就是这题里面,N可以解出p和q的值,(找一个因数分解的网站。)
日常练习week1_第10张图片
得出p=13574881 q=23781539
写出脚本
import gmpy2
p=13574881
q=23781539
n=322831561921859
e=23
C=0xdc2eeeb2782c
d = gmpy2.invert(e,(p-1)(q-1))
M = pow(C ,d ,n)
#M = pow(C ,d , n) = C ** d % n
print(M)
print(hex(M))
得结果
在这里插入图片描述
然后找个网站十六进制转字符串就好了
日常练习week1_第11张图片

5.ROPGadge

日常练习week1_第12张图片
我才知道有软件可以直接汇编指令转机器码
日常练习week1_第13张图片
下载地址:http://8dx.pc6.com/xjq6/huibianmazhuanjiqitool.zip

——南邮测试题——
南邮测试题一共放了五道,有两道测试假题目。
日常练习week1_第14张图片
日常练习week1_第15张图片

6.这是一个假题目

日常练习week1_第16张图片
下载下来的压缩包里面有一个exe,放进ida里面,搜索flag。
日常练习week1_第17张图片
选择这个flag{}符合格式。然后跳转到它的位置,F5查看伪代码。
日常练习week1_第18张图片
有win/lost的字眼,可能是什么游戏。没关系直接去搜索本段内容。
日常练习week1_第19张图片
于是得到了正确答案,原来是个迷宫游戏。原题是2019湖湘杯。
这里贴一下大佬的WP。
https://www.gksec.com/hxb2019-WP.html

7.这是一个假题目

日常练习week1_第20张图片
可以看到原本的字符串就有{}这种格式了,而且下面还有提示。于是我们拿出替换网站quipquip。
https://www.quipqiup.com
日常练习week1_第21张图片
然后就得到答案了
FLAG{ SUBSTITUTION CIPHER DECRYPTION IS ALWAYS EASY JUST LIKE A PIECE OF CAKE}
按照题目提示把空格删除就好了。
后来我发现这是去年二月安恒月赛的原题。

8.misc假题目

日常练习week1_第22张图片
下载下来是一个.cap的文件,原来没见过,百度了一下
CAP文件格式也可能是数据包探测程序包含收集的数据包文件格式;保持原始数据捕捉数据的传输;也称为跟踪文件或骨文件和多个数据包嗅探器应用程序使用。
不管什么先放进hxd看看好了。
日常练习week1_第23张图片
这里有一串:mamawoxiangwantiequan(妈妈我想玩铁拳?OW重度玩家吗?)
直接百度这串奇怪的内容好了。
日常练习week1_第24张图片
原来是2019红帽杯的原题。
换一个思路。
日常练习week1_第25张图片
其实也能搜到,但是会有其他的冗余信息。所以搜索精准的关键词是很重要的。
当然其实也能联想到:cacosmia单词的意思在下面已经有了,是恶臭。
.cap是数据包文件格式
所以这道题原本的名字其实是:
在这里插入图片描述
另外这道题我认为非常复杂,毕竟红帽杯,而且也是第一次见.cap还要反复再看大佬的WP。
依旧贴出大佬的WP:https://xz.aliyun.com/t/6746

你可能感兴趣的:(日常练习)