| Version | Supported |
|---|---|
| 1.0.0 | ✅ |
| 1.0.0-alpha.2 | ❌ (upgrade to 1.0.0) |
| 1.0.0-alpha.1 | ❌ (upgrade to 1.0.0) |
We take security vulnerabilities seriously. If you discover a security issue in this project, please report it responsibly.
DO NOT open a public GitHub issue for security vulnerabilities.
Instead, please email security details to: security@xarf.org
Include the following information in your report:
- Description of the vulnerability
- Steps to reproduce the issue
- Potential impact
- Suggested fix (if available)
- Acknowledgment: We will acknowledge receipt of your vulnerability report within 48 hours
- Assessment: We will assess the severity and impact of the vulnerability
- Updates: We will keep you informed of our progress toward a fix
- Disclosure: Once a fix is available, we will coordinate disclosure timing with you
When using the XARF JavaScript parser, follow these security best practices:
- Always validate XARF reports against the schema before processing
- Sanitize all user-supplied data before using it in XARF reports
- Set size limits on incoming reports to prevent memory exhaustion
- Validate email addresses and other contact information before use
// Example: Safe parsing with error handling
try {
const report = parser.parse(input);
// Validate against schema
if (!validator.validate(report)) {
throw new Error('Invalid XARF report structure');
}
// Process validated report
processReport(report);
} catch (error) {
// Handle parsing errors securely
logger.error('Parsing failed', { error: error.message });
// Do not expose internal details to users
}- Do not log sensitive information from XARF reports
- Redact PII when logging or storing reports
- Use secure transport (HTTPS/TLS) when transmitting reports
- Encrypt sensitive data at rest
- Regularly update dependencies to patch known vulnerabilities
- Use
npm auditto check for security issues - Review security advisories for dependencies
- Consider using lock files (
package-lock.json) for reproducible builds
- Avoid eval() and similar dynamic code execution
- Use strict mode (
"use strict") - Validate all inputs before processing
- Follow principle of least privilege in code design
XARF reports may contain:
- Email addresses and contact information
- IP addresses and network data
- Potentially malicious content samples
- Sensitive abuse details
Always treat XARF report content as untrusted user input.
While the parser validates structure, additional application-level validation may be required for:
- Email address format verification
- IP address range validation
- URL safety checks
- Content length restrictions
Security updates will be released as soon as possible after a vulnerability is confirmed and fixed. Updates will be announced through:
- GitHub Security Advisories
- Release notes
- Project changelog
We appreciate the security research community's efforts in responsibly disclosing vulnerabilities. Contributors who report valid security issues will be acknowledged (with their permission) in our security advisories.