Защитни стени за онлайн приложенията

Категория: Софтуер за персонални компютри , Информационна Сигурност , Интернет , Мрежи , ИТ бизнес
Етикети: информационна сигурност , мрежи , хакери , онлайн услуги , програмиране , защита на информацията , защитна стена
it FORUM
16.7.2008

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

За съжаление решенията за мрежова сигурност, използвани от повечето компании, не предлагат адекватна защита срещу тази нова заплаха. Осъзнавайки това, някои организации се опитват да определят проблемите и да защитят онлайн приложенията си, използвайки проверки на слабостите и инициативи за сигурно програмиране. Макар и важни, тези опити не са достатъчни. Често компаниите трябва да тестват многобройни приложения, резултатите от тестовете включват прекалено голям брой грешки за поправяне, а уменията в сигурността, които са необходими за интерпретирането на резултата и създаването на сигурен програмен код, често са ограничени.

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

Заплахите пред онлайн приложенията нарастват

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

В резултат на това днес целта на хакерите са уеб приложенията. Почти всекидневно има съобщения за успешни атаки срещу онлайн приложения, като много от големите инциденти включват кражба на милиони единици поверителна информация. При условие, че цената за възстановяване достига до 22 милиона долара в някои случаи, не е учудващо, че се налага някои организации да прекратят дейността си след такава атака. Правителствата и индустрията отвръщат на растящия брой мрежови нападения и разкрития на данни с нови регулации и закони. Тридесет и три американски щата вече са въвели закони, които задължават компаниите да информират своите клиенти за случаи на инциденти с лични данни. Също така индустрията за плащания с карти създаде свой стандарт за сигурност на данните (PCI DSS), който определя изискванията за сигурността на организациите, които приемащи онлайн плащания.

Какво предизвиква атаките?

Хакерите следват възможностите

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

Мрежовите приложения са лесни за атакуване

Според доклада на Symantec за опасностите пред интернет сигурността почти 70% от новите слабости са от пропуски в уеб базираните приложения и уеб браузърите. Осемдесет на сто от тези слабости са лесни за използване.

Онлайн приложенията често не са сигурни

Разработчиците най-често се фокусират повече върху функционалността и сроковете, отколкото върху сигурността на приложението. Обикновено ако един хакер отдели достатъчно време да изследва дадено приложение, той открива как да го манипулира и да стигне до поверителните му данни. Същото ниво на достъп по други хакерски методи ще бъде блокирано на няколко нива от мрежовата защитна стена, системата за засичане или превенция на пробиви (IDS/IPS) и подходящ контрол на базата данни.

Екипите по сигурността често имат ограничени познания за уеб приложенията,

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

Мрежовата сигурност предлага незадоволителна защита за онлайн приложенията

Повечето организации притежават адекватна мрежова система за сигурност, но не разполагат с нищо, което да е специално проектирано, за да предпазва уеб приложенията. Много от тях смятат, че решенията им за мрежова сигурност осигуряват необходимата защита. Но тези решения не могат да предложат специфичната защита, която е необходима на онлайн приложенията. Хакерите знаят това и нападат уеб приложенията, използвайки атаки, базирани на техники, които заобикалят мрежовите защитни стени и IDS/ISP.

Решенията за мрежова сигурност търсят общи мотиви, но не точно определени слабости

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

IDS/IPS не може самостоятелно да защити адекватно уеб приложенията от насочени атаки, защото всяко онлайн приложение има уникални слабости.

Решенията за мрежова сигурност не могат да следят Secure Sockets Layer (SSL) трафикa

Повечето мрежови приложения, които изпращат и получават поверителна информация, използват SSL криптиран трафик. SSL криптирането е полезна мярка за сигурност на организациите и потребителите очакват употребата му, когато изпращат поверителна информация по Мрежата. За съжаление повечето IDS/IPS решения не могат да декриптират и анализират SSL криптирания трафик. Хакерите знаят за това ограничение и го използват, като крият своите атаки в SSL криптирания трафик, за да достигнат незабелязани до Мрежата. За да се борят срещу тези атаки, някои компании прекратяват SSL сесията, преди трафикът да бъде анализиран от IDS/IPS системата, блокират злонамерения трафик и криптират наново останалия, преди да го препредадат. Но това води до забавяния и претоварва IDS/IPS системата.

Решенията за мрежова сигурност не знаят техниките за управление на приложението от клиента

Някои от по-опасните атаки на уеб приложенията включват манипулиране на управлението на приложението от клиента. Тъй като HTTP не предлага никаква информация за състоянието, всяко приложение трябва да въведе свои техники за показване на състоянието и клиентско управление. Хакерите се опитват да заобиколят клиентското управление на приложението, представяйки се за легитимни потребители и отваряйки лични данни. IDS/IPS не може да различи легитимната употреба от нелегитимната, системата става неспособна да разбере техниката за клиентско управление на програмата и прави невъзможно засичането на “отвличания” на сесията на клиента, както и на други атаки.

Сканирането за пробиви в сигурността и сигурното програмиране не са достатъчни

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

Сканирането за слабости улавя момент от времето, а разработчиците все пак трябва да решат възникналите проблеми

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

За да стане проблемът още по-сложен, сканирането за слабости прави снимка на приложението в само един момент от времето. Неочакваните пропуски, които възникват с времето, или неправилно разрешените проблеми няма да бъдат открити, освен ако не се направят нови сканирания, които от своя страна увеличават времето и разходите за проекта.

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

Инициативите за сигурно програмиране рядко са успешни

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

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

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

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

Решението са защитните стени за онлайн приложения

Решение предлагат защитните стени за онлайн приложения. Благодарение на тях компаниите могат да започнат производството на своите приложения по-рано, като разчитат на продължителна и незабавна сигурност. Приложение с известни дупки в сигурността може да бъде пуснато, докато се разрешат проблемите, ако бъде защитено със защитна стена за онлайн приложения, защото тя ще го предпазва от прицелени атаки. Вместо да спре приложението, докато не бъде отстранена слабостта, защитната стена за онлайн приложения служи като “виртуална кръпка”, която предотвратява възползването от проблема. Тя дори може да открие дефекти в сигурността и програмирането на приложението само като наблюдава трафика му.

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

Защитната стена за онлайн приложения може да предостави на екипа по сигурността поглед отвътре към събитията в приложението и  разбиране на контекста, в който се случват. Разширявайки познанията му за приложенията, защитната стена за уеб приложения позволява на екипа да комуникира по-ясно с разработващия екип относно възникналите проблеми.