Thanks to oct0xor we could get our hands on the decrypted TB payload (stage 2). Of course the first thing to do is to fire it up in IDA, our favourite tool of the trade. The entry code of the payload looks like this:
In the first loop it will relocate itself using 0x1337C0DE as an identifier for the upper 32 bits and rewrite that to the actual base. The disassembly above was already loaded using 0x1337C0DE00000000 as base. While scrolling through the data section at the end of the payload one quickly figures out that the RTOC is 0x1337C0DE00017E40.
As I was analyzing the code I found a sub that was basically just a really big switch with random looking case values. Once I reversed the sub at 0x1337C0DE00002578 and some of the following ones and analyzed their usage in the switch sub, I knew that I was looking at a fricking virtual machine.
Paranoid TB developers even used XOR-tables to obfuscate the VM instructions and data. The virtual machine is mostly stack based but the instructions let you work using registers too. The next thing to do is to reverse all the instructions and write a disassembler and emulator. Here is some code to unscramble the embeded vm binary for further investigation. I’m going to write more about this topic in the future.
Added support to launch DVD-Video titles (disc/folder format) from mmOS and other display modes (Showtime Media Player required)
Added support to load DVD-Video movies in ISO format from DVDISO folder (Showtime Media Player Required) (for non-Cobra Firmwares)
Added option to override SBS/TB modes in stereo player for .avi3d video titles (with L3/R3)
Changed: File Manager is replaced by a new powerful and memory efficient engine (mmOS) to resemble desktop environment
mmOS features:
Uses just 1-2MB of RAM (about 10-15 times less than the old File Manager mode), intuitive and faster
Desktop + Taskbar + 7 Windows + Desktop Shortcuts + Clock + Tray + Clipboard
Clipboard and each window support up to 4096 entries
Support for user-defined motion / static background
- Window properties: minimize, restore, close, move, sort contents by name/size/date (asc/desc), fast scroll in rows and pages
- Window history: 16 path levels deep (forward and backward), window state and current scroll/cursor position
- Window contents: content icons/names/size/date, status bar, header, scrollbar
- Window actions (single click/tap): single/multiple entry selection
- Window actions (double click/tap):
--- start music playback, image viewer, hex/text viewer, launch executable files (.self/EBOOT.BIN)
--- play video titles (standard 2D and AVI3D), play DVD folders/ISO, direct-boot or load "folder/jb" games
--- load Blu-ray/DVD-Video/PS3/PSP/PS2 ISO files and BIN+CUE PSX images
--- load AVCHD video folders, mount folders to install PKG files, install themes
--- launch PSX games from CD-R discs (when DDA mode is enabled: PSX.EXE/SYSTEM.CNF/ps1_*emu.self)
- Taskbar actions: minimize/restore a window, minimize all, change active window
- Context/command menu functions:
--- Copy (copy selected entries to clipboard)
--- Cut (copy selected entries to clipboard; entries will be deleted after "Paste")
--- Paste (paste clipboard contents)
--- Paste as ISO (create an ISO file from a single folder selected with "Copy")
--- Delete
--- Rename
--- Properties
--- Create New Folder
--- Create Shortcut
--- Shadow for PKG game (when a PS3_GAME folder is selected from a game under /dev_hdd0/GAMES)
--- Activate BD-Mirror (when a PS3_GAME folder is selected from a game under /dev_usb***/GAMES)
--- Eject Disc
--- Open in HEX Viewer
--- Refresh Net Host
- Added option in "Settings" - "Swap Sticks In mmOS - Change actions of Left and Right Sticks in mmOS."
Navigation:
- Right Stick - Move mouse pointer (can be changed to Left Stick in Settings "Swap Sticks in mmOS")
- Left Stick - Move active window (can be changed to Right Stick in Settings "Swap Sticks in mmOS")
- LEFT/RIGHT - One directory level back (history) / forward
- UP/DOWN - Scroll up/down window contents
- L2/R2 - (PgUp/PgDn) Scroll window contents in pages
- CROSS - (single tap) Select/Deselect entry
- CROSS - (double tap) Execute/View/Play/Open folder
- CIRCLE - (right click) Open command/context menu
- SQUARE - (ALT-TAB) Switch active window
- TRIANGLE - Quit to XMB (if button is held pressed)
- R3 - Change font
- L3 - Reset mmOS
- SELECT+(CROSS double tap) - Open folder in new window
- SELECT+(CIRCLE) - (ALT-F4) Close active window
- SELECT+(SQUARE) - (F5) Refresh active window
- SELECT+(UP/DOWN/LEFT/RIGHT) - Move mouse pointer (useful with BD-Remote Controller)
Si vous êtes en CFW autre que le Rebug, installez le Spoof 4.11.
1) Tout d'abord téléchargez le PKG du Spoof 4.11 et installez-le avec le menu "Install Package Files".
2) Lancez le Spoof fraîchement installé et appuyez sur L1 + X à son lancement pour installer le Spoof.
3) Repressez ces mêmes boutons pour activer le Spoof.
4) La PS3 va redémarrez.
5) Saisissez vos identifiants dans la partie connexion.
6) Félicitations ! Vous êtes connectés au SEN (PSN) en CFW 3.55 !
Si vous êtes en CFW Rebug, suivez ces instructions.
1) Téléchargez le Rebug Package et installez-le avec le menu "Install Package Files".
2) Lancez le Rebug Package fraîchement installé et suivez les instructions.
3) La PS3 va redémarrer.
4) Supprimez le Rebug Package, vous n'en aurez plus besoin.
5) Rendez-vous dans la partie connexion pour y saisir vos identifiants.
6) Félicitations ! Les joies du SEN (PSN) sont à vous !
* True Blue dongle authenticity status displayed on XMB system information screen
* Fixed yet another important game compatibility issue affecting recent 4.xx games
Paramètres -> Paramètres sytème -> Information système
Pour mettre à jour votre dongle :
- Assurez-vous que votre PS3 utilise bien le CFW spécial True Blue v2 (cela ne marchera pas sur la version antérieure) !
- Copiez le fichier TrueBlueUpdate-2.7.pkg contenu dans l'archive à la racinde d'une clé USB.- Actel used is A3P125 instead of larger A3P250 used on True Blue.
- Clone uses a cheap MCU and cheap dip type crystal in addition to cheaper Actel instead of full Actel integration in the original True Blue design
- Clone has a tact switch which the original does not require, and switch can only be accessed by pulling PCB out of the case
- Actel logic on clone is based on partial guess work of the original and will not function correctly in future updates
- PCB circuit design is highly congested, with numerous visual differences evident, such as programming pads for the MCU and addiional resistors/caps
- supports 8 windows with up to 4096 entries per folder
- double-click to launch video/music/picture/games...
- single-click to multiple-select for copy/move
- desktop icons for fast access to various options/functions (shortcuts for showtime, games, themes, user created shortcuts)
- Booting of games designed for PS3 system software v3.6 and above
- Runs your existing games and new v3.6+ games from HDD in conjunction with standard backup managers
- Does not require the power/eject trick
- Custom v3.55 Dongle firmware behaves like OFW when PB2 is not inserted
- Manufactured from highest grade components and Actel based
- Durable and high quality plastic case designTough and durable plastic packaging
- Further features to be added as they are developed
- On board 2 MBytes SPI flash
- Supports Fat and Slim PS3 consoles currently running any firmware up to v3.55 and any PS3 which can be downgraded successfully from v3.6+ to v3.55 (NOTE: requires other tools, PB2 cannot downgrade a console)
- Supports all regions of consoles
- Supports all regions of v3.6+ games
- Rock solid crystal oscillator on board for flawless timings
Caractéristiques 1.0 :
- 4 téléchargements autorisés et ensuite, vous devrez patienter une petite heure avant de pouvoir re-télécharger
- Mise à jour constante du soft à chaque sortie de nouveaux patchs
- Téléchargement de la dernière mise à jour firmware pour le dongle True Blue
- Description et affichage de la jaquette du patch
- Liens de téléchargement direct
Caractéristiques 2.0.3 :
- Limite de téléchargement retirée
- Téléchargement du CFW True Blue
- Choix de l'ordre du classement des patchs
- Possibilité de rechercher directement un patch à partir du logiciel
- Envoi et extraction des patchs directement sur la PS3 dans le dossier du jeu (compatible disque dur interne et externe) BETA
- Extraction simplifiée lors de la décompression sur le PC
- Visualisation de la région du patch lors de sa sélection
- Mise à jour automatique
- Etat du serveur
- Téléchargez True Blue Patch Viewer.
- Lancez-le.
- Connectez votre PS3 CFW et reliez-la à votre PC en partage de connexion.
- Démarrez votre serveur FTP et établissez la connexion en anonyme.
- Choisissez dans le menu déroulant l'option "PS3".
- Sur le programme, entrez l'IP de votre PS3. Elle devra ressembler à cela : 192.168.x.x
- Choisissez si vous souhaitez transférer dans votre disque dur externe ou bien interne
- Amélioration de la list box (possibilité de se déplacer avec les flèches directionnelles)
- Ajout d'un checkbox pour l'extraction automatique après téléchargement du patch (sur le pc)
- Assurez-vous que votre PS3 utilise bien le CFW spécial True Blue v2 (cela ne marchera pas sur la version antérieure) !
- Copiez le fichier TrueBlueUpdate-2.62.pkg contenu dans l'archive à la racinde d'une clé USB.
- Allumez votre PS3 SANS INSERER le dongle puis branchez votre clé USB.
- Rendez-vous dans la colonne "Jeu" du XMB puis dans "Install Package Files" et sélectionnez TrueBlueUpdate-2.62.pkg (l'updater True Blue va être installé sur votre PS3).
- Rendez-vous à nouveau dans la colonne "Jeu" du XMB et lancez "True Blue Update v2.62"
- L'updater va démarrer et va vous inviter à insérer votre True Blue. A ce moment-là, faites-le. Votre dongle va ensuite être mis à jour.
- Après que la procédure de mise à jour se soit déroulée correctement, votre PS3 va redémarrer et vous pourrez enfin profiter de votre dongle fraîchement mis à jour.
- Si vous le souhaitez, sachez que vous pourrez supprimer l'updater True Blue de votre disque dur.
- Correction d'un problème majeur de compatibilité, ce qui va ainsi permettre la publication de patchs pour certains titres, auparavant incompatibles
- Amélioration de la stabilité du système
Accéder à la review du dongle True Blue
Télécharger Firmware True Blue 2.62- 4 téléchargements autorisés et ensuite, vous devrez patienter une petite heure avant de pouvoir re-télécharger
- Mise à jour constante du soft à chaque sortie de nouveaux patchs
- Téléchargement de la dernière mise à jour firmware pour le dongle True Blue
- Description et affichage de la jaquette du patch
- Liens de téléchargement direct
Bug #416: DVD Playback Error (dvdnav Error or black screen)
Bug #442: Video Image compressed horizontally
Bug #507: Failed .iso playback
Bug #662: Showtime 3.1.203 not playing .MP4 Movies
Bug #744: V/A out of sync after pause for some time
Bug #759: Subtitle fails to load
Bug #870: SMB:// - access denied
Bug #885: Wrong subtitle
Bug #886: showtime won't play 4.0 audio tracks
Bug #888: Subtitles wont be detected if a point is used in the name
Bug #890: MP4 Container issue
Bug #893: Showtime UI going into image viewing mode when there is only 1 image in the directory
Bug #894: Image mode showing image file which is not found in the directory
Bug #901: Headweb plugin does not ask again for credentials if it fails to auth
Bug #914: Showtime won't play 3.0 audio tracks
Bug #918: Only 1 Set-Cookie headers inestead of all in httpPost (and possibly httpGet)
Bug #923: ass subtitles support bad unstable
Bug #927: video segment selection crashes FAT ps3
Bug #929: Showtime won't start playback if subtitle is empty
Bug #932: Update plugins page for showtime
Bug #948: Back from pause audio / video are desynch.
Bug #956: External subtitles not listed if subtitles in MKV (UPnP)
Bug #959: Video titles displayed wrong.
Bug #961: Continuous Playback Problem
Bug #963: Black screen with audio starts then crashes system with certain x264 .mkv
Bug #965: Error when getting http file
Bug #968: three subtitles bugs
Bug #974: Autoplay feature causes "cpu to slow" on the next one
Bug #975: fflockmgr() potential memory leakage
Feature #501: Consecutive reproduction of files
Feature #530: Enable continius play
Feature #640: MP4 codec support
Feature #657: "AppedItem" Cookies
Feature #753: VOB file continuous playback?
Feature #864: Autoplay next movie
Feature #867: HTML Codes, Characters and symbols convertion
Feature #875: Video playlists
Feature #921: DVD FOLDER
Feature #926: continuous playback
Feature #930: Return location property in httpGet/httpPost
Feature #931: Create link to the latest testing build in download page
Feature #941: Item View Background
Feature #946: Reveal headers in httpGet request without loading file
- Merge branch 'release/3.6'
- Clean up audio/subtitle streams after playback.
- Update Dutch translation
- Update lang/pt_PT.lang
- Update Dutch translation
- Merge pull request #72 from andreus-sebes/patch-1
- Update lang/pt_PT.lang
- Update lang/sp_SP.lang
- Merge pull request #71 from aldostools/patch-2
- Update lang/sp_SP.lang
- Empty commit for next development track
- thumbnails: Buffer should be no less than FF_MIN_BUFFER_SIZE bytes
- Update Polish translation
- Update Russian translation
- Update Dutch translation
- Peut extraire le dev_flash de n'importe quel firmware PS3.
- Peut extraire n'importe quel firmware PS3 (l'outil devient très rapide après la première utilisation).
- Une console est intégrée au logiciel pour que vous puissiez voir le log.
- Peut décrypter les PKG Retail des PS3/PSP (ceux signés par Sony).
- Peut lire les self du : Appldr, lv0, lv1ldr, lv2ldr, isoldr, eboot.bin et plus encore en tapant la bonne commande à l'endroit approprié.
- Un outil Core_os_package qui peut : décrypter, extraire et crypter le Core_os_package.pkg (le tout en quelques secondes).
- Signer les PKG pour le FW 3.55 ou bien 3.41.
- Peut décompiler et compiler les SELF des fichiers.
- Quand un fichier tar est modifié, ses permissions ont besoin d'être fixées. Cet utilitaire peut le faire pour les FW suivants :
Retail jusqu'à 3.72, Debug jusqu'à 3.72, Retail et Debug 4.0.
PS3Tools GUI Edition va créer deux nouveaux fichiers pour le Core_os_package. "decrypted_core_os" et "CORE_OS_PACKAGE_ENCRYPTED.pkg" ne doivent pas changer le nom de celui décrypté car sinon, il vous sera impossible de le crypter.
- Ajout du dump du dev_flash et du dev_flash3
- Suppression de l'éditeur de conf
- Suppression de l'espace qui empiétait sur les boutons
- Ajout d'une section "Other tools"
- Nettoyage de la GUI
- Aucun fenêtre d'onglet supplémentaire
- Plus rapide
- Taille de moins de 4Mo
- Aucune fenêtre de commande apparaît aléatoirement
- Correction d'un problème de mémoire
- Correction des permissions glitch