PHP编程
Completion requirements
安全 HTTP 头
HTTP 头揭示的安全漏洞
PHP 脚本返回的 HTTP 头可能会暴露其安全漏洞。
隐藏版本信息
为了避免成为与 PHP 或 web 服务器版本相关的安全漏洞的目标,最好隐藏这些信息在 HTTP 头中。
这通常在服务器配置文件中进行设置,但也可以通过 PHP 实现:
ini_set('expose_php', 'Off');
header('X-Powered-By: UnknownWebServer');
其他攻击
HTTP 头注入可以通过配置进行防止。
以下是一些防护示例:
ini_set('register_globals', 'Off');
header('Content-Security-Policy "default-src \'self\'; style-src \'self\' \'unsafe-inline\'; script-src \'self\' \'unsafe-inline\'; img-src \'self\' data:"');
header('X-Frame-Options "SAMEORIGIN" always');
header('X-Content-Type-Options nosniff');
header('Referrer-Policy: origin');
header('Permissions-Policy "geolocation=(),midi=(),sync-xhr=(),microphone=(),camera=(),magnetometer=(),gyroscope=(),fullscreen=(self),payment=()"');
注意: 配置错误可能会引发跨域资源共享(CORS)错误。
Last modified: Friday, 10 January 2025, 2:46 AM