Firewall dice che un programma che sto sviluppando sta cercando di connettersi a Internet

8

Sono seriamente confuso su questo, dal momento che il programma è interamente sviluppato da me stesso e non ha mezzi / funzionalità per connettersi a qualsiasi rete / Internet.

Sono un ingegnere del software ma non sono esperto di sicurezza informatica, quindi mentre lo faccio funzionare nel debugger di Visual Studio su Windows XP Professional il mio Comodo Firewall mostra un avviso che chiamiamolo "MyProgram.exe" sta provando a connettersi a Internet.

Poiché non c'è motivo per questo programma di connettersi a Internet, scelgo di bloccarlo. Alla fine nei registri del firewall, 5 tentativi di connessione di MyProgram.exe vengono registrati in un lasso di tempo di alcuni minuti elencati e l'intero incidente è elencato come "Firewall ha bloccato 1 intrusione fino ad ora".

(A parte il vero nome del programma e la cartella residente è davvero unica e non posso assolutamente confondere un programma diverso per questo.)

Il codice sorgente completo è stato scritto da me ad eccezione di un parser e un lexer che sono stati generati automaticamente da antlr. Anche la fonte da cui sono generati automaticamente viene scritta da me.

Una ricerca inversa di entrambi gli IP, a quanto pare ha provato a connettersi, è elencata come appartenente alla stessa grande compagnia internet.

(Sto utilizzando un antivirus aggiornato e non ho mai avuto problemi di virus con questo pc. Ho controllato i processi in esecuzione con Process Explorer e non ho trovato nulla di insolito.)

Potrebbe essere un bug nel firewall, come un falso positivo?

Potrebbe essere che il tentativo di connessione provenisse da un'applicazione diversa e non corrispondesse al mio programma a causa del suo funzionamento nel debugger?

Quali sarebbero i tuoi pensieri / passaggi in una situazione del genere?

Presumo che siano necessarie molte più informazioni per rispondere a questa domanda, ma non sono sicuro di ciò che è rilevante e di ciò che è critico o non critico da pubblicare, quindi cosa sarebbe importante?

Aggiornamento

Grazie mille per le risposte.

Sto scrivendo un po 'più verboso sui miei risultati nel caso in cui qualcun altro abbia un problema simile in modo che sia più facile da trovare.

La cosa principale che mi ha confuso è stata la combinazione di quanto segue:

  • Sembrava casuale; in altre parole, non potrei associarlo a qualcosa che ho fatto e che potrebbe averlo attivato
  • Non riuscivo a riprodurlo (né con il debugger né con l'exe autonomo)
  • Sto sviluppando questo programma da più di un anno e questo non è mai successo
  • Poco prima che un altro programma (che ho scaricato solo pochi giorni fa) ha provato a connettersi a Internet, che non sembrava necessario / non attivato da me.

Per farla breve , il tentativo di connessione agli altri programmi non era sicuramente correlato a quello e molto probabilmente solo un controllo degli aggiornamenti.

La società a cui appartengono gli IP era Akamai e dopo aver cercato di nuovo ho trovato un articolo che descrive una" alleanza tra Akamai e Microsoft "e" servizio disponibile per ... Strumenti di sviluppo .NET come Visual Studio (R) "

Quindi dopo ho pensato che fosse molto probabile che fosse Visual Studio e ho provato di nuovo a riprodurlo e alla fine lo feci accidentalmente facendo clic sul + -symbol per espandere una variabile CommonTree nella finestra di controllo durante il debug . Dato che ora riesco a riprodurlo sempre con quello, questo deve essere stato ciò che lo ha innescato anche la prima volta.

Quindi con il senno di poi cosa è successo la prima volta che direi che clicco su di esso per avviare il tentativo di connessione e dal momento che lo blocco o il timeout questi cinque tentativi appartengono tutti a un tentativo di connessione da Visual Studio e l'espansione o il collasso del CommonTree -variabile dopo un tale tentativo di connessione non ne innesca un altro, il che lo rende molto casuale.
Tutto questo e il fatto che un "debug-run in sé" (senza il clic) non lo faccia scattare è il motivo per cui non ho potuto assegnarlo inizialmente a questo trigger molto specifico:
"durante il debug espandendo una variabile CommonTree nella finestra di controllo".

    
posta Jennifer Owens 01.12.2011 - 03:01
fonte

3 risposte

5

Un paio di domande:

  1. cosa intendi con "la stessa grande compagnia internet"?
  2. È MyProgram.exe o MyProgram.vshost.exe che tenta di connettersi?
  3. Che cosa succede quando si esegue l'applicazione in modalità di rilascio senza il debugger?

Potrebbe essere che il debugger di Visual Studio stia cercando di scaricare i file di debug per gli assembly CLR e il firewall stia confondendo la richiesta come proveniente dalla tua app anziché dal debugger che ospita la tua app.

    
risposta data 01.12.2011 - 03:31
fonte
3

La connessione tra il codice di debug, iniettato nel tuo programma e Visual Studio potrebbe essere basata sul protocollo Internet e il firewall potrebbe confonderlo con una connessione a Internet. Sai, quei firewall desktop devono mostrare all'utente che vale la pena.

Windows Firewall è noto per mostrare un avviso quando si esegue il debug di un programma Java tramite l'IDE di Eclipse. Windows Firewall fornisce informazioni sufficienti per rendere evidente la causa.

Sebbene la connessione di debug sia la ragione più probabile, potrebbe comunque esserci una minaccia reale come un virus che infetta il tuo programma. Ma senza i dettagli di ciò che il firewall ha scoperto esattamente (protocollo, indirizzo IP di origine, indirizzo IP di destinazione, porta di origine, porta di destinazione), è impossibile rispondere.

    
risposta data 01.12.2011 - 11:56
fonte
2

È abbastanza probabile che sia un falso positivo.

Se possibile, puoi disabilitare la regola di blocco ed eseguire (Dato che sei lo sviluppatore dell'applicazione)

netstat -anob

Questo mostrerà se MyProgram.ext sta facendo una connessione e con cosa.

Se in effetti sta effettuando una connessione, è possibile cercare l'IP con cui sta comunicando (ad esempio, qualcosa appartiene a MS o così strano IP).

    
risposta data 01.12.2011 - 03:46
fonte

Leggi altre domande sui tag