• Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Tutoriel Créer votre propre injecteur DLL
#1
Si vous utilisez un injecteur public sur CSGO, vous pouvez avoir un bannissement, vous pouvez faire votre propre injecteur et c'est très simple.

Voici les étapes de base:

1. Obtenir l'adresse de LoadLibraryA
2. Ouvrir le processus
3. Allouer 260 octets dans le processus
4. Ecrire le chemin dll aux octets attribués
5. CreateRemoteThread à l'adresse de LoadLibraryA, avec l'adresse de ces 260 octets
6. Vérifiez si l'injection a réussie

Passons au tutoriel !

1. Obtenir l'adresse de LoadLibraryA :

Code :
HMODULE kernel = GetModuleHandle("Kernel32");
// Obtenir l'adresse de LoadLibraryA
FARPROC loadLibary = GetProcAddress(kernel, "LoadLibraryA");

Étant donné que kernel32.dll est chargé au même endroit dans chaque processus, l'adresse de LoadLibrary dans le processus cible est la même.

2. Ouvrir le processus:

Code :
// Ouvrir le processus avec tout les accès
HANDLE processH = OpenProcess(PROCESS_ALL_ACCESS, FALSE, processId);

3. Allouer 260 octets dans le processus:

Code :
// Allouer 260 octets
LPVOID dllNameAddress = VirtualAllocEx(processH, NULL, 260, MEM_COMMIT, PAGE_READWRITE);

Cela attribue 260 octets (MAX_PATH) dans le processus cible.

4. Ecrire le chemin dll aux octets attribués:

Code :
// Temp Buffer
DWORD numOfBytes;
// Ecrire le chemin dll à la mémoire allouée
WriteProcessMemory(processH, dllNameAddress, pathToDll, 260, &numOfBytes);

Ici, nous écrivons notre chemin dll à la mémoire afin que nous puissions passer à LoadLibrary plus tard.

5. CreateRemoteThread à l'adresse de LoadLibraryA, avec l'adresse de ces 260 octets:

Code :
HANDLE remoteThread = CreateRemoteThread(processH, NULL, 0, (LPTHREAD_START_ROUTINE)loadLibary, dllNameAddress, 0, NULL);

Nous créons un thread dans le processus, appelons l'adresse de LoadLibraryA (Étape 1) et passons l'adresse à notre dllPath. Le processus cible devrait appeler LoadLibrary et charger notre dll.

6. Vérifiez si l'injection a réussie

Code :
// Vérifiez si le thread a été créé
if (remoteThread)
{
// Attendre la sortie
DWORD result = WaitForSingleObject(remoteThread, 10000);
if (result == WAIT_OBJECT_0)
{
cout << "Injecté avec succès!\n";
}
else if (result == WAIT_TIMEOUT)
{
cout << "Temps d'attente dépassé! (Utilisé CreateThread dans dllMain)\n";
}
else
{
cout << "Impossible dinjecter!\n";
}
}

Nous vérifions si nous avons créé le thread, puis nous attendons quand il est terminé. Si le résultat est WAIT_OBJECT_0, l'injection a réussi. Si le résultat est WAIT_TIMEOUT, le thread bloque l'exécution du programme mais il a été injecté avec succès. Si le résultat est autre chose, le thread a échoué, donc l'injection à échouer.

J'espère que ce tutoriel vous a aidé à comprendre comment faire un injecteur DLL.
Si je peux améliorer n'importe quoi, dite le moi.
#2
Merci à toi pour le tutoriel, je garde ça de côté au cas où.
 
  Répondre
#3
On peut avoir un screen de l'injecteur please? 1
[Image: 1515175486-screenshot-2.jpg]

  Répondre
#4
(19-04-2017, 11:35)Guildo a écrit : Merci à toi pour le tutoriel, je garde ça de côté au cas où.

De rien 1
(19-04-2017, 11:40)Tekiox a écrit : On peut avoir un screen de l'injecteur please? 1

L'injecteur c'est à toi de le crée, c'est à toi de faire le design et de mettre le code, du coup aucun screen désolé :p
  Répondre
#5
C'est vraiment bien ce genre de contenu (même si je n'y comprend pas grand chose haha), car ça explique les grandes lignes et donne des pistes sur le fonctionnement de base sans pour autant donner trop de code (ce qui évite les copie collé). J'encourage donc vivement ce type de partage ! Ce serait super ce genre de tutos pour créer des cheats (un pour wh, un pour aimbot etc). Merci donc pour ce partage qui en aidera peut-être plus d'un Wink
"Le savoir fait le pouvoir" - WH40k
  Répondre
#6
(19-04-2017, 17:22)Anonymeuh a écrit : C'est vraiment bien ce genre de contenu (même si je n'y comprend pas grand chose haha), car ça explique les grandes lignes et donne des pistes sur le fonctionnement de base sans pour autant donner trop de code (ce qui évite les copie collé). J'encourage donc vivement ce type de partage ! Ce serait super ce genre de tutos pour créer des cheats (un pour wh, un pour aimbot etc). Merci donc pour ce partage qui en aidera peut-être plus d'un Wink

C'est fait exprès haha 1
Je posterais des tutoriels pour crée un wh etc.. plus tard et merci pour ton message 1
  Répondre
#7
Salut xnooz tu as employé des termes qui pour moi ressemble actuellement a sa:
azeadzqsdvbn,jduhb.

Pour que j'essaye de comprendre je dois avoir des bases sur quoi, je voudrai bien apprendre pour comprendre.
[Image: 76561198152491852.png]
  Répondre
#8
(19-04-2017, 17:53)axel_619 a écrit : Salut xnooz tu as employé des termes qui pour moi ressemble actuellement a sa:
azeadzqsdvbn,jduhb.

Pour que j'essaye de comprendre je dois avoir des bases sur quoi, je voudrai bien apprendre pour comprendre.

Salut,
Il faut que tu apprenne le langage de programmation C ou C++ 1
  Répondre
#9
Possible de faire un injector pour Arma3 qui bypass BE & InfiStar ?
  Répondre
#10
(06-05-2017, 10:05)ragnaR a écrit : Possible de faire un injector pour Arma3 qui bypass BE & InfiStar ?

Tu forces avec ton battleye x)
N'utilises pas ce genre de trucs tu te feras instant ban
Cheat CS GO Français : www.unknownskill.com
  Répondre
#11
(06-05-2017, 15:15)Background a écrit : Tu forces avec ton battleye x)
N'utilises pas ce genre de trucs tu te feras instant ban

Mddr mais toi aussi t'est relou xD
Oue je demander seulement
  Répondre
#12
c'est efficace effectivement 1 VAC direct
  Répondre


Sujets apparemment similaires...
Sujet Auteur Réponses Affichages Dernier message
  Tutoriel Utiliser Discord comme injecteur DLL [Non détecté] xnooztvfr 6 1,327 16-05-2017, 22:19
Dernier message: xnooztvfr
  Tutoriel VAC n'est pas en mesure de vérifier votre session de jeu. Guildo 2 4,398 05-05-2017, 11:39
Dernier message: Guildo
  Tutoriel Comment installé son propre report/commend bot Rhaykoza 5 1,442 03-03-2017, 21:04
Dernier message: Guildo

Atteindre :