Развить атаку через SQL load_file()

Discussion in 'Песочница' started by Forserer, 11 Nov 2020.

  1. Forserer

    Forserer New Member

    Joined:
    16 Aug 2015
    Messages:
    58
    Likes Received:
    2
    Reputations:
    0
    Всем привет, получилось добраться через SQL до чтения файлов на сервере
    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 такое, не понятно как к этому подключаться только
    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 и прочие, но вот при вставке <? phpinfo();?> строка приобретает такой вид на странице <!--?phpinfo();?--> может есть варианты это обойти? строки на страницу вставляю только после кодирования в HEX иначе не работает вставка тэгов
     
    #1 Forserer, 11 Nov 2020
    Last edited: 11 Nov 2020
  2. dmax0fw

    dmax0fw Level 8

    Joined:
    31 Dec 2017
    Messages:
    107
    Likes Received:
    131
    Reputations:
    46
    Code:
    load_file('/proc/net/tcp')
    Колонка local_address - то что нужно. IP и порт закодированы в hex. Только сначала нужно реверснуть все байты, а потом уже переводить в десятичные значения
    PHP код не будет выполняться т.к. в данном случае он не хранится на сервере и выводится через скулю как простой текст
     
    crlf, fandor9 and Baskin-Robbins like this.
  3. Forserer

    Forserer New Member

    Joined:
    16 Aug 2015
    Messages:
    58
    Likes Received:
    2
    Reputations:
    0
    отображается в незакодированном виде список узеров и в конце 127.0.0.1 :(

    вставка через базу тоже не работает, код так же комментируется :(
     
  4. Baskin-Robbins

    Baskin-Robbins Reservists Of Antichat

    Joined:
    15 Sep 2018
    Messages:
    239
    Likes Received:
    809
    Reputations:
    212
    Отсутствие записей в этом логе не говорит об отсутствии веб сервера и тд.

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

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

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

    1) Инфа в бд, в частности креды юзеров к ресу - основной момент, незавимо от того где висит мускул.
    2) Серчим файлы с возможным password leakage или другой чувствительной информацией, это наверное болшье
    к теме повышения привилегий.

    Тема IP. Для поиска айпишника с базой можно попробовать посмотреть:
    -- Субдомены
    -- Просканить подсеть на указанный выше порт
    -- Поискать ресы, которые могут быть связаны с целевым
     
  5. Forserer

    Forserer New Member

    Joined:
    16 Aug 2015
    Messages:
    58
    Likes Received:
    2
    Reputations:
    0
    Там выше я оставлял вывод mysql конфига и там есть интересная строчка, wsrep_node_addres вот это как раз и есть адрес целевого хоста на котором и крутится вебсервер, там и порты открыты 21,22,80,443 и 4567 для galera, а он уже видимо через порт 4567 подключается к данному серверу к galera на котором уже крутится mysql. Так же в этом конфиге есть wsrep_cluster_address вот это не понятно возможно и сам сервер с базой но из дефолтных портов 22 есть и вроде как все.

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

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

     
  6. Baskin-Robbins

    Baskin-Robbins Reservists Of Antichat

    Joined:
    15 Sep 2018
    Messages:
    239
    Likes Received:
    809
    Reputations:
    212
    Не знаю, пробовали или нет, но возможно пригодится:
    forum.antichat.ru/threads/409950/
    packetstormsecurity.com/files/111682/
    cvedetails.com/cve/CVE-2014-3990/
    возможно что-то еще есть, первое что нагуглил, либо поднимать у себя и смотреть самим уже
     
    Forserer likes this.
  7. Forserer

    Forserer New Member

    Joined:
    16 Aug 2015
    Messages:
    58
    Likes Received:
    2
    Reputations:
    0
    Да что то уже видел, самое печальное что эти дыры закрыты, залить php файлик можно только вот он скачиваться будет а не исполняться из за .htaccess, модуль корзины там другой используется, вобщем чет вилы какие то, видимо остается вариант побрутить пароли от мускула и попробовать с ними в ssh, ftp постучаться, но спасибо за инфу

    UPDATE: nmap показал что порт 3306 закрыт :(
     
    #7 Forserer, 13 Nov 2020
    Last edited: 13 Nov 2020