De l'intérêt de la surveillance des scans de ports

Hello,

Pour mon job, il m’est également nécessaire de veiller à l’intégrité de mes machines, comme tout admin qui se respecte.
Pour se faire, quelques règles firewall, un fail2ban avec quelques règles perso (sql injection, accès injustifés à certaines pages, reject de 403, etc…), des vérifs “croné” à coup de lynis/rkhunter et … du monitoring ! A savoir que je délivre des services derrière les ports 21, 25, 443, 587, 993.

Je me suis toujours dit qu’il était intéressant de savoir ce qu’il se passe à nos portes, par le fait, j’ai testé pendant plusieurs mois deux outils (pas en même temps !), à savoir Portsentry et PSAD.

Les deux ne fonctionnent pas de la même façon, mais on un objectif commun : détecter les scans de ports.

Les deux permettent également de mettre en place, sous certaines conditions, des contre mesures (ban IP, taunt, etc…).

Donc comme je l’ai dis, j’ai utilisé ces 2 outils pendant un moment, mais au final, j’en viens à une conclusion évidente : il est difficilement possible de différencier :

  • les scans de ports de BOTS (par miliers…)
  • Les (clients pour les services que vous proposez, mail, ftp, autre…) mal configurés
  • Les scans “humains”, encore que, ceux-ci peuvent sortir du lot, bien qu’avec pas mal de faux positifs
  • Les scans effectués par votre propre provider

J’ai tenté de mettre en place pas mal de configurations différentes, d’abord avec Portsentry. Avec lui, j’avais une légion de faux positifs… j’ai tenté pas mal de choses, finalement je ne l’ai pas gardé.
PSAD quant à lui, me permet un filtrage plus fin, limitant les faux positifs, mais limitant aussi grandement la détection de “vrais” scans, sans parler du fait que la kern.log explose, vu que ce dernier s’appuie dessus (activation de la log drop/reject dans kern.log).

Au final, tout se mal pourquoi ? Savoir qui s’est intéressé à votre machine, sans trop de certitude, avec un coup en ressource non négligeable et une quantité importante de faux positifs.

La question que je me pose aujourd’hui est : Est-ce vraiment utile ? A mon sens, il n’existe pas de solution fiable permettant de détecter avec précision une prise d’empreinte d’origine humaine et explicitement malveillante (je parle uniquement ici de scan de ports, pas de tentatives autres comme des paquets mal formés, des requêtes crado dans votre php, etc…). A noter qu’aujourd’hui PSAD tourne encore, pour la seule utilité que j’y trouve : voir une ip revient un peu trop souvent, auquel cas j’enquêterai à son sujet. Mais c’est peut-être sortir la bazooka pour chasser le moustique…

Attention, je pense en revanche que ce genre d’outils peut prendre son sens dans le cas où vous utilisez un poste enduser et que vous ne proposez pas de services. Là, on se fout d’avoir des faux positifs, on peut bannir en masse, ça n’impactera derrière personne que vous. Dans ce cas là et seulement dans ce cas là, on peut considérer que ces outils peuvent être utiles pour des utilisateurs un brin paranos et qui ne sont pas gênés d’avoir un hosts.deny (pour les plus vieux) ou une table iptables remplies jusqu’à l’os. J’irais même jusqu’à utiliser Portspoof (simulation d’activité derrière une liste de ports) couplé à un honey pot.

Bref, que pensez-vous de tout ça ? Avez-vous ce genre de monitoring en prod et si oui, quels outils et quelle satisfaction ?

Je ne suis pas admin sys donc pas de prod sous ma responsabilité. Mais pour ce que j’en parle avec ceux qui s’en occupe ils ne font pas cette surveillance, du moins ils ne me le disent pas.
Merci pour ton retour d’expérience en tous cas :+1:

1 J'aime

Au sein d’une grand infrastructure il est tout de même nécessaire de pouvoir analyser ce qu’il se passe sur son réseau ?

Je pense aussi qu’il ne le disent pas, mon ancien poste de travail était sur un vlan entièrement fliqué (tout le monde le savaient, il y avait eu abus).

De simple Switch (sans parler de routeur) peuvent déjà te faire de l’analyse de paquet et tout sans aborder non plus la qoos.

Dans certains cas nous sommes obligé de fournir à nos clients des rapports d’activité réseau émanant ou en direction de leur infrastructure hébergé.

Je parlais bien sûr de la surveillance des scans extérieurs. La surveillance intérieur est la base en effet, même si parfois ils vont trop loin en mettant en place des proxy MitM pour le HTTPS. Ça oblige a avoir un certificat autosigné (sic) dans les navigateurs pour éviter d’avoir des messages d’avertissement.

1 J'aime

Oui, là on parle uniquement de ce qu’il se passe à notre porte et pas intra-muros. Du port mirroring sauce CISCO à du mitm avec squid et certif ac, c’est encore autre chose.
Pour en revenir à notre sujet, d’autres personnes font ce type d’écoute ?

Oui l’écoute de nos différents points d’entrées est fait de façon plus ou moins manuelle, un monitoring spécifique et même mis ne place sur certaines portions du réseau de manière à pouvoir de façon proactive protéger et mitiger dans certains cas, voir mettre ne liste noire certaines IP de chez nous et de l’extérieur…

Maintenant les outils utilisé … j’en sais fichtre rien de ce qu’il se mets en place dernièrement mais auparavant nous avions une solution basé sur de l’Inmon et du Vyatta/Vyos pour la petite mitigation (avant d’avoir pu négocier des solutions bien plus costaud).