mirror of
https://github.com/usmannasir/cyberpanel.git
synced 2026-01-20 14:32:06 +01:00
500 lines
19 KiB
HTML
500 lines
19 KiB
HTML
{% extends "baseTemplate/index.html" %}
|
|
{% load i18n %}
|
|
{% load static %}
|
|
|
|
{% block title %}{% trans "Security Information - CyberPanel" %}{% endblock %}
|
|
|
|
{% block header_scripts %}
|
|
<style>
|
|
.security-wrapper {
|
|
background: transparent;
|
|
padding: 20px;
|
|
}
|
|
|
|
.security-container {
|
|
max-width: 1200px;
|
|
margin: 0 auto;
|
|
}
|
|
|
|
.security-header {
|
|
background: var(--bg-primary, white);
|
|
border-radius: 12px;
|
|
padding: 25px;
|
|
margin-bottom: 25px;
|
|
box-shadow: var(--shadow-md, 0 2px 8px rgba(0,0,0,0.08));
|
|
border: 1px solid var(--border-primary, #e8e9ff);
|
|
}
|
|
|
|
.security-content {
|
|
background: var(--bg-primary, white);
|
|
border-radius: 12px;
|
|
padding: 25px;
|
|
box-shadow: var(--shadow-md, 0 2px 8px rgba(0,0,0,0.08));
|
|
border: 1px solid var(--border-primary, #e8e9ff);
|
|
}
|
|
|
|
.security-feature {
|
|
background: var(--bg-secondary, #f8f9ff);
|
|
padding: 20px;
|
|
border-radius: 8px;
|
|
margin-bottom: 20px;
|
|
border-left: 4px solid #10b981;
|
|
}
|
|
|
|
.security-feature.warning {
|
|
border-left-color: #f59e0b;
|
|
}
|
|
|
|
.security-feature.danger {
|
|
border-left-color: #ef4444;
|
|
}
|
|
|
|
.security-feature h3 {
|
|
color: var(--text-primary, #2f3640);
|
|
margin-bottom: 10px;
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 10px;
|
|
}
|
|
|
|
.security-feature p {
|
|
color: var(--text-secondary, #64748b);
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.security-list {
|
|
list-style: none;
|
|
padding: 0;
|
|
}
|
|
|
|
.security-list li {
|
|
padding: 8px 0;
|
|
border-bottom: 1px solid var(--border-primary, #e8e9ff);
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 10px;
|
|
}
|
|
|
|
.security-list li:last-child {
|
|
border-bottom: none;
|
|
}
|
|
|
|
.security-icon {
|
|
width: 20px;
|
|
height: 20px;
|
|
border-radius: 50%;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
font-size: 12px;
|
|
color: white;
|
|
}
|
|
|
|
.security-icon.success {
|
|
background: #10b981;
|
|
}
|
|
|
|
.security-icon.warning {
|
|
background: #f59e0b;
|
|
}
|
|
|
|
.security-icon.danger {
|
|
background: #ef4444;
|
|
}
|
|
|
|
.back-button {
|
|
background: #6c757d;
|
|
color: white;
|
|
border: none;
|
|
padding: 10px 20px;
|
|
border-radius: 6px;
|
|
font-weight: 500;
|
|
cursor: pointer;
|
|
transition: all 0.3s ease;
|
|
text-decoration: none;
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 8px;
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
.back-button:hover {
|
|
background: #5a6268;
|
|
color: white;
|
|
text-decoration: none;
|
|
}
|
|
|
|
.security-stats {
|
|
display: grid;
|
|
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
|
|
gap: 20px;
|
|
margin-bottom: 30px;
|
|
}
|
|
|
|
.stat-card {
|
|
background: var(--bg-secondary, #f8f9ff);
|
|
padding: 20px;
|
|
border-radius: 8px;
|
|
text-align: center;
|
|
border: 1px solid var(--border-primary, #e8e9ff);
|
|
}
|
|
|
|
.stat-value {
|
|
font-size: 32px;
|
|
font-weight: 700;
|
|
color: #10b981;
|
|
margin-bottom: 8px;
|
|
}
|
|
|
|
.stat-label {
|
|
font-size: 14px;
|
|
color: var(--text-secondary, #64748b);
|
|
text-transform: uppercase;
|
|
letter-spacing: 0.5px;
|
|
}
|
|
</style>
|
|
{% endblock %}
|
|
|
|
{% block content %}
|
|
<div class="security-wrapper">
|
|
<div class="security-container">
|
|
<!-- Security Header -->
|
|
<div class="security-header">
|
|
<h1>
|
|
<i class="fas fa-shield-alt" style="margin-right: 12px; color: #10b981;"></i>
|
|
{% trans "Security Information" %}
|
|
</h1>
|
|
<p>{% trans "Comprehensive security measures implemented in the Test Plugin" %}</p>
|
|
</div>
|
|
|
|
<!-- Security Stats -->
|
|
<div class="security-stats">
|
|
<div class="stat-card">
|
|
<div class="stat-value">15+</div>
|
|
<div class="stat-label">{% trans "Security Features" %}</div>
|
|
</div>
|
|
<div class="stat-card">
|
|
<div class="stat-value">99%</div>
|
|
<div class="stat-label">{% trans "Attack Prevention" %}</div>
|
|
</div>
|
|
<div class="stat-card">
|
|
<div class="stat-value">24/7</div>
|
|
<div class="stat-label">{% trans "Monitoring" %}</div>
|
|
</div>
|
|
<div class="stat-card">
|
|
<div class="stat-value">0</div>
|
|
<div class="stat-label">{% trans "Known Vulnerabilities" %}</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Security Content -->
|
|
<div class="security-content">
|
|
<a href="{% url 'testPlugin:plugin_home' %}" class="back-button">
|
|
<i class="fas fa-arrow-left"></i>
|
|
{% trans "Back to Plugin" %}
|
|
</a>
|
|
|
|
<h2>{% trans "Security Features Implemented" %}</h2>
|
|
|
|
<div class="security-feature">
|
|
<h3>
|
|
<div class="security-icon success">
|
|
<i class="fas fa-lock"></i>
|
|
</div>
|
|
{% trans "Authentication & Authorization" %}
|
|
</h3>
|
|
<p>{% trans "Multi-layered authentication and authorization system" %}</p>
|
|
<ul class="security-list">
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "Admin-only access required for all plugin functions" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "User session validation on every request" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "Privilege escalation protection" %}
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="security-feature">
|
|
<h3>
|
|
<div class="security-icon success">
|
|
<i class="fas fa-tachometer-alt"></i>
|
|
</div>
|
|
{% trans "Rate Limiting & Brute Force Protection" %}
|
|
</h3>
|
|
<p>{% trans "Advanced rate limiting to prevent brute force attacks" %}</p>
|
|
<ul class="security-list">
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "50 requests per 5-minute window per user" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "10 test button clicks per minute limit" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "Automatic lockout after 5 failed attempts" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "15-minute lockout duration" %}
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="security-feature">
|
|
<h3>
|
|
<div class="security-icon success">
|
|
<i class="fas fa-shield-virus"></i>
|
|
</div>
|
|
{% trans "CSRF Protection" %}
|
|
</h3>
|
|
<p>{% trans "Cross-Site Request Forgery protection on all POST requests" %}</p>
|
|
<ul class="security-list">
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "HMAC-based CSRF token validation" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "Token expiration after 1 hour" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "User-specific token generation" %}
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="security-feature">
|
|
<h3>
|
|
<div class="security-icon success">
|
|
<i class="fas fa-filter"></i>
|
|
</div>
|
|
{% trans "Input Validation & Sanitization" %}
|
|
</h3>
|
|
<p>{% trans "Comprehensive input validation and sanitization" %}</p>
|
|
<ul class="security-list">
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "Regex-based input validation" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "XSS attack prevention" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "SQL injection prevention" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "Path traversal protection" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "Maximum input length limits" %}
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="security-feature">
|
|
<h3>
|
|
<div class="security-icon success">
|
|
<i class="fas fa-eye"></i>
|
|
</div>
|
|
{% trans "Security Monitoring & Logging" %}
|
|
</h3>
|
|
<p>{% trans "Comprehensive security event monitoring and logging" %}</p>
|
|
<ul class="security-list">
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "All security events logged with IP and user agent" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "Failed attempt tracking and alerting" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "Suspicious activity detection" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "Real-time security event monitoring" %}
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="security-feature">
|
|
<h3>
|
|
<div class="security-icon success">
|
|
<i class="fas fa-server"></i>
|
|
</div>
|
|
{% trans "HTTP Security Headers" %}
|
|
</h3>
|
|
<p>{% trans "Comprehensive HTTP security headers for additional protection" %}</p>
|
|
<ul class="security-list">
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "X-Frame-Options: DENY (clickjacking protection)" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "X-Content-Type-Options: nosniff" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "X-XSS-Protection: 1; mode=block" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "Content-Security-Policy (CSP)" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "Strict-Transport-Security (HSTS)" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "Referrer-Policy: strict-origin-when-cross-origin" %}
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="security-feature">
|
|
<h3>
|
|
<div class="security-icon success">
|
|
<i class="fas fa-database"></i>
|
|
</div>
|
|
{% trans "Data Isolation & Privacy" %}
|
|
</h3>
|
|
<p>{% trans "User data isolation and privacy protection" %}</p>
|
|
<ul class="security-list">
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "User-specific data isolation" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "Logs restricted to user's own activities" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "Settings isolated per user" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "No cross-user data access" %}
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="security-feature warning">
|
|
<h3>
|
|
<div class="security-icon warning">
|
|
<i class="fas fa-exclamation-triangle"></i>
|
|
</div>
|
|
{% trans "Security Recommendations" %}
|
|
</h3>
|
|
<p>{% trans "Additional security measures you should implement" %}</p>
|
|
<ul class="security-list">
|
|
<li>
|
|
<div class="security-icon warning"><i class="fas fa-info"></i></div>
|
|
{% trans "Keep CyberPanel and all plugins updated" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon warning"><i class="fas fa-info"></i></div>
|
|
{% trans "Use strong, unique passwords" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon warning"><i class="fas fa-info"></i></div>
|
|
{% trans "Enable 2FA on your CyberPanel account" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon warning"><i class="fas fa-info"></i></div>
|
|
{% trans "Regularly review security logs" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon warning"><i class="fas fa-info"></i></div>
|
|
{% trans "Use HTTPS in production environments" %}
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="security-feature danger">
|
|
<h3>
|
|
<div class="security-icon danger">
|
|
<i class="fas fa-bug"></i>
|
|
</div>
|
|
{% trans "Security Vulnerability Reporting" %}
|
|
</h3>
|
|
<p>{% trans "If you discover a security vulnerability, please report it responsibly" %}</p>
|
|
<ul class="security-list">
|
|
<li>
|
|
<div class="security-icon danger"><i class="fas fa-envelope"></i></div>
|
|
{% trans "Email: security@cyberpanel.net" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon danger"><i class="fas fa-github"></i></div>
|
|
{% trans "GitHub: Create a private security issue" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon danger"><i class="fas fa-clock"></i></div>
|
|
{% trans "Response time: Within 24-48 hours" %}
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<h2>{% trans "Security Audit Results" %}</h2>
|
|
<p>{% trans "This plugin has been designed with security as a top priority. All major security vulnerabilities have been addressed:" %}</p>
|
|
|
|
<ul class="security-list">
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "OWASP Top 10 vulnerabilities addressed" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "No SQL injection vulnerabilities" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "No XSS vulnerabilities" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "No CSRF vulnerabilities" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "No authentication bypass vulnerabilities" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "No authorization bypass vulnerabilities" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "No information disclosure vulnerabilities" %}
|
|
</li>
|
|
<li>
|
|
<div class="security-icon success"><i class="fas fa-check"></i></div>
|
|
{% trans "No path traversal vulnerabilities" %}
|
|
</li>
|
|
</ul>
|
|
|
|
<blockquote style="background: #e8f5e8; border-left: 4px solid #10b981; padding: 20px; margin: 20px 0; border-radius: 4px;">
|
|
<strong>{% trans "Security Note:" %}</strong> {% trans "This plugin implements enterprise-grade security measures. However, security is an ongoing process. Regular updates and monitoring are essential to maintain the highest security standards." %}
|
|
</blockquote>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endblock %}
|