The CSCPDUAM Community project takes security seriously. As a community platform for the Department of Computer Science at Pandit Deendayal Upadhyaya Adarsha Mahavidyalaya (PDUAM), protecting student, faculty, and maintainer data is a top priority.
Only the latest active version of the application receives security updates and vulnerability patches.
| Version | Supported |
|---|---|
1.0.x |
Yes |
< 1.0.0 |
No |
Do NOT report security vulnerabilities through public GitHub Issues or GitHub Discussions.
If you discover a security vulnerability or potential threat in CSCPDUAM Community, please report it privately:
- Email: Send details of the vulnerability to
cscpduam.community@gmail.com(or contact departmental security maintainers). - Details to Include:
- Type of issue (e.g., XSS, OAuth secret leakage, CSRF, SSRF).
- Step-by-step instructions or proof-of-concept to reproduce the issue.
- Impact assessment (who or what is affected).
- Response Timeline:
- We will acknowledge receipt of your vulnerability report within 48 hours.
- We will provide a status update or fix plan within 7 days.
- A public release containing the fix will be published as soon as possible.
- Never Commit Secrets: OAuth Client Secrets (
GITHUB_CLIENT_SECRET), Auth Secrets (AUTH_SECRET), and API Access Tokens must NEVER be committed to Git or pushed to any repository. - Local Development: Store secrets in
.env.local. Ensure.env.localis listed in.gitignore. - Production Environment: Manage secrets strictly through Vercel Environment Variables configuration.
- Server-Only API Calls: All interactions with the GitHub GraphQL API that require authentication tokens or client secrets MUST originate from Next.js Server Components, Server Actions, or API Route Handlers (
app/api/). - No Client Exposure: Never expose internal API keys or secret environment variables to client-side components (
'use client'). Only pass sanitized data necessary for UI rendering.
- HTML Sanitization: Since CSCPDUAM Community renders user-generated Markdown (discussions, comments), all Markdown output must be sanitized to strip dangerous HTML tags (e.g.,
<script>,<iframe>, inlineonloadhandlers). - Safe Markdown Rendering: Use trusted libraries such as
react-markdownwith strict sanitization plugins.
- OAuth Only: Authentication is restricted exclusively to GitHub OAuth managed by Auth.js / NextAuth.js. No password storage or email authentication mechanisms exist within the application database.
- State & Token Security: OAuth state tokens and session cookies must be set with
SameSite=LaxorStrict,HttpOnly, andSecureflags in production.
Thank you for keeping CSCPDUAM Community safe and secure for our students and department! 🛡️