Доброе время суток) Сабж в назании треда, будьте добры - скиньте пару ссыль на материалы по обходу. Сегодня общался со знающим человеком - сказал что обфусцировать шелл недостаточно, нужны способы обхода mod_security, git, svn. Короче, работы еще масса Только вот ничего по этому поводу не знаю. Может кто сможет помочь? Заранее благодарен
А как тогда объяснить блок функций WSO на некоторых хостингах? Разве это не mod_security? Работает по определенным фильтрам же Судя по инфе которую я уже нагуглил - лечится изменением названий параметров всех POST запросов в WSO шелле+прикручивание шифрования на POST запросы(хотя бы base64) Я это имел ввиду...
Есть WSO шелл, почти чистый(Оптимизировал под себя - удалил пару ненужных ф-ций), после обфускации шелл заливается по списку доменов. На более-менее нормальных хостингах стоит WAF(mod_security), который блочит POST запросы WSO(Как я понял - там фильтр стоит), чтобы это обойти - нужно поменять названия всех стандартных параметров POST запросов в теле WSO, ну и если прикрутить шифрование этих запросов в base64 - было бы вообще идеально. Вот пример: Есть в WSO POST запрос: $_POST['pass'] - в данном случае WAF по фильтрам блочит POST запросы с параметром pass, если мы изменим его на $_POST['asdasfas'] - соответств - фильтр перестанет реагировать, а если еще и base64_decode($_POST['asdasfas']) прикрутить - было бы вообще кошерненько так. Но проблема вот в чем, параметры в пост запрос отправляются ИЗ WSO ВНУТРЬ WSO, тобишь на уровне клиента это реализовано с помощью javascript, в виде невидимых форм с основными параметрами a,c,p1,p2,p3. Тобишь из невидимой формы -a- яваскрипта формируется запрос, а потом уже уходит в одноименную форму $_POST['a'] В идеале все должно работать так: На входе из js формы оно должно энкодится в base64, передаваться в одноименный POST параметр, далее - декодиться, и потом уже исполняться. Вот вся суть обхода в большинство WAF(Не всех) Решение вроде как простое - заменить все формы и одноименные POST параметры на свои - вопрос решен. Но дело в том что шелл просто перестает работать( Может есть более простые способы? UPD Посидел пару часиков - все параметры заменил Все работает) Осталось прикрутить шифрование в base64. Для POST сделать расшифровку, а на уровне js - шифровку.
однако быстро вы с проблемой справились. как вариант, попробовать другой веб-шелл: https://rdot.org/forum/showthread.php?t=1567
Шифрование припилил. Осталось только обфусцировать все это добро) За основу взял всо билдер от ноунейм автора с уже готовым шифрованием(Спасибо SuperBear'у за ссыль), как я и предполагал - в нем был бэкдор) Удачно его выпилил, чуть подкоректировал кодес - готооово) Теперь остались проблемы с системами контроля версий. Какие возможные способы обхода существуют? Буду очень благодарен за любые материалы по теме)