Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
lg-webos-kexec — रूट किए गए LG webOS TVs पर kexec के माध्यम से एक कस्टम Linux कर्नेल बूट करता है, साथ ही रिवर्स-इंजीनियर्ड SoC वॉचडॉग समर्थन, फ्रेमबफर पेलोड और एक initramfs कर्नेल बिल्ड फ्लो भी शामिल है। | Kitploit
उपकरण/GitHubGitHub/ggfuchsi-oss/lg-webos-kexec
एम्बेडेड सिस्टम सुरक्षारिवर्स इंजीनियरिंगहार्डवेयर हैकिंगहार्डवेयर और IoT सुरक्षाफर्मवेयर विश्लेषण
GitHubggfuchsi-oss/lg-webos-kexec

lg-webos-kexec

रूट किए गए LG webOS TVs पर kexec के माध्यम से एक कस्टम Linux कर्नेल बूट करता है, साथ ही रिवर्स-इंजीनियर्ड SoC वॉचडॉग समर्थन, फ्रेमबफर पेलोड और एक initramfs कर्नेल बिल्ड फ्लो भी शामिल है।

रिपॉजिटरी देखें
64022 दिन पहलेअभी तक समीक्षित नहीं

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

सभी देखें →

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

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

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

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

lg-webos-kexec

एक रूटेड LG webOS TV पर kexec के ज़रिए कस्टम Linux kernel बूट करें — RAM में, बिना secure-boot bypass के।

स्थिति: कार्य प्रगति पर। एक कस्टम kernel स्टेज किया जा सकता है और userspace तक पहुँचता है, लेकिन यह अभी तक उपयोग योग्य OS के रूप में नहीं टिकता।

लक्ष्य

LG 50UP81009LR (webOS 6.5, Realtek RTD2875, armv7l)। Homebrew Channel के ज़रिए रूटेड; stock signed kernel + webOS userspace अछूते रहते हैं।

क्या सिद्ध हुआ है (लाइव सत्यापित)

  • kexec -l एक (stock या source-से बना) kernel स्टेज करता है; /sys/kernel/kexec_loaded 1 हो जाता है।
  • kexec -e चल रहे kernel को बदल देता है (TV उसके बाद stock पर रीसेट हो जाता है)।
  • Source-से बना kernel userspace तक पहुँचता है — user-mode page faults से सत्यापित = /sbin/init ने असली कोड चलाया।
  • छोटे canary payloads framebuffer पर चित्र बनाते हैं (ring-0 + display access की पुष्टि हुई)।
  • पूरी श्रृंखला stock webOS startup.sh से चलती है — signed bootloader / ATF / OP-TEE कभी नहीं छुए जाते।

अभी भी क्या कमी है

  • Watchdog pet — रिवर्स-इंजीनियर्ड + फिक्स लिखा जा चुका है, लेकिन लाइव kexec बूट में अभी तक सिद्ध नहीं। नीचे देखें।

Watchdog pet — मिल गया (2026-08-19)

रीसेट SoC watchdog (TC block) के कारण होता है। Stock kernel का micom_wdt_thread() तीन register pokes से इसे रोके रखता है (drivers/rtk_kdriver/platform/tv006/intmicom.c):

root@kitploit:~
TCWCR @ 0xFE062204 <- 0xA5         // unlock
TCWOV @ 0xFE062210 <- 0x0FFFFFFF   // max overflow => huge timeout
TCWTR @ 0xFE062208 <- 0x01         // kick

kexec के अंतर्गत driver का raw *(volatile*)0xFE062208 = 0x01 एक unmapped VA पर पड़ता है और चुपचाप no-op रहता है, जिससे SoC watchdog फायर हो जाता है (~10–21 s)। micom-pet.c अब userspace से /dev/mem (CONFIG_DEVMEM=y) के ज़रिए वही pokes करता है, जो सही ढंग से map होता है, साथ ही defense-in-depth के रूप में /dev/sys-intmicom पर एक 0xB1 keepalive भी भेजता है।

Status: micom-pet.c फिर से लिखा गया, musl toolchain के साथ compile होता है, और लाइव TV पर 5 s के हानिरहित smoke test ने पुष्टि की कि यह चलता है और अपना breadcrumb लिखता है (0x52455814 = "REX"+beat)। बचा हुआ एकमात्र प्रमाण एक kexec -e बूट है जो ~21 s से अधिक टिका रहे — यह TV को reboot करता है, इसलिए यह एक attended test है।

  • Display — panel tiled FBDC का उपयोग करता है; raw framebuffer text उपयोगी नहीं है। असली आउटपुट के लिए VCPU RPC चाहिए (video engine को drawing commands)।
  • Networking — stock wlan module का vermagic load होने के लिए CONFIG_LOCALVERSION="" से मेल खाना चाहिए; अभी initramfs में नहीं जोड़ा गया।

यह कैसे काम करता है (ईमानदार संस्करण)

root@kitploit:~
boot ROM → ATF → signed LG kernel (~2 s) → startup.sh
    → kexec -l <our zImage + dtb + initramfs>
    → kexec -e
    → OUR kernel runs in RAM (no eMMC writes)

बिजली काटो = stock। यह brick नहीं हो सकता।

AI के साथ बनाया गया (पूर्ण खुलासा)

इस repo का अधिकांश हिस्सा Rex — एक AI coding-agent इंस्टेंस — ने एक इंसान को उनके अपने TV पर, उनके अपने लिविंग रूम में काम करने में मदद करते हुए तैयार किया। AI ने kexec PoC, boot chain, framebuffer canaries और ये RE writeups लिखे। लेकिन इस README के दावे हमेशा बाद में किए गए जब इंसान ने TV चालू किया, स्क्रीन देखी और उसकी पुष्टि की। अगर कोई दावा hardware से वास्तविक screen/photo/uptime जाँच पर आधारित नहीं है, तो वह यहाँ नहीं है।

इस repo को बनाते समय कोई TV brick नहीं हुआ। कुछ अस्थायी रूप से भ्रमित हुए (बिना watchdog pet वाला kexec'd kernel ~15 s बाद आपका box रीसेट कर देता है), फिर power-cycle करके stock पर वापस आ गए। हर रीसेट पर /tmp wiped हो जाता है, इसलिए TV हमारे द्वारा किया गया सब कुछ भूल जाता है — यही पूरी बात है।

Repo संरचना

  • rexos/ — कस्टम OS: boot hook, kernel build, initramfs, RexBus stub।
  • kexec-poc/ — केवल-load proof-of-concept + framebuffer canary payloads।
  • docs/ — reverse-engineering writeups (boot/security, SAM app loading, surface map, luna2 schema)।

इसे स्वयं सत्यापित करें (आपको ठीक वही TV चाहिए: 50UP81009LR, रूटेड, LAN पर)

ये चरण हमने ठीक उसी hardware पर जो किया, उसे दोहराते हैं। कुछ भी नकली नहीं है।

0. पूर्वापेक्षाएँ

  • LG 50UP81009LR, Homebrew Channel के ज़रिए रूटेड, root SSH सक्षम, आपके LAN पर।
  • नीचे डिफ़ॉल्ट रूप से TV 192.168.2.103 है; अगर आपका अलग है तो बदल लें।
  • एक बार की LG K7LP GPL kernel source tree: KERNEL_SRC=/path/to/linux-4.4.3 सेट करें (LG open-source से 03.53.45 K7LP GPL tarball डाउनलोड करें), या ~/lgtv-toolkit/kernel-src/kernel/linux-4.4.3 का symlink बनाएँ।

1. टूलचेन + static kexec बनाएँ (TV की ज़रूरत नहीं, ~2 मिनट)

root@kitploit:~
git clone https://github.com/ggfuchsi-oss/lg-webos-kexec
cd lg-webos-kexec/kexec-poc && ./build.sh

अपेक्षित: kexec-arm पर एक static ARM kexec binary (168K, file दिखाता है ELF 32-bit LSB ... ARM ... statically linked)।

2. अपने TV पर सुरक्षित PoC दोहराएँ (स्टेज + अनलोड — कोई बूट नहीं)

root@kitploit:~
cd ../kexec-poc
./run-poc.sh 192.168.2.103 ~/.ssh/tv_key

अपेक्षित परिणाम:

root@kitploit:~
staged before      : 0
staged after load  : 1   <- kernel accepted, DTB wired, segments allocated
staged after unload: 0   <- cleared, TV untouched

यह kexec के ज़रिए TV के अपने वर्तमान kernel को स्टेज करता है और फिर तुरंत अनलोड कर देता है। /sys/kernel/kexec_loaded 1 होकर वापस 0 हो जाता है। कोई reboot नहीं, कोई kernel switch नहीं, कुछ भी स्थायी नहीं। प्लग खींचो = stock।

3. (उपस्थिति में) अपना खुद का kernel बूट करें — TV reboot होता है

ऐसा केवल TV चालू रहते और कोई मौजूद रहते हुए करें:

root@kitploit:~
cd ../rexos
make                            # builds rexos-kernel.zImage + rexos-initramfs.cpio.gz into out/
./boot/rexos-kexec --load-only   # stage, do NOT fire (same safe state as step 2)
# then, when ready to actually jump:
./boot/rexos-kexec               # kexec -e -> our kernel runs in RAM (TV will reset)

चरण 3 की ईमानदार चेतावनियाँ (छिपाए गए बग नहीं):

  • kexec -e के बाद, नया kernel userspace तक पहुँचता है, लेकिन TV ~10–21 s बाद रीसेट हो जाता है क्योंकि micom/SOC watchdog को pet नहीं किया जा रहा। यही वर्तमान दीवार है, कोई crash bug नहीं। rexos/initramfs/micom-pet.c इसका समाधान करने वाला daemon है (अभी इसे जोड़ा जा रहा है)।
  • Display tiled FBDC है — कोई text console नहीं है; केवल ठोस-रंग के beacons (देखें kexec-poc/canary/)। असली graphics के लिए VCPU RPC path चाहिए (पूरा नहीं हुआ)।
  • गलत kernel/DTB power-cycle तक सिर्फ black-screen दिखाता है। यह brick नहीं हो सकता: kexec केवल RAM में लिखता है, eMMC में कभी नहीं।

TL;DR स्थिति (ईमानदार)

  • Kernel staging/execution primitive: सिद्ध (चरण 2)। ✅
  • Custom kernel बूट होकर userspace तक पहुँचता है: सिद्ध (चरण 3)। ✅
  • उपयोग योग्य OS के रूप में टिकता है: अभी नहीं — watchdog + display ही बाकी दीवारें हैं। ⏳

निर्भरताएँ (इस बारे में ईमानदार रहें कि बाहरी क्या है)

इस repo में source + docs + TV-से कैप्चर किए गए build inputs (kernel .config, wifi module + firmware, rootfs libs) शामिल हैं, लेकिन ~390 MB की LG K7LP GPL kernel source tree नहीं है — वह LG का वितरण है, हमारा re-host करना नहीं।

यदि kernel tree मौजूद नहीं है तो make स्पष्ट KERNEL_SRC missing त्रुटि के साथ विफल होगा — कोई silent half-build नहीं है।

नवीनता / prior art

जहाँ तक हम बता सकते हैं, यह LG webOS TV के लिए पहला सार्वजनिक kexec-आधारित custom-kernel बूट है। सभी primitives (kexec, रूटेड webOS, RTD2875) अलग-अलग रूप से ज्ञात हैं; इस locked-down consumer TV पर अनुप्रयोग नया प्रतीत होता है। हम secure-boot bypass का दावा नहीं कर रहे हैं — हम उसे sidestep करते हैं।

लाइसेंस

GPL-2.0 (kernel कार्य; LG का GPL kernel source GPL है)। हमारी scripts GPL-compatible हैं। upstream attribution के लिए CREDITS देखें।

टूल डाउनलोड करें
निर्भरताइसे कैसे प्राप्त करें
LG K7LP GPL linux-4.4.3 (RTD2875)LG opensource साइट → 03.53.45 K7LP GPL tarball → kernel
musl armv7 cross-toolchain (~98 MB)kexec-poc/build.sh द्वारा ऑटो-fetch (self-contained)
एक रूटेड TV (50UP81009LR)पहली बार केवल .config कैप्चर करने के लिए चाहिए — लेकिन वह config अब rexos/kernel/rexos-tv.config पर committed है, इसलिए एक clone ऑफलाइन build कर सकता है