
हार्डन्ड कंटेनर स्टेजिंग फ्रेमवर्क जिसमें seccomp syscall व्हाइटलिस्टिंग और eBPF टेलीमेट्री शामिल है, जो कंटेनर एस्केप और कर्नेल ULP भ्रष्टाचार के प्रयासों का पता लगाने और उन्हें ब्लॉक करने के लिए उपयोग किया जाता है।
एक एंटरप्राइज़-ग्रेड, रक्षा-गहराई वाला कंटेनर संयमन और रनटाइम सुरक्षा टेलीमेट्री फ्रेमवर्क। सिस्को के प्रमुख साइबर सुरक्षा आर्किटेक्ट के दृष्टिकोण से डिज़ाइन किया गया, Charantej आर्किटेक्चर स्टेजिंग रनटाइम को अलग करता है, सिस्टम कॉल सतहों को प्रतिबंधित करता है, और होस्ट-स्तरीय ऑडिटिंग का उपयोग करके वास्तविक समय कर्नेल टेलीमेट्री को साधनबद्ध करता है ताकि आधुनिक Linux कंटेनर तैनातियों को सुरक्षित किया जा सके।
Charantej आर्किटेक्चर अलगाव, न्यूनतम-विशेषाधिकार संयमन, और ऑफ-बैंड निगरानी को लागू करता है ताकि सुरक्षा सीमाएँ होस्ट कर्नेल समझौता वेक्टर के खिलाफ लचीला बनी रहें।
flowchart TD
subgraph HostOS ["Host OS (Secured Linux Node)"]
subgraph Docker ["Docker Container Runtime"]
App["Audited App Namespace"]
end
subgraph Auditor ["Host Auditor (Falco Engine)"]
eBPF["eBPF Probes"]
end
Kernel["Host Linux Kernel"]
end
SIEM["SIEM / Log Repository"]
App -->|System Calls| Kernel
Kernel -->|Trace Events| eBPF
eBPF --> Auditor
Auditor -->|Telemetry Logs| SIEM
style HostOS fill:#1e1e1e,stroke:#333,stroke-width:2px
style Docker fill:#2a2a2a,stroke:#007bff,stroke-width:2px
style Auditor fill:#2a2a2a,stroke:#dc3545,stroke-width:2px
style Kernel fill:#333,stroke:#ffc107,stroke-width:2px
style SIEM fill:#1e1e1e,stroke:#28a745,stroke-width:2px,stroke-dasharray: 5 5CAP_SYS_ADMIN, CAP_NET_ADMIN, CAP_NET_RAW, आदि) को हटाकर कच्चे सिस्टम-स्तरीय नेटवर्क हेरफेर को अवरुद्ध करता है।निम्न-स्तरीय डिज़ाइन कर्नेल सीमा के भीतर परिचालन सिस्कॉल सत्यापन तर्क, फ़िल्टर पथ, और निगरानी एंडपॉइंट को परिभाषित करता है।
flowchart TD
subgraph ContainerSpace ["Container Namespace (User Space)"]
App["Audited Process"]
end
subgraph SeccompBoundary ["Seccomp Syscall Filter Boundary"]
Syscall["Syscall Invocation"]
Filter{"Syscall in Whitelist?"}
Block["SCMP_ACT_ERRNO (Block & Fail)"]
Allow["Allow & Pass"]
end
subgraph KernelSpace ["Linux Host Kernel Space"]
Handler["System Call Handler"]
Subsystem["Target Subsystem (e.g., Network/Memory)"]
end
subgraph TelemetryLayer ["Host Auditing Layer"]
eBPF["eBPF Probe Instrumentation"]
Falco{"Event Matches Rule?"}
Alert["Log syslog / SIEM Alarm"]
end
App -->|1. Invokes Syscall| Syscall
Syscall --> Filter
Filter -->|No: e.g., setsockopt/socket| Block
Filter -->|Yes: e.g., read/write| Allow
Allow --> Handler
Handler --> Subsystem
Handler -->|2. Traces Execution| eBPF
eBPF --> Falco
Falco -->|Yes| AlertCharantej आर्किटेक्चर सुरक्षा सीमाओं को लागू करने के लिए तीन परस्पर जुड़ी कॉन्फ़िगरेशन परतों से बना है।
ऑर्केस्ट्रेशन कॉन्फ़िगरेशन रनटाइम फ़्लैग्स के माध्यम से सीधे निम्नलिखित सुरक्षा नियंत्रण लागू करता है:
--cap-drop=ALL: प्रत्येक डिफ़ॉल्ट Linux कर्नेल क्षमता को हटाता है, कंटेनर को निम्न-स्तरीय प्रशासनिक विशेषाधिकार प्राप्त करने से रोकता है।--security-opt no-new-privileges:true: setuid या setgid बाइनरी के माध्यम से चाइल्ड प्रक्रियाओं को अपने पैरेंट प्रक्रिया से अधिक विशेषाधिकार प्राप्त करने से रोकता है।--security-opt seccomp=seccomp-profile.json: व्हाइटलिस्टेड सिस्टम कॉल फ़िल्टरिंग लागू करता है।seccomp-profile.json)डिफ़ॉल्ट रूप से, Docker का seccomp फ़िल्टर सिस्टम कॉल की एक विस्तृत सूची की अनुमति देता है। Charantej आर्किटेक्चर इसे बुनियादी प्रक्रिया निष्पादन के लिए आवश्यक न्यूनतम तक सीमित करता है:
SCMP_ACT_ERRNO): सभी सिस्टम कॉल को तब तक अवरुद्ध करता है जब तक कि प्रोफ़ाइल में स्पष्ट रूप से व्हाइटलिस्ट न किया गया हो।read, write, exit, exit_group, futex, nanosleep, mmap, munmap, mprotect, और close) की अनुमति देता है।socket हेरफेर, setsockopt नेटवर्क परिवर्तन, नेमस्पेस जॉइन (setns), और क्षमता सेट () को अवरुद्ध करता है, अनधिकृत स्थानीय विशेषाधिकार वृद्धि (LPE) प्रयासों को निष्क्रिय करता है।होस्ट-स्तरीय ट्रेसिंग नियम अवधारणात्मक रूप से प्रक्रिया और सिस्कॉल सीमाओं की निगरानी करते हैं:
Det_Anomalous_Networking: सॉकेट विकल्पों का ऑडिट करता है और तत्काल CRITICAL ALERT ध्वजांकित करता है यदि कोई कंटेनरीकृत प्रक्रिया ऊपरी-परत प्रोटोकॉल या ULP गुणों (TCP_ULP optname) को संशोधित करने का प्रयास करती है।Container_Privilege_Escalation_Attempt: नेमस्पेस (setns) में शामिल होने या क्षमता सेट (capset) को संशोधित करने के अनधिकृत प्रयासों पर अलर्ट करता है।इस रिपॉजिटरी में CVE-2026-46300 के लिए एक लाइव शोषण सिमुलेशन शामिल है ताकि Charantej आर्किटेक्चर की प्रभावशीलता का व्यावहारिक रूप से प्रदर्शन किया जा सके। शोषण दो वेक्टर का प्रयास करता है:
setns() का उपयोग करके होस्ट माउंट नेमस्पेस को हाईजैक करने का प्रयास।setsockopt(TCP_ULP) के माध्यम से अनधिकृत ULP मेमोरी हेरफेर का प्रयास।एक सहायक स्क्रिप्ट प्रदान की गई है जो स्वचालित रूप से शोषण बनाती है और इसे एक अनमिटिगेटेड कंटेनर (एक असुरक्षित सिस्टम का प्रतिनिधित्व करने वाला) और Charantej-सुरक्षित कंटेनर के विरुद्ध चलाती है।
bash run_exploit.sh
शोषण सफलतापूर्वक दोनों setns() और setsockopt() को निष्पादित करेगा, "VULNERABLE" स्थिति की रिपोर्ट करेगा।
sequenceDiagram
participant App as Unprivileged App (Fragnesia Payload)
participant Cap as Capability Check (Kernel)
participant NS as /proc/self/ns/mnt (Host Namespace)
participant Sys as Syscall Interface
participant ULP as Kernel ULP Memory
Note over App,ULP: STAGE 1: Namespace Hijacking
App->>Cap: 1. setns(FD, 0)
Cap-->>App: Allowed (No cap_drop)
App->>NS: Hijack Host Namespace
NS-->>App: SUCCESS: Container Isolation Bypassed
Note over App,ULP: STAGE 2: ULP Memory Corruption (CVE-2026-46300)
App->>Sys: 2. socket(AF_INET, SOCK_STREAM, 0)
Sys-->>App: FD allocated
App->>ULP: 3. setsockopt(FD, IPPROTO_TCP, TCP_ULP, "tls")
Note right of ULP: Attempts unauthorized memory modification
ULP-->>App: SUCCESS: Malicious payload injected
Note over App,ULP: IMPACT: Host Kernel Memory Compromised!शोषण को इंटरसेप्ट किया जाता है। क्षमता ड्रॉप (EPERM) द्वारा setns() को अवरुद्ध किया जाता है, और socket() / setsockopt() को Seccomp syscall फ़िल्टर सीमा (या निष्पादन प्रोफ़ाइल के आधार पर कैप ड्रॉप) द्वारा स्पष्ट रूप से निष्क्रिय किया जाता है, "BLOCKED" स्थिति की रिपोर्ट करता है। यह पुष्टि करता है कि भले ही Fragnesia पेलोड निष्पादित हो जाए, Charantej आर्किटेक्चर होस्ट को शोषण से सुरक्षित रूप से अलग करता है।
sequenceDiagram
participant App as Unprivileged App (Fragnesia Payload)
participant Cap as Capability Drop (ALL)
participant NS as /proc/self/ns/mnt (Host Namespace)
participant Sec as Seccomp Filter Boundary
participant ULP as Kernel ULP Memory
Note over App,ULP: STAGE 1: Namespace Hijacking Attempt
App->>Cap: 1. setns(FD, 0)
Cap-->>App: BLOCKED (EPERM - Operation not permitted)
Note left of Cap: Defense Triggered: Namespace escape neutralized
Cap-xNS: Cannot reach Host Namespace
Note over App,ULP: STAGE 2: ULP Memory Corruption Attempt
App->>Sec: 2. socket() / setsockopt(TCP_ULP)
Sec-->>App: BLOCKED (EPERM - Operation not permitted)
Note left of Sec: Defense Triggered: Socket operations neutralized
Sec-xULP: Cannot reach Kernel ULP Context
Note over App,ULP: IMPACT: Exploit completely contained. Host is Safe!capset