http://overthewire.org/wargames/
l0:
cat readme
l1:
-不能直接读,默认为参数前那个-,这里补充为绝对路径
cat /home/bandit1/-
l2:
输入cat spa 然后tab自动补全。
题意要告诉的是空格前应加反斜杠

UmHadQclWmgdLOKQ3YNgjWxGoRMb5luK
l3:
ls -a查看所有文件


pIwrPrtPN36QITSp3EQaw936yaFoFgAB
l4:
file查看类型,然后查看那个ascii text的文本

l5:

根据1033B查

l6:
HKBPTKQnIay4Fw76bEy8PVxKEDQRKTzs

三个条件都列上,找到一个可以看的文件


l7:
grep筛选一下找到

l8:
使用这个命令,先排序一下,在uniq计数每类出现的次数。

发现了:

如果用这个命令

不能得到预期效果

l10:
可以看出,strings显示humanreadable strings ,grep选一下有=的

l11:
查看是base64,使用python base64包解码

l12:
内容是rot13处理过的,就是每个字母加13,如果超过z就从a开始。两次rot13得到原字符串

写个脚本:

运行结果:

l13:
8ZjyCRiBWFYkneahHwxCv3wb2a1ORpYL

xxd -r 恢复这个文件原有格式,然后发现是gzip格式
然后根据文件格式,反复
bzip2 -d file.bz2
gzip -d file.gz
tar -xvf file.tar
解压文件直到出现了

l14:
有一个ssh私钥文件,使用它登陆bandit14,然后读那个文件


l15:
扫一下本机端口,nc连接30000端口,输入密码

l16:
cluFn7wTiGryunymYOu4RcffSxQluehd

输入上关密码,返回

l17:
openssl连接端口30001:

返回一个私钥,新建一个文件粘进去。
然后使用这个私钥连接到bandit17

18:
提示说密码是new文件里的唯一一行与old不同的,使用diff命令
kfBf3eYk5BPBRzwjqutbbfE887SVc5Yd

登陆时提示byebye

这时候,参考了其他方法

不分配伪终端即可

19:
IueksS7Ubh8G3DCwVzrTd8rAVOwq3M5x
刚才-T后进入bandit18,然后查看一下readme就知道了
ssh登陆

转载于:https://www.cnblogs.com/zhibin123/p/11520393.html