Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: htmlspecialchars в $_GET

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
yinyang
Отправлено: 02 Марта, 2014 - 00:32:40
Post Id



Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




Здравствуйте!
Подскажите пожалуйста, для защиты скрипта необходимо экранировать данные переданные через $_GET если я, например, использую его так: $id=(int)$_GET["id"]; ?

Сегодня читал про Content-Security-Policy
Это заголовок, который позволяет в явном виде объявить «белый список» источников, с которых можно подгружать различные данные, например, JS, CSS, изображения и пр. Даже если злоумышленнику удастся внедрить скрипт в веб-страницу, он не выполниться, если не будет соответствовать разрешенному списку источников.
Для того чтобы воспользоваться CSP, веб-приложение должно через HTTP-заголовок «Content-Security-Policy» посылать политику браузеру.

только вот не понял где вставить этот код:
CODE (html):
скопировать код в буфер обмена
  1.  Content-Security-Policy: default-src 'self';
  2.  script-src trustedscripts.example.com
  3.  style-src 'self' ajax.googleapis.com;
  4.  connect-src 'self' https://api.myapp.com realtime.myapp.com:8080;
  5.  media-src 'self' youtube.com;
  6.  object-src media1.example.com media2.example.com *.cdn.example.com;
  7.  frame-src 'self' youtube.com embed.ly


и где, что заменить чтоб работал на моем скрипте?
Помогите пожалуйста.
Заранее спасибо!
 
 Top
Мелкий Супермодератор
Отправлено: 02 Марта, 2014 - 09:22:33
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




CSP не защита, а мера предосторожности. И это не код, а заголовок.
http://habrahabr[dot]ru/company/yandex/blog/206508/
http://habrahabr[dot]ru/post/211370/


-----
PostgreSQL DBA
 
 Top
yinyang
Отправлено: 02 Марта, 2014 - 23:25:04
Post Id



Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




Подскажите пожалуйста, для защиты скрипта необходимо экранировать данные переданные через $_GET если я, например, использую его так: $id=(int)$_GET["id"]; ?
 
 Top
bestbios
Отправлено: 03 Марта, 2014 - 07:30:57
Post Id



Гость


Покинул форум
Сообщений всего: 75
Дата рег-ции: Сент. 2013  


Помог: 1 раз(а)




Это не правильно, нужно использовать is_numeric()
 
 Top
esterio
Отправлено: 03 Марта, 2014 - 12:11:19
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)




bestbios пишет:
Это не правильно, нужно использовать is_numeric()

Почему. Я вот пишу
PHP:
скопировать код в буфер обмена
  1. $id = isset($_GET['id']) ? (int)$_GET['id'] : 0;

Где я не прав?
 
 Top
Sail
Отправлено: 03 Марта, 2014 - 12:30:37
Post Id



Участник


Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014  


Помог: 57 раз(а)




esterio пишет:

bestbios пишет:
Это не правильно, нужно использовать is_numeric()

Почему. Я вот пишу
PHP:
скопировать код в буфер обмена
  1. $id = isset($_GET['id']) ? (int)$_GET['id'] : 0;

Где я не прав?

Сравните:
PHP:
скопировать код в буфер обмена
  1.         $str = "234nurn";
  2.         $n1 = (int)$str;
  3.         $n2 = is_numeric($str) ? number_format($str) : 0;
  4.         var_dump($n1, $n2);

В итоге $n1 == 234, $n2 == 0.
 
 Top
esterio
Отправлено: 03 Марта, 2014 - 12:37:55
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)




если ссылка вида index.php?id=234nurn, то пусть пользователь или бот идет лесом. иначе получаеться один и тот же контент доступен по разным УРЛ.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB