[release] PS2-Yabasic-Exploit - ein neuer PS2 Exploit von der Yabasic Demo Disc [PAL only]

  • Den Exploit musst du (einmalig) per Hand in YaBasic eingeben... :D
    Man kann ja YaBasic-Programme auf der MC speichern!


    Aber es ist nicht zu viel zum schreiben...

  • Du brauchst ja dennoch eine Payload um eine ELF etc. zu starten ;)

  • Ja, aber die muss man ja auch erstmal auf der PS2 laden können...

  • @Chipwelt Ja, genau so wie du es beschrieben hast, kann man FMCB mit uLE/wLE starten!

    Ich glaube du meintest mich damit ;)


    Die einzelne ELF von @HWNJ sollte es hier im Forum geben! 'OSDSYS-Launcher'!

    Kann ich nicht finden, das einzige was ich finde ist ein Thema von dir, irgendeine Ankündigung von "Comb.I'n'E(e)" oder so ähnlich aber auch wieder mal keine Files...


    Wie geht das konkret von statten?

    • HWNJ's OSDSYS-Launcher habe ich schonmal hier hoch geladen, aber ich suche es nochmal...
    • In wLE geht das über die Funktion 'MISC/OSDSYS'!!!
    • Ups, du hattest gefragt. Jo, dann du.


    Die Tools auf GitHub sind ja praktisch nur dafür da, es am Ende in den Text 'umzuwandeln', den man direkt in YaBasic eingeben kann!



    Kleinen Tipp an Diejenigen die den Exploit testen wollen: Der Pfad kann auf MC angepasst werden!
    Wer also schon eine BOOT.ELF installiert hat und den Exploit, testen möchte, kann die ELF danit starten! Für USB und andere Geräte braucht es mehr Arbeit...


    Wer übrigens Dateien auf die MC kopieren kann, kann die Dateien wesentlich schneller als per Eintippen, auf MC kopieren!

  • So, ich setze mal nebenbei ein System zum Kompilieren mit dem PS2SDK usw auf... ich informiere euch über weitere Schritte

  • @Nullinga: Wer nervt, bekommt garnix... :grinn:


    • Ist das ja EIGENTLICH dafür gedacht, dass man überhaupt erstmal irgendeine ELF damit starten kann und...
    • Du kannst das auch selbst machen! Der MIPS-compiler ist nur der Einfachheit halber dabei, um die 'Übersetzung' zu erleichtern! Für die Module die schon geladen sind (CD, MC, ROM), kann man dann einfach den Pfad angeben... (weshalb eine der ersten Payloads ja auch Diejenige ist, wo eine ELF von CD/DVD gestartet wird!)
    • Kopieren kann man auch nur mit Extra-Dateien und/oder Payload, oder Möglichkeit, Homebrew auszuführen. Der Exploit und das Eingeben soll aber ja so schnell und einfach wie möglich von Statten gehen.
  • Also, ich bin die ganze Zeit schon fleissig am Testen. Alles ist installiert und kompiliert korrekt usw... So, Code ist soweit korrekt, auch für die richtige DIsc (die 204er) und scheint auch zu funktionieren im Grunde. ABER:


    Bei Zeile 20 Spuckt mir YaBasic folgendes aus:

    Zitat

    --- Fehler in Expl0it, 20: '%0.8' ist kein gültiges Format.

    Daraufhin beendet er die Ausführung. Ich dachte mir so: gehört bestimmt zum Exploit. Deswegen ging ich über zur Ausführung des zweiten Teils, der Ausführung von Fremdcode, in meinem Falle einfach die FIFA-Demo auf der Disc, unter 'cdrom:\FIFADEMO\GAMEZ.ELF'. Der Code:

    Code
    # Run %lg -> %lu patch before this!
    
    
    dim x(1,1073741824)
    x(0,67108864)=2595480760796642592.0
    x(0,67108865)=52143783942.0
    
    
    x(0,2510080)=550339408.0
    s$="cdrom0:\FIFADEMO\GAMEZ.ELF"

    So, und nun das merkwürdige: er scheint irgendwas zu machen, aber er bleibt einfach im Hintergrund des YaBasic-Interpreters stecken und man kann nichts mehr machen. Das ganze passiert jedes Mal wenn ich das ausführe. Ich habe auch schon andere mitgelieferter ELFs (und deren Pfade) ausprobiert, auch hier dasselbe...


    Vielleicht hat ja @Plastic eine Idee ^^ wer mag, ich habe die Savegames mit dem Code mal angefügt, wer ebenfalls die PBPX-95204 Demo-Disc hat kann es ja mal testen und entsprechend bestätigen.


    LG theANY

  • Hab leider nur diese beiden Demo CDs
    95205 und 95506.


    aber laut CTurt ist die selbe YABASIC.ELF auf beiden 95204 und 95205 drauf.


    95506 hat eine andere YABASIC.ELF drauf die CTurt aber auch in den Exploit portiert hat.


    wer eine 95520 hat soll sich bei Ihm melden.


    Danke das sieht doch schon gut aus.


    Komme aber erst Sonntag zum testen wenn es mit einer meinen beiden CDs und deinen Dateien funktioniert.


  • Zwischen 204 und 205 gibt es Adressenunterschiede... aber gern hier die Daten für 205:

    Code
    # Run %lg -> %lu patch before this!
    
    
    dim x(1,1073741824)
    x(0,67108864)=2595480760796642592.0
    x(0,67108865)=52143783942.0
    
    
    x(0,2510080)=550339408.0
    s$="cdrom0:\FIFADEMO\GAMEZ.ELF"
  • So, hab alles ans Laufen bekommen ^^ Mein Fehler war dass ich alles 'straight in a row' ablaufen lassen hab, jedoch muss jeder Patch usw. einzeln abgespielt werden!
    Hier mal der Exploit für die Demo Discs PBPX-95204 und PBPX-95205 mit FIFA als Beispiel. Wichtig ist dass ihr die Reihenfolge einhaltet:
    - LGPATCH
    - FEEGPATCH
    - DEBUGGER
    Und dann erst das Programm/weitere Patches, die ihr ausführen wollt (in diesem Falle z.B. die FIFA-Demo von der Disc).Ich und einige andere (wie z.B. @Plastic ) and einer Lösung arbeiten wie wir Programme zumindest von der MC, wenn nicht sogar von USB, laden können. Viel Spass erstmal mit dem Beispiel ^^


    Anmerkung: Die PS2-Datei in der ZIP ist ein komplettes MC-Abbild, in welchem sich alle nötigen Daten vorhanden sind. Die PSU-Dateien enthalten jedoch immer nur den jeweiligen Patch.

  • Wegen USB:
    Das dauert sicher eine Weile, wenn man es eintippen will und die Möglichkeit sich zu vertippen ist sehr groß...


    Möglich wäre es halt den Save auf MC zu kopieren, aber dass muss man ja auch erstmal können.


    USBD.IRX kann man direkt von Disc laden, aber leider fehlt ja USBHDFSD.IRX und damit der/die Dateisystem-Treiber/API... Allerdings wäre es als 'Block device' (ohne Partition und bestenfalls ohne Dateisystem) und mit festem physischen Sektor mit wesentlich weniger Code möglich!!!



    Zur MC:
    Dafür brauchen wir MCMAN.IRX und MCSRV.IRX (die soweit ich mich erinnere, auch in der Reihenfolge geladen und initialisiert werden müssen) und ich weiß nicht, ob dass Ausführen via LoadExecPS2() geht oder wir da ExecPS2() oder etwas (anderes) Eigenes brauchen... :-/


    Es sollte aber zumindest mit WESENTLICH weniger Tipparbeit und kleineren Saves funktionieren, als die USB-Variante...



    Anderes:
    HDD oder disc-swap (+TOC-refresh) oder auch FMCB auf den neuen Konsolen starten, sollte auch möglich sein.



    Meiner Meinung nach, sollten wir uns NEBEN einen ELF-Loader für MC/USB/HDD/Disc auf etwas anderes konzentrieren... Der OSDSYS-Launcher nutzt mMn zu viel redundanten Code und ist darum auch so groß (na gut, es ist im zweistelligem KB-Bereich, aber für dass was es macht...)! Ein OSDSYS-MC-Update-Start-code um FMCB auf den neuesten Konsolen zu starten fände ich sinnvoll... Die FMCB-MC-Verkäufer werden dann sicherlich Werbung machen mit 'mit ALLEN Versionen kompatibel' und 'Demo-Disc enthalten' und die YaBasic-Sachen auf MC kopieren! :D




    ...und dann gibt es ja noch die andere Sache, wie man zumindest FMCB und möglicherweise via Save alleine, die PS2 zumindest crashen und möglicherweise ohne Disc, die PS2 via Save-Icon Exploiten kann, wenn dass nicht ein Fehler in der FMCB-Payload ist...



    @theANY: Exploit (erster Patch), 'Patches/Programm' (nachfolgend, um z.B. Zugriff auf Etwas zu geben) und 'Payload' (etwas starten wie eine ELF, oder was auch immer)... 'splitten', war schon der richtige Tipp... :P
    Ich glaube es steht auch in der Gruppe, oder war es nur beim Telefonieren.


    Die Antwort 'Warum?' ist auch sehr leicht beantwortet!
    Weil die nachfolgenden Patches inklusive Syscalls erst NACH dem Initial-Exploit angewendet werden können! Vorher besteht ja kein Zugriff!
    YaBasic will aber via 'dim' den Speicherbereich schon vorher reservieren und/oder darauf zugreifen, bevor der Exploit angewendet/ausgenutzt wurde!


    Beendest du ein YaBasic-Programm, werden die reservierten Stellen normalerweise gelöscht, aber wenn du aus dem Initial-Exploit raus gehst, bleibt der erste Patch (lg/lu) im RAM!

  • Hier mal eine Syscall-Liste für Diejenigen, die manuell die Struktur für eine Payload via MIPS-ASM statt C implementeieren wollen!:
    https://playstationdev.wiki/ps…/index.php?title=Syscalls


    ;)



    Der einfachste Test ist wohl '.123' ExecOSD (einfacher Neustart/Softreboot), oder '.125' PSMode (Disc in YaBasic wechseln).



    Edit: Die hier ist kompletter!


    https://gamehacking.org/library/90



    Man findet bei verschiedenen Suchmaschinen via 'MIPS ASM Beispiel' auch ein paar gute Ergebnisse!

  • Ach, hatte ich ganz vergessen.


    Hier findet man den OSDSYS-Launcher, mit dem man auf PS2s mit BOOT-ROM 2.30 FMCB starten kann, solange es installiert ist und man schon Homebrew ausführen kann!


    http://www.ps2-home.com/forum/viewtopic.php?t=5751


    HWC-OSDSYS_Launcher.rar



    Edit: Zwecks Download... (von YaBasic)
    Die ELF unterliegt der MIT-Lizenz, die Sony illegalerweise nicht mit dem Programm mitgeliefert hat, was aber eine Voraussetzung für eine eigene Veröffentlichung ist...


    Die IRXs unterliegen allerdings Sony's copyright... (und ohne die, läuft dass Programm ja nicht...)


    Ich sage mal... Grenzwertig...
    Ich würde es wegen den IRXs nicht riskieren, aber da dass Programm einerseits nur mit denen lauffähig ist und das Programm von vornherein illegal veröffentlicht wurde - damit Greedy-$ony Steuern sparen kann - könnte man das sogar rechtlich rechtfertigen...


    Aber wie gesagt... Lieber kein Risiko eingehen!

  • Hat noch jemand das PS2SDK, oder ein MIPS-SDK installiert und möchte mit testen?

  • Soooooo, liebe Leute.... icke und der @Plastic ham was getestet, nämlich SYSCALLS aufzurufen, anhand des OSDSYS aka PS2-Menü. Damit springt die PS2 zurück in den Browser und liest ausserdem die Disc neu ein. Ich hab das ganze mal für euch gepackt, als jeweilige Ordner zum Draufkopieren auf die PS2 via uLE etc., als PSU für welche Zwecke auch immer und einmal als komplettes Image für die MC. Enthalten sind Natürlich die in folgender Reihenfolge auszuführenden Patches:
    1. LGPATCH
    2. FEEGPAT
    3. DEBUGGER
    und ausserdem der "FIFA-Starter" wie ich ihn nenne und natürlich der OSDSYS-"Launcher".


    Viel Spass an dieser einfachen Demonstration (ne Demo für ne Demo, LOL....)!


    LG theANY

  • WICHTIG!!!: Damit kann man noch kein FMCB (auf BOOT-ROM2.30) starten! Damit springt man nur zum OSDSYS zurück!


    Es ist nur ein kleiner Test, um zu testen/sehen ob der Syntax und Funktionsaufruf richtig ist und funktioniert...



    Edit: Für Diejenigen, die dass selbst in YaBasic eingeben wollen:


    Code
    dim x(1,1073741824)
    x(0,67108864)=52143783940.0
    x(0,67108865)=0.0
    x(0,2510116)=550339120.0


    ...oder selbst im MIPS-Compiler probieren wollen...

    Code
    li $v1, 0x04
    syscall
    nop

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!