[Not sure if this is the correct forum for this, but Accessibility seems close enough… If it isn’t right, let me know…]
Our Omeka S instance has been flagged by central IT using Security Score Card. The sin?
“Subresource Integrity”
Description
Subresource Integrity (SRI) is a security feature in web development designed to ensure the integrity of externally loaded resources on a webpage. These include scripts, stylesheets, and fonts. With SRI, developers include a cryptographic hash of the expected resource content in the HTML. When a user visits the webpage, the browser checks this hash against the actual content fetched from the external source. If the hashes match, that means the resource hasn’t been tampered with or compromised.
Risk
Without SRI, externally loaded resources, like scripts and stylesheets, lack integrity verification. This makes them susceptible to tampering. This creates a potential avenue for attackers to inject malicious scripts, which leads to Cross-Site Scripting (XSS) vulnerabilities, unauthorized data access, and other security threats.
Recommendations
- Ensure accurate cryptographic hashes are specified for all externally loaded resources using SRI attributes in the HTML.
- Routinely review and update cryptographic hashes to align with changes in resource content.
- Implement robust input validation and sanitization practices to prevent injection attacks.
- Use CSP to restrict resource sources. This adds an extra layer of control over content execution.
–
Is there anything in Omeka S, or any available modules that would allow us to alter the Content Security Policy (CSP) in Omeka’s http headers.
This is way outside of my comfort zone, of course.