F#ck da Antivirus. Как обходить антивирус при пентесте - «Новости» » Самоучитель CSS
Меню
Наши новости
Учебник CSS

Невозможно отучить людей изучать самые ненужные предметы.

Введение в CSS
Преимущества стилей
Добавления стилей
Типы носителей
Базовый синтаксис
Значения стилевых свойств
Селекторы тегов
Классы
CSS3

Надо знать обо всем понемножку, но все о немногом.

Идентификаторы
Контекстные селекторы
Соседние селекторы
Дочерние селекторы
Селекторы атрибутов
Универсальный селектор
Псевдоклассы
Псевдоэлементы

Кто умеет, тот делает. Кто не умеет, тот учит. Кто не умеет учить - становится деканом. (Т. Мартин)

Группирование
Наследование
Каскадирование
Валидация
Идентификаторы и классы
Написание эффективного кода

Самоучитель CSS

Вёрстка
Изображения
Текст
Цвет
Линии и рамки
Углы
Списки
Ссылки
Дизайны сайтов
Формы
Таблицы
CSS3
HTML5

Новости

Блог для вебмастеров
Новости мира Интернет
Сайтостроение
Ремонт и советы
Все новости

Справочник CSS

Справочник от А до Я
HTML, CSS, JavaScript

Афоризмы

Афоризмы о учёбе
Статьи об афоризмах
Все Афоризмы

Видео Уроки


Видео уроки
Наш опрос



Наши новости

       
2-08-2021, 00:00
F#ck da Antivirus. Как обходить антивирус при пентесте - «Новости»
Рейтинг:
Категория: Новости

Шпар­галка по persistence. Как надеж­но про­писать­ся на хос­те или выявить факт ком­про­мета­ции;

Кунг‑фу pivoting. Выжима­ем мак­симум из пос­тэкс­плу­ата­ции;

Гид по Lateral. Изу­чаем уда­лен­ное исполне­ние кода в Windows со всех сто­рон.

На­вер­няка тебе зна­кома ситу­ация, ког­да дос­туп к ата­куемой сети получен и до цели остался один шаг. Но анти­вирус не дает выпол­нить нуж­ное дей­ствие, запус­тить ту или иную прог­рамму. В моей прак­тике были слу­чаи, ког­да име­лась лишь одна попыт­ка, которая про­вали­валась из‑за под­нятой анти­виру­сом тре­воги. Анти­виру­сы иног­да могут уда­лить и сов­сем безобид­ные фай­лы, при­чем не толь­ко исполня­емые. Поэто­му скрыть нас­тоящую угро­зу — край­не неп­ростая задача.



warning


Вся информа­ция пре­дос­тавле­на исклю­читель­но в озна­коми­тель­ных целях. Ни редак­ция, ни автор не несут ответс­твен­ности за любой воз­можный вред, при­чинен­ный с исполь­зовани­ем информа­ции из дан­ной статьи.



Во­обще, задача обхо­да анти­виру­са может воз­никнуть в двух слу­чаях:



  • при ата­ке. Тут полез­ную наг­рузку запус­кает либо уяз­вимое при­ложе­ние, либо, что чаще, поль­зователь (соци­аль­ная инже­нерия). Глав­ным обра­зом это будет некое средс­тво зак­репле­ния и обес­печения пос­тоян­ного при­сутс­твия. Самое важ­ное — не спа­лить­ся;

  • при пос­тэкс­плу­ата­ции. В этом слу­чае мы сами запус­каем прог­рамму на ском­про­мети­рован­ной сис­теме. Это может быть сниф­фер, средс­тво повыше­ния при­виле­гий или прос­то какой‑то хакер­ский софт, исполь­зуемый для прод­вижения по сети. И при этом для нас важ­нее запус­тить прог­рамму, даже если это получи­лось не с пер­вой попыт­ки и анти­вирус выкинул нес­коль­ко алер­тов.


В пер­вом слу­чае дос­таточ­но лишь при­менить извес­тную тех­нику — полимор­физм. Изме­няем код, не меняя его фун­кци­ональ­ность. Хорошая так­тика — написать код самому. Нап­ример, с помощью двад­цати строк кода на VBS мож­но реали­зовать прос­той reverse shell и успешно обой­ти любой анти­вирус. Нас же боль­ше будет инте­ресо­вать вто­рой слу­чай, и имен­но это и будет темой дан­ной статьи.


Мно­гие полез­ные инс­тру­мен­ты для обхо­да анти­виру­са мож­но сде­лать с помощью того же Meterpreter, но для начала его сле­дует как минимум запус­тить. В каж­дом рас­смат­рива­емом спо­собе имен­но запуск Meterpreter и будет для нас конеч­ной целью. Ведь дан­ное средс­тво обла­дает все­ми необ­ходимы­ми воз­можнос­тями, а при желании может исполь­зовать­ся и для запус­ка дру­гого спе­циали­зиро­ван­ного ПО пря­мо в опе­ратив­ной памяти. А все, что про­исхо­дит в опе­ратив­ной памяти, поч­ти недос­тижимо для средств защиты, пос­коль­ку деталь­ный и пос­тоян­ный ана­лиз памяти вле­чет за собой колос­саль­ные нак­ладные рас­ходы, на которые анти­виру­сы пой­ти не могут.


Для того что­бы эффектив­но обой­ти анти­вирус, нам пот­ребу­ется мыс­лить как анти­вирус, пытать­ся пре­дуга­дать его логику. Анти­вирус для нас, безус­ловно, будет чер­ным ящи­ком. Мы не зна­ем в под­робнос­тях, как он устро­ен, но, опи­раясь на его поведе­ние в раз­ных ситу­ациях, можем зак­лючить, что он тща­тель­но отсле­жива­ет источник заг­рузки исполня­емо­го фай­ла, а так­же сле­дит, запус­кался ли он до это­го, и если запус­кался, то сколь­ко раз. Пов­торные запус­ки будут про­исхо­дить уже под мень­шим «над­зором».


По боль­шому сче­ту мы име­ем дело с дву­мя механиз­мами защиты:



  • сиг­натур­ным;

  • эв­ристи­чес­ким (поведен­ческим).


При сиг­натур­ном ана­лизе анти­вирус учи­тыва­ет мно­жес­тво фак­торов, в час­тнос­ти боль­шое вли­яние на резуль­тат ока­зыва­ет ком­пилятор. Вот дос­таточ­но забав­ные резуль­таты VirusTotal для безобид­ного helloworld-при­ложе­ния, написан­ного на С:



  • i686-w64-mingw32-gcc — 11/68 детек­тов;

  • msvc — 2/64 детек­та;

  • win-gcc — 0 детек­тов.


Что же каса­ется ана­лиза поведе­ния прог­раммы, тут нуж­но понимать, что, даже если тебе уда­лось обой­ти сиг­натуры, ты все еще можешь спа­лить­ся, пос­коль­ку вся­кий migrate PID или sekurlsa::logonPasswords может быть перех­вачен по при­чине исполь­зования харак­терных сочета­ний WinAPI-фун­кций, которые анти­виру­сы очень вни­матель­но монито­рят.


Я пред­лагаю сос­редото­чить­ся имен­но на сиг­натур­ном движ­ке, обхо­да которо­го для боль­шинс­тва слу­чаев дос­таточ­но. В статье не будет пря­мых упо­мина­ний кон­крет­ных наз­ваний анти­виру­сов, что­бы не соз­давать никому рек­ламы или анти­рек­ламы. В то же вре­мя мы не ста­нем «затачи­вать­ся» под кон­крет­ный анти­вирус. Резуль­таты будем про­верять имен­но на работа­ющем анти­виру­се, при этом поп­робу­ем исполь­зовать некий уни­вер­саль­ный спо­соб, что­бы каж­дый раз не при­думы­вать все новые методы обхо­да. В каж­дом слу­чае целью будет тай­ком про­тащить на ском­про­мети­рован­ную машину Meterpreter, который поз­волит нам исполнить в памяти что угод­но, запус­тить весь име­ющий­ся в нашем рас­поряже­нии хакер­ский арсе­нал.


 

Legal


Луч­ший бой — это тот, которо­го уда­лось избе­жать. Поэто­му в борь­бе с анти­виру­сами час­то исполь­зуют­ся легаль­ные средс­тва. Да, они не могут пре­дос­тавить мно­гие «прод­винутые шту­ки», но необ­ходимый минимум в виде reverse shell при persistence и lateral movement, а так­же встро­енный прок­си‑сер­вер и гиб­кую сис­тему редирек­та тра­фика при pivoting они реали­зовать могут. И это замеча­тель­ные, всем извес­тные ути­литы — nc.exe, ncat.exe, socat.exe, plink.exe. При­меры их исполь­зования были опи­саны в моих прош­лых стать­ях. Бле­ки же и вов­се порою исполь­зуют обыч­ные средс­тва облачно­го уда­лен­ного адми­нис­три­рова­ния вро­де RMS.


Ес­ли же в ском­про­мети­рован­ной сис­теме тре­бует­ся раз­вернуть целый «плац­дарм» в виде Metasploit и ана­логич­ных хакер­ских тулз, то мож­но укрыть­ся за вир­туали­заци­ей. Пошаго­вый гайд опи­сан еще в одной моей статье.


 

Shellcode injecting


Тех­ника встра­ива­ния кода в уже запущен­ные, а зна­чит, про­шед­шие про­вер­ку про­цес­сы широко извес­тна. Идея сос­тоит в том, что мы име­ем отдель­ную прог­рамму shellcode_inject.exe и сам shellcode в раз­ных фай­лах. Анти­виру­су слож­нее рас­познать угро­зу, если она рас­кидана по нес­коль­ким фай­лам, тем более по отдель­нос­ти эти фай­лы не пред­став­ляют угро­зы.


shellcode_inject.exe не содер­жит угроз

В свою оче­редь, наш shellcode выг­лядит еще более безобид­но, если мы пре­обра­зуем его в печат­ные сим­волы.


Cоз­дание авто­ном­ного (не staged) шелл‑кода. Выг­лядит безобид­но

Гля­дя на содер­жимое meter.txt, я бы ско­рее решил, что это стро­ка в Base64, чем шелл‑код.


Шпар­галка по persistence. Как надеж­но про­писать­ся на хос­те или выявить факт ком­про­мета­ции; Кунг‑фу pivoting. Выжима­ем мак­симум из пос­тэкс­плу­ата­ции; Гид по Lateral. Изу­чаем уда­лен­ное исполне­ние кода в Windows со всех сто­рон. На­вер­няка тебе зна­кома ситу­ация, ког­да дос­туп к ата­куемой сети получен и до цели остался один шаг. Но анти­вирус не дает выпол­нить нуж­ное дей­ствие, запус­тить ту или иную прог­рамму. В моей прак­тике были слу­чаи, ког­да име­лась лишь одна попыт­ка, которая про­вали­валась из‑за под­нятой анти­виру­сом тре­воги. Анти­виру­сы иног­да могут уда­лить и сов­сем безобид­ные фай­лы, при­чем не толь­ко исполня­емые. Поэто­му скрыть нас­тоящую угро­зу — край­не неп­ростая задача. warning Вся информа­ция пре­дос­тавле­на исклю­читель­но в озна­коми­тель­ных целях. Ни редак­ция, ни автор не несут ответс­твен­ности за любой воз­можный вред, при­чинен­ный с исполь­зовани­ем информа­ции из дан­ной статьи. Во­обще, задача обхо­да анти­виру­са может воз­никнуть в двух слу­чаях: при ата­ке. Тут полез­ную наг­рузку запус­кает либо уяз­вимое при­ложе­ние, либо, что чаще, поль­зователь (соци­аль­ная инже­нерия). Глав­ным обра­зом это будет некое средс­тво зак­репле­ния и обес­печения пос­тоян­ного при­сутс­твия. Самое важ­ное — не спа­лить­ся; при пос­тэкс­плу­ата­ции. В этом слу­чае мы сами запус­каем прог­рамму на ском­про­мети­рован­ной сис­теме. Это может быть сниф­фер, средс­тво повыше­ния при­виле­гий или прос­то какой‑то хакер­ский софт, исполь­зуемый для прод­вижения по сети. И при этом для нас важ­нее запус­тить прог­рамму, даже если это получи­лось не с пер­вой попыт­ки и анти­вирус выкинул нес­коль­ко алер­тов. В пер­вом слу­чае дос­таточ­но лишь при­менить извес­тную тех­нику — полимор­физм. Изме­няем код, не меняя его фун­кци­ональ­ность. Хорошая так­тика — написать код самому. Нап­ример, с помощью двад­цати строк кода на VBS мож­но реали­зовать прос­той reverse shell и успешно обой­ти любой анти­вирус. Нас же боль­ше будет инте­ресо­вать вто­рой слу­чай, и имен­но это и будет темой дан­ной статьи. Мно­гие полез­ные инс­тру­мен­ты для обхо­да анти­виру­са мож­но сде­лать с помощью того же Meterpreter, но для начала его сле­дует как минимум запус­тить. В каж­дом рас­смат­рива­емом спо­собе имен­но запуск Meterpreter и будет для нас конеч­ной целью. Ведь дан­ное средс­тво обла­дает все­ми необ­ходимы­ми воз­можнос­тями, а при желании может исполь­зовать­ся и для запус­ка дру­гого спе­циали­зиро­ван­ного ПО пря­мо в опе­ратив­ной памяти. А все, что про­исхо­дит в опе­ратив­ной памяти, поч­ти недос­тижимо для средств защиты, пос­коль­ку деталь­ный и пос­тоян­ный ана­лиз памяти вле­чет за собой колос­саль­ные нак­ладные рас­ходы, на которые анти­виру­сы пой­ти не могут. Для того что­бы эффектив­но обой­ти анти­вирус, нам пот­ребу­ется мыс­лить как анти­вирус, пытать­ся пре­дуга­дать его логику. Анти­вирус для нас, безус­ловно, будет чер­ным ящи­ком. Мы не зна­ем в под­робнос­тях, как он устро­ен, но, опи­раясь на его поведе­ние в раз­ных ситу­ациях, можем зак­лючить, что он тща­тель­но отсле­жива­ет источник заг­рузки исполня­емо­го фай­ла, а так­же сле­дит, запус­кался ли он до это­го, и если запус­кался, то сколь­ко раз. Пов­торные запус­ки будут про­исхо­дить уже под мень­шим «над­зором». По боль­шому сче­ту мы име­ем дело с дву­мя механиз­мами защиты: сиг­натур­ным; эв­ристи­чес­ким (поведен­ческим). При сиг­натур­ном ана­лизе анти­вирус учи­тыва­ет мно­жес­тво фак­торов, в час­тнос­ти боль­шое вли­яние на резуль­тат ока­зыва­ет ком­пилятор. Вот дос­таточ­но забав­ные резуль­таты VirusTotal для безобид­ного helloworld-при­ложе­ния, написан­ного на С: i686-w64-mingw32-gcc — 11/68 детек­тов; msvc — 2/64 детек­та; win-gcc — 0 детек­тов. Что же каса­ется ана­лиза поведе­ния прог­раммы, тут нуж­но понимать, что, даже если тебе уда­лось обой­ти сиг­натуры, ты все еще можешь спа­лить­ся, пос­коль­ку вся­кий migrate PID или sekurlsa::logonPasswords может быть перех­вачен по при­чине исполь­зования харак­терных сочета­ний WinAPI-фун­кций, которые анти­виру­сы очень вни­матель­но монито­рят. Я пред­лагаю сос­редото­чить­ся имен­но на сиг­натур­ном движ­ке, обхо­да которо­го для боль­шинс­тва слу­чаев дос­таточ­но. В статье не будет пря­мых упо­мина­ний кон­крет­ных наз­ваний анти­виру­сов, что­бы не соз­давать никому рек­ламы или анти­рек­ламы. В то же вре­мя мы не ста­нем «затачи­вать­ся» под кон­крет­ный анти­вирус. Резуль­таты будем про­верять имен­но на работа­ющем анти­виру­се, при этом поп­робу­ем исполь­зовать некий уни­вер­саль­ный спо­соб, что­бы каж­дый раз не при­думы­вать все новые методы обхо­да. В каж­дом слу­чае целью будет тай­ком про­тащить на ском­про­мети­рован­ную машину Meterpreter, который поз­волит нам исполнить в памяти что угод­но, запус­тить весь име­ющий­ся в нашем рас­поряже­нии хакер­ский арсе­нал. Legal Луч­ший бой — это тот, которо­го уда­лось избе­жать. Поэто­му в борь­бе с анти­виру­сами час­то исполь­зуют­ся легаль­ные средс­тва. Да, они не могут пре­дос­тавить мно­гие «прод­винутые шту­ки», но необ­ходимый минимум в виде reverse shell при persistence и lateral movement, а так­же встро­енный прок­си‑сер­вер и гиб­кую сис­тему редирек­та тра­фика при pivoting они реали­зовать могут. И это замеча­тель­ные, всем извес­тные ути­литы — nc.exe, ncat.exe, socat.exe, plink.exe. При­меры их исполь­зования были опи­саны в моих прош­лых стать­ях. Бле­ки же и вов­се порою исполь­зуют обыч­ные средс­тва облачно­го уда­лен­ного адми­нис­три­рова­ния вро­де RMS. Ес­ли же в ском­про­мети­рован­ной сис­теме тре­бует­ся раз­вернуть целый «плац­дарм» в виде Metasploit и ана­логич­ных хакер­ских тулз, то мож­но укрыть­ся за вир­туали­заци­ей. Пошаго­вый гайд опи­сан еще в одной моей статье. Shellcode injecting Тех­ника встра­ива­ния кода в уже запущен­ные, а зна­чит, про­шед­шие про­вер­ку про­цес­сы широко извес­тна. Идея сос­тоит в том, что мы име­ем отдель­ную прог­рамму shellcode_inject.exe и сам shellcode в раз­ных фай­лах. Анти­виру­су слож­нее рас­познать угро­зу, если она рас­кидана по нес­коль­ким фай­лам, тем более по отдель­нос­ти эти фай­лы не пред­став­ляют угро­зы. shellcode_inject.exe не содер­жит угрозВ свою оче­редь, наш shellcode выг­лядит еще более безобид­но, если мы пре­обра­зуем его в печат­ные сим­волы. Cоз­дание авто­ном­ного (не staged) шелл‑кода. Выг­лядит безобид­ноГля­дя на содер­жимое meter.txt, я бы ско­рее решил, что это стро­ка в Base64, чем шелл‑код.

Теги: CSS

Просмотров: 689
Комментариев: 0:   2-08-2021, 00:00
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

 
Еще новости по теме:



Другие новости по теме:
Комментарии для сайта Cackle