Snort - OpenAppId - La fin des tunnels

Vous avez toujours rêvé d'empécher les tunnels SSH, les connexions SOCK5, Facebook, etc... sans jamais parvenir à un résultat concret ?

Nous vous proposons un système permettant de bloquer n'importe quel applicatif grâce au logiciel Snort et à son composant OpenAppID !

 

Comment faire ?

Snort Interface > Ajouter une nouvelle interface > Selectionner une interface coté LAN

Selectionner les options Block offenders et Kill States qui permettront de bloquer/couper la connexion pour chaque alerte générée avec snort (Attention à ne pas bloquer clients, sites externes et autres ressources nécessaire à une entreprise, il faudra ajouter une liste de permission sur certaines IP ou groupe d'IP qui n'ont pas besoin d'être interprétés par Snort (whitelist pour les IPs internes))

Grâce au code OINKmaster obtenu sur le site de snort, activez Snort VRT et OpenAppID.
N'oubliez pas de mettre à jour les règles dans l'onglet Update

Double cliquez sur l'interface en question et accédez aux Rules, ici LAN_NETWORK Rules
Choisissez custom.rules, puis ajouter la ligne présent dans la capture d'ecran :

Si quelqu'un dans le LAN, défini par $HOME_NET tente d'initier une connexion SSH vers un serveur distant autre que le LAN, vous verrez ce type d'alerte :

Si vous avez coché Block offenders précédemment, l'adresse IP de destination sera bloquée, visible dans l'onglet Blocked.

Aucun moyen pour l'utilisateur d'accéder à un serveur SSH pour faire du tunneling ou de faire passer ses requêtes via le navigateur (SOCKS5 notamment).

Bien entendu, des listes de permissions ACL dans l'onglet Pass Lists sont paramétrables pour autoriser le personnel accrédité.

OpenAppId dispose d'un base de données regroupant de nombreuses applications et ne se réduit pas à SSH ( plus de 4000 applicatifs ).

 

Remarque :

Dans notre exemple, nous avons utilisé le port 22, port par defaut pour SSH, mais vu que Snort traite les requêtes au niveau 7 ( couche applicative ), le port sera identifié mais c'est la couche applicative qui sera lu par Snort et OpenAppId.
Le port SSH aurait pu être changé, Snort aurait interprété le paquet et bloqué l'accès distant même avec un autre port.