Перейти к содержимому

HTTP из командной строки

Говорите по HTTP напрямую через curl — коды ответа, заголовки, cookie, формы и robots.txt.

  • web.http
  • web.headers
  • web.cookies

Задания

  1. 1. Коды ответа5 очк.

    Запросите /admin. Какой код ответа HTTP возвращает сервер?

  2. 2. Спрятано в заголовках10 очк.

    Главная страница отправляет нестандартный заголовок ответа, который браузер никогда не показывает. Отправьте его значение.

  3. 3. Robots.txt10 очк.

    robots.txt говорит поисковикам, что не индексировать, — и этим часто указывает атакующим на интересные места. Найдите флаг.

  4. 4. Доверие клиенту20 очк.

    Страница /admin определяет, кто вы, по cookie, которую сама же и выставляет. Убедите её, что вы администратор.

  5. 5. Отправка формы15 очк.

    Войдите через /login с учётными данными по умолчанию (сервер подскажет, как).

Вводные и справка по командам

Внутри вашей практики по адресу http://127.0.0.1:8000/ работает небольшое веб-приложение. Исследуйте его с помощью curl:

ОпцияНазначение
-iпоказать заголовки ответа
-vпоказать весь обмен целиком
-b 'имя=значение'отправить cookie
-d 'a=1&b=2'отправить POST-форму
-A 'agent'задать User-Agent

Исходный код приложения прочитать нельзя — относитесь к нему как к чёрному ящику.

Справка по командам

КомандаЧто делает
curl <URL>тело ответа
curl -i <URL>строка статуса и заголовки ответа + тело
curl -b 'имя=значение' <URL>отправить cookie
curl -d 'a=1&b=2' <URL>отправить POST-форму

robots.txt — файл в корне сайта, где перечислены пути, которые поисковикам не следует индексировать (строки Disallow: /путь). Заголовок Set-Cookie в ответе показывает имя и значение cookie, которую ставит сервер.

HTTP из командной строки: практика в терминале онлайн — CyberLab