Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Path da form handle?
Forum - C# / VB.NET - Path da form handle? - Pagina 2

Pagine: [ 1 2 3 ] Precedente | Prossimo
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 10:47
Domenica, 24/05/2009
Testo quotato

Postato originariamente da Il Totem:

Non aspettarti una risposta da me, è ilprogrammatore10 che l'ha detto.



Invece me la aspettavo da te dato che tu hai scritto

"Ma ho visto che ci sono programmi che svolgono questa funzione."

Testo quotato


Comunque, se provi a enumerare le finestre attive con EnumWindow, vedrai che ne ne sono molte che sono senza titolo e non hanno interfaccia.

Questo significa che non tutti i processi senza interfaccia sono privi di finestre



Questo fatto non ha nessuna attinenza con quello di cui si parlava ... ma non vorrei andare (troppo) OT.

In ogni caso, chi ha fatto la domanda non e' interessato ... va bene cosi'.

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 20:03
Lunedì, 25/05/2009
Il fatto che io abbia visto programmi che lo fanno non implica che io sappia spiegare come agiscono.
Se un processo possiede un handle e un form, non è detto che non sia nascosto.

PM Quote
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 20:10
Lunedì, 25/05/2009
Testo quotato

Postato originariamente da Il Totem:

Il fatto che io abbia visto programmi che lo fanno non implica che io sappia spiegare come agiscono.



Non ho detto questo ... non ci capiamo ... Non voglio sapere da te come agiscono, ma di quali programmi parli ... Posso trovarli da qualche parte su Internet ? O no ?

Testo quotato

Se un processo possiede un handle e un form, non è detto che non sia nascosto.



Per "nascosto" intendo che non sia rintracciabile in nessun modo tramite le funzionalita' del sistema (comprese le sue API).

Se c'e' un handle, il processo esiste ed e' "rintracciabile" (cosi' evitiamo incomprensioni sul termine "nascosto").

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 20:26
Lunedì, 25/05/2009

PM Quote
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 20:49
Lunedì, 25/05/2009
Testo quotato




Ok ...grazie (finalmente mi sono spiegato) ...

DeepMonitor (primo link) controlla la presenza di codice "rootkit" (che, come ti ho detto qualche post fa, e' un caso a parte). In realta' controlla che non ci sia "extracodice" in processi gia' esistenti (e legali) come explorer.exe. Chiama "processo nascosto" questo extracodice impropriamente dato che il processo esiste (explorer.exe) e il codice se ne serve (come un virus). Qualsiasi handle creato dall' extracodice fa comunque riferimento al processo "infettato" (explorer.exe ad esempio).

Il codice del secondo link, fa uso di un device driver che "inganna" il sistema operativo circa l'esistenza di un processo. E' un caso molto simile ai rootkit con la differenza che l'"inganno" non avviene a livello di "dll del kernel" ma di "kernel device driver". In quel caso tramite un handle si potrebbe non arrivare al processo ma molto probabilmente (non ho provato, ma mi piacerebbe farlo, avendo un po' di tempo) al device driver. E il device driver esiste e non si puo' nascondere ...

Per tornare alla richiesta, non mi sembra chiaro cosa voglia dire con

"io utilizzo l'handle per trovare anche i processi nascosti"

ovvero se si riferisca a processi "malevoli", che adottano le tecniche di cui abbiamo parlato, o ad alro tipo di processi meno "cattivi" ... e che tipo di programma stia scrivendo (magari potrebbe farlo in modo diverso).

PM Quote
Avatar
ilprogrammatore10 (Normal User)
Newbie


Messaggi: 13
Iscritto: 21/05/2009

Segnala al moderatore
Postato alle 20:06
Giovedì, 28/05/2009
Io avrei bisogno di rilevare se un processo dannoso per il mio software è avviato. Ovviamente mi sto rendendo conto che la via che avevo deciso di adottare è la più inadatta.... Avrei pensato di esplorare la RAM per rendere in questo modo, impossibile nascondere alcun processo, dato che i dati dell'esegubile per essere eseguito vengono "portati" nella memoria RAM dalla ROM.
L'unico problema è che ho il sospetto che ciò sia molto difficile da attuare e credo impossibile sul .NET.... voi che ne pensate??

ilprogrammatore10

PM Quote
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 22:52
Giovedì, 28/05/2009
Postato originariamente da ilprogrammatore10:

Io avrei bisogno di rilevare se un processo dannoso per il mio software è avviato.

E come vorresti farlo? Cioe', hai pensato di voler fare questa cosa, ma hai idea di quanto possa essere complesso?

Ovviamente mi sto rendendo conto che la via che avevo deciso di adottare è la più inadatta....

Esatto. Ma non e' che c'e' una via adatta e semplice.

Avrei pensato di esplorare la RAM per rendere in questo modo,

Esplorare la RAM, in un sistema moderno, non e' affatto una cosa semplicissima.

E ammesso che ci riesci, per cercare cosa?

impossibile nascondere alcun processo, dato che i dati dell'esegubile per essere eseguito vengono "portati" nella memoria RAM dalla ROM.

La ROM non c'entra molto con il discorso ...

L'unico problema è che ho il sospetto che ciò sia molto difficile da attuare e credo impossibile sul .NET.... voi che ne pensate??

Devo essere molto sincero, perche' e' l'unico modo per risponderti seriamente. Penso, senza offesa, che tu sia molto lontano dal poter solamente iniziare ad affrontare un compito del genere.

Lo strumento e' il meno adatto e il compito prevede una approfondita (ma tanto approfondita) conoscenza del sistema usato in particolare e dei sistemi in generale.


ilprogrammatore10

PM Quote
Avatar
ilprogrammatore10 (Normal User)
Newbie


Messaggi: 13
Iscritto: 21/05/2009

Segnala al moderatore
Postato alle 16:13
Domenica, 31/05/2009
Ho capito grazie per il tuo interessamento ;)

Un'ultima domanda: anche se riuscissi a trovare TUTTI i processi in esecuzione ed esplorare i loro contenuti caricati in memoria, come potrei riconoscere che quel contenuto potrebbe essere dannoso? (nel senso che se io blocco tutti si software in giro per il cracking, un cracker potrebbe svilupparne uno tutto suo, non essendo scoperto dal sistema) Forse rilevando qualche chiamata API?

Grazie ancora

ilprogrammatore10

PM Quote
Pagine: [ 1 2 3 ] Precedente | Prossimo