Bandit靶场攻略实况

发布时间 2023-07-19 10:39:54作者: Kevin_404notfound

Bandit靶场攻略实况

前言:在开始攻略Bandit之前,我在这里给大家介绍一个学习linux命令的宝藏网站,有什么命令不懂,可以马上翻阅此网站!非常实用!

网址:https://www.runoob.com/linux/linux-command-manual.html

1.  打开MobaXterm终端模拟器,选择session

2.  选择SSH,“Remote host”为 bandit 的 IP 地址,用户名为当前用户名。端口号使用官网提示的 2220

3.  输入用户名和密码

登入成功

4.  查看游戏提示信息,可以得知用户名格式,关卡的路径和密码的路径

第一关:输入ls后,可以看到一个readme的文件,此时我们不确认它是文件还是文件夹,cd进去试试就知道了

发现是一个文件

此时我们就可以使用cat命令,查看readme里面的密码

哈哈哈,这时候我们可以进第二关了!

第二关:使用刚刚得到的密码来登录

登录成功!

我们继续ls来看看有什么文件。‘-’这个名字跟root目录名是一样的,所以必须使用相对路径来访问

此时,我们使用cat ./-来转义,得到下一关的密码!

第三关:使用刚刚得到的密码,成功登入!

ls一下,发现一个文件

老套路,先cd,看看是不是文件夹

发现不是文件夹

访问带有空格的文件名,用转义字符\来转义空格即可,用cat获得密码

第四关:使用刚刚得到的密码,成功登入!

使用ls命令看看,发现没有文件了

查看官网,发现原来是由隐藏文件

此时我们使用ls -la命令去查找隐藏文件

发现隐藏文件,cat进去,查看下一关的密码

第五关:使用刚刚得到的密码,成功登入!

ls -la查看有没有隐藏文件

根据官网提示,密码在inhere文件夹内

cd进去,发现有很多文件,但不知道具体是哪一个

用file命令查看一下文件,我们可以看到,只有一个文件是ASCII编码的,用cat来查看它,发现只有07这个文件是密码文件

cat它,得到下一关密码

第六关:使用刚刚得到的密码,成功登入!

ls -la看看有啥

cd进去inhere文件夹

使用find命令,成功找到文件大小为1033字节的文件

cd进去

成功找到下一关的密码!

第七关:使用刚刚得到的密码,成功登入!

首先看题目的要求,bandit7的密码文件有3个属性:被用户bandit7所有,被用户组bandit6所有,并且拥有33字节,但是这个文件在哪里,我们不知道,我们直接用find命令,这三个属性都可以放到find命令的参数中去

此时可以找到bandit7的登录密码路径

成功使用cat命令找到!

第八关:使用刚刚得到的密码,成功登入!

根据官网提示,可以得出密码在data.txt文件里,并且在字符串millionth 旁边

我们直接使用find命令,找到data.txt文件

直接使用grep筛选命令,找出字符串millionth 旁边的密码

第九关:使用刚刚得到的密码,成功登入!

根据官网提示,密码在data.txt文件中,只出现了一次,所以,只要用uniq命令就能找到这个密码,uniq要跟sort一起用,因为uniq是通过比较上下行字符串来判断是否重复,所以先sort再uniq

输入sort ./data.txt |uniq -u,找到下一关密码EN632PlfYiZbn3PhVK3XOGSlNInNE00t

第十关:使用刚刚得到的密码,成功登入!

这一关的密码在很多个‘=’的后面,先用cat查看文件信息,输出是非常多的,但是很多不是human-readable的字符

这时我们可以用strings来过滤,strings命令在对象文件或二进制文件中查找可打印的字符串,输入strings ./data.txt 最后找到了密码

第十一关:使用刚刚得到的密码,成功登入!

这关按照提示,用base64解码data.txt就行

输入base64 -d ./data.txt 即可,得到密码6zPeziLdR2RKNdNYFNb6nVCKzphlXHBM!

第十二关:使用刚刚得到的密码,成功登入!

这一关搞得我焦头烂额,查了相关资料,才知道是ROT13加密,涉及到密码学的基础,大概意思就是每个字母往后推x位就是真正的含义,比如a往后推13位代表的就是n依此类推

这里直接输入cat ./data.txt |tr ‘a-zA-Z’ ‘n-za-mN-ZA-M’ 获得密码JVNBBFSmZwKKOP0XbFXOoW8chDz5yVRv!

第十三关:使用刚刚得到的密码,成功登入!

看了一看提示,这关又是比较麻烦的一关,我们需要创建一个tmp文件夹,并且把data.txt文件复制到新建的tmp里

我们先cat一下data.txt 看看是什么东西,发现都是16进制FF编码文件

我们按照提示新建一个tmp文件夹,输入mkdir /tmp/bandit12

那我们直接复制data.txt文件到tmp文件夹里,输入cp ./data.txt /tmp/bandit12/data

我们再cd进去tmp文件夹,用file命令查看文件的格式,再使用xxd命令来解析16进制文件

file一下,发现是gzip文件,再将data.out重命名为.gz文件,再用gzip命令来解压缩data.gz这个文件,输入gzip -d data.gz data.out

选择y

此时我们再file一下data查看一下文件格式,发现是bzip2文件,此时我们再把data修改为data.bz2,这里我又在网上找了很多资料,发现要用bzip2的命令了,成功解压并得到gzip文件

再来一次,得到tar压缩文件

这里要使用tar的解压缩命令..好吧,得到的还是tar文件,继续解压缩

再来一次,还要继续..

得到一个data6.bin文件,继续用bz2命令解压..

得到了tar文件,继续..

得到gz文件,继续..

终于,可以cat了..

得到密码wbWdlBxEir4CaE8LaPhauuOo6pwRmrDw

第十四关:使用刚刚得到的密码,成功登入!

通过官网提示,得知需要用到ssh的连接,需要用 -i 指明私钥文件

未完持续!!!!!!!!!!