IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

modifier du C# d'un logiciel


Sujet :

C#

  1. #1
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2017
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2017
    Messages : 90
    Points : 65
    Points
    65
    Par défaut modifier du C# d'un logiciel
    Bonjour,
    j'ai une question de néophyte.
    Je ne connais pas le langage c#. Par contre, je pratique le PHP.
    Mais j'utilise un petit logiciel de gestion codé en c#.
    En fait, j'utilise ce logiciel pour une association. Mes adhérents sont divisés par groupe. Et ce logiciel permet de nommer un délégué pour le groupe qui peut envoyer un rapport aux nom des membres. Mais il me limite à 5 personnes. Et je voulais pousser la limite en passant par le code.
    J'ai ouvert le logiciel avec visual studio, mais je n'ai pas trouvé le code à modifier. Il a l'air compilé.
    Du coup, j'ai utilisé cutter qui apparemment décompile le c# mais bon pas plus de succès.
    Est-ce que c'est possible de modifier le code et de l'enregistrer ? Et si oui comment ?
    Merci beaucoup.

  2. #2
    Membre chevronné
    Avatar de PixelJuice
    Homme Profil pro
    Ingénieur .NET & Game Designer
    Inscrit en
    Janvier 2014
    Messages
    639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur .NET & Game Designer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2014
    Messages : 639
    Points : 2 148
    Points
    2 148
    Par défaut
    Bonsoir,

    Alors tout d'abord :

    Cette limitation me fait penser à un free-trial ou quelque chose dans le genre, j'imagine que ce logiciel possède une version complète qui n'a pas une telle limitation ? Ou alors c'est une limite un peu bête faite par le(s) développeur(s) et tu peux ignorer mon propos.

    Dans tous les cas, voici quelques points :

    • Cutter est un désassembleur / décompileur un peu pour tout, mais je ne crois pas qu'il fasse du C# directement, ceci dit je te recommanderais plutôt dotPeek, que j'utilise perso.
    • Oui c'est possible de modifier du C# mais c'est soumis à plusieurs conditions, comme l'obfuscation par exemple. Si tu ne peux pas lire clairement le code, ça risque d'être compliqué.
    • Est-ce que la limite est codée en dur ou non, le logiciel utilise t-il une authentification de compte en passant par un serveur tiers ou quelque chose dans le genre ? (dans ce cas là, c'est plutôt râpé)


    Du coup, soit tu peux décompiler le soft et trouver très facilement la limite, et recompiler par derrière. Soit c'est un bordel sans nom et il faudra passer par un désassembleur. La 2 ième option n'est pas forcément + compliquée mais elle implique beaucoup plus de connaissances, remonter jusqu'à la fonction qui s'occupe de vérifier la limite et ensuite la valeur, etc ...

    Donc voilà, à toi de voir quand tu décompileras le logiciel, il faudra croiser les doigts.

  3. #3
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2017
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2017
    Messages : 90
    Points : 65
    Points
    65
    Par défaut
    Merci beaucoup.
    Je vais suivre tes recommandations.

  4. #4
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Bonjour,

    Pour décompiler un binaire il existe dnspy, outil gratuit et très puissant.

    PS : attention decompiler un binaire soumis à licence est considéré comme du piratage.

  5. #5
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2017
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2017
    Messages : 90
    Points : 65
    Points
    65
    Par défaut
    Merci,
    c'est juste pour moi, pour me faciliter la vie.
    Par contre j'y suis depuis ce matin, mais j'ai du mal à comprendre l'architecture.
    Je travaille souvent sur symfony ou il est facile pour moi de m'y retrouver, mais là, je nage.

  6. #6
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2017
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2017
    Messages : 90
    Points : 65
    Points
    65
    Par défaut
    Il y a-t-il une architecture type dans ce langage ? Je ne m'y retrouve pas.

  7. #7
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Bonjour,

    Si tu nous mets des captures d écran peut être que nous y verrions plus clair car quand tu dis : je ne comprends pas l architecture type de ce langage pour le coup on n y comprends rien non plus ,...désolé...o_O

    Dnspy est un decompiler C#/vbnet (XAML), es tu certains que le fichier .exe que tu souhaites decompiler à été codé en c# ???

  8. #8
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2017
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2017
    Messages : 90
    Points : 65
    Points
    65
    Par défaut
    Oui désolé.


  9. #9
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Déjà il s agit de langage XAML, ensuite il faut que tu trouves le code dans la bonne classe qui permet d outrepasser la limitation (5)....
    Il faut t approprier la logique du code source et pour se faire, tu deplies les noeuds un à un tu affiches le code (decompilé en c#) sur le volet de droite et ensuite tu cherches potentiellement à quel endroit du code C# il y a cette limitation.
    Il existe ensuite des tutoriels sur internet avec l outil DnSpy (reverse engenieering) pour remplacer la valeur voulue et ensuite pour enregistrer et recompiler le binaire (.exe) en mettant à jour les nouveaux IL stack.

    Si tu veux d autres infos : MP stp car ce n est certainement pas approprié comme endroit pour parler de reverse engenieering.....

  10. #10
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2017
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2017
    Messages : 90
    Points : 65
    Points
    65
    Par défaut
    ok merci beaucoup

  11. #11
    Membre chevronné
    Avatar de PixelJuice
    Homme Profil pro
    Ingénieur .NET & Game Designer
    Inscrit en
    Janvier 2014
    Messages
    639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur .NET & Game Designer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2014
    Messages : 639
    Points : 2 148
    Points
    2 148
    Par défaut
    Citation Envoyé par wallace1 Voir le message
    Si tu veux d autres infos : MP stp car ce n est certainement pas approprié comme endroit pour parler de reverse engenieering.....
    Je profite que pour une fois ça soit abordé mais, j'ai lu les règles et je pense que ce n'est pas contre celles-ci :

    Le piratage est illégal, de même que sont interdits les messages concernant les cracks, warez, sérials (sauf évaluation), etc. Est bien sûr autorisé tout ce qui concerne les logiciels gratuits, freewares et évaluation.
    Il va de soi qu'il est interdit de demander un crack directement, mais est-il contre les règles d'aider à en créer un ? (ce qu'essaye quasiment de faire l'OP d'ailleurs), ou même qu'en est-il du reverse-engineering tout court ?

    Si un modo pourrait nous éclairer la dessus ça pourrait être pas mal parce que c'est une question qui me trotte depuis que je suis ici, le RE étant en plus un de mes dadas.




    Comme l'a dit wallace1, il va falloir étudier un peu la structure du code, et ça dépends de la chance que tu auras, mais ça peut aller très vite comme ça peut être assez ardu pour changer la valeur.

    Perso, j'aurai utilisé un désassembleur avec un debugger juste avant que la limite ne soit vérifier (typiquement, lorsque tu veux rajouter un utilisateur) , et très vite tu peux retrouver la valeur ou la fonction et en virer l'appel. Après il faut se débrouiller vite fait en Assembleur et être calé sur la gestion de la mémoire.

  12. #12
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    @pixeljuice :
    Justement Dnspy embarque un debugger.
    Pas besoin de connaître le langage assembleur dans le cas d'une decompilation/recompilation en dotnet, simplement avoir les bons outils et une connaissance accrue du langage IL et une bonne compréhension de la structure du code.

Discussions similaires

  1. Réponses: 2
    Dernier message: 29/04/2008, 16h26
  2. Réponses: 2
    Dernier message: 26/12/2007, 19h45
  3. logiciel pour modifier des pages d'une site sans connaissance de code
    Par charisma dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 07/06/2007, 17h10
  4. Logiciel modifiant plusieurs .htm en une seule fois
    Par jorisvh dans le forum Autres
    Réponses: 4
    Dernier message: 21/10/2006, 20h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo