Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  15 2911
Hei, dette er min første tråd, og håper noen flinke guruer her kan hjelpe.

Dette gjelder som filer i en PS3 (hentet med CFW), men selve .ESFM filen ligger på Sony sine sider åpent for alle om du finner rette stien.

Last ned ZIP fil herfra: http://www.mediafire.com/?dnzc0khbqftuuk0
Den inneholder ingen programfiler eller virus Men er usikker på om direktelinking slikt er lov eller ei.

Inni der ligger også en "readme" fra en venn av meg, på engelsk.

Hele cluet er å få kryptert den .ESFM filen til å bli et leselig XML fomat.
Inne i NPWR mappen finner du også en TROPCONF.SFM fil, som ikke er kryptert og ligger åpen på PS3en. .ESFM filen skal ha samme informasjon i seg som denne.

Krypteringsmetoden er HMAC (etter hva jeg har fått vite), og krypteringsnøkkelen er en 20 byte (noe sånt) string.
Se http://en.wikipedia.org/wiki/Hash-ba...ntication_code
Nøkkelen kan hentes ut ifra np_trophy_util.sprx.elf om du klarer å finne den. Dette er selve kildefilen for hele dekrypteringen.
Det ville vært greit å få vite hvilken type algoritme krypteringen bruker slik at hele koden kan skrives om i PHP format.

Hele oppleget går ut på å hente trofèinnholdinformasjon fra Sony sine servere fra en venn sin side som brukes kun av oss. Så dette er et lite prosjekt vi stusser på, og dette er det siste vi trenger. En typisk site hvor dem henter "gamecard" informasjon brukes av denne type formel.

Viss noen informasjon er uklar i beskrivelsen her eller i readmefilen i ZIP mappen, så gi beskjed så kan jeg komme med så mye utfyllende informasjon jeg kan, men blir muligens på engelsk.


Den som knekker koden og klarer dette skal få en kasse pils
Sist endret av Cissamannen; 15. januar 2013 kl. 15:41.
▼ ... over en uke senere ... ▼
Er du seriøs på den kassa med pils så kan vi sikkert finne en løsning på dette
Trophywhore
Trådstarter
19 0
Sitat av methrax Vis innlegg
Er du seriøs på den kassa med pils så kan vi sikkert finne en løsning på dette
Vis hele sitatet...
Believe me, jeg er dønn seriøs
Det du i bunn og grunn er ute etter er en metode for å hente trofèinfo fra Sony sine servere?
Det finnes brukendes løsninger der ute, brukte 10min på å google og sette opp denne (som forøvrig er henter herfra).
Trophywhore
Trådstarter
19 0
Sitat av Lanjelin Vis innlegg
Det du i bunn og grunn er ute etter er en metode for å hente trofèinfo fra Sony sine servere?
Det finnes brukendes løsninger der ute, brukte 10min på å google og sette opp denne (som forøvrig er henter herfra).
Vis hele sitatet...
Tror det kan mistolkes litt.
Ved hjelp å dekryptere den filen å fått lest informasjonen, får vi hashkoden Sony bruker i sin URL direkte på deres webområder for å hente informasjon. På den måten kan en kode inn en "trigger" for å hente det automatisk ned. De metodene du linket til der krever fremdeles at en skriver inn all torphyinformasjon selv.
Tror nok du må stille opp med mye mer enn en kasse ØL, skal guttene som klarer å knekke dette uten mer informasjon gidde å prøve.

http://upload.wikimedia.org/wikipedia/en/thumb/3/36/Shahmac.jpg/400px-Shahmac.jpg

I følge filen readme filen i zip mappen du lastet opp så vet vi key'en. Vi vet i_pad og vi vet o_pad, så den øverste delen med XOR'ingen er grei, den kan også reverseres. Problemet er når vi kommer lengere ned å skal append'e message på i_key_pad, vi vet jo ikkje hvordan denne XML koden ser ut, og ikkje nok med det, men den skal også hashes engang før man append'er hashsumen til o_key_pad'en før den igjen skal hashes.

Hashing er dessverre ikkje reverserbart, og må bruteforces, samt vi vet jo ikkje hvordan hash funksjon som blir brukt. Så det trengs en god del mere research på den før man eventuelt kan begynne å skrive et script for å knekke den.

Jeg har ikkje nå tid til å researche mer på den, men kan ta å se på til helgen eller noe slik, men det er lite tvilsomt at jeg har kunnskaper nok til å kunne knekke den.
Trophywhore
Trådstarter
19 0
Fikk en reply fra personen jeg arbider litt med.

"using the same method as you show above, you can download XML for user's earned trophies. the data returned is formed like this:

Array
(
[id] => 15
[type] => silver
[trophydate] => 1358922349
)

this allows us to populate a database with our progress, but we need to use extra resources to find specific imformation about each trophy.

the hashes form the URLs to the trophy images and the ESFM files. the decrypted ESFM file then gives us the XML needed for trophy titles and descriptions"

Se om ikke den kan hjelpe litt til

Hovedpunktet er. Ved dekryptering av ESFM kan ei nettside hente all informasjon den får inn fra HASH-stringen.
Se her for eksempel:

http://www.nipponart.org/tools/psn/w/

Finn spillet Warhawk. NPWR00163_00. Den får generert en HASH-string som er: 08A89836679826F2FABD6207BB3202E115C870E9
Hele poenget med denne tråden er å finne ut hvordan den hashstringen blir til. Finner vi ut det, kan det brukes til å oppdatere en database automatisk med nyeste informasjon fra Sony sine servere angående trophies.

Typisk psnprofiles.com og yourgamercards.com bruker denne metoden til å legge til mer spill automatisk med all informasjon om bilde, text/description og trophytype (gull, sølv).
Nei, det er ikkje mye til hjelp får å få knekt ESFM filen, det man trenger til det er enten en identisk XML fil, eller XML schema til filen, men selv med det så er jeg redd at vi snakker om mange 100 år med bruteforcing selv med store super computere.

Tror nok dere må finne andre veier rundt enn å knekke ESFM filen.
Trophywhore
Trådstarter
19 0
Alt jeg vet er at alle nøklene og informasjon skal kunne innhentes fra den vedlagte trop_util fila i ZIPen. Er den som styrer hele tropfesystemet til PS3en.
Har klart å knukket alle andre filer, men her står vi fast for å finne ut hvordan den hash ID blir generert for Sony sine servere.

Har vært i kontakt med han som gjorde dette første gang, en godkar kalt "flatz". Russisk kar som har knukket mye med hele PS3en. Tok han under en time å finne, men mulig han visste hvor han skulle lete. Fikk kun vite at all informasjon for krypteringen og hashinga skal finnes i denne kjære dekrypterte np_trophy_util.sprx filen.
Står litt info her også: http://www.ps3devwiki.com/wiki/Trophy_files

Mulig løpet er kjørt men ha ikke lyst å gi opp!
Sitat av Cissamannen Vis innlegg
Alt jeg vet er at alle nøklene og informasjon skal kunne innhentes fra den vedlagte trop_util fila i ZIPen. Er den som styrer hele tropfesystemet til PS3en.
Har klart å knukket alle andre filer, men her står vi fast for å finne ut hvordan den hash ID blir generert for Sony sine servere.

Har vært i kontakt med han som gjorde dette første gang, en godkar kalt "flatz". Russisk kar som har knukket mye med hele PS3en. Tok han under en time å finne, men mulig han visste hvor han skulle lete. Fikk kun vite at all informasjon for krypteringen og hashinga skal finnes i denne kjære dekrypterte np_trophy_util.sprx filen.
Står litt info her også: http://www.ps3devwiki.com/wiki/Trophy_files

Mulig løpet er kjørt men ha ikke lyst å gi opp!
Vis hele sitatet...
Jeg tror jeg har missforstått deg litt, leste litt grundigere nu, du mener altså å dekryptere ( gjøre den om til klartekst igjen ) selve ESFM filen? Hvis det er det du mener, så kan jeg fortelle deg at det ikkje er det algorithmen som du mente bruktes til å kryptere den, siden den algortihmen bruker hashing, og hashing er enveis kryptering, det kan ikkje dekrypteres.
Trophywhore
Trådstarter
19 0
Mulig noe slikt, hehe.
Ønsker å få ESFM filen til å bli lest i klartekst, å finne ut hvordan denne NPWR00163_00 mappen kan bli til navnet 08XXXXXXXXXXXXXXXXX som det står ovenfor. Da er alt fikset for denne tråden om det hadde blitt besvart
Sitat av Cissamannen Vis innlegg
Mulig noe slikt, hehe.
Ønsker å få ESFM filen til å bli lest i klartekst, å finne ut hvordan denne NPWR00163_00 mappen kan bli til navnet 08XXXXXXXXXXXXXXXXX som det står ovenfor. Da er alt fikset for denne tråden om det hadde blitt besvart
Vis hele sitatet...
Jeg ble faktisk sittende ut over natta i går med denne delen, får å finne ut om den stringen på 08XXXX[...] ble generet ved å hash'e NPWR0163_00 med HMAC, men etter å ha prøvd forskjellige blocksizer, algorithmer som gir 160 bits hash, så kunne jeg kokludere med at den ikkje gjør det. Hvis ikkje jeg har gjort noe galt i deklarings delen.

Deklarering

Kode

#define BLOCKSIZE       64
#define HASHSIZE        20
#define MSGSIZE         12

[...]
        const unsigned char key [ BLOCKSIZE ] = {
                0xe2, 0xed, 0x33, 0xc7, 0x1c,
                0x44, 0x4e, 0xeb, 0xc1, 0xe2,
                0x3d, 0x63, 0x5a, 0xd8, 0xe8,
                0x2f, 0x4e, 0xca, 0x4e, 0x94,
                0x00, 0x00, 0x00, 0x00, 0x00,
                0x00, 0x00, 0x00, 0x00, 0x00,
                0x00, 0x00, 0x00, 0x00, 0x00,
                0x00, 0x00, 0x00, 0x00, 0x00,
                0x00, 0x00, 0x00, 0x00, 0x00,
                0x00, 0x00, 0x00, 0x00, 0x00,
                0x00, 0x00, 0x00, 0x00, 0x00,
                0x00, 0x00, 0x00, 0x00, 0x00,
                0x00, 0x00, 0x00, 0x00 };

        const unsigned char msg [ MSGSIZE ] = {
                0x4E, 0x50, 0x57, 0x52, 0x30,
                0x30, 0x31, 0x36, 0x33, 0x5F,
                0x30, 0x30 };
SHA1 Output:

Kode

0467C74842369E09190FB4C6FD7B30DFE4C45FCD
Har også tenkt tanken på at det kan være den hashes med algortihmer som gir ut mer en 160 bit, også kortes den ned til 160 bit. For prøve mer når jeg kommet hjem.
Trophywhore
Trådstarter
19 0
Høres ut som du virkelig synes dette er spennende
Alt jeg vet er at svaret på begge deler skal ligge i den trop_util duppeditten slik jeg har forstått det
Da har jeg hatt litt mer tid på å teste ut forskjellige algorithmer, og kan fortelle at enten så brukes ikkje HMAC-hashing funksjonen, eller så er nøkkelen som brukes feil. Jeg kan ikkje finne noen likheter mellom hashen som skal stemme med NPWR00163_00

Kode

HMAC RipeMD160: ba743d5c622b1d85448cdbf64c0c3f84a32a7f2e

HMAC SHA1:         0467c74842369e09190fb4c6fd7b30dfe4c45fcd

HMAC SHA256:      c9899d91dc48a19fc4b33fc4a31d2fd60e175ac4184b64a478fd89f44ee97bcc

HMAC SHA384:      6541c5ff5f72e29fc4b20dad32927a9a916c16d4e7c55e2968885f660b9847750501bc21224c2fcb8543f5a1c40df15c

HMAC SHA512:      5a87b5858880233ea74fab89dc0b7e88e41e6084ad30b7e08992671b2593508e810bab7caf32a29d25a20b2551b6a932a6c71050e3eb640be62ff6f22d0e1518

HMAC Whirlpool:    b3225b40f27502971e749ba85a2451a32d2c029bffccec4442765b7dd893b7b022c534af2a6a62525a2080fcc122724a33451e548ecef0debb972b1fbfc6ecd8
Har også prøvd å hashe NPWR00163_00 uten HMAC funksjonen:

Kode

RipeMD160: 9b82e7c9b4511524bd7fe2a42f0b0b6330041d15

SHA1:         622deb154ca0ae4fb863a4b98a65996957ad30c7

SHA256:      c2b4fc6e1d507293426b836996b370b50f83cb043c6004a613a19d9ed13320a0

SHA384:      c325f90adc31c9676123f8af072ab51bffd71104956c3ea60c48d84d203fc545cba6c1e875e099dfc58cef1c6b1cf315

SHA512:      c4fefa12b19d78ff78e55fed85b392a2b5fcd7c44ada97c9929896f295503e1164da251a7ac1d5c91eee5da7429424ad40142c8cf2163aaa76e17ed8cbc32aa2

Whirlpool:    39a7029e1da5c061cd96bc485af06383a49b4a6ee88aa576995453cd529e9912cf652abe1e74c68b26e189d289417a13818f6dc26b468db3985baf3ff5cbf139
Har prøvd å søke i alle hashene etter stringen "08A8" som er starten på hashen som brukes i PS3 systemet, for å se om dem er splittet eller sammensatt, men uten lykke.

Jeg har også kontroll sjekket flere av hashene med hashings funksjonalitet andre har utviklet, av å til både dobbel å trippel sjekket med uavhengige funksjoner, får å utelukke programmeringsfeil, men dem har alle stemt.
Så hvis du kan spørre han russiske vennen din om hvilken hashings funksjonalitet som brukes så kunne det vært fint, hvis det er en av de ovenfor så stemmer ikkje saltings nøkkelen som brukes. Og da må den knekkes på nytt.

Jeg har ennå ikkje startet på å disassemble np_trophy_util.sprx.elf, har søkt litt rundt etter disassembler til å kunne disassemble 64-bit powerpc architecture. Men har ikkje ennå funnet noen som fungerer på x86_64 architecture PCer. Samt at jeg må kanskje sette meg ned noen timer å oppdatere meg litt på assembly kode, spesielt da på powerpc assembly.
Sist endret av 0xFF; 25. januar 2013 kl. 23:41.
▼ ... mange måneder senere ... ▼
Sitat av 0xFF Vis innlegg
Da har jeg hatt litt mer tid på å teste ut forskjellige algorithmer, og kan fortelle at enten så brukes ikkje HMAC-hashing funksjonen, eller så er nøkkelen som brukes feil. Jeg kan ikkje finne noen likheter mellom hashen som skal stemme med NPWR00163_00

Kode

HMAC RipeMD160: ba743d5c622b1d85448cdbf64c0c3f84a32a7f2e

HMAC SHA1:         0467c74842369e09190fb4c6fd7b30dfe4c45fcd

HMAC SHA256:      c9899d91dc48a19fc4b33fc4a31d2fd60e175ac4184b64a478fd89f44ee97bcc

HMAC SHA384:      6541c5ff5f72e29fc4b20dad32927a9a916c16d4e7c55e2968885f660b9847750501bc21224c2fcb8543f5a1c40df15c

HMAC SHA512:      5a87b5858880233ea74fab89dc0b7e88e41e6084ad30b7e08992671b2593508e810bab7caf32a29d25a20b2551b6a932a6c71050e3eb640be62ff6f22d0e1518

HMAC Whirlpool:    b3225b40f27502971e749ba85a2451a32d2c029bffccec4442765b7dd893b7b022c534af2a6a62525a2080fcc122724a33451e548ecef0debb972b1fbfc6ecd8
Har også prøvd å hashe NPWR00163_00 uten HMAC funksjonen:

Kode

RipeMD160: 9b82e7c9b4511524bd7fe2a42f0b0b6330041d15

SHA1:         622deb154ca0ae4fb863a4b98a65996957ad30c7

SHA256:      c2b4fc6e1d507293426b836996b370b50f83cb043c6004a613a19d9ed13320a0

SHA384:      c325f90adc31c9676123f8af072ab51bffd71104956c3ea60c48d84d203fc545cba6c1e875e099dfc58cef1c6b1cf315

SHA512:      c4fefa12b19d78ff78e55fed85b392a2b5fcd7c44ada97c9929896f295503e1164da251a7ac1d5c91eee5da7429424ad40142c8cf2163aaa76e17ed8cbc32aa2

Whirlpool:    39a7029e1da5c061cd96bc485af06383a49b4a6ee88aa576995453cd529e9912cf652abe1e74c68b26e189d289417a13818f6dc26b468db3985baf3ff5cbf139
Har prøvd å søke i alle hashene etter stringen "08A8" som er starten på hashen som brukes i PS3 systemet, for å se om dem er splittet eller sammensatt, men uten lykke.

Jeg har også kontroll sjekket flere av hashene med hashings funksjonalitet andre har utviklet, av å til både dobbel å trippel sjekket med uavhengige funksjoner, får å utelukke programmeringsfeil, men dem har alle stemt.
Så hvis du kan spørre han russiske vennen din om hvilken hashings funksjonalitet som brukes så kunne det vært fint, hvis det er en av de ovenfor så stemmer ikkje saltings nøkkelen som brukes. Og da må den knekkes på nytt.

Jeg har ennå ikkje startet på å disassemble np_trophy_util.sprx.elf, har søkt litt rundt etter disassembler til å kunne disassemble 64-bit powerpc architecture. Men har ikkje ennå funnet noen som fungerer på x86_64 architecture PCer. Samt at jeg må kanskje sette meg ned noen timer å oppdatere meg litt på assembly kode, spesielt da på powerpc assembly.
Vis hele sitatet...
I think this hmac hash function should use salt, not just simple hmac sha1 or something
like php hash_hmac
Sitat av suchasplus Vis innlegg
I think this hmac hash function should use salt, not just simple hmac sha1 or something
like php hash_hmac
Vis hele sitatet...
Can you give me further information? As I see, it's not any salt functionality in PHP implementation of hash_hmac ()?

string hash_hmac ( string $algo , string $data , string $key [, bool $raw_output = false ] )

algo
Name of selected hashing algorithm (i.e. "md5", "sha256", "haval160,4", etc..) See hash_algos() for a list of supported algorithms.

data
Message to be hashed.

key
Shared secret key used for generating the HMAC variant of the message digest.

raw_output
When set to TRUE, outputs raw binary data. FALSE outputs lowercase hexits.
Vis hele sitatet...
http://php.net/manual/en/function.hash-hmac.php