Comment filtrer ou bloquer sélectivement le trafic non-http / s?

1

Je sais qu'il est possible de filtrer contenu Web par exemple avec Squid + ICAP Server.

Mais, est-il possible sur le plan théorique et pratique de surveiller, filtrer et transformer par programme arbitraire (trafic sortant / entrant) traversant les routeurs de votre organisation?

Par exemple, si un programmeur de votre organisation décide d’employer un programme client-serveur spécialement conçu pour envoyer des données sensibles hors de l’organisation (son serveur écoute sur le port http / s standard ou sur tout autre port connu / arbitraire quelque part sur Internet). , en utilisant quelles techniques et quels logiciels cette tentative malveillante peut-elle être surveillée et contrôlée?

Je souhaite obtenir des indications sur les concepts / techniques impliqués, ainsi que des suggestions de logiciels libres basés sur Linux que je pourrais explorer davantage. Notez que les produits DLP, tels que MyDLP, ne traitent que du contenu Web et non du scénario ci-dessus, à savoir du vol de données via un programme créé à l'aide d'un protocole de transfert de données standard ou non standard.

Harry
la source

Réponses:

2

Est-il possible de surveiller / filtrer / transformer du trafic arbitraire?

Oui. C'est certainement conceptuellement possible. Avant que les routeurs soient facilement disponibles et peu coûteux, il était courant de trouver un vieil ordinateur bon marché, d’installer Linux et de partager la connexion réseau (masquage IP, etc.). Vous pouvez tout regarder avec tcpdump, si rien d'autre. Et c'est tout - vous verrez chaque négociation SYN-ACK, chaque demande de certificat SSL, chaque consultation DNS, etc.

Quelles techniques pourraient aider à surveiller / contrôler?

La plus évidente est à surveiller quels hôtes vous connectez aussi . Beaucoup d'outils pour aider avec cela, même chose qui empêche les enfants de sites adultes et les employés de Facebook. Voir cette unix.se question, notamment ntop .

Limiter les ports réduit certainement l'espace. Un port n’est qu’un nombre arbitraire, mais j’ai consulté des organisations paranoïaques qui verrouillaient tout sauf le port 80. Cela nous obligeait à faire des choses comme: tunnel ssh sur https ou des systèmes plus élaborés (tunnels à deux têtes en ssh) lorsque nous avions besoin de récupérer des objets chez nous.

Mais cela laisse toujours un effrayant tunnel d'upload-secrets de société qui ressemble à HTTPS. J'ai joué avec Violoneux beaucoup récemment. Si vous vouliez vraiment tout attraper, vous auriez situer un proxy de journalisation https au milieu et déclarez simplement que tout le monde dans votre magasin doit accepter votre certificat, ce qui signifie que vous surveillez tout. C’est beaucoup pour la confidentialité, bien sûr - vous verrez les mots de passe des personnes gmail en texte brut (vraiment! Essayez-le et voyez!) - mais ça va devenir terriblement difficile pour votre chapeau noir de sortir quoi que ce soit sans que vous ne le remarquiez.

Expérience de pensée utile, de toute façon.

ckhan
la source
* "... surveillez les hôtes auxquels vous vous connectez." * Mais comment puis-je le faire? Quels outils?
Harry
1
Ajout de la note sur ntop; également une suggestion - jouez avec tcpdump, vous aurez une bonne idée de ce qui se passe réellement.
ckhan