Як захистити свій сайт
Як захистити свій сайт? Як захистити сайт від злому? ви напевно задавалися таким питанням.
Сьогодні хочу показати Вам кілька нехитрих прийомів, які допоможуть уберегти Ваш сайт від злісних рук хакерів. Щоб убезпечити свій сайт. потрібно запам'ятати 2 прості речі - працюйте зі своїми даними правильно і не довіряйте користувачам. Звичайно, серед величезної кількості людей є нормальні, я сподіваюся, таких навіть більшість, але є і такі яким цікаво пошукати якісь косяки на вашому сайті і відчути себе хакером.
Давайте подивимося першу ситуацію
Тобто в GET [ 'view'] ми приймаємо якесь значення, і виходячи з значення отриманого з GET [ 'view'] показуємо сторінку, або записи, або новини або галерею.
Але злі хакери можуть написати туди щось своїми руками, наприклад «sjnjsfd» і у вас видасть помилку, а найжорстокіші можуть спробувати написати там який-небудь SQL запит.
Тому в таких випадках, потрібно спочатку обмежити варіанти чого може дорівнювати GET [ 'view']. в нашому випадку GET [ 'view'] = articles. або news або gallery - інших варіантів бути не може. Якщо ми зустрінемо інший варіант, то повинні видати повідомлення або попередження користувачеві, щоб він підв'язував.
Як це зробити? Можна просто помістити можливі варіанти в масив і перед будь-яким висновком інформації, перевірити, чи є в цьому масиві значення, яке зараз знаходиться в GET [ 'view'].
Так потрібно поступати завжди.
Так само потрібно перевірити, щоб GET [ 'id'] був саме числом, для цього є різні функції - is_int (). is_numeric ().
Щодо запитів до БД.
Зазвичай роблять так:
А краще робити так:
Тобто ми не безпосередньо вставляємо в запит значення змінної $ id, а спочатку пропускаємо його через функцію mysql_real_escape_string. яка екранує спеціальні символи в рядку. Простіше кажучи, так безпечніше.
Звичайно, не варто забувати про використання функцій - htmlspecialchars, trim, stripslashes. пропускаючи через них дані прийняті від користувача. Робити це можна так:
Ну і звичайно, робіть копії своєї БД хоча б раз на тиждень, так само збережете копію свого сайту де-небудь, так як буває всяке - то хостинг накриється, то комп'ютер.
Так що, якщо Ви будете писати свій сайт використовуючи ці запобіжні заходи, у Вас більше шансів на успіх
Ну а взагалі, я б рекомендував використовувати фреймворк CodeIgniter. так як там все ці моменти вже враховані і Вам не доводиться морочитися собі цим голову
Та й, недавно викладав урок по роботі з функціями на PHP і якщо Ви раптом пропустили цей урок або у вас є питання по функціям, то раджу пройти даний урок, він вийшов дуже непоганим
Якщо урок Вам був корисний, натисніть на будь-яку кнопку нижче-буду вдячний Всім удачі і стежте за ходом подій 😉