PDA

Просмотр полной версии : Развить атаку через SQL load_file()


Forserer
11.11.2020, 16:41
Всем привет, получилось добраться через SQL до чтения файлов на сервере

.SpoilerTarget" type="button">Spoiler: OS на сервере


Code:
NAME="Ubuntu"
VERSION="18.04.1 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.1 LTS"
VERSION_ID="18.04"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic


Но похоже что данный сервер это только БД и на нем нет ничего другого из серии apache nginx ftp вроде как после просмотра "/var/log/dpkg.log"

удалось найти в конфиге mysql такое, не понятно как к этому подключаться только

.SpoilerTarget" type="button">Spoiler: MariaDB


Code:
wsrep_on = ON
wsrep_provider = /usr/lib/galera/libgalera_smm.so
wsrep_cluster_name=my_wsrep_cluster
wsrep_cluster_address="gcomm://XX.88.78.XX:4567"
wsrep_node_address="XX.XXX.XXX.XXX"
wsrep_node_name=hw1
wsrep_sst_auth=login:pass
#wsrep_sst_method=xtrabackup-v2
wsrep_sst_method=mariabackup


/etc/passwd читается, но вот /etc/shadow его нету

Как я понял сервер конкретно под базу, может быть есть какие варианты узнать например ip чтобы к нему попробовать подключиться, или еще куда копнуть попробовать?

UPDATE:

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

dmax0fw
12.11.2020, 06:12
Forserer said:
↑ (https://antichat.live/posts/4428687/)
может быть есть какие варианты узнать например ip чтобы к нему попробовать подключиться




Code:
load_file('/proc/net/tcp')

Колонка local_address - то что нужно. IP и порт закодированы в hex. Только сначала нужно реверснуть все байты, а потом уже переводить в десятичные значения


Forserer said:
↑ (https://antichat.live/posts/4428687/)
нашел еще один момент с sql injection можно вставлять на страницу тэги script и прочие, но вот при вставке строка приобретает такой вид на странице может есть варианты это обойти?


PHP код не будет выполняться т.к. в данном случае он не хранится на сервере и выводится через скулю как простой текст

Forserer
12.11.2020, 18:29
dmax0fw said:
↑ (https://antichat.live/posts/4428842/)
Колонка local_address - то что нужно. IP и порт закодированы в hex. Только сначала нужно реверснуть все байты, а потом уже переводить в десятичные значения


отображается в незакодированном виде список узеров и в конце 127.0.0.1


dmax0fw said:
↑ (https://antichat.live/posts/4428842/)
PHP код не будет выполняться т.к. в данном случае он не хранится на сервере и выводится через скулю как простой текст


вставка через базу тоже не работает, код так же комментируется

Baskin-Robbins
12.11.2020, 19:59
Forserer said:
↑ (https://antichat.live/posts/4428687/)
Но похоже что данный сервер это только БД и на нем нет ничего другого из серии apache nginx ftp вроде как после просмотра "/var/log/dpkg.log"


Отсутствие записей в этом логе не говорит об отсутствии веб сервера и тд.


Forserer said:
↑ (https://antichat.live/posts/4428687/)
/etc/passwd читается, но вот /etc/shadow его нету


Он есть, нет прав на его чтение. Если он отсутствует - после ребута не залогиниться в ОС.

Первым делом чтобы определиться отдельно ли СУБД стоит - просканить порты на 3306(возможно другой).

Попробовать почитать дефолтные пути логов, конфигов ВС - как миниму access.log, error.log ну и тд.

Предполагаем что это уже сделано.

Тогда далее необходимо определиться - чего мы там забыли, если кроме бд там ничего нет?

1) Инфа в бд, в частности креды юзеров к ресу - основной момент, незавимо от того где висит мускул.

2) Серчим файлы с возможным password leakage или другой чувствительной информацией, это наверное болшье

к теме повышения привилегий.

Тема IP. Для поиска айпишника с базой можно попробовать посмотреть:

-- Субдомены

-- Просканить подсеть на указанный выше порт

-- Поискать ресы, которые могут быть связаны с целевым

Forserer
13.11.2020, 18:07
Baskin-Robbins said:
↑ (https://antichat.live/posts/4428993/)
Отсутствие записей в этом логе не говорит об отсутствии веб сервера и тд.
Он есть, нет прав на его чтение. Если он отсутствует - после ребута не залогиниться в ОС.
Первым делом чтобы определиться отдельно ли СУБД стоит - просканить порты на 3306(возможно другой).
Попробовать почитать дефолтные пути логов, конфигов ВС - как миниму access.log, error.log ну и тд.
Предполагаем что это уже сделано.
Тогда далее необходимо определиться - чего мы там забыли, если кроме бд там ничего нет?
1) Инфа в бд, в частности креды юзеров к ресу - основной момент, незавимо от того где висит мускул.
2) Серчим файлы с возможным password leakage или другой чувствительной информацией, это наверное болшье
к теме повышения привилегий.
Тема IP. Для поиска айпишника с базой можно попробовать посмотреть:
-- Субдомены
-- Просканить подсеть на указанный выше порт
-- Поискать ресы, которые могут быть связаны с целевым


Там выше я оставлял вывод mysql конфига и там есть интересная строчка, wsrep_node_addres вот это как раз и есть адрес целевого хоста на котором и крутится вебсервер, там и порты открыты 21,22,80,443 и 4567 для galera, а он уже видимо через порт 4567 подключается к данному серверу к galera на котором уже крутится mysql. Так же в этом конфиге есть wsrep_cluster_address вот это не понятно возможно и сам сервер с базой но из дефолтных портов 22 есть и вроде как все.

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

И получается что сейчас есть доступ к админке сайта(opencart 1.5.1) но нет возможности залить какой либо php файлик и есть доступ через иньекцию к базе а первоначальная цель доступ к файлам на сайте.

Baskin-Robbins
13.11.2020, 18:30
Forserer said:
↑ (https://antichat.live/posts/4429131/)
возможности залить какой либо php файлик


Не знаю, пробовали или нет, но возможно пригодится:

forum.antichat.ru/threads/409950/

packetstormsecurity.com/files/111682/

cvedetails.com/cve/CVE-2014-3990/

возможно что-то еще есть, первое что нагуглил, либо поднимать у себя и смотреть самим уже

Forserer
13.11.2020, 20:35
Baskin-Robbins said:
↑ (https://antichat.live/posts/4429140/)
Не знаю, пробовали или нет, но возможно пригодится:
forum.antichat.ru/threads/409950/
packetstormsecurity.com/files/111682/
cvedetails.com/cve/CVE-2014-3990/
возможно что-то еще есть, первое что нагуглил, либо поднимать у себя и смотреть самим уже


Да что то уже видел, самое печальное что эти дыры закрыты, залить php файлик можно только вот он скачиваться будет а не исполняться из за .htaccess, модуль корзины там другой используется, вобщем чет вилы какие то, видимо остается вариант побрутить пароли от мускула и попробовать с ними в ssh, ftp постучаться, но спасибо за инфу

UPDATE: nmap показал что порт 3306 закрыт