*   >> Чтение Образование Статьи >> tech >> web development

Как защитить свой сайт от PHP SQL-инъекции

SQL Injection

<р> SQL-инъекции является наиболее распространенной формой сайте взлома, это происходит, когда пользователь влияет на вашу базу данных без разрешения с использованием SQL-кода. Например:.

<Р> а восприимчивы сайт имеет страницу входа, пароль Фейлд не защищен от SQL-инъекции, когда хакер видит это, они типа 'ИЛИ' '=' в пароля Фейлд

< P> Войти обрабатывается так:

<р> SELECT * FROM `users`, где имя пользователя = '$ имя пользователя' и пароль = '$ пароль'

<р> Теперь мы вставим наши ценности:
<р> SELECT * FROM `users`, где имя пользователя = 'администратор' и пароль = '' или '' = ''

<р> Обратите внимание, что проверка пароля была обойдена.

Теперь код говорит, чтобы выбрать любого пользователя, если пароль не равна ничего или ничего не равна ничего, что всегда верно, так что это будет выбрать первого пользователя в базе данных, которая наиболее часто является учетной записью администратора.

Так как предотвратить эти нападения?

Есть много методов, чтобы предотвратить SQL-инъекции в некоторые легче и лучше, но я думаю, что его удобно знать больше, чем один. В основном главная идея, чтобы остановить или кодировать apostrophy

Способ 1 -.

Addslashes ()

<р> В PHP кодирования есть функция называется addslashes. Эта функция добавляет обратную косую черту перед символами, которые могли бы причинить вред вашей базе данных, или обмануть его в выдавая wrog информацию. Пример можно увидеть ниже:

<р> Кто этот человек? будет включен в базу данных, как это кто человек? (Это не база данных безопасно)

<р> При использовании addslashes:

addslashes (? Кто этот человек) будет включен в базу данных, как кто \\ 'ы, что человек? (это база данных безопасно)

<р> Имея обратную косую черту перед »означает, что база данных не признает его в качестве надежного кода SQL, и просто игнорирует его

Способ 2 -.

шифрования

< стр.> Шифрование означает, что информация, которая передается через шифруется перед отправкой в ​​базу данных для проверки, это означает, что информация в базе данных должна быть encryped однако

<р> Некоторые формы шифрования включают в себя: < >

  • MD5 ш ()

  • SHA1 ()

  • AES_ENCRYPT () Каталог

    <р> Первые два нормально для основных сайтов, где информация, шифруется не большую ценность, однако, они были взломаны различными способами, и инструменты, которые люди могут использовать, чтобы взломать их являются wildley Доступ

    Page   <<       [1] [2] [3] >>
  • Copyright © 2008 - 2016 Чтение Образование Статьи,https://ru.nmjjxx.com All rights reserved.