Wargames-Bandit-Level11
Level 11
Level Goal
The password for the next level is stored in the file data.txt, where all lowercase (a-z) and uppercase (A-Z) letters have been rotated by 13 positions
Solution
说是rot13加密了,其实也就是单表替换呗,但是在linux shell里面怎么做我确实不知道,本来想一个一个字符读出来然后变换,没有成功,最后找了个rot13的函数:
tr只能通过stdin(标准输入)接收输入(无法通过命令行参数接收)。其调用格式如下:
tr [options] set1 set2
来自stdin的输入字符按照位置从set1映射到set2(set1中的第一个字符映射到set2 中的第一个字符,以此类推),然后将输出写入stdout(标准输出)。set1和set2是字符类或字符组。如果两个字符组的长度不相等,那么set2 不断复制其最后一个字符,直到长度与set1 相同。如果set2的长度大于set1,那么在set2中超出set1长度的那部分字符则全部被忽略
bandit11@bandit:~$ cat data.txt | tr 'a-zA-Z' 'n-za-mN-ZA-M'
The password is JVNBBFSmZwKKOP0XbFXOoW8chDz5yVRv