ciao.
ho incominciato ad interessarmi di reverse engineering, e anche se non possiedo un router alice, sto incominciando a guardare il firmware dell'Alice Gate2 Plus Wi-Fi.
premetto che so usare IDA Pro con x86, il MIPS l'ho appena iniziato a studiare e per adesso non trovo problemi riguardo a quello.
le domande sono:
complessivamente, il codice e i dati che sono nel router si possono raggruppare in kernel, rootfs e cfe? o ci sono altre sezioni?
cos'è la psi area?
nel MIPS, tutti i programmi risiedono nello stesso spazio di indirizzamento, come la vecchia real mode dell'x86?
l'indirizzamento virtuale viene settato dal firmware al momento di boot, o dipende anche lui dall'hardware?
ho scaricato questo file: AGW2-PLUS_flash_image_8MB.w (non ricordo da dove, non so che versione, ma è il firmware originale): ad IDA non piacciono gli eseguibili che trovo nel rootfs, anche se sono in formato ELF. sapete come farglieli piacere?
qualcuno ha mai usato un emulatore per MIPS? se sì qual è il migliore?
vorrei segnalarvi anche che il metodo per estrarre i files dal rootfs è identico a quello per decomprimere il kernel: per ogni blocco (attenzione, un file può avere più blocchi!) bisogna aggiungere manualmente una firma che piaccia a lzma. Forse lo sapevate già, ma ve lo dico lo stesso perché ci ho sbattuto la testa abbastanza a lungo; inoltre tutte le versioni di unsquashfs che ho trovato in giro non sono i grado di decomprimere correttamente il rootfs di quel firmware originale che ho scaricato. Me la sono cavata facendo estrarre da una versione di unsquashfs modificata da me i file senza decomprimerli, e poi li ho decompressi come se fossero un file di kernel. Non posso postare del codice o degli eseguibili, perché è stata una cosa molto confusionaria, metà su linux metà su windows, metà C e metà java

ciao