Inhaltsverzeichnis
创建高安全性PHP网站的几个实用要点,安全性php实用要点
 技巧1:使用合适的错误报告
 技巧2:不使用PHP的Weak属性
 技巧3:验证用户输入
 技巧4:避免用户进行交叉站点脚本攻击
 技巧5:预防SQL注入攻击
Heim php教程 php手册 创建高安全性PHP网站的几个实用要点,安全性php实用要点

创建高安全性PHP网站的几个实用要点,安全性php实用要点

Jun 13, 2016 am 09:19 AM
php mehrere 创建 安全性 实用 netto 要点 hoch

创建高安全性PHP网站的几个实用要点,安全性php实用要点

大家都知道PHP已经是当前最流行的Web应用编程语言了。但是也与其他脚本语言一样,PHP也有几个很危险的安全漏洞。所以在这篇教学文章中,我们将大致看看几个实用的技巧来让你避免一些常见的PHP安全问题。 

 技巧1:使用合适的错误报告

  一般在开发过程中,很多程序员总是忘了制作程序错误报告,这是极大的错误,因为恰当的错误报告不仅仅是最好的调试工具,也是极佳的安全漏洞检测工具,这能让你把应用真正上线前尽可能找出你将会遇到的问题。

  当然也有很多方式去启用错误报告。比如在 php.in 配置文件中你可以设置在运行时启用

  启动错误报告

error_reporting(E_ALL);
Nach dem Login kopieren

  停用错误报告

error_reporting(0);
Nach dem Login kopieren

 技巧2:不使用PHP的Weak属性

  有几个PHP的属性是需要被设置为OFF的。一般它们都存在于PHP4里面,而在PHP5中是不推荐使用的。尤其最后在PHP6里面,这些属性都被移除了。

  注册全局变量

  当 register_globals 被设置为ON时,就相当于设置Environment,GET,POST,COOKIE或者Server变量都定义为全局变量。此时你根本不需要去写 $_POST['username']来获取表单变量'username',只需要'$username'就能获取此变量了。

  那么你肯定在想既然设置 register_globals 为 ON 有这么方便的好处,那为什么不要使用呢?因为如果你这样做将会带来很多安全性的问题,而且也可能与局部变量名称相冲突。

  比如先看看下面的代码:

if( !empty( $_POST['username'] ) && $_POST['username'] == ‘test123′ && !empty( $_POST['password'] ) && $_POST['password'] == “pass123″ )
{
$access = true;
}
Nach dem Login kopieren

  如果运行期间, register_globals 被设置为ON,那么用户只需要传输 access=1 在一句查询字符串中就能获取到PHP脚本运行的任何东西了。

  在.htaccess中停用全局变量

php_flag register_globals 0
Nach dem Login kopieren

  在php.ini中停用全局变量

register_globals = Off
Nach dem Login kopieren

  停用类似 magic_quotes_gpc, magic_quotes_runtime, magic_quotes_sybase 这些Magic Quotes

  在.htaccess文件中设置

php_flag magic_quotes_gpc 0
php_flag magic_quotes_runtime 0
Nach dem Login kopieren

  在php.ini中设置

magic_quotes_gpc = Off
magic_quotes_runtime = Off
magic_quotes_sybase = Off
Nach dem Login kopieren

 技巧3:验证用户输入

  你当然也可以验证用户的输入,首先必须知道你期望用户输入的数据类型。这样就能在浏览器端做好防御用户恶意攻击你的准备。

 技巧4:避免用户进行交叉站点脚本攻击

  在Web应用中,都是简单地接受用户输入表单然后反馈结果。在接受用户输入时,如果允许HTML格式输入将是非常危险的事情,因为这也就允许了JavaScript以不可预料的方式侵入后直接执行。哪怕只要有一个这样漏洞,cookie数据都可能被盗取进而导致用户的账户被盗取。

 技巧5:预防SQL注入攻击

  PHP基本没有提供任何工具来保护你的数据库,所以当你连接数据库时,你可以使用下面这个mysqli_real_escape_string 函数。

$username = mysqli_real_escape_string( $GET['username'] );
mysql_query( “SELECT * FROM tbl_employee WHERE username = ’”.$username.“‘”);
Nach dem Login kopieren

  好了,在这篇简短的文章中,我们阐述了几个开发过程中不能忽视的PHP安全性问题。但是最终是否使用,如何使用还是开发人员来决定的。希望这篇文章能帮助到你们。

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

CakePHP Datum und Uhrzeit CakePHP Datum und Uhrzeit Sep 10, 2024 pm 05:27 PM

Um in cakephp4 mit Datum und Uhrzeit zu arbeiten, verwenden wir die verfügbare FrozenTime-Klasse.

Besprechen Sie CakePHP Besprechen Sie CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP ist ein Open-Source-Framework für PHP. Es soll die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich vereinfachen. CakePHP basiert auf einer MVC-ähnlichen Architektur, die sowohl leistungsstark als auch leicht zu verstehen ist. Modelle, Ansichten und Controller gu

CakePHP-Datei hochladen CakePHP-Datei hochladen Sep 10, 2024 pm 05:27 PM

Um am Datei-Upload zu arbeiten, verwenden wir den Formular-Helfer. Hier ist ein Beispiel für den Datei-Upload.

CakePHP erstellt Validatoren CakePHP erstellt Validatoren Sep 10, 2024 pm 05:26 PM

Der Validator kann durch Hinzufügen der folgenden zwei Zeilen im Controller erstellt werden.

CakePHP-Protokollierung CakePHP-Protokollierung Sep 10, 2024 pm 05:26 PM

Die Anmeldung bei CakePHP ist eine sehr einfache Aufgabe. Sie müssen nur eine Funktion verwenden. Sie können Fehler, Ausnahmen, Benutzeraktivitäten und von Benutzern durchgeführte Aktionen für jeden Hintergrundprozess wie Cronjob protokollieren. Das Protokollieren von Daten in CakePHP ist einfach. Die Funktion log() wird bereitgestellt

So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein Dec 20, 2024 am 11:31 AM

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

CakePHP-Kurzanleitung CakePHP-Kurzanleitung Sep 10, 2024 pm 05:27 PM

CakePHP ist ein Open-Source-MVC-Framework. Es erleichtert die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich. CakePHP verfügt über eine Reihe von Bibliotheken, um die Überlastung der häufigsten Aufgaben zu reduzieren.

See all articles