Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
SunnyDayBPF — SunnyDayBPF: Azizcan Daştan द्वारा eBPF-आधारित पोस्ट-सिस्कॉल उपयोगकर्ता-बफर टेलीमेट्री धोखा अनुसंधान | Kitploit
उपकरण/GitHubGitHub/azqzazq1/sunnydaybpf
रक्षात्मक उपकरणरेड टीमिंग
GitHubazqzazq1/sunnydaybpf

SunnyDayBPF

SunnyDayBPF: Azizcan Daştan द्वारा eBPF-आधारित पोस्ट-सिस्कॉल उपयोगकर्ता-बफर टेलीमेट्री धोखा अनुसंधान

रिपॉजिटरी देखें
24591 महीना पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

SunnyDayBPF

SunnyDayBPF एक eBPF-आधारित पोस्ट-सिस्कॉल यूज़र-बफ़र टेलीमेट्री धोखा अनुसंधान तकनीक है जिसे मूल रूप से अज़ीज़कान दस्तान द्वारा प्रस्तावित और शोधित किया गया है।

यह तकनीक इस बात की जांच करती है कि क्या उपयोगकर्ता-स्थान सुरक्षा, लॉगिंग, या टेलीमेट्री एजेंटों द्वारा देखे गए डेटा को रीड-लाइक syscall पूरा होने के बाद, लेकिन एजेंट द्वारा उस डेटा को डाउनस्ट्रीम सुरक्षा पाइपलाइन में पार्स, विश्लेषण या अग्रेषित करने से पहले बदला जा सकता है।

मुख्य विचार यह है:

घटना अभी भी होती है।
मॉनिटरिंग एजेंट अभी भी डेटा पढ़ता है।
लेकिन एजेंट द्वारा देखा गया डेटा मूल घटना का पूरी तरह से प्रतिनिधित्व नहीं कर सकता है।

SunnyDayBPF ग्राउंड ट्रुथ और देखी गई टेलीमेट्री के बीच के अंतर पर ध्यान केंद्रित करता है।


Architecture (v2.1)```text

                      SunnyDayBPF Hook Points
                      ========================

Telemetry Agent Process +---------------------------------------------------------+ | | | read() pread64() recvfrom() | | | | | | +-----|----------------|------------------|---------------+ | | | ======|================|==================|======= KERNEL BOUNDARY | | | kprobe:ksys_read kprobe:_x64_sys kprobe:_sys (save buf ptr) pread64 recvfrom | (nested pt_regs) (save buf ptr) | (save buf ptr) | v v v [syscall executes — data enters user buffer] | | | kretprobe kretprobe kretprobe | | | +--------+-------+---------+--------+ | | read buffer into initialize BPF scratch space scan_state | v +------------------+ | TAIL CALL CHAIN | | | | scan_g0: SECURITY (4 rules, scan=177 bytes) | scan_g1: SECURITY (4 rules, scan=173 bytes) | scan_g2: SEVERITY (4 rules, scan=177 bytes) | scan_g3: SEVERITY (1 rule, scan=251 bytes) | scan_g4: PATH (4 rules, scan=132 bytes) | scan_g5: AUTH (4 rules, scan=190 bytes) | scan_g6: AUTH (1 rule, scan=249 bytes) | scan_g7: NETWORK (3 rules, scan=249 bytes) | scan_g8: PROCESS (4 rules, scan=173 bytes) | scan_g9: CUSTOM (2 rules, scan=243 bytes) | | | emit_event: | | perf event | | + stats | +------------------+ | v bpf_probe_write_user() (modify agent's buffer) | v read-back verification (confirm write succeeded) | v Agent continues with modified data

### सिसकॉल कवरेज

| सिसकॉल | कर्नेल हुक | आर्ग निष्कर्षण | कवरेज |
|---------|------------|----------------|----------|
| `read()` | `ksys_read` | `PT_REGS_PARM2` (प्रत्यक्ष) | फ़ाइल रीड, पाइप, `/proc`, लॉग फ़ाइलें |
| `pread64()` | `__x64_sys_pread64` | नेस्टेड `pt_regs` `bpf_probe_read_kernel` के माध्यम से (ऑफ़सेट 104/RSI) | रैंडम-एक्सेस फ़ाइल रीड, journald |
| `recvfrom()` | `__sys_recvfrom` | `PT_REGS_PARM2` (प्रत्यक्ष) | नेटवर्क सॉकेट, syslog फ़ॉरवर्डिंग |

### BPF वेरिफ़ायर बाधाएँ

BPF वेरिफ़ायर प्रति प्रोग्राम 8,192 सशर्त शाखाओं की जंप अनुक्रम सीमा लागू करता है। SunnyDayBPF इसके आसपास काम करता है:

- **BPF टेल कॉल** (`BPF_PROG_ARRAY`): 31 नियम 10 स्वतंत्र प्रोग्रामों में विभाजित, प्रत्येक का अपना वेरिफ़ायर बजट
- **केस-असंवेदनशील ऑप्टिमाइज़ेशन**: `(d[i]|32)==lower` वर्णमाला वर्णों के लिए प्रति बाइट जंप को 2 से घटाकर 1 कर देता है
- **डायनामिक स्कैन सीमाएँ**: प्रत्येक समूह की स्कैन विंडो की गणना `min(BUF_SIZE - max_pat, 7800 / jumps_per_iter)` के रूप में की जाती है ताकि वेरिफ़ायर सीमाओं के भीतर रह सके
- **प्रति-CPU सारणियाँ**: `BPF_PERCPU_ARRAY` स्क्रैच बफ़र और स्कैन स्थिति के लिए, टेल-कॉल किए गए प्रोग्रामों में साझा

---

## अवलोकन

आधुनिक लिनक्स सुरक्षा प्रणालियाँ अक्सर यूज़र-स्पेस एजेंटों पर निर्भर करती हैं जो फ़ाइलों, सॉकेट, पाइप, API, कर्नेल इंटरफ़ेस, या इवेंट स्ट्रीम से टेलीमेट्री एकत्र करते हैं।

ये एजेंट टेलीमेट्री को यहाँ अग्रेषित कर सकते हैं:

- SIEM प्लेटफ़ॉर्म
- EDR/XDR बैकएंड
- ऑडिट पाइपलाइन
- लॉग संग्राहक
- रनटाइम सुरक्षा इंजन
- डिटेक्शन इंजीनियरिंग सिस्टम
- अवलोकनीयता प्लेटफ़ॉर्म

एक सामान्य धारणा है:```text
actual system behavior == collected telemetry == observed security data

SunnyDayBPF उस धारणा को चुनौती देता है। यह शोध एक पोस्ट-सिस्कॉल धोखा मॉडल की खोज करता है जहाँ एक निगरानी प्रक्रिया सामान्य रूप से डेटा प्राप्त करती है, लेकिन उस डेटा वाले बफर को प्रक्रिया द्वारा उपभोग करने से पहले संशोधित किया जाता है।```text actual system behavior != observed telemetry

---

## तकनीकी परिभाषा

SunnyDayBPF एक पोस्ट-सिस्कॉल टेलीमेट्री धोखा तकनीक है जो चयनित टेलीमेट्री-उपभोग प्रक्रियाओं से संबंधित यूज़र-स्पेस बफ़र्स के हेरफेर का अध्ययन करती है।

उच्च स्तर पर, तकनीक इस मॉडल का अनुसरण करती है:```text
sys_enter_*:
    identify a target telemetry-consuming process
    record the user-space buffer pointer involved in the read-like operation

sys_exit_*:
    verify that the read-like operation completed successfully
    inspect the returned user-space buffer
    selectively alter telemetry-relevant content
    verify write success via read-back
    allow the target process to continue execution normally

यह एक बेमेल पैदा करता है:```text what happened on the system

और:```text
what the monitoring agent later observes, parses, and forwards

लक्षित एजेंट (28 सत्यापित)

SunnyDayBPF 5-अक्षर के कमांड नाम प्रीफिक्स मिलान द्वारा लक्ष्य प्रक्रियाओं की पहचान करता है।

SIEM / लॉग संग्रहण

एजेंटप्रीफिक्सपढ़ने की विधिप्रभावी?
Wazuhwazuhread() लॉग फ़ाइलों, syslog, ऑडिट लॉग परहाँ
OSSECossecread() लॉग फ़ाइलों परहाँ
Splunk UFsplunread() निगरानी की गई फ़ाइलों परहाँ
Elastic Agentelastread() लॉग स्रोतों परहाँ
Datadog Agentdatadread() लॉग और मीट्रिक परहाँ
Criblcriblread() लॉग रूटिंग के लिएहाँ

लॉग अग्रेषण

एजेंटप्रीफिक्सपढ़ने की विधिप्रभावी?
rsyslogrsyslread() / recvfrom() syslog परहाँ
syslog-ngsysloread() / recvfrom() syslog परहाँ
Filebeatfilebread() लॉग फ़ाइलों परहाँ
Fluent-bitfluenread() / recvfrom() इनपुट परहाँ
Fluentdfluenread() / recvfrom() इनपुट परहाँ
Logstashlogstread() / recvfrom() पाइपलाइन परहाँ
Promtailpromtread() लॉग फ़ाइलों पर (Loki)हाँ
Vectorvectoread() लॉग स्रोतों परहाँ

रनटाइम सुरक्षा

एजेंटप्रीफिक्सपढ़ने की विधिप्रभावी?
FalcofalcoeBPF इवेंट read() द्वारा perf बफ़र पर संग्रहितहाँ
osqueryosqueread() /proc, लॉग फ़ाइलों, सिस्टम तालिकाओं परहाँ

नेटवर्क सुरक्षा

एजेंटप्रीफिक्सपढ़ने की विधिप्रभावी?
Snortsnortrecvfrom() पैकेट कैप्चर परहाँ
Suricatasuricrecvfrom() पैकेट कैप्चर परहाँ
Zeekzeek_recvfrom() पैकेट कैप्चर परहाँ

सिस्टम निगरानी

टूल डाउनलोड करें