实验吧-杂项-pilot-logic、ROT-13变身了
1、pilot-logic
题上说password藏在文件里,直接丢到Winhex里,搜索pass就拿到flag了。
有的大佬提供了另一种方法,题上说是一个磁盘文件,有一个处理磁盘文件的软件autopsy,不过这个软件有点大(超过500M),可以直接导入后就能看到flag了。
2、ROT-13变身了
ROT13(回转13位,rotate by 13 places,有时中间加了个连字符称作ROT-13)是一种简易的替换式密码。
原理:(摘自百度百科)
套用ROT13到一段文字上仅仅只需要检查字元字母顺序并取代它在13位之后的对应字母,有需要超过时则重新绕回26英文字母开头即可。A换成N、B换成O、依此类推到M换成Z,然后序列反转:N换成A、O换成B、最后Z换成M。只有这些出现在英文字母里头的字元受影响;数字、符号、空白字元以及所有其他字元都不变。因为只有在英文字母表里头只有26个,并且26=2×13,ROT13函数是它自己的逆反: [1]
对任何字元x:ROT13(ROT13(x))=ROT26(x)=x。
换句话说,两个连续的ROT13应用函式会回复原始文字(在数学上,这有时称之为对合(involution);在密码学上,这叫做对等加密(reciprocalcipher))。
转换可以利用查找表完成,如下例所示:
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
NOPQRSTUVWXYZABCDEFGHIJKLMnopqrstuvwxyzabcdefghijklm
例如,下面的英文笑话,精华句为ROT13所隐匿:
How can you tell an extrovert from an
introvert at NSA?Va gur ryringbef,
gur rkgebireg ybbxf ng gur BGURE thl'f fubrf.
透过ROT13表格转换整片文字,该笑话的解答揭露如下:
Ubj pna lbh gryy na rkgebireg sebz na
vagebireg ng AFN?In the elevators,
the extrovert looks at the OTHER guy's shoes.
第二次ROT13函数将转回原始文字。
题目给了我们一串ascii,直接rot13解密不行的,需要先将ASCII减13后再rot13解密。
写个程序吧ASCII每个都减13(这个从文件in.txt读取的,感觉python不太好像,于是用了C++):
#include<cstdio>
int main()
{
freopen("in.txt", "r", stdin);
int a;
while(~scanf("%d",&a)){
printf(" %d", a-13);
}
}
结果是:
70 76 65 71 32 73 83 32 102 108 97 103 123 119 119 119 95 115 104 105 121 97 110 98 97 114 95 99 111 109 95 105 115 95 118 101 114 121 95 103 111 111 100 95 63 63 63 63 125 10 77 68 53 58 51 56 101 52 99 51 53 50 56 48 57 101 49 53 48 49 56 54 57 50 48 97 97 99 51 55 49 57 48 99 98 99
再去转成字符串:FLAG IS flag{www_shiyanbar_com_is_very_good_????}MD5:38e4c352809e150186920aac37190cbc
可以看到,已经出flag了,不过是一部分,后面有个md5,应该是那四个?部分的字符,这个MD5在许多网站上都是无法查询的,于是用python爆破:
import hashlib
dic = '@[\]^_`{|}~!#$%&()*+,-./:;<=>?0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
strs = '38e4c352809e150186920aac37190cbc'
for a in dic:
for b in dic:
for c in dic:
for d in dic:
s = 'flag{www_shiyanbar_com_is_very_good_' +str(a)+str(b)+str(c)+str(d)+'}'
m = hashlib.md5()
m.update(s.encode())
if m.hexdigest()==strs:
print('Yes')
print(s)
exit()
else:
print(s)
刚开始还以为????代表的四个字符加密后是那串MD5,最后才知道是整个flag。
得到flag:
实验吧-杂项-pilot-logic、ROT-13变身了的更多相关文章
- 实验吧-杂项-你知道他是谁吗?(转盘密码、NTFS数据流检测及导出)
刚看到的时候听懵,没注意到重点,其实很多时候题目中的细节就是给我们线索的,所以审题和思考是很重要的. 在没做到点上的是,也做了一点努力,没有效果,科普一下这个人((*^▽^*))图片上是托马斯.杰斐逊 ...
- 实验吧-杂项-64格(64进制--base64索引)
下载gif,Winhex打开发现文件头缺失,加上文件头GIF89得到正常图片,用帧分解工具把每一帧分解. 图片主要是一个8×8的方格,好像没什么线索,把每一帧图片上小黄人的占格的位置数出: 17 54 ...
- 实验吧-杂项-WTF?(python 01代码转图片)
比较新的题型了吧. code为base64码,转码出来是01代码,直接蒙圈,查阅相关wp才知道是转图片的. 复制到编辑器里可以看到一共65536个数字,开方是256,于是这就是一个方形的图片了–> ...
- 实验吧-杂项-你没有见过的加密!(php srand()和rand()函数)
什么垃圾东西,弄半天,Windows上运行乱码,linux上7.3的php运行也是乱码(气死). 下载文件,查看内容 <?php function encrypt($str) { $crypte ...
- 实验吧-杂项-MD5之守株待兔(时间戳&python时间戳函数time.time())
其实也有点蒙圈,因为从没做过和时间戳有关的题. 打开网站,将系统密钥解密得到一串值,而自己的密钥解密是空的,既然说是要和系统匹配,就把解密得到的值以get方式送出去. 但是发现还是在自己的密钥也发生了 ...
- 实验吧-杂项-啦啦啦(数据包http导出、图片拼接)
比较综合的一道题. 1.数据包数据提取 首先下载数据包,一般数据包都是抓取的一些数据,需要对数据进行分析. 用wireshark打开数据包,筛选出http协议的数据,发现有两个是上传的数据: 我们就看 ...
- 实验吧-杂项-flag.xls(notepad++查找)、保险箱(linux文件分解、密码破解)
flag.xls 下载文件,用notepad++打开,查找flag就能找到flag. 保险箱(linux文件分解.密码破解) 将图片保存下来,用kali的binwalk分析,发现有rar文件,然后用f ...
- struts标签--logic总结
1. logic:empty 该标签是用来判断是否为空的.如果为空,该标签体中嵌入的内容就会被处理.该标签用于以下情况: 1)当Java对象为null时: 2)当String对象为"&quo ...
- Struts 1 之<logic>标签库
1. logic:empty logic:empty标签是用来判断是否为空的.如果为空,该标签体中嵌入的内容就会被处理.该标签用于以下情况: 当Java对象为null时 当String对象为" ...
随机推荐
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 排版:可滚动
<!DOCTYPE html> <html> <head> <title>菜鸟教程(runoob.com)</title> <meta ...
- 《Java Spring框架》Spring IOC 源码分析
1.下载源码 源码部署:https://www.cnblogs.com/jssj/p/11631881.html 并不强求,最好是有源码(方便理解和查问题). 2. 创建子项目 Spring项目中创建 ...
- a链接 打电话 发短信 发email
<a href="tel:10086">给10086打电话</a><a href="sms:10086">给10086发短信 ...
- #P1099 树网的核 题解
题目描述 pdf 题解 这一题,刚开始看题目感觉好像很难,题目又长……一看数据范围,呵呵. 已经给出来这是个DAG,所以不用担心连通性的问题.那么怎么做呢? 朴素的做法是把树的直径的两个端点都统计出来 ...
- 华为平板暴力禁用wifi
删除以下配置文件及动态链接库: /system/etc/wifi/* /system/etc/permission/*wifi* /system/lib/*wifi*
- Java并发编程:Java内存模型JMM
简介 Java内存模型英文叫做(Java Memory Model),简称为JMM.Java虚拟机规范试图定义一种Java内存模型来屏蔽掉各种硬件和系统的内存访问差异,实现平台无关性. CPU和缓存一 ...
- 二 sql语句,常用字段数据类型
MySQL中常用DDL命令 database definition language 与 DML命令 : database definition language 操作数据库: 创建数据库 : ...
- java set的线程安全
CopyOnWriteArraySet和ConcurrentSkipListSet 与线程不安全的集合类的对应关系 HashSet -> CopyOnWriteArraySet TreeSet ...
- 吴裕雄--天生自然HADOOP操作实验学习笔记:协同过滤算法
实验目的 初步认识推荐系统 学会用mapreduce实现复杂的算法 学会系统过滤算法的基本步骤 实验原理 前面我们说过了qq的好友推荐,其实推荐算法是所有机器学习算法中最重要.最基础.最复杂的算法,一 ...
- ionic3记录之栅格布局使文字居中
{ display:flex; align-items:center; } 未完待续...