E 'davvero meglio usare la porta 80 o 443 per il traffico in uscita per aggirare il firewall dell'utente?

5

Recentemente ho creato una shell di connessione inversa in C #. L'ho provato con alcuni computer e ho notato che alcuni computer si sono connessi correttamente e ho stabilito una connessione con loro, ma un altro computer con Windows 7 non sembra funzionare o non mi ha stabilito una connessione.

Stavo usando la porta 3001 come porta di comunicazione e stavo cercando di stabilire una connessione inversa. Qualsiasi aiuto perché questo computer non funziona? Sta usando la porta 80 o 443 come porta di comunicazione aiuterà o è lo stesso come la connessione è invertita! In altre parole, è davvero meglio usare la porta 80 o 443 per il traffico in uscita in una connessione inversa?

    
posta mc2 27.02.2013 - 12:27
fonte

3 risposte

4

La porta 443 è per SSL. Poiché SSL è "opaco" per gli estranei, i firewall non sono in grado di vedere cosa sta succedendo e non possono eseguire alcun proxy trasparente. Inoltre, gran parte del Web utilizza la porta 443 (tutto https:// URL). Pertanto, la porta 443 è una delle porte più probabilmente aperte per le connessioni in uscita, anche su siti con regole severe.

Si noti, tuttavia, che alcuni siti bloccano tutte le connessioni in uscita eccetto quelle che passano a un proxy specifico. SSL non può essere proxy in modo trasparente , ma può essere eseguito esplicitamente (con un CONNECT chiama). Se vuoi implementare una "shell di connessione inversa" che funzionerà quasi ovunque, devi essere in grado di rilevare e utilizzare un possibile proxy per HTTPS.

    
risposta data 27.02.2013 - 12:38
fonte
2

Devi anche capire che i moderni firewall di oggi con IDS integrato funzionano sul concetto di protocol conformance se stai pensando di passare le mele in una scatola che dice che le arance potrebbero essere catturate. Questo è anche ciò che in alcuni contesti significa deep packet inspection. Una volta verificata la conformità con rfc, in base alla risposta del firewall, il pacchetto può essere avvisato, eliminato o messo da parte.

Ma puoi sempre eseguire il debug dell'applicazione c # per vedere cosa succede mentre tenta di connettersi; riceve eventuali pacchetti RST o interruzioni di connessione a causa di alcuni errori nei socket (gestione delle richieste, interruzione).

    
risposta data 27.02.2013 - 17:59
fonte
0

Il firewall personale, il router wireless o il firewall aziendale sono probabilmente configurati per limitare le porte che è possibile utilizzare quando si stabilisce una connessione in uscita, altrimenti noto come filtraggio in uscita . Nella tua situazione, usare le porte 80 o 443 è una grande idea perché quelle sono le porte più comuni che i server web ascoltano rispettivamente tramite HTTP e HTTPS. Per questo motivo, la maggior parte dei firewall, anche in ambito aziendale, consentirà la connettività in uscita sulle porte 80 e 443.

    
risposta data 28.02.2013 - 18:25
fonte

Leggi altre domande sui tag