Codex ने Samsung TV को हैक किया
(blog.calif.io)- AI मॉडल Codex ने एक वास्तविक Samsung स्मार्ट TV पर ब्राउज़र-स्तर की permissions को root permissions तक बढ़ाने वाली पूरी attack chain को अंजाम दिया
- यह प्रयोग OpenAI के सहयोग से किया गया, ताकि यह सत्यापित किया जा सके कि Codex firmware source और device access का उपयोग करके vulnerabilities को अपने-आप खोज और exploit कर सकता है
- Codex ने Novatek driver में physical memory access vulnerability खोजी और kernel की cred structure को modify करके root shell हासिल कर लिया
- प्रयोग के दौरान Codex ने command execution और error handling को बार-बार दोहराते हुए real-time collaborative agent की तरह काम किया
- यह परिणाम दिखाता है कि AI सिर्फ code analysis से आगे बढ़कर वास्तविक hardware security vulnerabilities की खोज और उन पर attack करना भी कर सकता है
Codex द्वारा Samsung TV को हैक करने की प्रयोग प्रक्रिया
- AI मॉडल Codex द्वारा एक वास्तविक Samsung स्मार्ट TV पर browser-level code execution permissions को root permissions तक बढ़ाने का प्रयोग
- शोध टीम ने OpenAI के सहयोग से यह सत्यापित किया कि Codex वास्तविक hardware device पर vulnerabilities खोज और exploit कर सकता है या नहीं
- प्रयोग पहले से उपलब्ध browser shell environment से शुरू हुआ, और Codex ने firmware source code और real-time device access का उपयोग करके root permissions पाने की प्रक्रिया को automate किया
- Codex ने physical memory access vulnerability खोजी और उसके जरिए kernel credential structure (cred) को modify करके root shell हासिल किया
- नतीजे के तौर पर यह साबित हुआ कि AI सिर्फ code analysis तक सीमित नहीं है, बल्कि पूरी वास्तविक attack chain को स्वायत्त रूप से पूरा कर सकता है
प्रयोग environment की संरचना
- प्रयोग का target KantS2 नाम के Samsung internal platform firmware का उपयोग करने वाला स्मार्ट TV था
- Codex को काम करने लायक बनाने के लिए निम्न environment तैयार किया गया
- ब्राउज़र shell: browser app के भीतर code execution संभव होने की स्थिति
- controller host: ARM binary build, HTTP file hosting, और shell session access की सुविधा
- shell listener:
tmux send-keysके जरिए command inject करना और log में परिणाम इकट्ठा करना - firmware source code: पूरा
KantS2source tree उपलब्ध कराया गया - execution constraints: Tizen की Unauthorized Execution Prevention(UEP) के कारण unsigned binaries को सीधे execute नहीं किया जा सकता था
- memfd wrapper: memory में loaded anonymous file descriptor के जरिए execution
- Codex का iterative loop source और logs का analysis करता था, commands भेजता था, परिणाम पढ़ता था, और जरूरत पड़ने पर helper build करके TV पर चलाता था
लक्ष्य निर्धारण
- Codex का task था browser user permissions से root तक privilege escalation करने वाली vulnerability ढूँढना
- किसी खास driver या memory region को पहले से निर्दिष्ट नहीं किया गया था, इसलिए Codex को खुद attack path तलाशना था
- vulnerability को source code में मौजूद होना था, वास्तविक device पर accessible होना था, और browser context से reachable भी होना था
प्रारंभिक जानकारी प्रदान करना
- Codex को दी गई system information का उदाहरण
uid=5001(owner) gid=100(users) Linux Samsung 4.1.10 ... /dev/... /proc/modules ... /proc/cmdline ... - यह जानकारी browser process की permission boundary, kernel version, accessible device nodes, memory layout आदि को परिभाषित करती थी
vulnerability की खोज
- Codex ने browser shell से accessible world-writable ntk* device nodes खोजे
/dev/ntkhdma /dev/ntksys /dev/ntkxdma - इन drivers की पहचान Novatek Microelectronics के code के रूप में हुई, और ये Samsung TV में शामिल Novatek stack का हिस्सा थे
- जब
/proc/iomemतक access blocked मिला, तो Codex ने/proc/cmdlineके boot parameters का उपयोग करके memory map को फिर से reconstruct किया
physical memory access primitive
/dev/ntksysdriver user space से दिए गए physical address और size को kernel table में store करता है, और फिरmmapके जरिए उसे दोबारा map करता है- इससे user space से arbitrary physical memory access का path (physmap primitive) बन जाता है
/dev/ntkhdmaअतिरिक्त रूप से physical address को सीधे expose करता है, जिससे verification आसान हो जाता है
root cause analysis
-
गलत access permissions configuration
- udev rules में
/dev/ntksysको 0666(world-writable) पर set किया गया - memory management interface को non-privileged users के लिए expose करना design flaw था
- udev rules में
-
user input validation की अनुपस्थिति
ST_SYS_MEM_INFOstructure केu32Start,u32Sizeमें user input को बिना जांच के सीधे उपयोग किया गया
-
physical address validation का अभाव
SET_MEM_INFOfunction सिर्फ index को validate करता है, physical address range या permissions को नहीं
-
mmap चरण में attacker-controlled PFN का उपयोग
vk_remap_pfn_rangecall में user-provided PFN को वैसे ही map कर दिया गया
-
ntkhdma का address leak
/dev/ntkhdmaDMA buffer का वास्तविक physical address लौटाता है, जिसका उपयोग attack verification में किया जा सकता है
attack chain बनाना
- Codex ने
/dev/ntkhdmaके जरिए DMA buffer address प्राप्त किया, और/dev/ntksysसे उसे map करके physical memory read/write सफलतापूर्वक कियाHDMA buffer phys addr: 0x84840000 writing 0x41414141 to mapped address... readback: 0x41414141 - इससे यह साबित हुआ कि non-privileged process arbitrary physical pages को modify कर सकता है
अंतिम exploit
- Codex ने kernel की cred structure खोजकर browser process के UID/GID को 0 से overwrite कर दिया
/proc/cmdlineसे मिले memory window को scan करके संबंधित pattern खोजा गया और modify किया गया- इसके बाद
/bin/shexecute करने पर root permissions मिल गईंuid=0(root) gid=0(root) ... context="User::Pkg::org.tizen.browser" - Codex का output: “Worked.”
Codex के साथ interaction
- प्रयोग के दौरान Codex ने कभी-कभी असामान्य व्यवहार भी दिखाया, जिसे researcher को तुरंत ठीक करना पड़ा
- उदाहरण बातचीत
- “bro, the tv froze”
- “bro can you just like, send it to the server and run it for me?”
- इस interaction से पता चलता है कि Codex सिर्फ एक automation tool नहीं था, बल्कि real-time collaborative agent की तरह काम कर रहा था
निष्कर्ष
- Codex ने browser shell से शुरू करके source analysis → vulnerability identification → PoC development → build और execution → root हासिल करना तक पूरी attack chain को स्वायत्त रूप से पूरा किया
- इस प्रयोग ने साबित किया कि AI वास्तविक hardware security vulnerabilities की खोज और exploitation कर सकता है
- शोध टीम ने अगले चरण में AI द्वारा initial intrusion से root permissions हासिल करने तक पूरी प्रक्रिया को स्वतंत्र रूप से पूरा करने वाले प्रयोग का संकेत दिया
- अंतिम पंक्ति: “हम आशा करते हैं कि AI TV के अंदर फँसकर चुपचाप permissions बढ़ाते हुए हमारा sitcom देखे।”
2 टिप्पणियां
जानकारी के लिए, यह बहुत पहले ही (2020 में) पैच किया जा चुका था, और मूल ब्लॉग में भी नीचे की तरह यह उल्लेख है कि यह अपडेट न किए गए पुराने browser और kernel-आधारित TV का मामला है.
Note that the target TV is an older model running an outdated version of Chrome and an outdated kernel.
Hacker News की राय
मैंने Codex के साथ सचमुच एक बढ़िया ‘हैकिंग सेशन’ किया
असल में मैंने कुछ तोड़ा नहीं, बस TP-Link द्वारा लगाए गए अवरोधों को पार करके अपने स्वामित्व वाले राउटर को नियंत्रित किया
TP-Link ने API access रोकने के लिए बेहद खराब authentication·encryption scheme बना रखी थी, लेकिन Codex के साथ आधा दिन जूझने के बाद मैंने राउटर को नियंत्रित करने के लिए एक साफ-सुथरी Python API पूरी कर ली
यह Prometheus metrics भी अच्छी तरह export करती है और स्थिर रूप से चलती है
मुझे लगता है कि ऐसे प्रतिबंध अंततः ‘consumer बनाम enterprise’ बाज़ार को कृत्रिम रूप से बाँटने की अतिशय product planning की वजह से होते हैं
tmpServer localhost पर listen करता है, और dropbear admin अधिकारों के साथ port forwarding की अनुमति देता है
यही प्रोग्राम वह मुख्य API है जिसका इस्तेमाल Tether app राउटर से संवाद करते समय करती है
मैं Mythos का उपयोग करके SSH access खोलने वाला कोई exploit ढूँढना चाहता हूँ
उत्पाद लिंक
हम Hacker News पर हैं, और हर कोई कुछ तोड़ने की कोशिश नहीं कर रहा
मैंने web UI requests को .har file में रिकॉर्ड किया और विश्लेषण में इस्तेमाल किया, और यह AI सहायता के बिना करने की तुलना में बहुत तेज़ था
यह महत्वपूर्ण है कि Codex के पास source code access था
संबंधित थ्रेड में भी कई लोगों की राय थी कि closed-source code, AI-आधारित vulnerability detection को रोकने में कोई वास्तविक लाभ नहीं देता
मैं जानना चाहता हूँ कि source के बिना Codex कितना अच्छा कर पाएगा
लेकिन मेरे लिए सबसे खराब स्थिति वह है जब firmware binary तक भी पहुँच नहीं होती
वह सीधे PCB पर soldered होती है, इसलिए chip clip से भी निकाला नहीं जा सकता और पूरी तरह blind state में विश्लेषण करना पड़ता है
Codex जितना नहीं, लेकिन मैंने Claude Code के साथ भी कुछ दिलचस्प प्रयोग किए
मैंने उससे Bluetooth devices खोजने को कहा, तो उसने मेरी बेटी के कमरे की RGB lighting ढूँढ ली, rainbow effect बना दिया, और protocol भी document कर दिया
अगर वह .NET आधारित होता, तो शायद decompile करवाकर और भी ज़्यादा मिल सकता था
4.6 या Gemini 3.1 असफल रहे थे, लेकिन इस बार सफलता मिली
अगर smart TV को dumb TV में बदला जा सके, तो मैं तुरंत ऐसा करूँगा
सिर्फ input switching और volume control वाला साधारण monitor ही काफ़ी है
input lag भी बहुत है, और settings बदलने पर वे default पर reset हो जाती हैं
स्क्रीन ठीक है, लेकिन OS की वजह से वह पूरी तरह e-waste बन गया है
मैंने सोचा था कि webOS, palmOS का उत्तराधिकारी होने के कारण अच्छा होगा, लेकिन निराशा हुई
आखिरकार मैंने उसका network connection पूरी तरह काट दिया
असली बात firmware source code उपलब्ध होना था
मैं जानना चाहता हूँ कि क्या ऐसे models मानवीय भाषा के संकेतों पर बहुत निर्भर करते हैं
Codex ने कमज़ोर TV OS को पूरी तरह hack कर लिया, लेकिन
volume·input·tint·firmware जैसी main controls तक पूरी पहुँच हासिल करना अभी भी LLM के लिए बहुत कठिन स्तर है
पिछले 10 सालों में Samsung TV हैक करना बहुत आसान डिवाइस रहे हैं
शायद सिर्फ browser access के साथ GPT-2 से भी यह हो जाता
उसमें conversational capability भी नहीं थी, इसलिए वह दावा बढ़ा-चढ़ाकर कहा गया है
मुझे लगता है कि Codex से smart TV पर ads हटाने या data transmission block करने की सुविधा लागू की जा सकती है
“browser foothold” जैसा एक वाक्यांश था, जिसका मतलब TV पर चलने वाले web browser itself से है
PSP, Vita, Switch, Wii, DS आदि में भी browser exploits के जरिए homebrew चलाया जा सका था