Injecter un code dans un processus ?
Résolu
OmeGaFire_
Messages postés
83
Date d'inscription
Statut
Membre
Dernière intervention
-
OmeGaFire_ Messages postés 83 Date d'inscription Statut Membre Dernière intervention -
OmeGaFire_ Messages postés 83 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Tout d'abord je tiens à préciser que ce que je demande est, je pense, très compliqué à mettre en oeuvre.
Je voudrais savoir si il est possible d'injecter un code compilé dans un jar, dans le processus javaw.exe, et, si vous savez en plus comment le faire, vous pouviez me donner des exemples.
Bonne journée, OmeGaFire_.
Tout d'abord je tiens à préciser que ce que je demande est, je pense, très compliqué à mettre en oeuvre.
Je voudrais savoir si il est possible d'injecter un code compilé dans un jar, dans le processus javaw.exe, et, si vous savez en plus comment le faire, vous pouviez me donner des exemples.
Bonne journée, OmeGaFire_.
A voir également:
- Injecter un code dans un processus ?
- Code ascii - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code puk bloqué - Guide
- Code activation windows 10 - Guide
- Comment créer un qr code - Guide
2 réponses
Salut,
Quand tu lances ton serveur, le processus javaw.exe se lance donc si ton fichier .jar est présent sur la plate-forme bah voila x).
Quand tu lances ton serveur, le processus javaw.exe se lance donc si ton fichier .jar est présent sur la plate-forme bah voila x).
Bonjour,
C'est tout à fait possible et sans avoir à contourner quoi que ce soit en terme de sécurité. C'est même le principe de base des serveurs Java EE qui chargent et des déchargent des jar/war/ear à la volée potentiellement sans jamais arrêter le processus du serveur Java.
Cela se base sur le fonctionnement des ClassLoader et la manière dont Java lit les fichiers .class pour les transformer en objet Class dont on peut ensuite utiliser toutes les fonctionnalités.
C'est tout à fait possible et sans avoir à contourner quoi que ce soit en terme de sécurité. C'est même le principe de base des serveurs Java EE qui chargent et des déchargent des jar/war/ear à la volée potentiellement sans jamais arrêter le processus du serveur Java.
Cela se base sur le fonctionnement des ClassLoader et la manière dont Java lit les fichiers .class pour les transformer en objet Class dont on peut ensuite utiliser toutes les fonctionnalités.
Comme ça tout fait, j'en n'ai pas sous le coude, mais ton besoin a l'air relativement usuel donc la documentation pourrait suffire :
Pour les exemples basiques voir la javadoc de ClassLoader :
https://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html
Sachant que pour les fichiers ce sûrement un URLClassLoader :
https://docs.oracle.com/javase/8/docs/api/java/net/URLClassLoader.html
Remarque : le JarClassLoader n'est pas standard dans l'API Java, mais il devrait presque être magique pour ton besoin :
https://docs.oracle.com/javase/tutorial/deployment/jar/jarclassloader.html
https://docs.oracle.com/javase/tutorial/deployment/jar/examples/JarClassLoader.java
Pour les exemples basiques voir la javadoc de ClassLoader :
https://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html
Sachant que pour les fichiers ce sûrement un URLClassLoader :
https://docs.oracle.com/javase/8/docs/api/java/net/URLClassLoader.html
Remarque : le JarClassLoader n'est pas standard dans l'API Java, mais il devrait presque être magique pour ton besoin :
https://docs.oracle.com/javase/tutorial/deployment/jar/jarclassloader.html
https://docs.oracle.com/javase/tutorial/deployment/jar/examples/JarClassLoader.java
Je ne parle pas de serveur. J'ai un processus javaw.exe et j'aimerais injecter un jar compilé dedans alors que le processus est lancé. Comment je fais ?