Skip to content

Security: DIRACGrid/RESTDIRAC

Security

SECURITY.md

Security Policy

Reporting a Vulnerability

We take the security of DIRAC projects seriously. If you believe you have found a security vulnerability, please report it to us as described below.

Please Do Not

  • Do not open a public GitHub issue for security vulnerabilities
  • Do not discuss the vulnerability publicly until it has been addressed
  • Do not exploit the vulnerability beyond what is necessary to demonstrate it

Reporting Process

Please report any suspected vulnerabilities in https://github.com/DIRACGrid//security.

Include the following information in your report:

  1. Type of vulnerability (e.g., SQL injection, XSS, authentication bypass)
  2. Affected component(s) (repository, file, function)
  3. Step-by-step instructions to reproduce the issue
  4. Potential impact of the vulnerability
  5. Any potential mitigations you've identified

What to Expect

  1. Acknowledgment: We will acknowledge receipt of your report within 48 hours
  2. Investigation: We will investigate and validate the vulnerability
  3. Updates: We will keep you informed of our progress
  4. Fix: We will develop and test a fix
  5. Disclosure: We will coordinate disclosure timing with you
  6. Credit: You will credited by Github

Supported Versions

Note: We recommend always using the latest version of our software to benefit from security updates and patches.

Security Update Process

When a security vulnerability is confirmed:

  1. A fix is developed and tested in a private repository
  2. A security advisory is prepared
  3. The fix is released with a new version
  4. The security advisory is published
  5. Users are notified through appropriate channels

Best Practices

To help keep your Dirac deployment secure:

For Operators

  • Keep software updated - Always run the latest stable version
  • Monitor security advisories - Subscribe to security notifications
  • Follow deployment best practices - Use recommended security configurations
  • Implement access controls - Use principle of least privilege
  • Enable logging and monitoring - Detect suspicious activity
  • Regular security audits - Review configurations and access patterns
  • Secure credentials - Use strong passwords and rotate secrets regularly

For Developers

  • Review security guidelines - Follow secure coding practices
  • Validate all inputs - Prevent injection attacks
  • Use parameterized queries - Avoid SQL injection
  • Sanitize outputs - Prevent XSS attacks
  • Implement proper authentication - Verify user identity
  • Apply authorization checks - Verify user permissions
  • Handle sensitive data carefully - Encrypt at rest and in transit
  • Keep dependencies updated - Monitor for vulnerable dependencies
  • Review code changes - Conduct security-focused code reviews
  • Run security scans - Use automated security testing tools

Security Features

Our modern projects implement several security measures:

  • Authentication - Strong authentication mechanisms
  • Authorization - Role-based access control
  • Encryption - Data encryption in transit and at rest
  • Input validation - Comprehensive input sanitization
  • Audit logging - Security event logging
  • Dependency scanning - Automated vulnerability detection

Third-Party Dependencies

We actively monitor our dependencies for security vulnerabilities:

  • Automated scanning with Dependabot and similar tools
  • Regular dependency updates
  • Security advisories for critical issues

Thank you for helping keep DIRAC projects and our users safe!

There aren’t any published security advisories