


PHP-Code-Prüfung – 2. Einführung in die PHP-Umgebung der PHP-Code-Prüfung
Der Inhalt dieses Artikels ist eine Einführung in die PHP-Umgebung. Interessierte Freunde können einen Blick darauf werfen und Studenten, die Hilfe benötigen, Hinweise geben
Vorwort
Die Ergebnisse der Codeausführung in verschiedenen Umgebungen werden sehr unterschiedlich sein. Es kann an einem Konfigurationsproblem liegen, das eine sehr risikoreiche Sicherheitslücke ausnutzen kann Möglicherweise haben Sie es gefunden. Eine Sicherheitslücke wird durch Ihr Konfigurationsproblem verursacht, das dazu führt, dass Sie für längere Zeit keinen erfolgreichen Exploit-Code erstellen können. Allerdings können die Konfigurationsanweisungen in verschiedenen PHP-Versionen unterschiedlich sein. In der neuen Version können einige Anweisungen hinzugefügt oder die Standardeinstellungen geändert werden. Daher müssen wir uns vor der Codeprüfung sehr gut auskennen Die Kernanweisungen der Konfigurationsdatei in der Version können qualitativ hochwertige Schwachstellen effizient ermitteln.
PHP_INI_*-Konstanten
常量 | 含义 |
PHP__INI__USER | 该配置选项可以再用户的PHP脚本或Windows注册表中设置 |
PHP__INI__PERDIR | 该配置选项可以再php.ini ..htaccess或http.conf中设置 |
PHP__INI__SYSTEM | 该设置选项可以在php.ini或http.conf中设置 |
PHP__INI__ALL | 该配置选项可在任何地方设置 |
php.ini only | 该设置选项仅可在php.ini中设置 |
PHP verfügt über Hunderte von Konfigurationsdateianweisungen, daher werde ich sie hier nicht einzeln vorstellen. Wenn Sie an diesem Aspekt interessiert sind, können Sie den spezifischen Inhalt in der offiziellen PHP-Konfigurationsdokumentation überprüfen: http://www. php.net/manual/zh/ini.list.php
Gemeinsame Grundeinstellungen für PHP
(1) open_basedir-Einstellungen
open_basedir kann einschränken Anwendungen Überprüfen Sie für Verzeichnisse, auf die zugegriffen werden kann, ob open_basedir festgelegt ist. Einige werden natürlich über den Webserver festgelegt, z. B. php_admin_value von Apache, nginx + fcgi wird über conf gesteuert.
(2) Einstellung „allow_url_fopen“
Wenn „allow_url_fopen=ON“ ist, kann PHP Remote-Dateien für den Betrieb lesen, was von Angreifern leicht ausgenutzt werden kann.
(3) Einstellung „allow_url_include“
Wenn „allow_url_include=ON“ ist, kann PHP Remote-Dateien einschließen, was zu schwerwiegenden Sicherheitslücken führt.
(4) Einstellung „safe_mode_exec_dir“
Diese Option kann das Verzeichnis externer Befehle steuern, die von PHP aufgerufen werden können. Wenn im PHP-Programm externe Befehle aufgerufen werden, Dann sind die externen Befehle bekannt. Das Verzeichnis kann Programmrisiken kontrollieren.
(5) magic_quote_gpc-Einstellung
Diese Option kann die in den Parametern übermittelten Sonderzeichen maskieren. Es wird empfohlen, magic_quote_gpc=ON
(6) Register_globals-Einstellung
Das Einschalten dieser Option führt dazu, dass PHP alle extern übermittelten Variablen als globale Variablen registriert, und die Folgen sind ziemlich schwerwiegend.(7) Safe_Mode-Einstellung
Safe_Mode ist eine wichtige Sicherheitsfunktion von PHP. Es wird empfohlen, sie zu aktivieren(8 ) session_use_trans_sid-Einstellung
Wenn session_use_trans_sid aktiviert ist, führt dies dazu, dass PHP die Sitzungs-ID über die URL weitergibt, was es einem Angreifer leicht macht, die aktuelle Sitzung zu kapern oder den Benutzer zur Verwendung zu verleiten eine bestehende Sitzung, die vom Angreifer kontrolliert wird.(9) display_errors-Einstellung
Wenn diese Option aktiviert ist, gibt PHP alle Fehler- oder Warninformationen aus, und Angreifer können diese Informationen verwenden, um den Web-Root-Pfad abzurufen usw. Sensible Informationen.(10) Einstellung „exposure_php“
Wenn die Option „exposure_php“ aktiviert ist, enthält jede von PHP generierte Antwort bei der Interpretation die PHP-Version, die auf dem Hostsystem installiert ist. Wenn ein Angreifer weiß, welche PHP-Version auf einem Remote-Server läuft, kann er bekannte Exfiltrationsmethoden gegen das System aufzählen, was die Chance auf einen erfolgreichen Angriff erheblich erhöht.(11) magic_quotes_sybase (automatische Filterung von magischen Zitaten)
Die Direktive „magic_quotes_sybase“ wird zum automatischen Filtern von Sonderzeichen verwendet überschrieben. Die Konfiguration von magic_quotes_gpc=on, das heißt, die rechtzeitige Konfiguration von gpc=on hat keine Auswirkung. Was dieser Befehl mit gpc gemeinsam hat, ist, dass die verarbeiteten Objekte gleich sind, das heißt, beide verarbeiten POSTGETCookie.
(12) unlock_functions (Funktion deaktivieren)
Um PHP sicherer auszuführen, können Sie in einer formalen Produktionsumgebung auch die Anweisung „disable_functions“ verwenden, um einige zu deaktivieren sensible Nutzungsfunktionen. Wenn Sie diese Direktive verwenden möchten, um einige gefährliche Funktionen zu sperren, denken Sie daran, die Funktion dl() zur Verbotsliste hinzuzufügen, da Angreifer die Funktion dl() zum Laden benutzerdefinierter PHP-Erweiterungen verwenden können, um die Einschränkungen der Anweisung „disable_function“ zu durchbrechen. Verwandte Empfehlungen:PHP-Code-Audit (1) -----Debugging-Funktion
Das obige ist der detaillierte Inhalt vonPHP-Code-Prüfung – 2. Einführung in die PHP-Umgebung der PHP-Code-Prüfung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



In diesem Kapitel werden wir die Umgebungsvariablen, die allgemeine Konfiguration, die Datenbankkonfiguration und die E-Mail-Konfiguration in CakePHP verstehen.

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.

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

In diesem Kapitel lernen wir die folgenden Themen im Zusammenhang mit dem Routing kennen.

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

Das Arbeiten mit der Datenbank in CakePHP ist sehr einfach. In diesem Kapitel werden wir die CRUD-Operationen (Erstellen, Lesen, Aktualisieren, Löschen) verstehen.

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

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