Лучший способ избежать SQL-инъекции для определенного типа значений, такого как числа, – проверить значение; так как это проще сделать по сравнению с подготовкой mysqli. В PHP мы можем это сделать. 1. if(!is_numeric($value)) {$value=0;} 2. $value=floatval($value); 3. $value=intval($value); 4. $value=$value * 1; Что является самым надежным? или лучшая идея? ОБНОВЛЕНИЕ: Несмотря на то, что я сказал […]
Повторяю мой предыдущий вопрос о SQL-инъекции. Я пытаюсь настроить соединение PDO. Для этого я хочу заменить старый код новым: Вот старый $conn = mysql_connect("localhost", "sec", "dubbelgeheim") or die('Error: ' . mysql_error()); mysql_select_db("bookshop"); $SQL = "select * from productcomment where ProductId='" . $input . "'"; $result = mysql_query($SQL) or die('Error: ' . mysql_error()); $row = mysql_fetch_array($result); […]
Является ли это хорошей или глупой идеей для дезинфекции всех данных, которые могут быть подвергнуты sqlinjected? Я написал функцию, которая должна это сделать, но я никогда не видел ее, и мне было интересно, была ли это плохая идея. Функция, которую я написал: function sanitizeData() { $_SERVER['HTTP_USER_AGENT'] = mysql_real_escape_string($_SERVER['HTTP_USER_AGENT']); foreach(array_keys($_COOKIE) as $key) { $_COOKIE[$key] = mysql_real_escape_string($_COOKIE[$key]); […]
У меня есть сценарий php, и я думаю, что у этого много ошибок. из-за моих ограниченных знаний в конкатенации и SQL-инъекции. В первый раз у меня нет проблем, потому что этот скрипт использует PHP-Mysql. Но после того, как я попытаюсь перейти на Interbase, я встречаю много неприятностей. Пожалуйста, помогите определить мою ошибку. этот мой следующий […]
Так что у тебя есть $sql = "SELECT * FROM `table` WHERE `some_text_field` LIKE CONCAT('%', ?, '%')"; $stmt = $dbh->prepare($sql); $stmt->execute(array($_POST['badies_code'])); И, глядя на другой вопрос, я обнаружил, что это вызывает проблему безопасности, но почему? Я нашел этот вопрос, нисходящий ответ и высказанный комментарий, поэтому я спрашиваю Комментарий сказал Это неправильный способ сделать это. Вы […]
Есть ли инструмент статического анализа для идентификации SQL-инъекции для php / mysql. Инструмент, который запускается на php-скрипте, будет анализировать операторы sql и обнаруживать, есть ли какие-либо возможные возможности для SQL-инъекций для операторов sql.
У меня есть URL-адрес, который, когда действительный, будет выглядеть так: site.com/page.php?id=12345 Я пытаюсь понять, можем ли мы подделывать SQL-инъекцию. В этом конкретном случае значение должно быть только положительным целочисленным значением, так как оно является идентификационным номером. Иногда мы используем другие переменные, которые могут быть буквой или строкой текста, например, страницами результатов поиска. Пример кода, используемого […]
У меня проблема, которая немного странная. Моя страница содержит ссылку html, которая обновляет страницу и вызывает переменную PHP. Эта переменная добавляет строку даты в строку url, которая подается в запрос MySQL, который захватывает записи, соответствующие этой дате. Я думаю, что это вызывает инъекцию, поскольку она иногда удаляет пользователя из базы данных! Я знаю, что могут […]
При доступе к моей базе данных у меня есть пользователь, заполняющий форму, а на целевой странице размещенные значения используются в результирующем запросе MySQL. $query = mysql_query("SELECT pass FROM database WHERE user='$_POST[user]'"); Однако по той или иной причине MySQL не нравится, когда я использую переменную $ _POST в команде, и она работает только, если я определяю […]
Я реализую функцию массового удаления. Приложение использует PDO, но я не придумал хороший способ использовать подготовленные инструкции для этого. У меня есть массив ID строк для удаления, любая длина: array(3, 5, 8, […]) С подготовленными операторами мне нужно будет создать строку меток вопросов для использования в качестве заполнителя, а затем привязать значения, выглядя примерно так: […]