Intereting Posts
вызывать категории в настраиваемом типе сообщений используя стиль wp enqueue для создания файла CSS специально для шаблона страницы Добавьте Fancybox автоматически для публикации типа «пост» изображений почему в архиве пользовательской таксономии термин ничего не показывает? Идеальная встроенная динамическая инъекция CSS WP REST API – войти в систему с помощью Facebook Примечание. Неопределенный индекс: suppress_filters Использование класса $ wpdb для вывода последних комментариев по сети получить все сообщения, связанные с пользовательской таксономией PHP Предупреждение о новой установке (время ожидания подключения) Шаблон Ajax: как обращаться с головной частью Facebook OAuth, WP_Http :: request () vs wp_remote_request () Как удалить все помеченные элементы в один конец Идентификатор сообщения в конце перманентной работы Эффективность URL-адресов (положительно)? Отображение div из назначенного meta_value, когда на странице

Принятие специальных символов в querystring

В настоящее время запрос заканчивается Forbidden error при наличии значения параметра querystring, которое выглядит как команда SQL (например, если оно содержит ' and ):

 domain.com/path/to/page?foo=a%27%20or%20%27a 

Вместо этого это должен быть действительный URL-адрес, который должен открыть страницу. Я думаю, что проблема должна быть исправлена ​​в файле .htaccess . В настоящее время .htaccess выглядит следующим образом:

 # BEGIN s2Member GZIP exclusions <IfModule rewrite_module> RewriteEngine On RewriteBase / RewriteCond %{QUERY_STRING} (^|\?|&)s2member_file_download\=.+ [OR] RewriteCond %{QUERY_STRING} (^|\?|&)no-gzip\=1 RewriteRule .* - [E=no-gzip:1] # Force Trailing Slash RewriteCond %{REQUEST_URI} /+[^\.]+$ RewriteRule ^(.+[^/])$ %{REQUEST_URI}/ [R=301,L] # Force Download Rule <FilesMatch "\.(mp4|mp3|jpg|jpeg|pdf|png|tif|mobi|epub|azk)"> <If "%{QUERY_STRING} =~ /dl/"> ForceType application/octet-stream Header set Content-disposition "attachment" </If> </FilesMatch> </IfModule> # END s2Member GZIP exclusions # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress 

Где-то мы должны иметь белый список этих специальных символов, таких как %27 и специальные ключевые слова SQL (например, and ). Добавление этой строки до первой строки RewriteCond не вносило никаких изменений:

 RewriteCond %{QUERY_STRING} (;|<|>|'|"|\)|%0A|%0D|%22|%27|%3C|%3E|%00).*(/\*|union|select|insert|drop|delete|update|cast|create|char|convert|alter|declare|order|script|set|md5|benchmark|encode) [NC,OR] 

(это было взято с этой страницы )

Как решить эту проблему?

Solutions Collecting From Web of "Принятие специальных символов в querystring"