Вступление

Не мало было случаев на просторах интернета , где происходила компрометация приложения с последующим шифрованием , в таких случаях обычно спасает бэкап , но что делать если последний бекап файл был на самом сервере?

В этой статье разберем один интересный кейс, в котором удалось скомпрометировать веб приложение используя тот самый бекап файл, который лежал на сервере в открытом доступе.

Весь chain атаки представлен в виде: fuzzing → backup → code analyzing → admin login → upload

Untitled


Зачем ломать дверь - когда ключ лежит под ковриком?

Гуляя по просторам суб-доменов и собрав необходимый список хостов, я решил запустить nuclei и пока проходит скан пойти погулять - может что-нибудь да найдется! и о чудо!

Вернувшись и почитав логи я увидел что нашелся интересный архив с надписью api.tgz - нужно глянуть, по любому там что то есть!

Untitled

Скачав и распаковав архив, я наткнулся на исходный код бэкенда одного из приложения. Думаю “Ну все, сейчас будет весело - пароли , доступ к базе данных , все вкусное…

Untitled

Можно уже писать отчет” но решил поковырять дальше! Как сказал один мой знаковый “Все что не RCE - то не бага”

“Покажи мне свой код и я скажу как тебя взломали!”

Для этой части статьи мне показалось что этот мем - самым точным образом описывает , дальнейшее описание кейса :-)

Untitled

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

Untitled

Ура посмотрим что за приложение наконец то! Логин форма довольно простая, так что не стал заморачиваться и крутить скулю, просто ввел креды и пошел дальше.