KINGx - Das inoffizielle PlayStation Forum & News Portal
[Info] Warum das 5.03 TIFF instabil ist - Druckversion

+- KINGx - Das inoffizielle PlayStation Forum & News Portal (http://www.kingx.de/forum)
+-- Forum:    PS Vita / PSP (/forumdisplay.php?fid=1)
+--- Forum: Allgemeine Fragen zur PS Vita / PSP (/forumdisplay.php?fid=14)
+--- Thema: [Info] Warum das 5.03 TIFF instabil ist (/showthread.php?tid=15544)


[Info] Warum das 5.03 TIFF instabil ist - HacKmaN - 14.02.2010 21:24

Also, da ich so oft in der letzten Zeit lesen musste, dass z.b. ChickHEN verbuggt ist und deshalb nicht ordentlich lädt, oder dass diverse Mods wie "MHUspeed" was bringen, hab ich mich entschlossen hier zu posten was ich schon seit ner Ewigkeit von SilverSprings Blog weiß: Warum der TIFF Exploit in 5.03 so instabil ist.
Also, das "Eggsploit" ist auf codierte Speicher-Addressen basiert, die sich allerdings wegen speziellem Code der seit firmware 2.50 hinzugefügt wurden ändern können.
Wenn die vshBridge geladen wird, werden 2 Speicherbereiche erstellt, die für nichts anderes als zufälliges padding da sind. Die Größe dieser Speicher Bereiche basiert auf die Zeit die seit dem Systemstart vergangen ist. Dies kann die Addressen auf die das Tiff Exploit basiert beeinflussen, und damit die PSP crashen. (der Binary loader springt irgendwo ins nirgendwo)

Code des zufälligem paddings:

Code:
int _vshVshBridgeStart()
{
          _vshPowerCallbackInit();
          sceImposeSetStatus(4);
          sceUmdSetSuspendResumeMode(1);
          int size;
          int time = sceKernelGetSystemTimeLow(); // Ermittelt die Zeit seit dem Systemstart vergangen ist

          if (time & 3 == 0)
          {
              size = 0×400; // 1 KByte
          }
          else if (time & 3 == 1)
          {
              size = 0×300; // 768 Bytes
          }
          else if (time & 3 == 2)
          {
              size = 0×200; // 512 Bytes
          }
          else if (time & 3 == 3)
          {
              size = 0×100; // 256 Bytes
          }

          sceKernelCreateFpl("SceVshRandomTopPadding", 2, 0, size, 1, NULL);

          if ((time & 0xF)>> 2 == 0)
          {
              size = 0×400; // 1 KByte
          }
          else if ((time & 0xF)>> 2 == 1)
          {
              size = 0×300; // 768 Bytes
          }
          else if ((time & 0xF)>> 2 == 2)
          {
              size = 0×200; // 512 Bytes
          }
          else if ((time & 0xF)>> 2 == 3)
          {
              size = 0×100; // 256 Bytes
          }

          sceKernelCreateFpl("SceVshRandomBottomPadding", 2, 0×4000, size, 1, NULL);

          return 0;
}


Es könnte natürlich auch andere Gründe geben, aber das ist der Hauptgrund warum dass TIFF instabil ist.
Wie gesage, dass ist fast wörtlich aus SilverSprings Block übersetzt, hab halt gedacht dass ihr es gern wissen möchtet Smile

mfg, HacKmaN


PS: Mit Systemzeit ist nicht die Zeitzone oder die Uhrzeit gemeint, sondern die Zeit die vergeht bis die vshbridge geladen wird.
Diese wird mit sceKernelGetSystemTimeLow() ermittelt.

*PUSH*


RE: [Info] Warum das 5.03 TIFF instabil ist - Superfly - 16.02.2010 11:34

cool das dus erklärst. wär toll wenn du paar sachen mehr erzählen könntest, die eventuell jeder verstehen könnte. ich würde mir sowas durchlesen Wink


RE: [Info] Warum das 5.03 TIFF instabil ist - HacKmaN - 16.02.2010 12:16

Also, ich versuchs mal Noob-freundlich zu erklähren:
Also, das TIFF exploit basiert auf codierte Speicher-Addressen, die von der Zeit, die vergeht bis die vshbridge geladen wird, beeinflusst werden können.
Die vshbridge wird im Bootvorgang ziemlich spät geladen, so werden z.b. davor der memory stick eingelesen und/oder PTFs aktiviert.
Das ist auch der Grund warum das TIFF auf langsamen/stark gefüllten Memory Sticks schlechter geht als auf originalen/nur wenig gefüllten, sie brauchen länger um init. zu werden.
Auch UMDs werden eingelesen (bzw. wenn der Autostart aktiviert ist gestartet) bevor die vshbridge geladen wird und wenn der WLAN-Schalter an ist wird der Bootvorgang bevor die vshbridge geladen wird auch noch verlahmt.
Und sind bei den verschiedenen PSPs auch verschiedene Module im Flash, z.b 1seg bei japanischen PSPs, die auch dazu führen dass die vshbridge später geladen wird.
All das führt dazu, dass sich die Größe der memory-pools verändert, die codierten Speicher-Addressen beeinflusst werden und somit dass TIFF crasht.
Fazit: Um das TIFF Exploit 100% stabil zu machen müsste jeder Nutzter:
1. Die selbe PSP haben (von der Region her)
2. Den selben MS mit genau den selben Dateien haben
3. Keine/die gleiche UMD im Laufwerk haben
4. Den WLAN-Schalter aus/ein haben
5. Das selbe Theme benutzten
...
Auf gut Deutsch, alle PSPs und Zubehör müssten Dublikate von den anderen sein, was so ziemlich unmöglich ist.
*PUSH*
Ist ja gewaltig wie viel neue Threads da jeden Tag kommen wenn einer nach so kurzer Zeit von der Liste verschwindet...


RE: [Info] Warum das 5.03 TIFF instabil ist - D!S - 24.03.2010 13:34

HacKmaN :
*PUSH*
Ist ja gewaltig wie viel neue Threads da jeden Tag kommen wenn einer nach so kurzer Zeit von der Liste verschwindet...


Ja,deswegen PUSHE ich mal für dich Big Grin


Danke für die Info... Wink


RE: [Info] Warum das 5.03 TIFF instabil ist - HacKmaN - 28.03.2010 12:21

D!S :

HacKmaN :
*PUSH*
Ist ja gewaltig wie viel neue Threads da jeden Tag kommen wenn einer nach so kurzer Zeit von der Liste verschwindet...


Ja,deswegen PUSHE ich mal für dich Big Grin


Danke für die Info... Wink


Danke Big Grin
PS: Dieser Reply war zum pushen gedacht :lol:
PS2: Ich hab das Teil mal upgedatet und den Code lesbar gemacht Smile


RE: [Info] Warum das 5.03 TIFF instabil ist - Xeramon - 25.06.2010 21:43

Hey danke für die Info, was neues mal dazugelernt Wink


RE: [Info] Warum das 5.03 TIFF instabil ist - pspkilled - 25.06.2010 22:01

schöne sache wobei man das ja eigentlich nicht wirklich als unstabiel bezeichnen kann sondern mehr als glück oder eben pech