Articles of code injection

Как избежать инъекций mysql с использованием PDO

Как я могу избежать инъекций mysql? Это файл PHP, который у меня есть прямо сейчас <?php include 'config.php'; $Name = $_GET['Name'] ; $sql = "Select * from tables where names =\"$Name\""; try { $dbh = new PDO("mysql:host=$dbhost;dbname=$dbname", $dbuser, $dbpass); $dbh->query('SET CHARACTER SET utf8'); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $stmt = $dbh->query($sql); $names = $stmt->fetchAll(PDO::FETCH_OBJ); $dbh = null; echo […]

PHP – Как получить доступ к объекту pdo из других (нескольких) классов

Я переключаю свой MVC на использование PDO (я знаю, просрочен). В прошлом мое приложение использовало следующую иерархию классов: Database.class> Main.class> User.class (каждый из которых распространяется на другой). Но перед созданием любого объекта было создано соединение mysql (mysql_connect). Как только соединение было открыто, я мог бы использовать Database.class в качестве класса-оболочки, через который выполнялись все мои […]

Когда использовать mysql_real_escape_string ()

Когда правильное время для использования mysql_real_escape_string? Должен ли я использовать его, когда я использую isset (mysql_escape_string ($ _ GET ['param'])), Должен ли я использовать его, когда я использую $ foo = mysql_real_escape_string ($ _ GET ['bar']); благодаря

Предотвращение инъекции SQL с помощью PHP

Поскольку мои заявления похожи на "SELECT * FROM `box` WHERE `thing` = '{$variable}' Могу ли я очистить это просто $variable = str_replace("'","\'",$variable); "SELECT * FROM `box` WHERE `thing` = '{$variable}' Будет ли это работать? Мой хост не поддерживает mysql escape, и я не использую mysqli.

Достаточно ли FILTER_VALIDATE_EMAIL прекратить инъекцию оболочки?

Поэтому я планирую использовать shell_exec() для обработки сценария php, который отправляет электронное письмо. Все это отлично работает, но я просто немного обеспокоен последствиями безопасности только для использования FILTER_VALIDATE_EMAIL чтобы гарантировать, что инъекция не может произойти. Так, например, я буду использовать что-то похожее на это: $email=$_POST['email']; if(!filter_var($email, FILTER_VALIDATE_EMAIL)) { echo 'Nope …'; } else { shell_exec("/usr/bin/php […]

Как я могу защитить этот код от SQL Injection? Немного смущен

Я читал разные источники, но я не уверен, как реализовать их в моем коде. Мне было интересно, может ли кто-нибудь дать мне быструю руку? Как только мне показали, как это сделать в моем коде, я смогу забрать его, я думаю! Это из автозаполнения AJAX, которое я нашел в сети, хотя я видел, что это связано […]

Предотвращение инъекций PHP SQL со строковыми операциями

Возможный дубликат: Лучший способ предотвратить SQL-инъекцию в PHP? Я занимаюсь исследованиями SQL Injection, но у меня есть некоторые вопросы, на которые я не мог найти ответ. Невозможно ли предотвратить атаки SQL-инъекций на уровни строк? Я имею в виду, мы не можем это предотвратить; Поиск незаконных символов перед их обработкой через запросы mysql? $postID = $_POST['id']; […]

Выпадающие поля выбора уязвимы для любого типа инъекций

Я читал здесь мантру «никогда не доверяю пользовательскому вводу», и это имеет смысл. Я могу понять, что любое поле, введенное пользователем, является подозрительным. Однако, как насчет выпадающих полей? Могут ли они использоваться для инъекций любого типа? Я очистил все поля, которые позволяют пользователю вводить, а также использовать подготовленные инструкции mysqli для вставки в базу данных. […]

Как безопасно записывать данные JSON в файл с помощью PHP

У меня есть HTML-форма для редактирования изображений. Все данные хранятся в JSON. Когда я меняю текущее изображение, я хочу сохранить изменения с помощью PHP-скрипта в текстовый файл. Если я вернусь к предыдущему изображению, эта конфигурация будет снова отправлена ​​из этого файла в форму. Мой вопрос: Как безопасно писать и читать данные. Где и как эффективно […]

Способы остановить людей от загрузки GIF с инъекциями в них?

У меня есть сайт PHP, где люди могут заполнять справочные билеты. Это позволяет им загружать скриншоты для своего билета. Я разрешаю загружать gif, psd, bmp, jpg, png, tif. После получения загрузки скрипт PHP игнорирует расширение файла. Он идентифицирует тип файла, используя только информацию MIME, которая для этих типов файлов всегда хранится в первых 12 байтах […]