Способы обхода проактивки, UAC, песочницы, обходим всё

Тема в разделе "СТАТЬИ И УРОКИ ПО ВЗЛОМУ И ОБХОДУ ЗАЩИТЫ", создана пользователем X-Shar, 10 дек 2013.

↑ ↓
  1. X-Shar :)
    X-Shar
    Ответить в чате

    Администрация

    Регистрация:
    03.06.2012
    Сообщения:
    5.813
    Симпатии:
    433
    Пол:
    Мужской
    Репа:
    +969 / 153 / -29
    Jabber:
    Telegram:
    Заинтересовался я, а действительно-ли эта сраная проактивка так защищает прям не пробиваемая, начал я интересоваться, читать различные статьи, а как-же всё-же обойти, таки насобирал достаточно много инфы, к своему удивлению !WinkSmile

    Хоть здесь и мало хакеров, всем нужны ключи к АВ, но думаю данная тема здесь тоже будет интересна, хотя-бы в ознакомительных целях, итак начнём:

    Обход можно поделить условно на 2 вида: активный (диалоговое окно uac не появляется) и пассивный (появляется).

    К активному отнесём:
    • эксплоиты;
    • (возможные) инжекты в процессы;
    • некоторые другие специфические фишки (например, известная манипуляция c интерфейсом "IFileOperation");
    Пассивный:
    • имя нашего приложения должно содержать любую из следующих строк: "install", "setup", "update", "patch" (сработает эвристик загрузчика приложений, и наша прога при запуске попросит повышение привилегий);
    • клепаем в приложении специальный манифест (etc + доки по манифесту для повышения прав);
    • заёб юзера: проверка своих привилегий, и если они низкие - запускаем себя с повышенными правами (ShellExecute(Ex) с командой "runas") до тех пор, пока юзер не охуеет от диалоговых окон (и, наконец-то, разрешит выполнение с нужными нам привилегиями);
    • после старта наша прога скачивает какой-нибудь подписанный инсталлятор/апдейт/etc (обычно такой апдейт заранее анализируется для атаки dll hijack), кладёт рядом с ним заранее подготовленную, нашенкованную всякими прелестями dll с определённым именем и запускает скачанный файл. (Обычно) если юзер подтверждает запуск такого апдейта, он будет выполняться с повышенными правами, а вместе с ним и наша dll;
    • после старта наша прога мониторит появление новых процессов. Если таковой найден, то выходим на его файл, анализируем и стараемся провести dll hijack (как вариант, перед новым процессом мониторинг "Consent.exe"). Другой путь - переименовываем свой файл в имя нового процесса и запускаем его с повышением привилегий;
    • использование буфера обмена в надежде на то, что файл попадёт в нужное место;
    • и т.д.;
    Понятно, что в общем случае эффективнее будет активная атака - пробили дыру и действуем на полный ход. Но у пассива тоже хорошие шансы ! :)

    И ещё существуют готовые утилиты для поиска уязвимых приложений в системе (например, "DllHijackAuditKit"). Плюс к этому можно наваять ещё пару дополнительных тулз для более точного, качественного анализа конкретных файлов/процессов/etc (поиск по строкам, коду и т.д.).
     
    • Мне нравится Мне нравится x 5
  2. X-Shar :)
    X-Shar
    Ответить в чате

    Администрация

    Регистрация:
    03.06.2012
    Сообщения:
    5.813
    Симпатии:
    433
    Пол:
    Мужской
    Репа:
    +969 / 153 / -29
    Jabber:
    Telegram:
    Стырил эту статью с хак. журнала, и почему-то она попала в топ поисковиков...

    Но к сожалению тут вокруг да около, более интересная тема здесь:https://ru-sphere.ru/threads/obxod-uac-bypass-uac.1954/
     
    • Мне нравится Мне нравится x 2

Поделиться этой страницей