1 पॉइंट द्वारा GN⁺ 2024-08-08 | 1 टिप्पणियां | WhatsApp पर शेयर करें

TONY HAWK’S PRO STRCPY

अवलोकन

  • 2016 में Xbox हैकिंग के लिए नए bug खोजने के उद्देश्य से शुरू किया गया प्रोजेक्ट
  • 2000 के शुरुआती दशक के game consoles में security mitigations कम थीं, इसलिए वे hacking सीखने के लिए उपयुक्त थे
  • Tony Hawk’s Pro Skater 4 की game save files का विश्लेषण करके buffer overflow vulnerability खोजी गई

Part 1: शुरुआत

  • Tony Hawk’s Pro Skater 4 के "Create-A-Park" फीचर के जरिए vulnerability मिली
  • game save file की gap name string को strcpy function से copy करने की प्रक्रिया में buffer overflow होता है
  • एक malicious save file बनाकर उसे Xbox पर चलाया गया और code execution privileges हासिल किए गए

Part 2: Remote Code Execution

  • memory card के बिना network के जरिए console हैक करने का तरीका खोजा गया
  • multiplayer LAN game में save file ट्रांसफर करके client console हैक करने की विधि आज़माई गई
  • जब client console host से भेजी गई save file को load करता है, तब buffer overflow होता है
  • client console पर secondary payload executable भेजने के लिए network message handler लिखा गया

Variant विश्लेषण

  • Tony Hawk’s Pro Skater 3, Tony Hawk’s Underground 1 & 2, Tony Hawk’s American Wasteland जैसे अन्य games में भी समान vulnerabilities मिलीं
  • कुछ games buffer overflow रोकने के लिए stack cookies का उपयोग करते हैं

अंतिम परिणाम

  • जब client console host console से connect होता है, तो malicious save file network के जरिए भेजी जाती है
  • client console payload executable प्राप्त करके उसे चलाता है
  • remote code execution और asynchronous file transfer सफल रहे

GN⁺ की संक्षिप्त प्रस्तुति

  • यह लेख Xbox जैसे पुराने game consoles की security vulnerabilities की पड़ताल और उनके exploitation की प्रक्रिया पर केंद्रित है
  • पुराने consoles में security mitigations कम होने के कारण वे hacking सीखने के लिए उपयुक्त हैं, और विभिन्न bugs के जरिए code execution privileges हासिल किए जा सकते हैं
  • network के जरिए remote code execution के तरीकों की पड़ताल की गई है, जिससे memory card के बिना भी console हैक करने का तरीका प्रस्तुत होता है
  • समान फीचर्स वाले अन्य games में भी vulnerabilities खोजकर और उनका विश्लेषण करके विभिन्न hacking techniques सीखी जा सकती हैं
  • यह लेख hacking और security research में रुचि रखने वालों के लिए उपयोगी जानकारी देता है और पुराने consoles की security vulnerabilities को समझने में मदद कर सकता है

1 टिप्पणियां

 
GN⁺ 2024-08-08
Hacker News टिप्पणियाँ
  • habibi key का public key modulus Microsoft RSA public key से सिर्फ 4 bytes अलग है

    • MS key एक 2048-bit RSA key है
    • exponent value को 3 में बदलने पर ऐसी मिलती-जुलती key आसानी से मिल सकती है
    • लेकिन habibi key का उपयोग करने वाला payload RSA signature verification routine का exponent नहीं बदलता
    • ऐसा लगता है कि verification अब भी exponent 65537 का उपयोग करके किया जाता है
    • यह कैसे संभव है, इस बारे में निश्चित नहीं हूँ
  • 2048-bit integer का factorization अपेक्षाकृत आसान हो सकता है

    • code शायद 4 bytes को random तरीके से बदलकर factorization की कोशिश करने के तरीके से काम करता हो
    • इससे ऐसी public modulus बन सकती है जिसमें कई छोटे factors हों
    • RSA modulus में आमतौर पर दो prime factors होते हैं, लेकिन गणितीय रूप से अधिक factors होना भी समस्या नहीं है
  • Xbox 360 softmod Tony Hawk game के park name के ज़रिए संभव था

    • 24-segment ROP chain का उपयोग किया गया
    • hypervisor के लिए संक्षिप्त functional description और x360 botnet पर विचार Xbox 360 nostalgia जगा देते हैं
  • strcpy की जगह strncpy का उपयोग करना चाहिए था

    • Tony Hawk safety gear के समर्थन के लिए मशहूर है
    • THUG PRO mod के लिए exploit होना अफ़सोसजनक है
    • यह mod 10 साल से अधिक पुराना है, और मूल developer गायब हो चुका है
    • अब यह mod उपयोग के लायक नहीं रहा, और full privilege exploit के जोखिम की वजह से कोई इसे इस्तेमाल नहीं करना चाहता
    • उम्मीद है कि यह लेख mod patch में रुचि रखने वाले किसी व्यक्ति तक पहुँचे
  • Tony Hawk security analyst नहीं, बल्कि एक professional skater है

    • 90 के दशक के अंत और 2000 के शुरुआती वर्षों में उसने code audit करने के बजाय स्वाभाविक रूप से game series बनाने में समय बिताया
  • यह जानने की जिज्ञासा है कि habibi key की private key कब, कहाँ और कैसे लीक हुई

    • OP, MS key और habibi key के बीच 4-byte का अंतर patch करके unsigned executable चला सका
    • इसका मतलब है कि उसके पास private key थी
  • PSX decompiling करते समय ऐसे कई समान मामले मिले

    • memmove SDK library के ज़रिए link होता है, लेकिन strcpy BIOS द्वारा प्रदान किया जाता है
    • 1997 तक SDK के बाद के versions को library version के रूप में patch किया जा सकता था
  • मैंने इस तरह के exploit analysis कई बार पढ़े हैं, और उम्मीद है कि आगे भी 100 बार और पढ़ सकूँ

    • शानदार लेख है
  • console development में गलत security mindset का यह एक अच्छा उदाहरण है

    • "हमें सिर्फ वही data parse करना है जो हम खुद save करते हैं" जैसी सोच गलत है
    • console को users को दुश्मन नहीं मानना चाहिए
    • लेकिन अगर ऐसा किया जाता है, तो game में उसी के अनुरूप security mindset होना चाहिए
  • कल्पना कीजिए कि कोई VSCode plugin trick names बना रहा हो और लगातार key inputs के लिए combo point score दे रहा हो

    • Tony Hawk's Pro-grammer