Bonjour,
Je suis sous HP-UX version 11.0.
Quand je vais dans les binaires d'une appli (/bin) je n'arrive pas à lire et donc encore moins éditer ce fichier.....Connaitriez vous la le moyen?
Merci d'avance,
Ludo.
Bonjour,
Je suis sous HP-UX version 11.0.
Quand je vais dans les binaires d'une appli (/bin) je n'arrive pas à lire et donc encore moins éditer ce fichier.....Connaitriez vous la le moyen?
Merci d'avance,
Ludo.
Les lire... pour quoi faire ?
De quel type de fichier s'agit-il ? Des exécutables compilés ou des bibliothèques ?
Bonjour et merci de ta réponse!
J'ai besoin de les lire car j'ai besoin de connaitre ce qu'il y a à l'intérieur afin de m'en servir dans un script.
Malheureusement je ne serais répondre à ta question....est ce qu'il y a un façon de les reconnaitre?
C'est des binaires qui servent à une appli qui envoie ou recoit des fichiers cryptés...un des binaire de cette appli a été lu et transformé par je ne sais qui et de ce fait j'ai pu voir que ces binaires attendent certains parametres node du serveur distant, nom du fichier etc etc et donc sans ces infos je suis bloqué!
Ce que j'ai pu voir dans des fichiers transformés c'est que c'est un scripts shell...
Je viens d'avoir la réponse c'est bien du compilé...
Une idée?
Merci d'avance.
Je fais suite au commentaire de al1_24, essaies la commande file sur les binaires et ensuite (voir le man associé) les commandes od, vi en mode lecture et si disponible sous HP-UX, hexdump, comme dans ce post :
http://www.developpez.net/forums/d96...e-binaire-hexa
lecture d'un fichier en mode binaire ou hexa [Résolu]
Nota: pas de HP-UX sous la main ...
Il y a plus simple, la commande suivante doit extraire toutes les chaines de caractères d'un exécutable:
Code : Sélectionner tout - Visualiser dans une fenêtre à part strings fichier
Bonsoir et merci de vos réponses!
Dans toutes les commandes cités, strings donne le meilleur résulat
Merci! simple et efficace, j'adore.
Comment modifier le contenu de se binaire donc avant tout comment le changer en un fichier texte? le man de strings ne dit sur la modification de ce fichier!
Le post cité ci-dessous
http://www.developpez.net/forums/d96...e-binaire-hexa
Parle de vi fichier puis de :%!xxd mais cela ne donne rien de mon coté.....
l+4m+LPo▒,\p+lq+▒`q▒,]s+▒`s▒,^▒u+▒`u▒,_|▒,a0|▒,bP}▒,e▒+▒▒+▒P▒▒,l▒,
▒,8`▒▒,m▒,T`▒▒,n▒▒,\`▒▒,o▒▒ ,q0▒▒,rP▒▒,u▒,t▒,▒P▒▒,|▒,▒▒,▒`▒▒,}▒,▒`▒▒,~▒▒,▒`▒▒,▒▒,▒0▒▒,▒P▒▒,▒▒-▒-,P▒▒,▒▒-L▒-x`▒▒,▒▒-▒`,▒▒▒ -▒`Ā,▒ʀ,▒0ʀ,▒Pˀ,▒▒-▒▒-▒P,▒▒-▒▒.`ڀ,▒▒.4`܀,▒▒▒.<`ހ,▒`߀,▒hsend.c<<<NULL_SYMBOL>>>int8_tuint8_tin t16_tuint16_tint32_tuint32_tintfast_tuintfast_tintmax_tuintmax_tintptr_tuintptr_tint_least8_t uint_least8_tint_fast8_tuint_fast8_tint_least16_tuint_least16_tint_fast16_tuint_fast16_tint_l east32_tuint_least32_tint_fast32_tuint_fast32_tptr32_tmqd_tdev_tino32_tino_tmode_tnlink_tfpos Voila à quoi ressemble mon binaire si je l'ouvre via un cat...
Bon dimanche à vous!
Effectivement, la commande strings permet d'extraire pour lecture les chaines de caractères d'un binaire.
Normal, car la commande strings extrait pour lecture les chaines de caractères d'un binaire mais ne donne aucune possibilité de modifier le fichier lui-même (heureusement d'ailleurs, car modifier un binaire n'est pas une action à prendre à la légère).le man de strings ne dit sur la modification de ce fichier!
Changer un fichier binaire en fichier texte n'a pas de sens (je parle au nom de la (probablement) grande majorité des développeurs).Comment modifier le contenu de se binaire donc avant tout comment le changer en un fichier texte?
La nature d'un fichier dépend grandement de l'oeil qui le regarde.
Pour faire simple, en très très gros, si l'on constate qu'il ne contient que des caractères ascii (lettres, chiffres, ponctuation et quelques autres) alors il est considéré par les humains (et par la commande file) comme un fichier texte.
S'il contient du binaire (ou s'il commence par un magic number approprié), c'est un fichier binaire.
Il n'existe pas d'opération magique permettant de changer un fichier binaire en fichier texte.
En revanche, il est tout à fait possible d'éditer un fichier binaire pour en modifier le contenu!
Cependant, la méthode "normale" est de:
- trouver les sources qui ont permis de le générer
- modifier les sources
- recompiler les sources (commande make ou commande interne d'un IDE)
Si tu soupçonnes que le binaire en question a été modifié par un script shell ou par une commande, le plus simple et le plus raisonnable serait de le réinstaller (soit à partir de l'original, soit à partir d'une sauvegarde).
Sinon, si tu peux nous fournir la commande qui l'a modifié (par exemple, un sed -i malheureux), il est possible que nous puissions te donner la commande "inverse" qui permettrait de restaurer le binaire dans l'état précédent.
La méthode "manuelle brute" est possible aussi, mais elle demande de savoir précisément ce que l'on fait!
Par exemple, au sein d'une chaîne de caractères repérée dans le binaire, remplacer un caractère par un autre devrait "marcher" sans trop de problème.
En revanche, supprimer un caractère ou en ajouter un sont des opérations beaucoup plus dangereuses qui risquent de "casser" le binaire et le rendre au mieux inutilisable, au pire, dangereux.
Ceci dit, il existe divers outils pour éditer un binaire.
L'un des plus simples à utiliser est àmha emacs.
Mais il faut vraiment savoir très précisément ce que l'on fait (ce qui, manifestement (ou plutôt d'après l'avis que je me fais à partir de ce que je peux lire de ce que tu as écrit), n'est PAS le cas!).
Pour poster un lien, il faut mettre le "vrai" lien, avec le chemin complet et non la "version abrégée" qui contient des points de suspension!Le post cité ci-dessous
http://www.developpez.net/forums/d96...e-binaire-hexa
Une petite recherche indique que le lien que tu voulais insérer est probablement celui-ci (lecture-d-fichier-mode-binaire-hexa)
Je ne connais pas suffisamment la commande vi pour dire pourquoi "cela ne donne rien".Parle de vi fichier puis de :%!xxd mais cela ne donne rien de mon coté.....
Si tu commences à éditer le binaire avec la commande vi sans comprendre ce que tu fais, tu t'exposes à de gros risques... (voir plus haut)
Je vois que tu as essayé d'utiliser la balise "CODE": il faut mettre le code entre les balises "CODE" et "/CODE", et non pas après la balise fermante.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 l+4m+LPo▒,\p+lq+▒`q▒,]s+▒`s▒,^▒u+▒`u▒,_|▒,a0|▒,bP}▒,e▒+▒▒+▒P▒▒,l▒, ▒,8`▒▒,m▒,T`▒▒,n▒▒,\`▒▒,o▒▒ ,q0▒▒,rP▒▒,u▒,t▒,▒P▒▒,|▒,▒▒,▒`▒▒,}▒,▒`▒▒,~▒▒,▒`▒▒,▒▒,▒0▒▒,▒P▒▒,▒▒-▒-,P▒▒,▒▒-L▒-x`▒▒,▒▒-▒`,▒▒▒ -▒`Ā,▒ʀ,▒0ʀ,▒Pˀ,▒▒-▒▒-▒P,▒▒-▒▒.`ڀ,▒▒.4`܀,▒▒▒.<`ހ,▒`߀,▒hsend.c<<<NULL_SYMBOL>>>int8_tuint8_tin t16_tuint16_tint32_tuint32_tintfast_tuintfast_tintmax_tuintmax_tintptr_tuintptr_tint_least8_t uint_least8_tint_fast8_tuint_fast8_tint_least16_tuint_least16_tint_fast16_tuint_fast16_tint_l east32_tuint_least32_tint_fast32_tuint_fast32_tptr32_tmqd_tdev_tino32_tino_tmode_tnlink_tfpos
On dit plutôt que la commande cat affiche le contenu du binaire. On réserve généralement le verbe "ouvrir" aux éditeurs (comme emacs ou vi).Voila à quoi ressemble mon binaire si je l'ouvre via un cat...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager