Portsentry

De Le Wiki du Forum-Debian.fr
Révision datée du 27 octobre 2011 à 13:44 par Lol (discussion | contributions) (Page créée avec « == Introduction == portsentry et un programme de détection et de blocage de "scan de ports" (généralement programme qui scanne votre machine à le recherche de ports ouve... »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à la navigation Aller à la recherche

Introduction

portsentry et un programme de détection et de blocage de "scan de ports" (généralement programme qui scanne votre machine à le recherche de ports ouverts, en général dans le but de préparer une attaque).

Installation

# apt-get update
# apt-get upgrade
# apt-get install portsentry

Configuration

Tel qu'il est installé, portsentry ne fera rien pour vous... il va falloir le configurer pour que la détection, et le blocage soit effectif!

# nano /etc/portsentry/portsentry.conf

Choisissez ici le niveau de surveillance:

...
# Un-comment these if you are really anal:
#TCP_PORTS="1,7,9,11,15,70,79,80,109,110,111,119,138,139,143,512,513,514,515,540,635,1080,1524,2000,2001,4000,4001,5742,6000,6001,6667,12345,12346,2003$
#UDP_PORTS="1,7,9,66,67,68,69,111,137,138,161,162,474,513,517,518,635,640,641,666,700,2049,31335,27444,34555,32770,32771,32772,32773,32774,31337,54321"
#
# Use these if you just want to be aware:
TCP_PORTS="1,11,15,79,111,119,143,540,635,1080,1524,2000,5742,6667,12345,12346,20034,27665,31337,32771,32772,32773,32774,40421,49724,54320"
UDP_PORTS="1,7,9,69,161,162,513,635,640,641,700,37444,34555,31335,32770,32771,32772,32773,32774,31337,54321"
#
# Use these for just bare-bones
#TCP_PORTS="1,11,15,110,111,143,540,635,1080,1524,2000,12345,12346,20034,32771,32772,32773,32774,49724,54320"
#UDP_PORTS="1,7,9,69,161,162,513,640,700,32770,32771,32772,32773,32774,31337,54321"
...

Par défaut BLOCK est à 0. Laissez comme ça pour vos essais, inutile de vous bloquer vous-même... Mettez à un pour mettre "en production".

...
# 0 = Do not block UDP/TCP scans.
# 1 = Block UDP/TCP scans.
# 2 = Run external command only (KILL_RUN_CMD)

BLOCK_UDP="1"
BLOCK_TCP="1"
...


# nano /etc/default/portsentry
# /etc/default/portsentry
#
# This file is read by /etc/init.d/portsentry. See the portsentry.8
# manpage for details.
#
# The options in this file refer to commandline arguments (all in lowercase)
# of portsentry. Use only one tcp and udp mode at a time.
#
TCP_MODE="atcp"
UDP_MODE="audp"
# service portsentry restart
Stopping anti portscan daemon: portsentry.
Starting anti portscan daemon: portsentry in atcp & audp mode.

Autorisez les scans légitimes

Vous avez la possibilité de laisser certaines IP faire des scans de ports dans le fichier nano /etc/portsentry/portsentry.ignore.static

Pensez à mettre dans ce fichier les machines de votre réseau qui ont la permission de faire des scans... Puis de relancer portsentry:

# service portsentry restart

Test

Tel qu'il est configuré par apt, portsentry ne sera pas efficace, pas même pour faire de la détection, un nmap depuis une autre machine vous le prouvera:

root@nas:~# nmap -v -PN -p 0-2000,60000 10.9.8.2

Starting Nmap 5.00 ( http://nmap.org ) at 2011-10-27 16:08 EAT NSE: Loaded 0 scripts for scanning. Initiating ARP Ping Scan at 16:08 Scanning 10.9.8.2 [1 port] Completed ARP Ping Scan at 16:08, 0.06s elapsed (1 total hosts) Initiating Parallel DNS resolution of 1 host. at 16:08 Completed Parallel DNS resolution of 1 host. at 16:08, 6.50s elapsed Initiating SYN Stealth Scan at 16:08 Scanning sidlol.zehome.org (10.9.8.2) [2002 ports] Discovered open port 111/tcp on 10.9.8.2 Discovered open port 80/tcp on 10.9.8.2 Discovered open port 22/tcp on 10.9.8.2 Discovered open port 143/tcp on 10.9.8.2 Discovered open port 119/tcp on 10.9.8.2 Discovered open port 635/tcp on 10.9.8.2 Discovered open port 15/tcp on 10.9.8.2 Discovered open port 1/tcp on 10.9.8.2 Discovered open port 79/tcp on 10.9.8.2 Discovered open port 1524/tcp on 10.9.8.2 Discovered open port 11/tcp on 10.9.8.2 Discovered open port 540/tcp on 10.9.8.2 Discovered open port 2000/tcp on 10.9.8.2 Discovered open port 1080/tcp on 10.9.8.2 Completed SYN Stealth Scan at 16:08, 0.12s elapsed (2002 total ports) Host sidlol.zehome.org (10.9.8.2) is up (0.000047s latency). Interesting ports on sidlol.zehome.org (10.9.8.2): Not shown: 1988 closed ports PORT STATE SERVICE 1/tcp open tcpmux 11/tcp open systat 15/tcp open netstat 22/tcp open ssh 79/tcp open finger 80/tcp open http 111/tcp open rpcbind 119/tcp open nntp 143/tcp open imap 540/tcp open uucp 635/tcp open unknown 1080/tcp open socks 1524/tcp open ingreslock 2000/tcp open callbook MAC Address: 00:15:E9:B5:69:26 (D-Link)

Read data files from: /usr/share/nmap Nmap done: 1 IP address (1 host up) scanned in 6.95 seconds

          Raw packets sent: 2003 (88.130KB) | Rcvd: 2011 (80.594KB)

Rien dans /var/log/syslog...

En remplaçant tcp et udp par atcp et audp dans /etc/default/portsentry, vous obtinedrez de meilleurs résultats...

Oct 27 16:11:33 sidlol portsentry[4077]: attackalert: TCP SYN/Normal scan from host: 10.9.8.6/10.9.8.6 to TCP port: 135 Oct 27 16:11:33 sidlol portsentry[4077]: attackalert: Ignoring TCP response per configuration file setting. Oct 27 16:11:33 sidlol portsentry[4077]: attackalert: TCP SYN/Normal scan from host: 10.9.8.6/10.9.8.6 to TCP port: 53 Oct 27 16:11:33 sidlol portsentry[4077]: attackalert: Host: 10.9.8.6/10.9.8.6 is already blocked Ignoring

En précisant à portsentry de bloquer les ip qui tentent des scans sur votre serveur, la protection sera bien réelle...

/etc/portsentry/portsentry.conf

...
BLOCK_UDP="1"
BLOCK_TCP="1"

Le résultat doit être immédiat:

cat /etc/hosts.deny
...
ALL: 10.9.8.6 : DENY
Le méchant scanner de port est définitivement bloqué...

Lol 27 octobre 2011 à 08:44 (CDT)