PNG IHDR x sBIT|d pHYs + tEXtSoftware www.inkscape.org< ,tEXtComment
<?php
// -----------------------------------------
// Security Headers
// -----------------------------------------
// Prevent the page from being embedded in frames (Clickjacking protection)
header("X-Frame-Options: DENY");
// Enable Cross-Site Scripting (XSS) filter
header("X-XSS-Protection: 1; mode=block");
// Prevent browsers from interpreting files as a different MIME type (MIME Sniffing)
header("X-Content-Type-Options: nosniff");
// Control how much referrer information is sent
header("Referrer-Policy: strict-origin-when-cross-origin");
// Enforce HTTPS (Uncomment this when you deploy to a server with SSL)
// header("Strict-Transport-Security: max-age=31536000; includeSubDomains");
// -----------------------------------------
// Helper Functions
// -----------------------------------------
/**
* Sanitize Input Data
* Removes HTML tags and encodes special characters to prevent XSS.
* * @param string $data
* @return string
*/
function clean_input($data) {
if (is_array($data)) {
return array_map('clean_input', $data);
}
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data, ENT_QUOTES, 'UTF-8');
return $data;
}
/**
* Generate CSRF Token
* Creates a token to prevent Cross-Site Request Forgery on forms.
*/
function generate_csrf_token() {
if (empty($_SESSION['csrf_token'])) {
$_SESSION['csrf_token'] = bin2hex(random_bytes(32));
}
return $_SESSION['csrf_token'];
}
/**
* Verify CSRF Token
*/
function verify_csrf_token($token) {
if (!isset($_SESSION['csrf_token']) || $token !== $_SESSION['csrf_token']) {
die("CSRF Validation Failed");
}
return true;
}
?>
b IDATxytVսϓ22 A@IR:hCiZ[v*E:WũZA ^dQeQ @ !jZ'>gsV仿$|?g)&x-E