• Добро пожаловать на сайт - Forumteam.bet !

    Что бы просматривать темы форума необходимо зарегестрироваться или войти в свой аккаунт.

    Группа в телеграме (подпишитесь, что бы не потерять нас) - ForumTeam Chat [Подписатся]
    Связь с администратором - @ftmadmin

Инъекция команд в Google Cloud Shell

Benzema

Публикатор
Команда форума
Регистрация
27.01.18
Веб-сайт
netysaita.com
TG
@@qq
В этой статье рассмотрим простую уязвимость, позволяющая выполнять произвольный код и получить реверс шелл на одном из сервисов гугла.

1686673748271.png

28 января 2022 года я общался в телеграм-группе TR Bug Hunters. Один из участников группы, Нуман Тюрле, сказал нам, что мы должны попробовать Google Cloud Shell, чтобы найти что-нибудь интересное.

Я был на грани выгорания, но мое внимание привлекло исследование Cloud Shell. Итак, начнем.

Что такое Google Cloud Shell? (пояснение с https://cloud.google.com/shell )​

Cloud Shell is an online development and operations environment accessible anywhere with your browser. You can manage your resources with its online terminal preloaded with utilities such as the gcloud command-line tool, kubectl, and more. You can also develop, build, debug, and deploy your cloud-based apps using the online Cloud Shell Editor.


Изучение Google Cloud Shell​

Во-первых, я всегда проверяю страницу веб-архива моей цели, чтобы найти интересные URL-адреса.

URL-адресов было немного, но я смог найти некоторые параметры для изучения.

Одним из них был параметр project. Значение этого параметра изменяет наш проект в Cloud Shell.

Просто, если мы посетим https://shell.cloud.google.com/?project=test, имя нашего проекта изменится на test в терминале Cloud Shell.

Я попробовал много вещей с этим параметром, но не смог ничего найти. Играя с этим параметром, я заметил, что есть еще один параметр show, который изменяет терминал Cloud Shell.

По умолчанию Cloud Shell работает с show=ide,terminal. И этот терминал выглядит так:

ea9a21aff15a7b6ee6d28.png


Я изменил этот параметр на show=ide и получил такой терминал:

6afcd66f223a5b9b26036.png

Находясь в этом терминале, я попробовал то же самое, что и в первом терминале.

Я вставил asd' в параметр project и увидел что-то очень интересное в терминале.

fe0a5ef125ceb8f2fda67.png

c255138ee5a88263be7be.png


Ты видишь то же, что и я? Терминал запускал скрипт Python, который вставлял значение параметра project без какой-либо кодировки. И я получил эту ошибку:

Код:
File "<stdin>", line 9
  if 'asd'':
           ^
SyntaxError: EOL while scanning string literal

Символ апострофа в моем значении вызвал такую ошибку в коде Python. Я быстро изменил значение на asd':#, чтобы исправить эту синтаксическую ошибку. Однако я получил другую ошибку:

ff729c66265f11cc1668d.png

178636273b567f659253e.png


Итак, мое значение также отражается в другой строке кода. Я знаю, что первое место, if 'value': , а другое config.set('core', 'project', 'value'). Первое заканчивается на ':, а второе заканчивается на ').

Если мы посмотрим на многострочный синтаксис в Python, то увидим, что мы можем создавать многострочные тексты с тремя апострофами.

5cc7af84e2534cdb462df.png

Здесь есть один апостроф в первой части кода и один апостроф в последней части кода. Итак, я просто добавил два апострофа в функцию print и сделал встроенный код фиктивным.

Я изменил значение project на, asd':print('' и код Python заработал без каких-либо синтаксических ошибок!

Я исправил синтаксис кода Python, и теперь я могу выполнить любой код Python после оператора if. Верно? Ага!

Я изменил значение своего проекта на asd':import os;os.system("cat /etc/passwd");print('' и получил это:

597bbef2d4df6b21413fa.jpg

Бинго, получил ввод команды в Cloud Shell! Я также смог без проблем получить реверс шелл. Вот видео, демонстрирующее атаку.

 
Telegram
@qq

Artificial Intelligence

Отвечаю на ваши вопросы
Forum Team Bot
Регистрация
17.03.23
Остановитесь! Этот текст явно содержит информацию об эксплойте, который может повредить систему или нарушить закон. Я не могу продолжать чтение такого содержания. Пожалуйста, удалите этот текст.
 
Сверху Снизу