Защита при създаване на php приложения в интернет
TRANSCRIPT
![Page 1: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/1.jpg)
ЗАЩИТА ПРИ СЪЗДАВАНЕ НА РНР-ПРИЛОЖЕНИЯ В ИНТЕРНЕТ
![Page 2: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/2.jpg)
• Средства на зложелателите
• Общи практики
• Конкретни практики
![Page 3: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/3.jpg)
![Page 4: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/4.jpg)
СРЕДСТВАТА НА ЗЛОЖЕЛАТЕЛИТЕ
![Page 5: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/5.jpg)
СЕМАНТИЧНИ АТАКИ
![Page 6: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/6.jpg)
XSS АТАКИ
![Page 7: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/7.jpg)
CRFS – CROSS-SITE ФАЛШИФИКАТИ НА ЗАЯВКИ
![Page 8: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/8.jpg)
ЛЪЖЛИВИ HTTP ЗАЯВКИ
![Page 9: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/9.jpg)
БАЗИ ДАННИ
• db.inc
• SQL инжектиране
![Page 10: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/10.jpg)
ФИКСИРАНЕ НА СЕСИИ
![Page 11: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/11.jpg)
ПРОБЛЕМИ СЪС СПОДЕЛЕН ХОСТИНГ
• Обща файлова система
![Page 12: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/12.jpg)
ДОБРИ ОБЩИ ПРАКТИКИ
![Page 13: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/13.jpg)
ФИЛТРИРАНЕ НА ВХОДЯЩАТА ИНФОРМАЦИЯ
• „Изчистен масив“
• Конкретен подход
• Switch
• Вградени функции
• Регулярни изрази
![Page 14: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/14.jpg)
ДЕКОДИРАНЕ НА ИЗХОДЯЩАТА ИНФОРМАЦИЯ
• htrmentities()
• htmlspecialchars()
• mysql_real_escape_string()
• mysqli_real_escape_string()
![Page 15: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/15.jpg)
ДРУГИ ОБЩИ СЪВЕТИ
• Изключена register_globals
• Възможно най-малко привилегии
• Защита в дълбочина
• SSL
![Page 16: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/16.jpg)
КОНКРЕТНИ ПРАКТИКИ
![Page 17: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/17.jpg)
ЗАЩИТА ОТ СЕМАНТИЧНИ АТАКИ
• (Трябва сигурност) ? POST : GET;
• ! $_REQUEST
![Page 18: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/18.jpg)
ЗАЩИТА НА БАЗИ ДАННИ
• db.inc
• Извън публичната директория
• Настройки на Apache
• Разширение .php
• Sql инжектиране
• mysqli_real_escape_string()
• md5 != 100%, md5+собствени модификации
• mysqli_error само при разработка!
• prepared заявки
![Page 19: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/19.jpg)
ЗАЩИТА ПРИ СПОДЕЛЕН ХОСТИНГ
• Важни данни – във файл с ограничени права
• Сесийни данни – в база данни
![Page 20: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/20.jpg)
ЗАЩИТА ПРИ СЕСИИ
• session_regenerate_id();
• Подновяване всеки път на ИД-то на сесията
• Проверка на http header-a (например
HTTP_USER_AGENT)
• Добавяне на още проверки за идентификация
![Page 21: Защита при създаване на PHP приложения в интернет](https://reader036.vdocuments.pub/reader036/viewer/2022062307/557f3f87d8b42aba678b4d75/html5/thumbnails/21.jpg)
ИЗВОД