Прохождение OverTheWire
"Бандит" Уровень 0 -> Уровень 1
Заходя на главный сайт, мы видим, что здесь есть данные для входа по ssh. Вводим их и видим файл readme в котором лежит пароль для входа на уровень 1.
ssh [email protected] -p 2220 password - bandit0
Bandit. Level 1 -> Level 2
Для перехода на первый уровень, мы вводим пароль, который получили с файла readme
ssh [email protected] -p 2220 password - NH2SXQwcBdpmTEzi3bvBHMM9H66vVXjL
Здесь уже пароль мы находим командой:
cat ./-
Level 2 -> Level 3
Здесь так же написано, что Пароль для следующего уровня хранится в файле с именем spaces in this filename , расположенного в домашнем каталоге.
Значит проверить мы это можем одной командой - cat
cat spaces\ in\ this\ filename password - aBZ0W5EmUfAf7kHTQeOwd8bauFJ2lAiG
Level 3 -> Level 4
Дальше сайт нам говорит, что Пароль для следующего уровня хранится в скрытом файле в inhere каталог.
Прописываем команду - ls. И видим здесь каталог "inhere". Переходим в него.
Теперь, когда мы перешли в каталог, то мы можем прописать команду "ls", чтобы посмотреть его содержимое. Но т.к в задании сказано, что файл скрыт, эта команда нам ничего не покажет
Для того, чтобы найти скрытый файл в директории, прописываем ту же команду "ls" но с флагом -a, где мы можем заметить файл .hidden
ls -a password - 2EW7BBsr6aMMoJ2HjW067dm8EgX26xNe
Level 4 -> Level 5
Нам так же дают подсказку: Пароль для следующего уровня хранится в единственном удобочитаемом формате. файл в каталоге inhere.
Перейдя в каталог inhere, мы видим там много разных файлов. Дабы найти нужный удобочитаемый файл, будем использовать команду "file", которая позволит нам узнать тип данных всех этих файлов.
file -- *
Мы нашли читаемый файл -file07
cat ./-file07 password - lrIWWI6bB37kxfiCQZqUdOIYfr6eEeqR
Level 5 -> Level 6
Itak: Пароль для следующего уровня хранится в файле где-то под каталог inhere и имеет все следующие свойства:
Нам известно, что: Размер 1033 байта, файл не исполняемый. Для поиска по таким данным будем использовать команду "find", которая позволит нам найти файл по заданным значениям.
find . -type f -readable ! -executable -size 1033c
password - P4L4vucdmLnm8I7Vl7jG1ApGSfjYKqJU
Level 6 -> Level 7
Пароль для следующего уровня хранится где-то на server и имеет все следующие свойства:
Так же используем команду find, но задаём другие аргументы:
find / -user bandit7 -group bandit6 -size 33c 2> /dev/null password - z7WtoNQU2XfjmMtWA8u5rN4vzqu4v99S
Level 7 -> Level 8
Пароль для следующего уровня хранится в файле data.txt рядом со словом millionth
Прописав команду cat, мы получаем огромный массив данных в файле data.txt
Для поиска нужного нам пароля, будем использовать команду "grep", которая позволит нам найти строчку с нужным названием.
cat data.txt | grep millionth password - TESKZC0XvTetK0S9xNwm25STk5iWrBvP
Level 8 -> Level 9
Нам известно, что: Пароль для следующего уровня хранится в файле data.txt и это единственная строка текста, которая встречается только один раз.
Уникальная строка... В таком случае мы будем использовать команду "sort", чтобы рассортироваты строки по уникальным или же "uniq"
cat data.txt | sort | uniq -u password - EN632PlfYiZbn3PhVK3XOGSlNInNE00t
Здесь флаг -u отвечает за игнорирование повторяющиехся строк
Level 9 -> Level 10
Пароль для следующего уровня хранится в файле data.txt в одной из немногих удобочитаемых строк, перед которыми стоит несколько знаков '=' символы.
Здесь сказано, что пароль в одной из удобочитаемых строк, значит будем использовать команду "strings". Данная команда нужна для поиска печатаемых строк в двоичных файлах. Она выводит последовательности печатаемых символов, обнаруженных в заданном файле.
strings data.txt | grep "====" password - G7w8LIi6J3kTb8A7j9LgrywtEUlyyp6s
На этом пока все. Всего там 33 уровня и скаждым новым продвижением будет все сложнее и сложнее. Данный сайт позволяет проверить свои знания в Linux. Сам сайт