Сигурността в PHP
Забележка: това стриктно отношение към променливите, свързани с факта, че по-голямата част на скриптове на PHP предмет нездравословно внимание на хакери с цел заместване на различните видове параметри в сайта на низ на заявката. Това може да доведе до получаването на грешката с разкриването на начина, по който се намира файла, до заобиколят някои ограничения. Например: увеличаване на правата на потребителите в по-ранните версии на Wordpress чрез изпращане на потребителя като име масив, а не като низ, сценарият удостоверяване в администраторския панел, или като смяна в низа вместо числа (например номер News) - специално създадена SQL заявки за неоторизиран достъп, създаването на така наречените онлайн инжекция SQL.
Така че, ако е възможно, проверете типа на променливите преди да ги използвате или ги ясно по време на програмирането в PHP.
Ние даваме функции, които ще бъдат полезни за нас, за да се контролира безопасността на входните данни:
- (String) отрежете (ул $) - Приемани параметри са: $ VAR - низ да се отстранят са интервали и нов ред знаци. Изрязва края на линията символи и интервали в началото и в края на низа, той се връща низова променлива тип.
- (Булева) is_string ($ VAR) - Приемани параметри са: $ VAR - променлива, за да се провери. Независимо дали дадена променлива е $ низ Var? Връща: вярно: ако тя е невярна: ако не е така.
- (Булева) is_numeric ($ VAR) - Приемани параметри са: $ VAR - променлива, за да се провери. Независимо дали дадена променлива е $ Var набор от цифри. Връща: вярно: ако тя е невярна: ако не е така.
- (Булева) is_float ($ VAR) - Приемани параметри са: $ VAR - променлива, за да се провери. Независимо дали дадена променлива е $ Var реално число? Връща: вярно: ако тя е невярна: ако не е така.
- (Булева) is_array ($ VAR) - Приемани параметри са: $ VAR - променлива, за да се провери. Независимо дали дадена променлива е $ Var масив? Връща: вярно: ако тя е невярна: ако не е така.
- (Булева) is_int ($ VAR) - Приемани параметри са: $ VAR - променлива, за да се провери. Независимо дали дадена променлива е $ Var число? Връща: вярно: ако тя е невярна: ако не е така.
- (Булева) Isset ($ VAR) - Приемани параметри са: $ VAR - променлива, за да се провери. Проверява дали променливата съществува $ Var (всякакъв вид данни), ако има такъв, се връща истина, в противен случай се връща фалшиви.
- (Булева) is_resource ($ VAR) - Приемани параметри са: $ VAR - променлива, за да се провери. Независимо дали дадена променлива е $ Var ресурс? Връща: вярно: ако тя е невярна: ако не е така.
- (Булева) празен ($ VAR) - Приемани параметри са: $ VAR - променлива, за да се провери. Проверява дали текущата променлива е празен или не, се връщат стойности: верни стойности ( "", 0, 0,0, "0", NULL, фалшиви, масив ()), фалшиви във всички други случаи
Пример използват в програмирането в PHP скриптове:
Предавани под формата чрез $ ползвателя на масив данни пост от заявките, получени чрез регистрация на потребителя:
Друг пример за използването на PHP скриптове:
Задайте въпрос към базата данни:
Забележка: факта, че е много полезно да се провери дали настройките на ресурсите, преди функция предаване, очевидно изисква параметър от тип ресурс. Например, ако SQL заявка такъв подход може да е съпроводено грешката, която е в искането, или просто, че сървърът на база данни (или текущата връзка) е заета.
Повече информация за уеб технологии могат да бъдат намерени в нашия списък на всички статии в сайта: