Rebuild website — Headlamp plugin portfolio #2

Merged
Countess von Containerheim merged 2 commits from feature/rebuild-website into main 2026-05-21 12:51:49 +00:00
5 changed files with 448 additions and 0 deletions
+12
View File
@@ -0,0 +1,12 @@
_site/
.jekyll-cache/
.sass-cache/
.DS_Store
*.swp
*.swo
*~
.env
.venv
*.pyc
__pycache__/
node_modules/
+35
View File
@@ -0,0 +1,35 @@
# Privileged Escalation
A comprehensive educational resource for understanding privilege escalation techniques, vulnerabilities, and defense strategies.
## About
Privileged Escalation is dedicated to helping security professionals, developers, and researchers understand how attackers gain elevated access to systems and how defenders can prevent it.
## Features
- **Documentation**: Comprehensive guides on privilege escalation techniques and defense strategies
- **Resources**: Community-contributed tools and utilities for testing vulnerabilities
- **Research**: Academic and practical research materials on system security
- **Community**: A collaborative community focused on responsible disclosure and ethical security practices
## Getting Started
This site is built as a static website and is served via GitHub Pages. To build locally:
1. Ensure you have Ruby and Jekyll installed
2. Run `bundle install`
3. Run `bundle exec jekyll serve`
4. Navigate to `http://localhost:4000`
## Contributing
We welcome contributions from the security community. Please ensure all content follows responsible disclosure principles and ethical guidelines.
## License
See LICENSE file for details.
## Contact
For questions, suggestions, or to get involved, please open an issue or contact the maintainers.
+18
View File
@@ -0,0 +1,18 @@
title: Privileged Escalation
description: Open-source Headlamp plugins for Kubernetes
baseurl: ""
url: "https://privilegedescalation.com"
# Build settings
theme: null
markdown: kramdown
permalink: /:year/:month/:day/:title/
# Exclude certain files from processing
exclude:
- README.md
- .gitignore
- LICENSE
# GitHub Pages settings
github: [metadata]
+94
View File
@@ -0,0 +1,94 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Privileged Escalation - Open-source Headlamp Plugins</title>
<link rel="stylesheet" href="style.css">
<meta name="description" content="Open-source Headlamp plugins for Kubernetes monitoring, security, and storage visibility.">
</head>
<body>
<nav class="navbar">
<div class="container">
<div class="logo-section">
<img src="privilegedescalation-logo.jpg" alt="Privileged Escalation Logo" class="logo">
<h1>Privileged Escalation</h1>
</div>
<ul class="nav-links">
<li><a href="#plugins">Plugins</a></li>
<li><a href="#about">About</a></li>
<li><a href="#footer">Contact</a></li>
</ul>
</div>
</nav>
<header class="hero">
<div class="container">
<img src="privilegedescalation-logo.jpg" alt="Privileged Escalation Logo" class="hero-logo">
<h2>Open-source Headlamp plugins for Kubernetes</h2>
<p>We extend Headlamp with plugins for monitoring, security, and storage visibility — built by Privileged Escalation.</p>
</div>
</header>
<main>
<section id="plugins" class="section">
<div class="container">
<h2 class="section-title">Plugin Showcase</h2>
<p class="section-intro">All our plugins integrate directly into Headlamp, the extensible Kubernetes UI by the CNCF. Click any plugin to visit its repository.</p>
<div class="plugin-grid">
<div class="plugin-card">
<h3>headlamp-argocd-plugin</h3>
<p>ArgoCD visibility — monitors ArgoCD Applications, Rollouts, and health status directly from your Kubernetes cluster.</p>
<a href="https://git.farh.net/privilegedescalation/headlamp-argocd-plugin" class="plugin-link">View Repository</a>
</div>
<div class="plugin-card">
<h3>headlamp-polaris-plugin</h3>
<p>Fairwinds Polaris security and best-practices auditing — surface configuration issues and compliance gaps in your cluster.</p>
<a href="https://git.farh.net/privilegedescalation/headlamp-polaris-plugin" class="plugin-link">View Repository</a>
</div>
<div class="plugin-card">
<h3>headlamp-rook-plugin</h3>
<p>Rook-Ceph cluster visibility — monitors CephCluster health, pool status, and CSI driver metrics for your storage infrastructure.</p>
<a href="https://git.farh.net/privilegedescalation/headlamp-rook-plugin" class="plugin-link">View Repository</a>
</div>
<div class="plugin-card">
<h3>headlamp-kube-vip-plugin</h3>
<p>kube-vip virtual IP and load balancer visibility — track virtual IP allocations and load balancer endpoints across your clusters.</p>
<a href="https://git.farh.net/privilegedescalation/headlamp-kube-vip-plugin" class="plugin-link">View Repository</a>
</div>
<div class="plugin-card">
<h3>headlamp-sealed-secrets-plugin</h3>
<p>Bitnami Sealed Secrets management with client-side encryption — create and manage sealed secrets directly from the Headlamp UI.</p>
<a href="https://git.farh.net/privilegedescalation/headlamp-sealed-secrets-plugin" class="plugin-link">View Repository</a>
</div>
<div class="plugin-card">
<h3>headlamp-tns-csi-plugin</h3>
<p>TrueNAS CSI driver visibility and kbench storage benchmarking — monitor TrueNAS storage resources and run performance benchmarks.</p>
<a href="https://git.farh.net/privilegedescalation/headlamp-tns-csi-plugin" class="plugin-link">View Repository</a>
</div>
<div class="plugin-card">
<h3>headlamp-intel-gpu-plugin</h3>
<p>Intel GPU device visibility and resource monitoring — track GPU device status, utilization, and health across your GPU-enabled nodes.</p>
<a href="https://git.farh.net/privilegedescalation/headlamp-intel-gpu-plugin" class="plugin-link">View Repository</a>
</div>
</div>
</div>
</section>
<section id="about" class="section alternate">
<div class="container">
<h2 class="section-title">About Privileged Escalation</h2>
<p>Privileged Escalation builds open-source plugins for <a href="https://headlamp.dev" target="_blank" rel="noopener">Headlamp</a>, the extensible Kubernetes UI hosted by the Cloud Native Computing Foundation (CNCF). Our plugins add visibility into monitoring, security, and storage tooling commonly deployed in Kubernetes environments.</p>
<p>All plugins are open-source and available on our <a href="https://git.farh.net/privilegedescalation/">Gitea organization</a>. Contributions are welcome.</p>
</div>
</section>
</main>
<footer id="footer">
<div class="container">
<p>&copy; 2026 Privileged Escalation</p>
<p><a href="https://git.farh.net/privilegedescalation/" target="_blank" rel="noopener">Gitea Organization</a></p>
</div>
</footer>
</body>
</html>
+289
View File
@@ -0,0 +1,289 @@
:root {
--primary-color: #1a73e8;
--secondary-color: #3d5a80;
--accent-color: #00a896;
--light-bg: #f8f9fa;
--text-color: #202124;
--border-color: #dadce0;
--card-bg: #ffffff;
--card-shadow: 0 1px 3px rgba(0,0,0,0.08);
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html {
scroll-behavior: smooth;
}
body {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
line-height: 1.6;
color: var(--text-color);
background-color: #ffffff;
}
.container {
max-width: 1200px;
margin: 0 auto;
padding: 0 20px;
}
/* Navigation */
.navbar {
background-color: var(--primary-color);
color: white;
padding: 1rem 0;
position: sticky;
top: 0;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
z-index: 100;
}
.navbar .container {
display: flex;
justify-content: space-between;
align-items: center;
}
.logo-section {
display: flex;
align-items: center;
gap: 15px;
}
.logo {
height: 50px;
width: auto;
border-radius: 4px;
}
.navbar h1 {
font-size: 1.8rem;
font-weight: 600;
}
.nav-links {
display: flex;
list-style: none;
gap: 2rem;
}
.nav-links a {
color: white;
text-decoration: none;
transition: opacity 0.2s ease;
font-weight: 500;
}
.nav-links a:hover {
opacity: 0.8;
}
/* Hero Section */
.hero {
background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
color: white;
padding: 80px 0;
text-align: center;
}
.hero-logo {
height: 80px;
width: auto;
border-radius: 8px;
margin-bottom: 1.5rem;
}
.hero h2 {
font-size: 2.2rem;
margin-bottom: 1rem;
font-weight: 600;
}
.hero p {
font-size: 1.15rem;
opacity: 0.95;
max-width: 600px;
margin: 0 auto;
}
/* Sections */
.section {
padding: 60px 0;
}
.section-title {
font-size: 2rem;
margin-bottom: 1rem;
color: var(--primary-color);
border-bottom: 3px solid var(--accent-color);
padding-bottom: 0.5rem;
display: inline-block;
}
.section-intro {
font-size: 1.05rem;
margin-bottom: 2.5rem;
color: #5f6368;
max-width: 700px;
}
.section p {
font-size: 1rem;
margin-bottom: 1rem;
line-height: 1.8;
}
.section a {
color: var(--primary-color);
text-decoration: none;
}
.section a:hover {
text-decoration: underline;
}
.alternate {
background-color: var(--light-bg);
}
/* Plugin Grid */
.plugin-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
gap: 1.5rem;
margin-top: 2rem;
}
.plugin-card {
background: var(--card-bg);
padding: 1.75rem;
border-radius: 8px;
border: 1px solid var(--border-color);
box-shadow: var(--card-shadow);
transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.plugin-card:hover {
box-shadow: 0 4px 12px rgba(0,0,0,0.12);
transform: translateY(-2px);
}
.plugin-card h3 {
color: var(--primary-color);
margin-bottom: 0.75rem;
font-size: 1.15rem;
font-weight: 600;
}
.plugin-card p {
font-size: 0.95rem;
color: #5f6368;
line-height: 1.6;
margin-bottom: 1rem;
}
.plugin-link {
display: inline-block;
color: var(--accent-color);
font-weight: 600;
font-size: 0.9rem;
}
.plugin-link:hover {
text-decoration: underline;
}
/* Footer */
footer {
background-color: var(--secondary-color);
color: white;
text-align: center;
padding: 2rem 0;
}
footer p {
margin-bottom: 0.5rem;
}
footer a {
color: white;
text-decoration: none;
}
footer a:hover {
text-decoration: underline;
}
/* Responsive Design */
@media (max-width: 768px) {
.navbar .container {
flex-direction: column;
gap: 1rem;
}
.nav-links {
flex-direction: column;
gap: 1rem;
text-align: center;
}
.hero {
padding: 60px 0;
}
.hero h2 {
font-size: 1.75rem;
}
.hero p {
font-size: 1rem;
}
.section-title {
font-size: 1.5rem;
}
.plugin-grid {
grid-template-columns: 1fr;
}
.logo-section {
flex-direction: column;
text-align: center;
}
.navbar h1 {
font-size: 1.5rem;
}
.hero-logo {
height: 60px;
}
}
@media (max-width: 480px) {
.hero {
padding: 40px 0;
}
.section {
padding: 40px 0;
}
.hero h2 {
font-size: 1.5rem;
}
.logo {
height: 40px;
}
.hero-logo {
height: 50px;
}
}