Cette nouvelle version ajoute la création du fichier ECC via le build.py.
Il ajoute aussi la possibilité de crée freeBOOT pour le Glitch hack à l'aide du ggbuild.
La version du kernel crée est la 13604.
Le build devrait être plus rapide, car la nand n'est plus extraite via ibuild, c'est fbBuild qui fait ça maintenant automatiquement.
Par ailleurs, avant la configuration n'était pas copiée, et donc après un flash l'on retombé sur l'écran de configuration du dashboard, ce n'est maintenant plus le cas.
Pour crée un fichier ECC il suffit d'être en mode Glitch et de n'entrer aucune clé CPU.
Lien : http://www.bestpig.fr/files/freeBOOT_ToolBox_Maker28.exe
La Team FbBuild vient de releaser un nouvel outil pour le Reset Glitch Hack sur Xbox 360, il est maintenant possible de lancer un Kernel Hacké et ainsi des fichiers XEX. Ce hack est maintenant l'équivalent du JTAG pour toutes les consoles compatibles avec le Reset Glitch Hack (Toutes les Xbox FAT + Slim excepté les Xenon et le nouveau pack Forza 4).
Sur les Slim ayant un lecteur supérieur au 9504 il était nécéssaire d'extraire le fichier fcrt.bin pour généré freeBOOT via ggbuild, la seul application que j'ai trouvé le faisant est FlashTool, malheureusement cette application est graphique, et pour l'intégré dans mon gui c'était pas top.
J'ai donc developpé un petit utilitaire permettant d'éxtraire le fameux fichier fcrt.bin et fcrt.bin.meta.
Voici donc mon utilitaire, ainsi que son code source, si ça peut servir à quelque vous pouvez en faire ce dont vous voulez ;).
Lien de téléchargement (exe + zip) : http://www.bestpig.fr/files/fcrt_eXtractor.zip
Code source sur GitHub : https://github.com/BestPig/fcrt-eXtractor
Code C : [Séléctionner le code]
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <fcntl.h> #include <sys/types.h> #include <sys/stat.h> #include <unistd.h> typedef struct s_file { unsigned int len; unsigned char *file; unsigned int fcrt_offset; int fcrt_len; unsigned char fcrt_meta[4]; } t_file; void quit(int status) { printf("nPress <enter> to continuen"); fgetc(stdin); exit(status); } void load_nand(char *file, t_file *nand) { size_t len; FILE *stream; struct stat sb; if (stat(file, &sb) == -1) { perror("stat"); quit(EXIT_FAILURE); } if (sb.st_size != 17301504) { fprintf(stdout, "The filesize is incorrect.n"); quit(EXIT_FAILURE); } nand->len = 0; printf("Allocating memoryn"); nand->file = malloc(sb.st_size * sizeof(*(nand->file))); if ((stream = fopen(file, "rb")) == NULL) { perror("fopen"); quit(EXIT_FAILURE); } printf("Load nand into memoryn"); while ((len = fread(nand->file + nand->len, 1, 512, stream)) > 0) { nand->len += len; } if (nand->len != sb.st_size) { fprintf(stdout, "The entire file could not be read.n"); quit(EXIT_FAILURE); } fclose(stream); } int get_fcrt_str(t_file *nand) { int offset = 0; char *pattern = "fcrt.bin"; int plen = strlen(pattern); printf("Starting search for %sn", pattern); while (nand->len - offset > plen) { if (strncmp(pattern, nand->file + offset, plen) == 0) { return (offset + 16); } offset++; } return (-1); } unsigned int read_nb(char *file, int offset, int len) { unsigned int nb = 0; int i = 0; while (i < len) { nb = nb * 256 + (file[offset + i] & 255); ++i; } return (nb); } void get_fcrt_info(t_file *nand, int offset) { nand->fcrt_offset = read_nb(nand->file, offset, 8); printf("Data start block is at offset %#.4xn", nand->fcrt_offset); offset += 8; nand->fcrt_len = read_nb(nand->file, offset, 4); offset += 4; printf("Fcrt lenght is %dn", nand->fcrt_len); strncpy(nand->fcrt_meta, nand->file + offset, 4); printf("Meta is : %x %x %x %xn", nand->fcrt_meta[0],nand->fcrt_meta[1], nand->fcrt_meta[2], nand->fcrt_meta[3]); } void write_fcrt(t_file *nand) { FILE *stream; int offset; int writed = 0; if ((stream = fopen("fcrt.bin", "wb+")) == NULL) { perror("fopen"); quit(EXIT_FAILURE); } offset = nand->fcrt_offset * 16896; while (writed < nand->fcrt_len) { fwrite(nand->file + offset, 1, 0x200, stream); writed += 0x200; offset += 0x210; } fclose(stream); if ((stream = fopen("fcrt.bin.meta", "wb+")) == NULL) { perror("open"); quit(EXIT_FAILURE); } fwrite(nand->fcrt_meta, 1, 4, stream); fclose(stream); } int main(int argc, char *argv[]) { int offset; t_file nand; printf("---------------------------------------------------------------n" " fcrt eXtractor v0.03 by BestPign" "---------------------------------------------------------------n"); if (argc < 2) { printf("Usage:n" " fcrt_extractor.exe nand.binn"); } else { load_nand(argv[1], &nand); offset = get_fcrt_str(&nand); if (offset < 0) { printf("No fcrt.bin found in this nand.n"); quit(EXIT_FAILURE); } get_fcrt_info(&nand, offset); write_fcrt(&nand); } quit(EXIT_SUCCESS); return (0); }
Cette mise à jour ajout la clé 1bl, sans cette clé il était impossible que cela ne fonctionne sur les Xbox 360 FAT.
Génère également en plus du fichier ECC un SMC ;)
Lien : http://www.bestpig.fr/files/ECCGlitchGenerator11.exe
Le développeur et hacker français, GliGli à anoncé aujourd'hui via les forums Xbox-Hacker.org un nouvel exploit sur Xbox 360.
Cet exploit baptisé "Reset Glitch Hack" nécessite quelque modification hardware de la console mais est compatible avec tous les modèles Slims et certaines FAT : Zephyr et Jasper (le support des cartes mères Falcon arrivera un peu plus tard).
Pour plus de détail sur cet exploit vous pouvez allez sur :
- http://libxenon.org/index.php?topic=145.0 (anglais)
- http://www.logic-sunrise.com/news-341319-le-reset-glitch-hack-un-nouvel-exploit-sur-xbox-360-fr.html (français)
Ce hack nécéssite la création d'un fichier ECC à partir d'un dump de votre nand, le script de build officiel est en python, j'ai donc élaboré un petit gui qui vous simplifie la vie ;).
Vous n'aurez pas besoin d'installé python, ECC Glitch Generator est autonome est ne nécéssite aucune dépendance.
A vos consoles ;)
Lien de téléchargement : http://www.bestpig.fr/files/ECCGlitchGenerator10.exe
Une mise à jour qui apporte :
- le support du kernel 13599 grace au fbBuild 0.32.
- La suppression du hashcheck (attention ceci est expérimental, à ne tester que si vous possédez un câble JTAG)
Lien : http://www.bestpig.fr/files/freeBOOT_ToolBox_Maker272.exe