Nike+ hack

Salve a tutti,
smanettando un pò in SSH sul mio iPhone ho ricostruito un pò la logica di delle cartelle e di dove, più o meno, fossero posizionate le applicazioni. Sono un appassionato di running e utilizzo l’applicazione Nike+ integrata in tutti gli iPhone 3Gs. L’applicazione funziona alla perfezione. Per chi non lo sapesse mentre è in funzione un feedback vocale vi elenca le statistiche dell’allenamento come km percorsi, velocità, tempo ecc. ecc. L’unico problema che quando il feedback vocale parla, abbassa sì il volume della musica riprodotta durante l’allenamento, ma comuque la voce riprodotta è così bassa quasi da non riuscire a sentirla. E’ possibile quindi modificare i valori di volume di questa applicazione per poterla così migliorare?

Grazie mille per l’attenzione

Si potrebbe provare.
C’è una cartella (ora non la ricordo a memoria) dove sono contenti molti file .plist realitivi alle impostazioni audio di sistema e di varie app.
Se c’è una soluzione al tuo problema è in quella cartella (o magari in quella dall’app stessa).

La cartella è la stessa dove lavora l’app volume boost per autmentare il volume.
Se vuoi cerco e ti dico la cartella, tu mi posti l’elenco dei file (non ho il 3gs) e vediamo di trovare quello giusto (se c’è) da moficare

vuoi l’elenco dei file della cartella application o della cartella nike.app? Grazie per la tua disponibilità

La lista dei file che stanno sotto /private/var/mobile/Library/Preferences/ (guarda prima se ce ne è qualcuno che contiene il nome nike)

Altrimenti prova anche da ssh tramite putty a dare il comando

find / -name “nike

e poi copiami i risultati che trovi

beh morto il progetto?

si,cè un file riferito a nike,e contiene cose poco utili…nulla soprattutto che si riferisca al volume…al massimo cambi la Power Song…idee?

Ps.: tramite ricerca da terminale,risulta quel file,e altre 3 file immagine,di dubbissima utilità per il nostro scopo…

pps.: cè nella cartella nike.app un file interessante,con tutte le chiamate API (non so se l’iphone usa API,ma vabbè) per le varie funzioni del programma…ci vorrebbe pazienza per beccare quella che fa partire il voice control,ma anche fatto che si fa? Ci vorrebbe un debugger…e soprattutto l’“eseguibile” in carne ed ossa da modificare…

Idee poche ormai, visto anche che nessuno ha piu risposto.
Aumentare il volume non deve essere facile, se non c’è un impostazione da qualche parte la vedo dura.

Volendo si potrebbe come dici tu provare a studiare l’eseguibile, ma quasi sicuramente la gestione dell’uscita audio avverrà tramite chiamate a framework del firmware iphone che lavorano con il volume di sistema, quindi non sarò possibile preamplificare niente!
Comunque se uppi da qualche parte l’eseguibile e quel file di cui parli te ci guardo e ti so dire.

(comunque sull’iphone c’è un debugger, lo trovi sulla repo di saurik che ha portato il mitico gdb su iphone :D)

Scusate l’ignoranza… Ma provare ad alzare il volume coi tasti laterali dedicati mentre l’assistente vocale nike parla…?

Ovviamente non serve a nulla :stuck_out_tongue:

bello il debugger,funziona in realtime si? Proverò,ma e certamente come dici te…framework…bah…

si, comunque ti consiglio di usare anche classdump class-dump-x: class-dump for ObjectiveC 2.0 ABI sull’esegubile per vedere la struttura degli oggetti che usa (è poi lo stesso classdump che si usa per avere gli headers delle classi private della apple) ti semplificherà di molto la vita, magari ti troverai proprio la funzione

  • (void)setVolumeLevel: (int)volume;

da injectare :smiley:

pardon,come diavolo si chiamano gli eseguibili per iphone? hanno una estensione? provare ad aprire tutti i file in IDA mi pare assurdo XD

fa niente ho trovato…

ma che diavolo?? Appare stranissimo dentro IDA,non sembra affatto un eseguibile…mi sa che ho sbagliato file XD ma è l’unico plausibile,si chiama nike,è il piu grosso,e non ha estensione…

BAH…IDA non da risultati,ho provato a dumpare,pieno di .h inutili,nessun riferimento a volume,audio o feedback sonori…anzi uno si,nell’unico file .plist:

STSpokenFeedback

e basta…non è un eseguibile,non jumpa da nessuna parte,non fa nulla!! ARGH

ps.: ida non li manda in run,li apre come file binari…quindi è inutile…men che meno funzionerà l’amico Olly…

Gli esegubili su iphone non hanno estensione e quando li carichi su un disassemblatore devi impostare come processore l’ARM (quindi puoi usare solo IDA, visto che olly sopporta solo x86).
Qui trovi un esempio di reverse engineering del firmware iphone fatto con IDA, magari ti può dare una mano: .: Suondmao’s World - iPhone iapd Reverse Engineering :.

Comunque ida non supporta il debugging ma solo il disassembing per gli arm, appunto perchè non può simulare l’ambiente d’esecuzione. Comunque da IDA 5.3 in poi mi pare (lo trovi scritto sul sito ufficiale) è stata aggiunta la possibilità di debuggare applicazioni iphone usando il debugging remoto: iPhone debugger

Altrimenti l’unico modo che hai per debuggare da iphone è usando gdb

wow…interessante,molto bello l’articolo. Però vedi,a me il diagramma ad albero dice che non può aprirlo! -.-’ e soprattutto,ho provato ad aprire l’eseguibile che hai analizzato te,ed è totalmente diverso come appare…

niente upgrade alla 5.3,mi tengo la 5.0 e fine…peccato…

E’ molto strano, io uso ida 5.2 e non mi ha mai dato di questi problemi, non saprei come aiutarti…

accidenti che peccato…strano perchè ida l’ho sempre usato e funziona benissimo col resto…mah…