• STATISTIQUES
  • Il y a eu un total de 2 membres et 8905 visiteurs sur le site dans les dernières 24h pour un total de 8 907 personnes!


    Membres: 2 605
    Discussions: 3 580
    Messages: 32 820
    Tutoriels: 78
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [EN] phrack
    Lot's of stuff !
    Hacking
    [FR] PHP France
    Pour tout savoir sur le PHP, en français. Vous trouverez des tutoriels, des exemples, des astuces, toute la do...
    Hacking
    [FR] Zenk-Security
    La communauté zenk-security a pour objet principal la sécurité informatique, nous sommes des tou...
    Hacking
    [EN] wechall
    Pour les gens n'étant pas familiers avec les sites de challenges, un site de challenges est un site propos...
    Hacking
    [FR] dcode
    dcode.fr est le site indispensable pour décoder des messages, tricher aux jeux de lettres, résoudre des énigmes...
    Outils / Add-on
    [EN] This is legal
    Basic: 10, Realistic: 5, Programming: 1, Bonus: 11, SQL: 2, Encryption: 6, Application: 4, User Contributed: 3
    Challenges
    [EN] Defcon
    Lancé en 1992 par Dark Tangent, DEFCON est la plus ancienne et la plus grande conférence underground de...
    Hacking

  • DONATION
  • Si vous avez trouvé ce site internet utile, nous vous invitons à nous faire un don du montant de votre choix via Paypal. Ce don servira à financer notre hébergement.

    MERCI!




Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Process windows
26-10-2016, 16h16 (Modification du message : 26-10-2016, 16h21 par supersnail.)
Message : #1
skii Hors ligne
Newbie
*



Messages : 19
Sujets : 4
Points: 3
Inscription : Sep 2012
Process windows
Bonjour,

J'ai une petite question à vous posez, j'ai fais une méthode qui me permet d'afficher tout les pid de mes processus, mais aussi le nom de mes pid. Voilà mon code

Code C :

int ordinateur::enumThread(){
    DWORD id[1024], nb;
    int i;
    if ( !EnumProcesses( id, sizeof(id), &nb ) ){
        return 0;
    }
    for(i=1;i<(nb / sizeof(DWORD));i++){
        char nom[PATH_MAX] = "<Impossible>";
        HANDLE process = OpenProcess( PROCESS_QUERY_INFORMATION | PROCESS_VM_READ,FALSE, id[i] );
        if(NULL != process){
            HMODULE hMod;
            DWORD cbNeeded;

            if ( EnumProcessModules( process, &hMod, sizeof(hMod),
                 &cbNeeded) )
            {
                GetModuleBaseName( process, hMod, nom,
                                   sizeof(nom)/sizeof(char) );
            }
        }
        cout << nom << " pid : " << id[i] << endl;
        CloseHandle( process );
    }

}
 


Le souci, c'est que j'ai bien le pid de tout les programmes, mais je n'ai pas le nom de ces pid, j'en est quelques un, comme le nom de mon projet, spootify et autre, mais je n'ai pas chrome, svhost et plein d'autre processus qui tournent. Est-ce une question de droit ? sachant qu'avec PROCESS_ALL_ACCESS, j'ai le même souci.

Merci d'avance pour l'aide !
+1 (0) -1 (0) Répondre
26-10-2016, 16h21
Message : #2
supersnail Hors ligne
Éleveur d'ornithorynques
*******



Messages : 1,610
Sujets : 72
Points: 466
Inscription : Jan 2012
RE: Process windows
Bonjour,

Peut-être qu'un GetLastError pourrait nous donner une indication sur ce qui cloche (via un code d'erreur cryptique :p). Accessoirement GetModuleBaseName va taper dans le PEB du process cible à coup de ReadProcessMemory, du coup en plus des problèmes de droit d'accès à la mémoire, tu peux éventuellement avoir des problèmes avec du 32/64 bits.

Néanmoins, je suppose que https://msdn.microsoft.com/fr-fr/library...s.85).aspx pourrait également t'intéresser Wink
Mon blog

Code :
push esp ; dec eax ; inc ebp ; and [edi+0x41],al ; dec ebp ; inc ebp

"VIM est merveilleux" © supersnail
+1 (1) -1 (0) Répondre
26-10-2016, 16h39
Message : #3
skii Hors ligne
Newbie
*



Messages : 19
Sujets : 4
Points: 3
Inscription : Sep 2012
RE: Process windows
En effet, je viens d'utiliser getlasterror(), l'erreur qui reviens est la numéro 5, access denied, mais aussi 6, the handle is invalid et pour finir, j'ai beaucoup d'erreur 299, Only part of a ReadProcessMemory or WriteProcessMemory request was completed.

Je vais regarder les liens que tu m'as donné. Merci pour la réponse.
+1 (0) -1 (0) Répondre
26-10-2016, 16h48
Message : #4
supersnail Hors ligne
Éleveur d'ornithorynques
*******



Messages : 1,610
Sujets : 72
Points: 466
Inscription : Jan 2012
RE: Process windows
Tu peux aussi t'inspirer du code venant de ReactOS (clone de Windows), qui implémente justement un listing des process :]. Par exemple, https://doxygen.reactos.org/db/db8/tlist_8c_source.html Smile
Mon blog

Code :
push esp ; dec eax ; inc ebp ; and [edi+0x41],al ; dec ebp ; inc ebp

"VIM est merveilleux" © supersnail
+1 (0) -1 (0) Répondre
26-10-2016, 17h38 (Modification du message : 26-10-2016, 17h38 par skii.)
Message : #5
skii Hors ligne
Newbie
*



Messages : 19
Sujets : 4
Points: 3
Inscription : Sep 2012
RE: Process windows
En effet, j'ai regardé le code, va falloir que je trie un peux, mais bien embêtant ce qu'il faut faire juste pour récupérer les processus ^^!

Merci.

EDIT: Voilà la solution que j'ai choisi :

Code :
HANDLE WINAPI CreateToolhelp32Snapshot(
        DWORD dwFlags,
        DWORD th32ProcessID
    );
    HANDLE hSnapShot=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);

    BOOL WINAPI Process32Next(
        HANDLE hSnapshot,
        LPPROCESSENTRY32 lppe
    );
    PROCESSENTRY32* processInfo=new PROCESSENTRY32;
    processInfo->dwSize=sizeof(PROCESSENTRY32);
    cout<< "Name : ";
    while(Process32Next(hSnapShot,processInfo)!=FALSE)
    {
        cout<<" Process ID: "<<processInfo->th32ProcessID;
        cout<<endl<<" Name: "<<processInfo->szExeFile;
    }
    CloseHandle(hSnapShot);
+1 (0) -1 (0) Répondre
26-10-2016, 17h45
Message : #6
supersnail Hors ligne
Éleveur d'ornithorynques
*******



Messages : 1,610
Sujets : 72
Points: 466
Inscription : Jan 2012
RE: Process windows
C'est la solution la plus facile, toute la tuyauterie interne est planquée par iphlpapi, mais c'est moins rigolo du coup :]
Mon blog

Code :
push esp ; dec eax ; inc ebp ; and [edi+0x41],al ; dec ebp ; inc ebp

"VIM est merveilleux" © supersnail
+1 (0) -1 (0) Répondre
26-10-2016, 18h43
Message : #7
skii Hors ligne
Newbie
*



Messages : 19
Sujets : 4
Points: 3
Inscription : Sep 2012
RE: Process windows
(26-10-2016, 17h45)supersnail a écrit : C'est la solution la plus facile, toute la tuyauterie interne est planquée par iphlpapi, mais c'est moins rigolo du coup :]

Oui, mais je suis sur un gros projet, et je ne suis pas un expert en C++ :d.
+1 (0) -1 (0) Répondre


Sujets apparemment similaires…
Sujet Auteur Réponses Affichages Dernier message
  [C-HELP] Malware Process Detecting sakiir 9 388 09-11-2013, 10h32
Dernier message: sakiir
  Memory Editing / GameHacking - Windows sakiir 18 586 22-05-2013, 14h31
Dernier message: gruik
  [C] [Win32] Injection de DLL dans un process avant son initialisation supersnail 4 299 26-03-2013, 23h27
Dernier message: fr0g

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
N-PN
Accueil | Challenges | Tutoriels | Téléchargements | Forum | Retourner en haut