Un prolongateur d'instructions minimaliste
AMIE est une refonte Python de FRIEND qui se concentre uniquement sur l'architecture ARM (seuls AArch32 et AArch64 sont pris en charge). Il est à la fois léger et sans dépendance, et fournit les informations les plus pertinentes et les plus récentes sur les registres et les instructions du système ARM.
Pour les instructions MCR/MRC
et MCRR/MRCC
sur AArch32, et pour les instructions MSR/MRS
et SYS
sur AArch64, le codage du registre système est détecté et remplacé par son nom convivial dans la sous-vue IDA View .
Pour les instructions MCR/MRC
et MSR/MRS
, cela s'applique également à la sous-vue Pseudocode .
Le survol d'un registre système dans la sous-vue IDA View ou dans la sous-vue Pseudocode affichera un résumé (généralement conservé sous 30 lignes) de la page de documentation pertinente, y compris le champ de bits lorsqu'il est disponible.
Le survol d'un mnémonique d'instruction dans la sous-vue IDA View ou dans la sous-vue Pseudocode affichera également un résumé de la page de documentation appropriée et le modèle d'assembly approprié lorsqu'il est disponible.
La plus grande différence avec FRIEND est que les fichiers de ressources ( aarch32.json
et aarch64.json
) sont générés automatiquement à partir des outils d'exploration. Les registres et instructions du système (documentation et encodages) sont extraits par un script fait maison qui analyse les fichiers XML fournis par ARM.
Copiez le fichier du plugin amie.py
et ses fichiers de ressources aarch32.json
et aarch64.json
dans votre répertoire de plugins ou dans votre répertoire de plugins utilisateur (si vous souhaitez le partager entre plusieurs versions d'IDA Pro). Voici les chemins par défaut :
Système d'exploitation | Répertoire des plugins | Répertoire des plugins utilisateur |
---|---|---|
Fenêtres | %PROGRAMFILES%IDA 7.4plugins | %APPDATA%Hex-RaysIDA Proplugins |
Linux | ~/ida-7.4/plugins | ~/.idapro/plugins |
macOS | /Applications/IDA Pro 7.4/idabin/plugins | ~/.idapro/plugins |
Il n'y a pas de dépendances ! :-)
La prise en charge des registres système définis par l’implémentation n’est pas encore disponible.
Il n'y a pas de prise en charge Hex-Rays pour MCRR/MRRC
car il s'agit d'une limitation IDA Pro.