MOCTF是一个国产CTF平台,难度中下,很适合我这种小菜鸡刷题,毕竟只要做出来就很有成就感,当然,如果达到大佬水平,做这些题或许就会觉得在浪费自己时间了。
一、数据库密码 D8EA7326QE6EC5916ACCDX6E0VC9D264C63
根据题目描述(在这里不复制粘贴了),得知这串字符与数据库的加密方式有关,查询后得知早期是MD5加密,后期是SHA1加密。
对于这类密码,有一个很稳健的网站CMD5推荐给各位密码学习者,通过网站给的格式,先从最简单的不加盐无嵌套开始考虑,SHA1必须40位,MD5是16或者32位,那么这儿有35位,就该考虑32位,并且有3位无效混淆位,再次查询标准MD5是由a-e,0-9组成,正好剔除多余的3个字母,解密后加上moctf{}即可。
二、rot大法好 }rQbpar_gbE{sgpbz
上网查询rot相关密码,rot5只处理数字,rot13只处理字母,rot18处理数字和字母,rot47处理数字字母和常用符号,那么题目符号只有{}和_,还是flag格式的符号,不必处理,除开这些就是纯字母,应该rot13在线解码,解出的是flag的倒序。
三、奇怪的汉字 由口中 由由夫 由由口 由由口 由中由
明显的当铺密码,题目也有提示,是根据汉字笔画的出头数做的密码,转化为102 117 110 110 121,查询你ASCII码表加上格式即可
四、就是这个节奏 恰恰 恰恰恰 恰绑恰绑 恰 绑绑恰绑{恰恰绑 恰恰恰 恰恰恰 恰绑绑}
只有两种字,就是摩斯电码,尝试.和-的两种对应情况,找到有语义的即可
五、贝斯族谱 Vm0weGQxSXlSblJWV0d4WFlUSm9WRll3WkRSV01XeHlXa1pPYUZKc1NsWldSM1JQVmpGS2RHVkVRbFZXYkhCUVdWZHplRll4VG5OWGJGcFhaV3RhU1ZkV1kzaFRNVTVYVW01S2FGSnRhRzlVVm1oRFZWWmFjbHBFVWxSaVZrWTFWa2QwYTJGc1NuUlZiRkphWWtkU2RscFdXbXRXTVZaeVdrWndWMkV6UWpaV01uUnZWakZhZEZOc1dsaGlSMmhvVm1wT2IxTXhjRmhsUjBaWFlrZFNlVll5ZUVOV01rVjNZMFpTVjFaV2NGTmFSRVpEVld4Q1ZVMUVNRDA9=
大小写加数字,提示还是贝斯,就是base64密码,在线解密,还是base64格式,看来是嵌套,连续解密,发现全是base64格式,直到解出ngnq_pq{dudt0msuf1z},类似flag的格式了,但是一看字母元素,肯定不是简单的移位,应该是单表替代,当时忘记最经典的凯撒密码了,花了不少时间自己尝试写替代脚本,找到一条包含moctf的组合:
mfm_po{pctcslr0t1ey} 其实这里是一位凯撒密码解密
并且有第六题的flag语义提示(m1ddle crypt0),经过自己尝试直接组出s1mple crypt0这个flag。
现在总结时,就去思考出题人是想考什么密码,明文的每个元素都在,只是顺序变了,这肯定不是单密钥移位密码,但是多密钥的话给的提示又太少,思来想去应该就是栅栏密码之流了,尝试后发现果然是宽度为4的经典栅栏密码(感觉提示有些少,但是稍加思考就能想到解码后是凯撒,凯撒解密后排除法是栅栏,还好不是栅栏WWW变形之类,要不然我就要疯了)。
六、贝斯族谱升级版
在上一题陷入困境时,我先做了这一题,发现就是BASE64—>base32—>base16的嵌套,这里稍微复习一遍:
BASE64 A-Z a-z 0-9 + / 一般有=号补位
BASE32 A-Z 2-7 一般有=号补位
BASE16 A-F 0-9 无=
七、卡哇伊
拿到的文本全是可爱的颜文字,上网查询,了解到是用于JS代码的aaencode编码,说到底就是种编码方式,如果是JS代码可以哎浏览器的开发者工具里的console栏直接输入,就可以解码出来,但是这里flag的格式肯定不会是JS代码,所以直接找在线工具解码即可。
八、我觉得OK
全是Ook文本,后头只有.!?这三种后缀,搜索后得知是一种特殊编码,同时还学到了Brainfuck密码,它和ook!一样,都是替换方法表达指针和数组操作,与其说他们是密码,其实是一种可以被计算机理解的语言,c语言可以表述他们。
直接上网找到在线解码工具即可得到flag。
总结
这把八道题都是一个类型,属于只要你听说过或者能搜索到这种类型的密码,在线解码就可以的题目,难度可以说是没有。
原文地址:https://www.cnblogs.com/AnEKiller/p/11756358.html