Articles of sql injection

PDO в Codeigniter – Защита от SQL-инъекций

Истинные эксперты в области безопасности PHP, это PDO, или мне было бы хорошо с классом Active Record Codeigniter? Я прочитал http://codeigniter.com/forums/viewthread/179618/ и не уверен на 100%. Обычно я склоняюсь к таким экспертам, как Крис Шифлетт и OWASP для советов по безопасности. http://shiflett.org/blog/2006/jul/the-owasp-php-top-5 Использовал собственный класс PDO DBO вместо файлов базы данных Codeigniter. Каждый раз, когда […]

Как я могу предотвратить SQL-инъекцию в PHP?

Если пользовательский ввод вставлен без изменений в SQL-запрос, тогда приложение становится уязвимым для SQL-инъекции , как в следующем примере: $unsafe_variable = $_POST['user_input']; mysql_query("INSERT INTO `table` (`column`) VALUES ('$unsafe_variable')"); Это потому, что пользователь может ввести что-то вроде value'); DROP TABLE table;– value'); DROP TABLE table;– , и запрос будет выглядеть следующим образом: INSERT INTO `table` (`column`) […]

Подготовленные заявления MySQL

Мне просто интересно было ли, что я мог бы использовать некоторые формы подготовленных операторов в MySQL, поэтому мне не пришлось бы скрывать все мои входы, и мне не пришлось бы переключать все мои файлы с MySQL на MySQLi. Я действительно не доверяю функциям экранирования, поэтому, если есть какие-то альтернативы, которые работают в обычном MySQL, было […]

Декодирование mysql_real_escape_string () для вывода HTML

Я пытаюсь защитить себя от SQL-инъекции и использую: mysql_real_escape_string($string); При публикации HTML это выглядит примерно так: <span class="\&quot;className\&quot;"> <p class="\&quot;pClass\&quot;" id="\&quot;pId\&quot;"></p> </span> Я не уверен, сколько еще добавлений, добавленных real_escape_string, поэтому не хотят просто заменять несколько и пропустить других … Как мне «декодировать» это обратно в правильно отформатированный HTML-код с чем-то вроде: html_entity_decode(stripslashes($string));

SQL-инъекция, которая распространяется вокруг mysql_real_escape_string ()

Есть ли возможность SQL-инъекции даже при использовании функции mysql_real_escape_string() ? Рассмотрим эту ситуацию с образцом. SQL построен на PHP следующим образом: $login = mysql_real_escape_string(GetFromPost('login')); $password = mysql_real_escape_string(GetFromPost('password')); $sql = "SELECT * FROM table WHERE login='$login' AND password='$password'"; Я слышал, что многие люди говорят мне, что такой код по-прежнему опасен и может быть mysql_real_escape_string() даже при […]

Что такое PDO-эквивалент функции mysql_real_escape_string?

Я mysql_* свой код от использования mysql_* до PDO . В моем коде у меня был mysql_real_escape_string() . Что эквивалентно этому в PDO?

Является ли «вход фильтра, выход выхода» все еще действительным с PDO

Я прочитал это раньше «вход фильтра, выход выхода», но является ли фильтрация ввода действительно необходимым, когда я использую PDO с PHP? Я думал, что с PDO мне не нужно фильтровать входные данные, потому что подготовленный оператор заботится о SQL-инъекциях. Я думаю, что «выход выхода» по-прежнему действителен, но «вход фильтра» по-прежнему действителен?

Должны ли htmlspecialchars и mysql_real_escape_string сохранить код PHP безопасным от инъекции?

Ранее сегодня был задан вопрос относительно стратегий проверки ввода в веб-приложениях . Главный ответ, на момент написания, предлагает в PHP просто использовать htmlspecialchars и mysql_real_escape_string . Мой вопрос: это всегда достаточно? Больше мы должны знать? Где эти функции ломаются?

Является ли предотвращение XSS и SQL Injection так же просто, как это делает

Вопрос : предотвращает ли XSS (межсайтовый скриптинг) простое использование strip_tags для любых сохраненных полей ввода и запускает htmlspecialchars для любого отображаемого вывода … и предотвращает SQL Injection с помощью подготовленных инструкций PHP PDO? Вот пример: // INPUT: Input a persons favorite color and save to database // this should prevent SQL injection ( by using […]

Sql Защита от впрыска с помощью только str_replace

Я изучаю SQL-инъекцию и пробовал в своем PHP-коде этот запрос: $condition = str_replace(["'","\\"],["\\'","\\\\"], @$_GET['q']); $query = "SELECT * FROM dummy_table WHERE dummy_column = '$condition'"; DB и таблица charset установлены в UTF8. Я не могу ничего вводить, может кто-нибудь мне помочь? EDIT: Как указывал GarethD, это сработало бы первым 'и чем \, разрешив инъекцию, как насчет […]

Intereting Posts
Получить идентификатор транзакции заказа от authorize.net Авторизовать AIM PHP DateTime (): отображает длительность более 24 часов, но не как дни, если они больше 24 часов Плагин для наклеек FOP2 Как preg_replace \ "с \" "при хранении в csv-файле с использованием fputcsv Как я могу использовать свою учетную запись GMAIL для отправки электронной почты с помощью PHP? Symfony2: Поиск маршрута «GET / lucky / number» не найден. Ошибка FQL 102 Требуется сеанс пользователя для повторного запроса Получить массив ключей, переданных по значению PHP После обновления PHP больше не поддерживает операции PNG PHP, как извлечь массив ключей и значений без индекса Разрешать только столичные и маленькие буквы Как добавить значения многораздельного массива? декодирование массива JSON (из PHP) в Javascript (jQuery) 324 Ошибка ответа в Ubuntu 10.04, но работает в Windows Войдите в Google с помощью PHP и Curl, Cookie отключился?