Повишаване на цената за изпълнение на зловреден код във вашата среда

Икономиката на зловредния софтуер се разделя на няколко аспекта: масово разпространение на зловреден софтуер и целеви зловреден софтуер.

Масовото разпространение на зловреден софтуер зависи от мрежа от услуги – групи, предоставящи хакнати уебсайтове и компрометирани хостове за съхранение на файлове, групи, предоставящи компрометирани рекламни мрежи, и групи, предоставящи услуги, за да направят зловредния софтуер неоткриваем.

За престъпниците компрометирането на легитимни уебсайтове (в определен момент дори Forbes.com беше компрометиран в продължение на няколко месеца, като доставяше целеви зловреден софтуер) означава, че системите ви за автоматично включване на злонамерени URL адреси в черния списък няма да работят и те ще могат лесно да преминат през защитата ви.

Достъпът до компрометирани (или просто готови да доставят всичко на правилната цена) рекламни мрежи означава, че престъпниците могат да плащат за зловреден софтуер на почти всеки уебсайт – включително Youtube например (имало е многобройни случаи на същото).

В комбинация горните две неща създават безпрецедентна среда на заплахи, в която всеки уебсайт може да достави на потребителите ви зловреден товар – когато дори белият списък, смятан за драконовска мярка, няма да помогне особено.

Преминаване към MAAS – или зловреден софтуер като услуга

Зловредният софтуер като услуга дава две обещания – във всеки един момент противниците ви ще имат достъп до компрометирани хостове и неоткриваем зловреден софтуер. Ако определен брой доставчици започнат да откриват злонамерената проба, тяхната напълно автоматизирана услуга ще генерира нов модел и ще го предостави, където е необходимо – без да е необходимо взаимодействие.

Когато компрометиран хост или уебсайт попадне в някой черен списък, зловредният код автоматично се премества в нов набор от компрометирани хостове. Това е част от тяхното споразумение за ниво на обслужване (SLA) и като зрели бизнесмени те са наясно с надеждността, която трябва да поддържат, за да запазят клиентите си на силно конкурентния подземен пазар.

Техният модел е стабилен и доказан – и разчита на възвръщаемост на инвестициите, както всеки друг бизнес модел. За да прекъснете операциите им срещу вашия бизнес, можете да направите само едно нещо: да увеличите разходите за атака срещу вас с помощта на автоматизираните им методи, така че атаките да станат нерентабилни. В този момент те ще преминат към друга цел.

Това е така, ако не сте изрична мишена – тогава е въпрос на време да се случи действителният компромис, при който ще бъдат тествани вашите възможности за реакция при инциденти и цифрова криминалистика, но това е тема за съвсем друга глава.

Предотвратяване на изпълнението на експлойта

Ако сте проследили предишните глави и сте приложили политики за заключване на приложения/ограничаване на софтуер и търговски продукт за контрол на изпълнението на неизвестни приложения/код, ако имате пълен контрол над PowerShell и сте блокирали в максимална степен злонамерената реклама – време е да преминете към предотвратяване на изпълнението на експлойти.

Има търговски и достъпни решения за тази цел, но трябва да сте особено внимателни при тестването и оценяването им, тъй като това, което се рекламира, не винаги е това, което е в кутията.

Преди години известно име в аудиовизуалната индустрия изпрати проект за оценка – и трябваше да се тества тяхната “уникална функционалност за борба с експлоатирането”. Те обещаваха защита от конкретен експлойт на RDP. Така че опитах да експлоатирам и ето, че защитата работеше! Бях изненадан, но след като се задълбочих, се оказа, че продуктът използва защитната стена, за да блокира RDP връзките отвън. Изключете функционалността на защитната стена и подвигът срина системата напълно. Предотвратяване на експлоатиране? Винаги тествайте и задавайте трудни въпроси, преди да похарчите значителни средства за софтуерни лицензи. В крайна сметка рискът не е свързан дори с похарчените пари, а със защитата на вашите активи (или липсата на такива).

Malwarebytes Anti-exploit(https://www.malwarebytes.org/antiexploit/) е продукт, който ви препоръчвам да изпробвате и да сравните с безплатните му аналози.

Когато оценявате компания за сигурност, винаги предлагам да търсите признаци за нетърговска дейност в общността. Например, те пускат полезни, немаркетингови инструменти, които помагат на потребителите да решат проблемите си с информационната сигурност. Malwarebytes е отличник в тази област – ако разгледате секцията им с безплатни инструменти, може да откриете много добри такива – https://www.malwarebytes.org/downloads/#tools .

EMET

Уязвими са операционните системи, които са широко разпространени в крайните точки. Не дай си Боже все още да използвате Windows XP – но съм виждал дори командването на космическите и морските бойни системи на САЩ да посещава моя уебсайт от кутия с XP, така че предполагам, че всичко е възможно.

Дори Windows 7 е остарял по съвременните стандарти, но миграцията към по-нова операционна система не винаги е възможна по много причини, особено в по-големи среди.

3. Софтуерът на страните също рядко се актуализира, главно поради липса на знания и опит от страна на ИТ персонала – те не виждат причините или не знаят как да актуализират до най-новата версия на PDF четеца или Flash (но защо изобщо имат Flash на крайните точки, е друг въпрос), не обновяват инсталираните офис приложения с най-новите пачове за сигурност, освен ако не са принудени специално от изискване или констатация на одита.

От поне три години съществува “сребърен куршум”, който предпазва от уязвимостите на приложенията и предотвратява използването им чрез добавяне на второ ниво на защита между ядрото на операционната система и приложенията в системите Windows. Името на този сребърен куршум е EMET (Enhanced Mitigation Experience Toolkit). Към момента на писане на този текст последната версия е 5.2 – бих казал, че това е много зряло приложение.

Непрекъснато се учудвам колко много ИТ “експерти” не са чували за EMET или не го използват. Като се има предвид неговата ефективност и цена – БЕЗПЛАТНО – и като се има предвид неговият разработчик – Microsoft – с единствената цел да защитава операционните системи Microsoft Windows от експлоатация, е трудно да се разбере защо хората пренебрегват този продукт.

Това вероятно е една от най-добрите и най-ефективни защити срещу експлойти – дори когато те атакуват неактуализирани плъгини като Flash, Java и Silverlight. И нека бъдем честни, дали вашата компания автоматично актуализира всички плъгини до най-новите им версии, веднага щом такава е налична? За съжаление това почти винаги не е така .

Тези от вас, които не са запознати с концепцията, могат да се запознаят с нея на следните линкове:

http://support.microsoft.com/kb/2458544

https://technet.microsoft.com/en-us/security/jj653751

http://blogs.technet.com/b/srd/archive/2014/07/30/announcing-emet-v5.aspx

http://support.microsoft.com/kb/2909257

Моля, нарушете правилото и прочетете ръководството! След това изтеглете и инсталирайте инструмента. Страницата за инсталиране ще ви предложи да изтеглите и ръководството – направете го и го прочетете. Това не е най-добрият наръчник, но затова пък съществува моята книга!

emet-main-screen

Нека навлезем в техническите подробности.

Настройките, които виждате на тази снимка, не са по подразбиране – те са препоръчани (от Microsoft и от мен). При първото стартиране щракнете върху падащото меню и изберете “Максимални настройки за сигурност”, след което рестартирайте компютъра си.

Забележка: някои антивирусни продукти могат да попречат на EMET. Ако случаят е такъв, можете да се свържете с тях, да поискате поддръжка, да ги деинсталирате и да си купите по-добър AV продукт. Във всички случаи EMET трябва да бъде предпочитан пред антивирусен продукт по всяко време. В края на краищата, ако следвате съветите в тази книга, никога повече няма да ви се наложи да разчитате основно на антивирусната програма за вашата сигурност!

Повечето хора дори не стигат до този момент – те инсталират EMET и смятат, че работата им е свършена, но това не е така. След това щракнете върху Импортиране, отидете в C: Program Files (x86)EMET 5.1DeploymentProtection Profiles и импортирайте Popular Software.xml. Можете да импортирате и другите два XML файла, но този е най-важният.

Тази стъпка ще добави конфигурационни настройки за широко използвани приложения, за да предотврати досадни сривове и проблеми с несъвместимостта.

Ако се сблъскате с проблеми със съвместимостта на приложенията – а именно някои приложения се сриват и се появява прозорецът на EMET, в който се казва, че е блокирал нещо – или ако видите събития в дневника на събитията, че EMET е затворил дадено приложение поради някакво смекчаване – имате два варианта: или това е била легитимна заплаха (експлойт), или сте се сблъскали с грешка в приложението. Понякога тези състояния са причинени от много дълго време на работа, когато EMET обърква адресите на паметта, използвани от приложенията, и смята, че това е експлойт. Понякога тези сривове се дължат на конфликт с друг софтуер за сигурност. Понякога трябва да актуализирате сриващото се приложение, а понякога… трябва да преконфигурирате EMET.

Ето как да го направите.

Отидете на главния екран, след което щракнете върху иконата Приложения:

Икона на приложенията на emet

Ще видите следния прозорец:

emet-apps-window

Обикновено в регистъра на събитията се посочва кое смекчаване е било задействано – най-често това е смекчаването на повикването. Ако това се случи с вас, можете да изключите това специфично смекчаване за конкретното приложение – с пълното съзнание, че губите част от сигурността си. Никога не деактивирайте настройките за смекчаване, освен ако не сте сигурни, че проблемът не може да бъде отстранен чрез актуализиране на приложението, операционната система, EMET или антивирусната програма.

В блоговете се появиха публикации за някои консултантски фирми в областта на сигурността, които заобикалят EMET – мога да ви уверя, че те са написани предимно с маркетингова цел. Все още не е обичайно нападателите да използват експлойти, които могат да заобиколят EMET, и все пак е препоръчително да го внедрите във вашата компания възможно най-скоро.

Ако се замислите, всичко може да бъде заобиколено – означава ли това, че ако дадена мярка за защита може да бъде избегната, не трябва да я инсталирате?

Други мерки за предотвратяване на зловреден софтуер

Иска ми се NIST 800-83, http://csrc.nist.gov/publications/nistpubs/800-83/SP800-83.pdf – Ръководство за предотвратяване и обработка на инциденти със злонамерен софтуер”, да бъде задължително за прилагане навсякъде.

Моите препоръки за този документ: има елементи за действие, които можете да маркирате (с цветен маркер) за изпълнение и да добавите към проект, нещо подобно на “Мерки за предотвратяване на зловреден софтуер” – след това добавете всички елементи за действие в график и възложете на екипите по ИТ/ИТ сигурност тяхното изпълнение.

Простото четене няма да донесе особена полза, тъй като документът е на малко високо ниво и не навлиза в много технически подробности, което според мен е умишлено. В противен случай те ще трябва да стигнат до конфигурационните настройки на ниво доставчик, което не е целта на документа.

Други идеи за втвърдяване на сървъри/работни станции

Препоръчвам ви да се отървете от всички двоични файлове, които не са от съществено значение за работата на дадена работна станция или сървър.

Изтриване на несъществени двоични файлове

Нуждае ли се конкретен потребител от cmd.exe, reg.exe, regedit.exe, cscript.exe, at.exe, psexec.exe, nbtstat.exe, ftp.exe, bitsadmin.exe, makecab.exe, quser.exe, ieexec.exe, schtasks.exe, netstat.exe, sc.exe, xcopy.exe, nslookup.exe, taskkill.exe, tasklist.exe, route.exe, regsvr32.exe, ping.exe, wmic.exe, powershell.exe?

Съществуват няколко начина за справяне със ситуацията.

  1. Изтрийте двоичните файлове, когато е необходимо – вземете ги със себе си на машината
  2. Ограничаване на изпълнението с политика
  3. Преименувайте ги – например cmd.exe може да стане dmc.exe (след подходящо настройване на механизмите за самосъхранение на системата, за да върнат тези системни файлове в първоначалния им вид). Преименуването прави безполезни много автоматизирани скриптове за атаки/експлойти и т.н., също както изтриването или ограничаването с политика.

Същото важи и за всяка операционна система.

Моля, използвайте правилно управление на промените, тестване и изпълнение за всички такива промени – някои софтуери за управление на системи използват PowerShell, а някои скриптове на предприятието може да се нуждаят от скрипт, за да се изпълняват – приемете този съвет с известна доза сол и винаги тествайте за продължителен период от време, преди да въведете такива драстични мерки за укрепване в предприятието. Да направиш системата неизползваема е по-лошо, отколкото да не приложиш мярка за укрепване.

Повече за PowerShell:

Експерт по сигурността (Nikhil Samrat Ashok) наскоро публикува в блога си набор от публикации, наречени “Седмица на PowerShell шеловете”. Ако не сте запознати с това какво е обвивка в този контекст, това е начин за получаване на отдалечена “обвивка на командния ред” чрез нестандартни техники, като например изпращане и получаване на ICMP (Ping) пакети.

Така че, докато седите там и гледате чистия си трафик, показващ само пакети ping, пътуващи между системите A и B, някой може да има пълно дистанционно управление.

Най-добре е да прочетете публикациите в блога, за да добиете по-добра представа:

http://www.labofapenetrationtester.com/2015/05/week-of-powershell-shells-day-5.html

http://www.labofapenetrationtester.com/2015/05/week-of-powershell-shells-day-4.html

http://www.labofapenetrationtester.com/2015/05/week-of-powershell-shells-day-3.html

http://www.labofapenetrationtester.com/2015/05/week-of-powershell-shells-day-2.html

http://www.labofapenetrationtester.com/2015/05/week-of-powershell-shells-day-1.html

Горните публикации в блоговете доказват само едно – ако PowerShell е налична в дадена система, тя представлява почти всичко, от което се нуждае един нападател, за да използва системата и да проникне по-дълбоко в мрежата ви.

Това е още една причина да го заключите и да го направите достъпен само за администратори и само на определени машини, а не на всички крайни точки.

Следващите две публикации от Microsoft ще ви помогнат да заключите PowerShell:

“Ръководни принципи за сигурност на PowerShell” – http://blogs.msdn.com/b/powershell/archive/2008/09/30/powershell-s-security-guiding-principles.aspx и “Най-добри практики за сигурност на PowerShell” – http://blogs.msdn.com/b/powershell/archive/2013/12/16/powershell-security-best-practices.aspx

Picture of Atlant Security

Atlant Security

Leave a Reply

Recent Posts

Follow Us

Weekly Tutorial