点击此处获得更好的阅读体验
WriteUp来源
https://mp.weixin.qq.com/s/ZkzBnsL34ImE00noH2-8XA
题目描述
附件下载 提取码(GAME) hint.txt下载 提取码(GAME) Hint: 1. 可用python统计次数最多的字符 2. 增加hint.txt下载
题目考点
古典加密
图片隐写
解题思路
官方WP
打开hint.txt是一段base32编码。得到以下内容
1 | http://www.merrybio.com.cn/blog/SARS-CoV-2-genomic-analysis.html |
注意提示,要求注意最大的结构蛋白,密码是md5(他的基因序列),
访问 给出的网址(这边也对冠状病毒的结构做了科普)
http://www.merrybio.com.cn/blog/SARS-CoV-2-genomic-analysis.html
怎么查询基因序列
http://www.merrybio.com.cn/blog/SARS-CoV-2-genomic-analysis.html
这篇文章也说明了基因序列的查询方式以及各基因的区间是哪个以及冠状病毒的登录号和长度。
第二个网址也给出了查询(免去了选手搜索)
我们得知S基因的区间是21536-25384 https://www.ncbi.nlm.nih.gov/orffinder/
选择区间
得到基因序列。
提示也说了不要将换行带入,得到的是规则的序列有换行在里面。
用脚本处理得到密码
1 | import hashlib |
98eb1b1760bcc837934c8695a1cee923
然后看到MP3文件,MP3Stego隐写。
1 | Decode.exe -X -P 98eb1b1760bcc837934c8695a1cee923 cov.mp3 |
得到冠状病毒的称号
这一段即为realflag.zip的密码
看到hint2.txt以及图片右键属性,Base16解码
拿去翻译
提示提到了steghide隐写,加密方式也已告诉,是简单替换密码
秘钥是前20个出现次数最多的字符加上COMBAT
先解出秘钥,题目要求我们注意N蛋白,结合之前的密码,找基因序列
还是之前的文章
26523-27191为“E”基因,可编码产生结构蛋白:病毒包膜蛋白E;
27202-27387为“M”基因,可编码产生结构蛋白:病毒膜蛋白M;
28274-29533为:“N”基因,可编码产生结构蛋白:病毒核衣壳磷蛋白N;
写脚本处理
1 | from collections import Counter |
得到秘钥LGASTRIQKNDPFEVYMWHCCOMBAT
但是经过简单替换密码的密码我们还不知道,由此注意到key.wav文件和Cov-1.jpg的属性
SlientEye隐写,直接使用工具解出密文
tpkfkelctevotpavwvelokwch
根据秘钥和密文,解出密码,这句话的意思也是消灭冠状病毒。然后steghide隐写
1 | steghide extract -sf CoV-1.jpg -p eliminatenovelcoronavirts |
解出flag.txt
大佬WP by123qwer
下载下来 3 个文件, pass.wav 可以用 silent 来解密
得到 priebeijoarkjpxmdkucxwdus, 不是压缩包密码(先留着, 后面要用) , 后来根据官方提示, 又得到了一个 hint, base32 解密就看到了明文。
这就开始和题目名字有联系了
然后就是说 md5 这个基因序列就是密码, 并且没有换行。
在 http://www.merrybio.com.cn/blog/coronavirus-introduction.html 找到最大的蛋白
在http://www.merrybio.com.cn/blog/SARS-CoV-2-genomic-analysis.html 找到了 S
病毒的编号
还有一个网址就是找基因序列的https://www.ncbi.nlm.nih.gov/orffinder/
得到了序列
然后提取出来去掉换行
得到 md5 98eb1b1760bcc837934c8695a1cee923
, 这个密码还是不是压缩包的。刚好还有一个 mp3 的文件, 那就用 MP3Stego
得到了明文, 这次这个就是压缩包的密码了, 得到 2 个文件, 一个图片, 一个
hint。Hint2 直接 16 进制解码得到明文。
现在我们有开始的那个不知道怎么用的 priebeijoarkjpxmdkucxwdus, 这里又说到了维吉尼亚密码, 开始的数据就是密文了, key 就是他描述的 N 蛋白有关东西的 top 20 的词+COMBAT, 最后就用 steghide 来解密这个图片
和 N 蛋白有关的就是 N, M 和 E
然后直接提取出现次数前 20 的字母,不过有同样的次数字符, 多试几次就行了, 最后得到LGASTRIQKNDPFEVYMWHCCOMBAT
然后 steghide 得到 flag
大佬WP by linear
hint首先base32解得如下图所示:
然后分别打开3个网站,是关于冠状病毒介绍的网站和一个查询网站。
然后wav音频用slienteye解得一串密文:
得到:priebeijoarkjpxmdkucxwdus
然后上面有提示说password是md5(it's gene sequence),那么利用查询网址:
首先最大的蛋白是刺突蛋白:
然后查到基因序列范围是21536-25384:
然后查到登录号是MN908947:
在hint提供的第二个网站上查询得到:
1 | MFLLTTKRTMFVFLVLLPLVSSQCVNLTTRTQLPPAYTNSFTRGVYYPDKVFRSSVLHSTQDLFLPFFSNVTWFHAIHVSGTNGTKRFDNPVLPFNDGVYFASTEKSNIIRGWIFGTTLDSKTQSLLIVNNATNVVIKVCEFQFCNDPFLGVYYHKNNKSWMESEFRVYSSANNCTFEYVSQPFLMDLEGKQGNFKNLREFVFKNIDGYFKIYSKHTPINLVRDLPQGFSALEPLVDLPIGINITRFQTLLALHRSYLTPGDSSSGWTAGAAAYYVGYLQPRTFLLKYNENGTITDAVDCALDPLSETKCTLKSFTVEKGIYQTSNFRVQPTESIVRFPNITNLCPFGEVFNATRFASVYAWNRKRISNCVADYSVLYNSASFSTFKCYGVSPTKLNDLCFTNVYADSFVIRGDEVRQIAPGQTGKIADYNYKLPDDFTGCVIAWNSNNLDSKVGGNYNYLYRLFRKSNLKPFERDISTEIYQAGSTPCNGVEGFNCYFPLQSYGFQPTNGVGYQPYRVVVLSFELLHAPATVCGPKKSTNLVKNKCVNFNFNGLTGTGVLTESNKKFLPFQQFGRDIADTTDAVRDPQTLEILDITPCSFGGVSVITPGTNTSNQVAVLYQDVNCTEVPVAIHADQLTPTWRVYSTGSNVFQTRAGCLIGAEHVNNSYECDIPIGAGICASYQTQTNSPRRARSVASQSIIAYTMSLGAENSVAYSNNSIAIPTNFTISVTTEILPVSMTKTSVDCTMYICGDSTECSNLLLQYGSFCTQLNRALTGIAVEQDKNTQEVFAQVKQIYKTPPIKDFGGFNFSQILPDPSKPSKRSFIEDLLFNKVTLADAGFIKQYGDCLGDIAARDLICAQKFNGLTVLPPLLTDEMIAQYTSALLAGTITSGWTFGAGAALQIPFAMQMAYRFNGIGVTQNVLYENQKLIANQFNSAIGKIQDSLSSTASALGKLQDVVNQNAQALNTLVKQLSSNFGAISSVLNDILSRLDKVEAEVQIDRLITGRLQSLQTYVTQQLIRAAEIRASANLAATKMSECVLGQSKRVDFCGKGYHLMSFPQSAPHGVVFLHVTYVPAQEKNFTTAPAICHDGKAHFPREGVFVSNGTHWFVTQRNFYEPQIITTDNTFVSGNCDVVIGIVNNTVYDPLQPELDSFKEELDKYFKNHTSPDVDLGDISGINASVVNIQKEIDRLNEVAKNLNESLIDLQELGKYEQYIKWPWYIWLGFIAGLIAIVMVTIMLCCMTSCCSCLKGCCSCGSCCKFDEDDSEPVLKGVKLHYT |
md5以后就是mp3的password:98eb1b1760bcc837934c8695a1cee923
然后用mp3stego解得mp3,得到压缩包密码:
然后得到hint2:
1 | you must pay attention to N protein ,How do that get into the viral capsid? |
让我们关注N蛋白:
那么N蛋白除了自身以外,还结合了M蛋白和E蛋白,那么把这几个蛋白的基因序列都整出来,然后字频分析:
但是这里有一个坑,会遇到有几个相同的频次,有些得倒一下顺序,最后顺序:LGASTRIQKNDPFEVYMWHCCOMBAT
然后维吉尼亚:
得到密钥:eliminatenovelcoronavirts
然后steghide解:
1 | steghide.exe extract -sf CoV-1.jpg -p eliminatenovelcoronavirts |
得到flag。
Flag
1 |