Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ДЗ

.pdf
Скачиваний:
0
Добавлен:
26.06.2025
Размер:
565.07 Кб
Скачать

Министерство науки и высшего образования Российской Федерации

Федеральное государственное бюджетное образовательное учреждение

высшего образования

«Магнитогорский государственный технический университет им. Г.И.Носова»

Кафедра Электроники и микроэлектроники

Контрольная работа

по дисциплине: «Линукс. Рабочая станция»

Выполнил: студент 2 курса, группы

Проверил: старший преподаватель кафедры информатики и информационной безопасности.

Лукьянов Г. И.

Магнитогорск, 2023

Задание 1.

Пароль для следующего уровня хранится в файле с именем readme, расположенном в домашнем каталоге.

Выполнение:

Командой cat читаем файл readme, получаем пароль к следующему уровню.

Задание 2

Пароль для следующего уровня хранится в файле с именем -, расположенном в домашнем каталоге.

Выполнение:

Командой cat читаем содержимое файла “-”, используя конструкцию ./

Задание 3

Пароль для следующего уровня хранится в файле с именем "spaces in this filename", расположенном в домашнем каталоге.

Выполнение:

Читаем файл spaces in this filename командой cat, предварительно взяв название файла в кавычки.

Задание 4

Пароль для следующего уровня хранится в скрытом файле в каталоге in here.

Выполнение:

Командой ls с ключом –a находим скрытый файл .hidden

командой cat читаем его

Задание 5

Пароль для следующего уровня хранится в единственном удобочитаемом файле в каталоге inhere.

Выполнение:

Методом перебора файлов находим пароль в файле –file07

Задание 6

Пароль для следующего уровня хранится в файле где-то в каталоге inhere и обладает всеми следующими свойствами:

размер 1033 байта

не исполняемый файл

Выполнение:

Командой find находим файл подходящий заданным параметрам. Указываем –type f чтобы искать файл и ключом –size указываем размер нужного файла.

Задание 7

Пароль для следующего уровня хранится где-то на сервере и обладает всеми следующими свойствами:

принадлежит пользователю bandit 7

принадлежит группе bandit6

размер 33 байта

Выполнение:

Командой find задаем поиск по размеру –size, владельцу –user и группе –group. Ключ –а объединяет составляющие запроса. Среди найденных файлов 1 доступен для чтения.

Задание 8

Пароль для перехода на следующий уровень хранится в файле data.txt рядом со словом millionth

Выполнение:

Командой grep задаем поиск в файле data.txt по ключевому слову.

Задание 9

Пароль для перехода на следующий уровень хранится в файле data.txt и это единственная строка текста, которая встречается только один раз

Выполнение:

Объединяем в запросе команды cat, sort и uniq, чтобы найти в файле data.txt неповторяющуюся строку с паролем.

Задание 10

Пароль для перехода на следующий уровень хранится в файле data.txt в одной из немногих удобочитаемых строк, которой предшествуют несколько символов ‘=’.

Выполнение:

Объединяем команды strings и grep, чтобы найти строки в которых есть несколько символов «=».

Задание 11

Пароль для перехода на следующий уровень хранится в файле data.txt , который содержит данные в кодировке base64.

Выполнение:

В файле data.txt находиться закодированный текст, командой echo и base64 декодируем этот текст и получаем пароль.

Задание 12

Пароль для перехода на следующий уровень хранится в файле data.txt , где все строчные (a-z) и прописные (A-Z) буквы были повернуты на 13 позиций

Выполненине:

В этом задании текст в data.txt зашифрован шифром ROT-13, т.е. необходимо сдвинуть каждую букву на 13 позиций. Делаем это при помощи команды tr.

Задание 13

Пароль для перехода на следующий уровень хранится в файле data.txt , который представляет собой шестнадцатеричный файл, который был многократно сжат. Для этого уровня может быть полезно создать каталог в /tmp, в котором вы сможете работать с помощью mkdir. Например: mkdir /tmp/myname123. Затем скопируйте файл данных с помощью cp и переименуйте его с помощью mv.

Выполнение:

Командой mkdir создаем директорию mydata в директории tmp. Командой cp копируем файл data.txt в директорию /tmp/mydata. Командой file узнаем какой тип данных содержится внутри документа.

Командой xxd с ключом –r преобразовываем шестнадцатеричные данные в файле data.txt и помещаем их в файл data1.txt. Проверяем data1 командой file, узнаем что данные сжаты в формате gzip. Командой mv переименовываем файл data1.txt в data2.gz. Командой gzip с ключом –d распаковываем файл data2.gz. Проверяем файл data2, который заменил файл data2.gz. Узнаем, что теперь данные в файле data2 в формате bzip2. Командой mv переименовываем data2 в data3.bz. Командой bzip2 –d распаковываем файл data3.bz2 и проверяем получившийся файл data3. Переименовываем data3 в data4.gz и командой gzip –d распаковываем его. Теперь данные в файле это архив. Разархивируем его командой tar –xvf и получаем файл data5.bin. Проверяем data5.bin и в нем еще архив. Снова применяем tar –xvf получаем data6.bin. Проверяем data6.bin он в формате bzip2. Переименовываем data6.bin в data7.bz2 и распаковываем командой bzip2 –d. Проверяем получившийся файл data7, узнав что это архив применяем команду tar –xvf и получаем файл data8.bin. Командой file проверяем data8.bin, переименовываем data8.bin в data9.gz. Командой gzip

–d распаковываем его и проверяем командой file файл data9. Убедившись, что внутри читаемый текст используем команду cat и получаем пароль.

Задание 14

Пароль для следующего уровня хранится в /etc/bandit_pass/bandit14 и может быть прочитан только пользователем bandit14. Для этого уровня вы не получаете следующий пароль, но получаете закрытый SSH-ключ, который можно использовать для входа на следующий уровень.

Выполнение:

В 14 задание дается даётся ключ при помощи которого переходим на следующий уровень. Команда ssh с ключом –i (Используется для выбора файла, из которого считывается идентификатор (закрытый ключ) для аутентификации по открытому ключу). Атрибут –p указывает порт. После ввода команды подтверждаем и переходим на следующий уровень.

Командой cat читаем указанный файл и получаем пароль.

Задание 15

Пароль для следующего уровня можно получить, отправив пароль текущего уровня на порт 30000

на localhost.

Выполнение:

Командой nc (netcat) запрашиваем порт 30000, вводим пароль от прошлого задания и нам отдают пароль от следующего уровня.