Votre recherche :

modifier pkg

otaku160
Re: Equipe de test autour du downgrade et des Firmwares !
Dragoon1010 Wrote:merci pour vos encouragement !

Et oui, j'ai besoin de beaucoups de courage, car pour expliquer en gros je doit faire:

- decompiler le PUP
- sortit les 20 fichier dev_flash
- changer un a un leurs extension en pkg
- taper la commande "./unpkg dev_flash_000.pkg dev_flash_000" 20 fois
- ouvrir chaque dev_flash pour trouver les fichiers dont j'ai besoin
- modifier les fichier a l'interieur
- remmetre les fichiers a l'interieur
- taper 20 fois "./pkg dev_flash_000 dev_flash_000.pkg"
- renommer les dev_flash avec leurs nom d'origine
- tout remmetre dans l'update.tar
- taper la commande "fix_tar update.tar"
- recompiler le PUP
- le tester sur ma ps3

Bref ça as l'air de pas grand chose comme ça, mais il me faut bien une heure rien que pour la compilation et la decompilation ;D


Je peux essayer de te faire un exe pour ça ^^.
mais il faudrait m'expliquer comment ça fonctionne et me dire les outils à utiliser.
Voir le sujet
Avatar de l’utilisateur
Dragoon1010
Re: Equipe de test autour du downgrade et des Firmwares !
merci pour vos encouragement !

Et oui, j'ai besoin de beaucoups de courage, car pour expliquer en gros je doit faire:

- decompiler le PUP
- sortit les 20 fichier dev_flash
- changer un a un leurs extension en pkg
- taper la commande "./unpkg dev_flash_000.pkg dev_flash_000" 20 fois
- ouvrir chaque dev_flash pour trouver les fichiers dont j'ai besoin
- modifier les fichier a l'interieur
- remmetre les fichiers a l'interieur
- taper 20 fois "./pkg dev_flash_000 dev_flash_000.pkg"
- renommer les dev_flash avec leurs nom d'origine
- tout remmetre dans l'update.tar
- taper la commande "fix_tar update.tar"
- recompiler le PUP
- le tester sur ma ps3

Bref ça as l'air de pas grand chose comme ça, mais il me faut bien une heure rien que pour la compilation et la decompilation ;D
Voir le sujet
Avatar de l’utilisateur
Dragoon1010
Re: Equipe de test autour du downgrade et des Firmwares !
Bon après deux heures de recherche acharné, je suis retombé sur le git kakaroto, et il as fait un MàJ permettant de decrypter le dev_flash directement.

Le hic (comme d'hab), je tape :

"./decrypt_dev_flash.sh update_files"

et il tape la commande "unpkg", mais il me dit qu'il nexiste pas dans le dossier (normal me direz vous, il n'est pas compiler) !

Bref j'aimerais que l'un d'entre vous le compile, si possible sous dos, ou sinon sous nunux, j'utiliserais cygwin au pire !

Tenez https://github.com/kakaroto/ps3utils/co ... d0586a7b62

edit::voila !! Je vient de créer mon premier CFW basé sur acid_cfw, l'installation est en train de se faire chez moi, je vous dit après si ça marche ou pas !

Si ça marche, j'expliquerais la marche a suivre !!

edit3:: bon heuuu, la je saisie plus !

le firmware d'origine fait 167mo, et mon FW a moi fait 205mo, je l'installe, tout roule jusque la !

Je demarre la console, et a ma grande surprise, rien n'as changer O_o ! Pourtant le FW est bien different, et il s'est installer sans soucie !

Bon je continue mes test, j'y suit presque la !

edit3::fausse joie, j'ai compris ma bourde ! en fait j'ai copier le dev_flash, mais en laissant l'extension PKG, donc les fichiers etait côte a côte, d'ou l'énorme difference de taille !

edit4::bon après moult essaie, le problème est le même, impossible de recompiler les pkg !

Je cherche en vain un makepkg fonctionnel !

J'en ai bien trouver comme celui de ps3utils, mais pas moyen de l'utiliser, il faut faire ce genre de commande :

pkg [key suffix] [content] [filename.pkg]

Le soucie, c'est que pour le key suffix, je sait pas quoi mettre, il y as un paquet de clé, mais celle que j'ai essayer ne marchent pas (cf:pkg-key-retail)...

Bref, si quelqu'un sait comment réempacter ce foutu pkg sans erreur !

Bon sinon j'ai trouver un bon petit truc interessant dans ps3utils, le log s'apelle fix_tar.exe, je vous laisse imaginer a quoi il sert ;)

edit5::j'ai trouver le moyen d'avoir des PKG correct, mais la compilation du PKG n'allait pas puisque la ps3 ne me detecter pas la MàJ, donc j'ai mis le "update.tar" qui est tout propre est modifier, dans un firmware decompilé avec gpup, et la la MàJ est detecter, reste plus qu'a voir si ça se lance !

edit6::elle se lance !! et la j'ai pas eu de coups foireux, j'attend de voir ce que ça donne, et je met un 7ème edit xD, mais la je pense que c'est la bonne !

edit7::elle marche du tonerre !! =D

Bon je vous l'upload, puis si vous la voulez, vous me la demander en PV !

Elle est basé sur du 3.41 avec un mélange du acid CFW !

Ceci n'etait qu'un test pour voir comment ça marcher, maintenant que j'ai reussi a tout faire avec succès, je vais pouvoir me hater a un veritable CFW by "notre team xD" !

Je serait connecter ce soir sur MSN, tentez de vous connecter tout les deux, je vous fournirez les bon log ainsi que toute les commande necessaire, mais sachez qu'il faut avant tout utiliser nunux ou cygwin !

;)

http://www.youtube.com/watch?v=jyVLBpchf1c
Voir le sujet
Avatar de l’utilisateur
azertyxpp
Re: MAJ - Custom Firmware KaKaRoTo : le premier Custom Firmware
kikims93s Wrote:
tba77 Wrote:Sony va en pleurer je ne suis pas si sûr que ça, ça pourrait booster la vente des consoles, les éditeurs tiers et éditeurs de jeux avec les backup vont plus pleurer que Sony je pense. Il suffit de prendre l'exemple de la PS2 qui a été hackée dès sa sortie, le hack n'a jamais ralenti la vente des consoles PS2 je dirais même au contraire.



Ta raison !! sa ete la reine des consoles pendant 5 ans, je pense ;D

Sinon metter nous au courant quand quelque' un trouvera le moyen de pouvoir tt signer sois même ;)

Y a moyen:
azertyxpp Wrote:
legendkil Wrote:azertyxpp j'ai installé le truc et j'ai toujours tout ça moi ^^ par contre il est dis quelques pages avant qu'on peux faire marcher les homebrews non signés en les "signant" avec les logiciels comme ps3tool, serai t il possible de nous sortir un tuto sur ça ?

A ba comme le dit mon collègue du dessus cela a été corrigé avec la version 1.2 de se CFW mais vous été bien sur que maintenant toutes ces options sont bien présente ? Non PS3Tool c'est pour signer les .pkg des mises à jours (PUP) qui sont différents des .pkg des homebrew, pour signer un .pkg il faut des bases en programmation et cela n'est pour le moment pas possible au commun des mortels look le binse legendkil ^^":
Code: Select All Code
// SCEkrit.c (v1.0): Compute Sony's Private Keys
// Based on Sven's sceverify.c
// -------------------------------------------------------------
// Compile by copying to fail0verflow's ps3tools and add
// SCEkrit.c to TOOLS in the Makefile.
// Depends on libgmp; add -lgmp to LDFLAGS
// - Aaron Lindsay / @AerialX
// And thanks gbcft!

// Copyright 2010       Sven Peter <svenpeter@gmail.com>
// Licensed under the terms of the GNU GPL, version 2
// http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt

#include "tools.h"
#include "types.h"

#include <stdio.h>
#include <string.h>
#include <assert.h>
#include <stdlib.h>
#include <gmp.h>

static int keyid = -1;

static u8 *ptr1 = NULL;
static u8 *ptr2 = NULL;

static u16 type;
typedef struct {
   u16 flags;
   u32 meta_offset;
   u64 info_offset;
   u32 app_type;
   u64 filesize;
   u64 header_len;
} fileinfo;

static fileinfo info1;
static fileinfo info2;

static struct keylist *klist = NULL;

static struct keylist *self_load_keys(fileinfo* info)
{
   enum sce_key id;

   switch (info->app_type) {
      case 1:
         id = KEY_LV0;
         break;
       case 2:
         id = KEY_LV1;
         break;
      case 3:
         id = KEY_LV2;
         break;
      case 4:   
         id = KEY_APP;
         break;
      case 5:
         id = KEY_ISO;
         break;
      case 6:
         id = KEY_LDR;
         break;
      default:
         fail("invalid type: %08x", info->app_type);   
   }

   return keys_get(id);
}

static void read_self_header(u8* ptr, fileinfo* info)
{
   info->flags    =    be16(ptr + 0x08);
   info->meta_offset = be32(ptr + 0x0c);
   info->header_len =  be64(ptr + 0x10);
   info->filesize =    be64(ptr + 0x18);
   info->info_offset = be64(ptr + 0x28);

   info->app_type =    be32(ptr + info->info_offset + 0x0c);

   klist = self_load_keys(info);
}

static void read_pkg_header(u8* ptr, fileinfo* info)
{
   info->flags    =    be16(ptr + 0x08);
   info->meta_offset = be32(ptr + 0x0c);
   info->header_len =  be64(ptr + 0x10);
   info->filesize =    be64(ptr + 0x18);

   klist = keys_get(KEY_PKG);
}

static void decrypt(u8* ptr)
{
   if (keyid < 0)
      keyid = sce_decrypt_header(ptr, klist);
   else if (keyid != sce_decrypt_header(ptr, klist))
      fail("Both files must have the same key id");

   if (keyid < 0)
      fail("sce_decrypt_header failed");

   if (sce_decrypt_data(ptr) < 0)
      fail("sce_decrypt_data failed");

   if (klist->keys[keyid].pub_avail < 0)
      fail("no public key available");

   if (ecdsa_set_curve(klist->keys[keyid].ctype) < 0)
      fail("ecdsa_set_curve failed");

   ecdsa_set_pub(klist->keys[keyid].pub);
}

static void verify_signature(u8* ptr, fileinfo* info, u8* hash, u8** s, u8** r)
{
   u64 sig_len;

   sig_len = be64(ptr + info->meta_offset + 0x60);
   *r = ptr + sig_len;
   *s = *r + 21;

   sha1(ptr, sig_len, hash);

   printf("Signature\n");
   if (ecdsa_verify(hash, *r, *s))
      printf("  Status: OK\n");
   else
      printf("  Status: FAIL\n");
}

static void load_num(mpz_t n, u8* un)
{
   char buffer[0x100];
   char* ptr = buffer;
   int i;
   for (i = 0; i < 21; i++) {
      sprintf(ptr, "%02x", un[i]);
      ptr += 2;
   }
   mpz_set_str(n, buffer, 16);
}

static char* calculate_private_key(u8* us1, u8* us2, u8* uz1, u8* uz2, u8* un, u8* ur)
{
   mpz_t s1, s2, z1, z2, n, r, k, dA;
   mpz_inits(s1, s2, z1, z2, n, r, k, dA, NULL);
   load_num(s1, us1); load_num(s2, us2); load_num(z1, uz1); load_num(z2, uz2); load_num(n, un); load_num(r, ur);

   mpz_sub(z2, z1, z2);
   mpz_sub(s2, s1, s2);
   mpz_invert(s2, s2, n);
   mpz_mul(k, z2, s2);
   mpz_mod(k, k, n);

   mpz_mul(s2, s1, k);
   mpz_sub(s2, s2, z1);
   mpz_invert(r, r, n);
   mpz_mul(dA, s2, r);
   mpz_mod(dA, dA, n);

//   printf("k: %s\n", mpz_get_str(NULL, 16, k));
   return mpz_get_str(NULL, 16, dA);
}

int main(int argc, char *argv[])
{
   if (argc != 3)
      fail("usage: scesekrit filename1 filename2");

   ptr1 = mmap_file(argv[1]);
   ptr2 = mmap_file(argv[2]);

   type = be16(ptr1 + 0x0a);
   if (type != be16(ptr2 + 0x0a))
      fail("Files must be the same type");
   
   if (type == 1) {
      read_self_header(ptr1, &info1);
   } else if(type == 3) {
      read_pkg_header(ptr1, &info1);
   } else
      fail("Unknown type: %d", type);

   if ((info1.flags) & 0x8000)
      fail("devkit file; nothing to verify");

   if (klist == NULL)
      fail("no key found");

   decrypt(ptr1);
   
   if (type == 1) {
      read_self_header(ptr2, &info2);
   } else if(type == 3) {
      read_pkg_header(ptr2, &info2);
   } else
      fail("Unknown type: %d", type);

   if ((info2.flags) & 0x8000)
      fail("devkit file; nothing to verify");

   if (klist == NULL)
      fail("no key found");

   decrypt(ptr2);

   u8* s1;
   u8* s2;
   u8 z1[21];
   u8 z2[21];
   u8* r1;
   u8* r2;
   u8 ec[21];
   u8 n[21];
   z1[0] = 0;
   z2[0] = 0;
   
   ecdsa_get_params(klist->keys[keyid].ctype, ec, ec, ec, n, ec, ec);

   printf("%s ", argv[1]);
   verify_signature(ptr1, &info1, z1 + 1, &s1, &r1);
   printf("%s ", argv[2]);
   verify_signature(ptr2, &info2, z2 + 1, &s2, &r2);

   if (memcmp(r1, r2, 21))
      fail("Both files must share the same r signature value.");

   const char* dA = calculate_private_key(s1, s2, z1, z2, n, r1);

   int len = strlen(dA);
   int i;
   printf("Private Key: ");
   for (i = len / 2; i < 21; i++)
      printf("00");
   printf("%s\n", dA);

   return 0;
}

Donc pour l'instant il n'y a même pas de logiciel pour ceci c'est juste cette feuille de route (dira t'on) pour programmer la signature via lunix.

Après il y aurait apparemment un logiciel pour signer dans le kit de fail0verflow mais pas sur du tout car les outils de fail0verflow sont uniquement accès pour modifier des PUP et notamment compiler de PKG pour les PUP qui sont différents des PKG que nous avons l'habitude d'utiliser (MAJ des jeux, homebrew, jeux PSN...).
Voir le sujet
Avatar de l’utilisateur
Dragoon1010
Re: Equipe de test autour du downgrade et des Firmwares !
bah je l'ouvre avec winrar...faut que je regarde si j'ai le même soucie... la je continue les modification vers 1h, vu que le pc est pris, je te tiendrais au courant...

sinon pour les pkg du dev flash, tu doit les convertir en .rar si tu les as mis en .tar, sinon tu ne peut pas modifier le package...
Voir le sujet
Avatar de l’utilisateur
Dragoon1010
Re: Equipe de test autour du downgrade et des Firmwares !
Nan mais attend ,je lis pas mal de chose sur ce forum aussi, et je suit son "experience", et serieux, le mec me fait bader ;D !

regarde ça :


bryan Ô connors Wrote:bon je sais pourquoi la console ma fait un "ylod" le pup modifier à créé une surchauffe dans la console même.
les cpu se sont emballer je vais la démonter pour la passer aux four à refusion je dirais quoi se soir .
ps pour le moment d'aller pas tester les fichier pup sur vont console de salon.


Bref, le mec vois un YLOD, alors il crois que c'est une surchauffe ! En plus il as tenté ça a l'aveuglette sans savoir les risques qu'il prenait en tentant cela sur un 3.55, juste pour pouvoir dire "youhou je suis le premier a tester le CFW" !

edit::juste pour signaler que j'ai reussi a decompresser un pkg...

enfin je n'arrive pas a decompresser les veritable pkg, juste les fichier nommé "dev_flash....", je change l'extension en pkg, et hop, le tour est jouer !
Voir le sujet
Avatar de l’utilisateur
Dragoon1010
Re: Des nouvelles de fail0verflow et Geohot : les clés pleuvent
Culigan Wrote:meme pas...
une app ou une image signée pourra directement etre exécutée en firmware officiel, quelque soit le stockage et quelque soit le FW

Non, justement !

Pour installer un PKG, il faut au préalable avoir la fonction qui le permet, hors sur nos pauvres ps3 retail, nous n'avons pas cette fonction, sauf en la démarrant avec un dongle !

Donc il faudras installer une version modifier du 3.55 avec la fonction pour installer un PKG, puisque nativement, on ne possède pas cette fonction !

Donc en clair, il nous faut tout de même un CF, d'ailleur kakaroto vient de signaler qu'il as fait son premier CF avec cette fonction, mais qu'il ne le mettras en ligne que quand il seras certain qu'il ne brickeras aucune console ;)
Voir le sujet
Avatar de l’utilisateur
azertyxpp
Re: Equipe de test autour du downgrade et des Firmwares !
Je suivais le topic de près mais je me faisais silencieux, j'essaye de compiler un PS3UPAT.PUP et j'ai compris quelques trucs.

Je veux faire un hybride entre le 3.41 et le 3.50 (3.50 juste pour son dev_flash) le truc, c'est que le hash de certains fichiers remplacés ne validera pas la MAJ et la rendra corrompue. J'ai donc la certitude qu'il y a un fichier (surement PUPheader.bin ou Updater.self) qui contient tous les noms des fichiers et leur hash respectif pour valider la MAJ une sorte de fichier master, il faudrait réussir à extraire PUPheader.bin ou Updater.self pour voir si il ne contiendrai pas un genre de fichier texte de se type et le modifier en mettant des nouveaux hash qui correspondrai aux fichiers remplacés peut être les offset et la taille des fichiers aussi, il faudrait déjà voir à quoi il ressemble pour le hash en tous cas c'est sur. Puis recompiler le .bin ou .self modifié, puis enfin compilé son PS3UPDAT.PUP avec GPUP 0.3.1.

J'ai déjà recompilé l'archive .tar (File_7.tar) qui contient tous le dev_flash 3.50:

dev_flash_000.tar.aa.2010_07_29_170013
dev_flash_001.tar.aa.2010_07_29_170013
dev_flash_002.tar.aa.2010_07_29_170013
dev_flash_003.tar.aa.2010_07_29_170013
dev_flash_004.tar.aa.2010_07_29_170013
dev_flash_005.tar.aa.2010_07_29_170013
dev_flash_006.tar.aa.2010_07_29_170013
dev_flash_007.tar.aa.2010_07_29_170013
dev_flash_008.tar.aa.2010_07_29_170013
dev_flash_009.tar.aa.2010_07_29_170013
dev_flash_010.tar.aa.2010_07_29_170013
dev_flash_011.tar.aa.2010_07_29_170013
dev_flash_012.tar.aa.2010_07_29_170013
dev_flash_013.tar.aa.2010_07_29_170013
dev_flash_014.tar.aa.2010_07_29_170013
dev_flash_015.tar.aa.2010_07_29_170013
dev_flash_016.tar.aa.2010_07_29_170013
dev_flash_017.tar.aa.2010_07_29_170013
dev_flash_018.tar.aa.2010_07_29_170013
dev_flash_019.tar.aa.2010_07_29_170013
dev_flash_020.tar.aa.2010_07_29_170013
dev_flash_021.tar.aa.2010_07_29_170013
dev_flash3_022.tar.aa.2010_07_29_170122

J'ai bien entendu remplacé la fin du nom du dev_fash par ce qui est écrit normalement sur le 3.41 (2010_07_29_170013/ 170122) car sur le dev_flash du 3.50 c'est (2010_09_13_230920).

Puis dans l'archive .tar j'ai mis tous le reste du 3.41 qui est censé être dans cette archive et qui porte toujours le même nom à savoir:

BDIT_FIRMWARE_PACKAGE.pkg
BDPT_FIRMWARE_PACKAGE_301R.pkg
BDPT_FIRMWARE_PACKAGE_302R.pkg
BDPT_FIRMWARE_PACKAGE_303R.pkg
BDPT_FIRMWARE_PACKAGE_304R.pkg
BDPT_FIRMWARE_PACKAGE_306R.pkg
BDPT_FIRMWARE_PACKAGE_308R.pkg
BLUETOOTH_FIRMWARE.pkg
CORE_OS_PACKAGE.pkg
MULTI_CARD_FIRMWARE.pkg
SYS_CON_FIRMWARE_01000006.pkg
SYS_CON_FIRMWARE_01010303.pkg
SYS_CON_FIRMWARE_01020302.pkg
SYS_CON_FIRMWARE_01030302.pkg
SYS_CON_FIRMWARE_01040402.pkg
SYS_CON_FIRMWARE_01050002.pkg
SYS_CON_FIRMWARE_01050101.pkg
SYS_CON_FIRMWARE_S1_00010002083E0832.pkg
UPL.xml.pkg
RL_FOR_PACKAGE.img
RL_FOR_PROGRAM.img

Donc voila tous ça c'est pour l'archive File_7.tar qui pour le cout vu les modif ne fait plus la même taille ni le même hash.

Pour le reste des hash qui correspondent pas non plus j'ai:

SDK_Version.bin (car pris sur le PUP 3.50),
vhs.tar (car pris sur PUP 3.50),

Pour ce qui correspondent:

dots.txt (car pris sur 3.41),
Updater.self (car pris sur 3.41),
PUPheader.bin (car pris sur le 3.41),
File_5.tar (car identique),
File_6.tar (car identique).

Soit donc 3 fichier sur 8 à modifier le hash sur le fichier de commande et vérification (PUPheader.bin ou Updater.self) qui pour le cout changera aussi de hash donc 4 fichiers finalement, pour que cela passe ensuite il faut vérifier les offset et peut être même la taille, je verrai bien ce que contient le fichiers de commande et de vérification. Ensuite il n'y a plus qu'à recompiler les 8 fichiers pour compiler un PS3UDPAT.PUP, qui ne devrait pas être corrompu car les hash, offet, taille... correspondront au fichier de commande.

La je vais m'attaquer au Updater.self voir ce qu'il contient. Le but étant d'avoir une MAJ 3.50 qui ne contiendrai que le dev_flash du 3.50 et tous le reste du 3.41 pour les sécurités, vu qu'il est impossible de récupérer le dev_flash du 3.50. Je testerai d'autres config sur la modif en cas d'incompatibilité.
Voir le sujet
bebou007
Re: Equipe de test autour du downgrade et des Firmwares !
ben a se que j'ai lue sur internet c'est bien la team psjailbreak qui a modifier le firmware

se qui faudrait essayer c'est de recompiler un firmware avec des fichier d'un même firmware mais en debug car chaque fichier dans le pup son signer on renmplace juste des fichier signer par d'autre signer

quand on découpe un pup avec pupextractor on a des fichier .tar que l'on peut decompresser dedans il y a CORE_OS_PACKAGE.pkg donc le xmb on pourais essayer de le remplacer par le fichier meme fichier debug ou d'autre fichier

sais tu quel fichier faut modifier pour ajouter les option debug a une retail?

sur le 3.41 modifier le fichier 7.tar ne peut pas etre extrait alors que l'original oui

a voir

si tu a le 3.41 debug car celui que j'ai et compresser et j'arrive pas a le décompresser
Voir le sujet
Avatar de l’utilisateur
john83300
Re: PS Upgrade : l'application pour PS Jailbreak passe en versio
pour le probleme que vous rencontrer avec votre e3cardreader faut la laisser brancher ensuite faite la manipe qui est demander une foix que vous verrez dans jeux ( game) app/ps3game et install packtage mettre votre cle usb formater en fat32 mettre le fichier .pkg du backup manager 1.1 ou open manager 2.1l2moi j'ai mis les deux l'open manager te servira pour patcher tes jeux 3.42 ou 3.50 en to 3.41 et marcheron niquel les deux fichier doive etre mis a la racine de la cle usb une foix que la cle usb est brancher aller sur install packtage vous verrez le fichier .pkg et faite x pour installer vous verrez ensuite une icone backupmanager ou open manager en dessous de install packtage etc..... moi je vous conseillerai de prendre la eclips3 ou la ps3break ou encore l'une des cle disponible qui font le downgrade car moi j'ai l'eclips3 et la je vais mettre la version downgrade v1.4 car j'ai telecharger les fichier neccessaire pour le downgrade mais attention il preconise de mettre la version 2.10 officiel et ensuite mettre la 3.41 officiel car le fichier 3.41 modifier a un bug vous pourrez plus lire les blu-ray disc films seulement donc il dise de mettre les deux fichier pup 2.10 ensuite 3.41 officiel pour ne pas perdre la lecture des film blu-ray sur nos ps3 via le downgrade mais attention si vous avez mis la jour votre ps3 en 3.55 le downgrade ne marchera plus j'espere que je vous aurais aider comme j'ai pu
Voir le sujet