Je sais que Winapi a des fonctions de piratage intégrées. P>
Je les ai même utilisés dans C # avec Pinvoke ... pour pirater des mines cutanées ... c'était facile ... SO ... P>
Comment puis-je protéger ma demande de la modification de la mémoire de processus, refuser l'injection de la DLL et d'autres moyens de piratage. Comment ?! P>
Hope Winapi a quelque chose comme Void DontouchmeoriWillterminou (Bool Protect) Code> ... P>
4 Réponses :
Le contrôle d'accès dans Windows est sur une base d'objet. Si vous souhaitez protéger l'objet de processus, vous devez définir l'ACL de l'objet de processus, que ce soit lorsque le processus est créé (via LPProcessAttributes de CreateProcess) ou ensuite (via SekernelObjectsecurity ). Si vous ajoutez une entrée "NYY TOUT" à l'ACL, les tentatives d'ouverture du processus par un attaquant échouera. P>
Bien sûr, le propriétaire du processus (et donc tout code malveillant exécuté par l'utilisateur) peut changer la liste de contrôle d'accès à ce qu'elle était - le code malveillant peut ne pas être prêt à le faire, cependant. Pour empêcher efficacement les attaques de l'espace utilisateur, vous devez exécuter le processus en tant qu'utilisateur non interactif (par exemple en tant que localysystem). P>
Aucune protection ne peut empêcher les attaques de l'espace du noyau, de sorte que quiconque puisse installer des pilotes peut également pirater tout processus sur le système. P>
1. Toute façon de détecter la demande de lanceur? 2. Puis-je détecter que attirer et désactiver l'attaquant (crash PC instantané ou quelque chose ...)
piratage? Non, cela s'appelle débogage (pour la plupart) p>
et la réponse courte à votre question est "Non, tu ne peux pas faire ça". J'entends cela à Vista et plus tard, certains processus du système d'exploitation que vous ne pouvez pas déboguer (processus DRM et les goûts), mais je ne sais pas si vous pouvez faire fonctionner vos processus de cette façon. p>
La vraie question est la raison pour laquelle vous voulez le faire et que vous n'avez pas de choses plus importantes à craindre de (dire, performance et convivialité, sans oublier la correction de votre logiciel)? p>
À propos de la modification de la mémoire, un moyen trivial de détecter qu'il serait de garder une somme de contrôle à certaines de vos données. P>
Ne pas déployer / exécuter votre processus sur une machine contrôlée par l'utilisateur final: exécutez plutôt votre processus sur votre propre ordinateur et laissez les utilisateurs finaux communiquer avec votre processus via Internet. P>
Le libellé de cette question pourrait être meilleur mais la question elle-même mérite d'être demandée. +1
Connexes: Stackoverflow.com/questions/869320/...
Le libellé est bien !!! +1 pour cela et pour une bonne question!
lecture recommandée.