python凯撒密码加入大写_(2019-08-31)BugKu之【密码学-1】个人writeup

73b74e3865672e688385e5dde083053c.png

引言: 密码学是研究编制密码和破译密码的技术科学。研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学;应用于破译密码以获取通信情报的,称为破译学,总称密码学。


第一题:

1085397cf1cb041e396a68abd38cd471.png
难度:简单

题目给出提示:“滴答~滴”,再根据密码形式可知为简单的摩尔斯电码,直接复制翻译,并按照要求更换格式,flag获取并成功提交。


第二题:

1d2999dae15350828b5b8e647646b080.png
难度:简单

题目给出提示:“2个栅栏”,密码中隐约可见:“K,E,Y”等标志性字符,可知为简单2栏栅栏密码,直接复制翻译,并按照要求更换格式,flag获取并成功提交。


第三题:

ea96a46209ae1d9154dada75e2a96ee6.png
难度:简单

题目给出提示:“ok”,再根据密码形式为Ook加一个字符,可知为Ook!密码,直接复制翻译,并按照要求更换格式,flag获取并成功提交。在这里给出一个在线的Ook!brainfuck的在线加密解密网址:https://www.splitbrain.org/services/ook


第四题:

d7d60b33108d22c86c636354432e84df.png
难度:简单

题目附录:

+++++ +++++ [->++ +++++ +++<] >++.+ +++++ .<+++ [->-- -<]>- -.+++ +++.<

++++[ ->+++ +<]>+ +++.< +++[- >---< ]>--- .---- .<+++ ++++[ ->--- ----<

]>--- ----- ----- .<+++ ++++[ ->+++ ++++< ]>+++ ++.<+ +++++ +[->- -----

-<]>. <++++ ++++[ ->+++ +++++ <]>++ .<+++ [->-- -<]>- ----. <++++ +++[-

>---- ---<] >---- ----. +++++ +..++ +++.+ .<+++ [->-- -<]>- --.<+ +++++

+[->+ +++++ +<]>+ ++.++ +.+++ +++++ +.--- -.+++ ++.<+ ++[-> +++<] >++++

++.<

根据密码形式可知为brainfuck编码,直接复制翻译,并按照要求更换格式,flag获取并成功提交。在这里给出一个在线的Ook!brainfuck的在线加密解密网址:https://www.splitbrain.org/services/ook


第五题:

fc926277a5ee4b49f809113aa3f8e2ac.png
难度:容易

根据密码形式为01,初步推测为二进制加密的其他密码,经过进制转换发现密文杂乱无章,仔细一看发现“0010 0100 01 110”正好对应摩尔斯电码中“..-. .-.. .- --.”即“FLAG”。明显是用“0”替换“.”,用“1”替换“-”,知道加密方式后替换摩尔斯的加密方法,也可以通过写脚本来解密(更方便)。python代码参考:

759355ed7a1a57803dbfdbf702deec44.png

得到密文:FLAG%u7bM0RSE_CODE_1S_INTEREST1N9!%u7d 为确保flag提交的严谨性,将其进行url解码,得到准确的flag:

8610736731320b23605bb1ba7c97109a.png

第六题:

af1f22537cbdfc20a38dd9c2e28e8db8.png
难度:容易

拿到密码,首先想到的是换位密码或凯撒密码,但经多伦测试后无果,开始逐位分析。在密码的后两位,有明显的“AA”,让人联想到Base64加密的结尾“==”,而“A”的Ascll码值和“=”差4位,经过位移得到:“a2V5ezY4NzQzMDAwNjUwMTczMjMwZTRhNThlZTE1M2M2OGU4fQ==”明显的Base64编码,直接复制翻译,并按照要求更换格式,flag获取并成功提交。


第七题:

700c5cc8eacf7f22df0c246b53e9d2ee.png
难度:简单

根据题目提示:“216534”可知密码为简单换位密码(凯撒换位密码),直接根据规则,复制翻译,并按照要求更换格式,flag获取并成功提交。


第八题:

fe97d4c77b7b892d7e5738d43990460a.png
难度:简单

密文:MSW{byly_Cm_sIol_lYqUlx_yhdIs_Cn_Wuymul_il_wuff_bcg_pCwnIl_cm_u_Yrwyffyhn_guh_cz_sio_quhn_ni_ayn_bcm_chzilguncihm_sio_wuh_dich_om}

根据题目提示,知道此密码为简单凯撒密码,但是题目为给出参数,即偏移量为给出。所以选择TEST_ALL暴力破解:

7182176bbf9a7e489f1c4220314d0e8b.png

可见偏移量为+6时出现一句接近自然语言的明文,直接复制翻译,并按照要求更换格式,flag获取并成功提交。

第九题:

e5d98c7760521988f02992265a852670.png
难度:困难

密文链接:https://ctf.bugku.com/files/39488475fd87c064f9401eec2299c03e/1.txt

7cf31b46c0d5ff19d58ecff85d44c1cc.png

此题难度相对较大,需要对各种密码的形式和加密方式有了解,下面开始逐步拆解密码。

<1:根据题目提示,直接将文本进行base64解码:

9b9ea6457ec0b63f39d1758cdb894577.png

得到有分隔符的0-7数字,即8进制格式。

<2:用Unescape解码为16进制,密文开始变得有序

9b9ea6457ec0b63f39d1758cdb894577.png

<3:将16进制转为Ascall编码:

631d2908042a1e6d13d64dbf1ac25c5f.png

<4:用Unescape解码为10进制

9e760548f98afd305b51f0c27b483241.png

<5:将输出框中的函数的参数(括号以内),转换成Ascll编码:

24f2c20ba8f19ae72258385a2401d872.png

<6:根据输出中的“&#”知道此密文为html编码,进行html解码(越来越短了,胜券在握!!!):

d82410ee22b501df77247aeefeea79a7.png

<7:根据输出中的“&#”知道此密文为html编码,再次进行html解码:

9374f5a4c9df3b86c1aad15acb541802.png

<8:已经看到了flag,但是为了严谨性,对“%7D”字符进行URL解码

7c04152627763f6d02b21db4ffafd660.png

至此flag获取并成功提交!!!耐心并一步步分析密文,最终答案一定会浮现。


第十题:

6023c4589c56d1be246d800a781debb1.png
难度:简单

根据密码形式可知为Ook!编码,直接复制翻译,并按照要求更换格式,flag获取并成功提交。在这里给出一个在线的Ook!brainfuck的在线加密解密网址:https://www.splitbrain.org/services/ook


第十一题:

2989ddf8c24477bddb1720b981faa1a0.png
难度:简单

根据密码形式可知为brainfuck编码,直接复制翻译,并按照要求更换格式,flag获取并成功提交。在这里给出一个在线的Ook!brainfuck的在线加密解密网址:https://www.splitbrain.org/services/ook


第十二题:

533627214cf9875ffe69f5a2c82d1cee.png
难度:一般

拿到题目,发现无从下手,开始对密文进行逐位分析:

gndk的10进制的ASCII码分别是:103 110 100 107

flag的10进制的ASCII码分别是 :102 108 97 103

依次-1,-2,-3,-4,-。。。

这样就很简单了,我们只需写一个脚本让他输出就可以了,这里笔者用的python:

380e20b05e4a3f521dc182ce7f7cbf8a.png

直接复制并按照要求更换格式,flag获取并成功提交。


至此,前12道题(100分值以内)的题,8-bit战队已经全部解析完毕

5ca96f52694343c6f90bef6f597afb8d.png

欲知后事如何,请听下回分解

db76b730636d84a9d5bcf03b5fe7e63f.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值