nmap

Forum sur la sécurité des réseaux, la configuration des firewalls, la mise en place de protections contre les attaques, de DMZ, de systèmes anti-intrusion ...

Modérateur: modos Ixus

nmap

Messagepar omsarath » 02 Sep 2004 20:35

bonjour à tous,

je teste la sécurité d'une machine sous linux avec iptables.

j'obtenais des résultats bizarres : pas les mêmes à chaque fois et la plupart du temps tous les ports ouverts. un comble !!
après avoir vérifié 100 fois mon script, j' ai testé l'ordinateur éteint et j'ai la meme chose, tous les ports ouverts, host up, etc.

non, je ne me suis pas trompée d'adresse IP, j'ai vérifié plutôt 2 fois qu'une.
l'adresse est fixe, c'est une freebox.

si qqcn peut m'éclairer....

@+
omsarath
Matelot
Matelot
 
Messages: 6
Inscrit le: 23 Août 2004 15:01

iptables

Messagepar arrakis » 03 Sep 2004 10:56

bonjour,

pourriez-vous indiquer le contenu du script de firewall, ainsi que les commandes nmap utilisées?


Merci à vous

Cordialement


Marc BEY
http://www.bashprofile.net
BASHPROFILE Infoirmatique et Open Source
Avatar de l’utilisateur
arrakis
Quartier Maître
Quartier Maître
 
Messages: 19
Inscrit le: 15 Juin 2003 00:00
Localisation: marseille

Messagepar omsarath » 03 Sep 2004 11:30

merci beaucoup, avant tout.

commande :
# nmap -v -P0 adresse IP

voici mon script :

où w.x.y.z est mon adresse IP externe, eth0 connecté à freebox, eth1 à mon autre ordi.
(mais les derniers tests que j'ai fait étaient ordi éteint alors normalement iptables n'est pas en cause, je pense plutôt à la freebox, m'enfin si qqch cloche dans mon script, je veux bien le savoir)

#!/bin/sh
# /etc/network/if-pre-up.d/iptables/start

# suppression de toutes les chaines
iptables -t filter -F
iptables -t filter -X
iptables -t nat -F
iptables -t nat -X

# définition des politiques par défaut
iptables -t filter -P INPUT DROP
iptables -t filter -P OUTPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
iptables -t mangle -P PREROUTING ACCEPT
iptables -t mangle -P INPUT ACCEPT
iptables -t mangle -P FORWARD ACCEPT
iptables -t mangle -P OUTPUT ACCEPT
iptables -t mangle -P POSTROUTING ACCEPT

# loopback
iptables -t filter -A OUTPUT -o lo -j ACCEPT
iptables -t filter -A INPUT -i lo -j ACCEPT

# lan eth1
iptables -A OUTPUT -o eth1 -d 192.168.0.0/24 -j ACCEPT
iptables -A INPUT -i eth1 -s 192.168.0.0/24 -j ACCEPT

# UDP INCOMING TRACEROUTE
# traceroute usually uses -S 32769:65535 -D 33434:33523
iptables -A INPUT -i eth0 -p udp --sport 32769:65535 --dport 33434:33523 -j ULOG --ulog-prefix " traceroute "
iptables -A INPUT -i eth0 -p udp --sport 32769:65535 --dport 33434:33523 -j DROP

# résolution DNS
iptables -A INPUT -i eth0 -p udp --sport 53 -j ACCEPT
iptables -A OUTPUT -o eth0 -p udp --dport 53 -j ACCEPT
# lan
iptables -A FORWARD -p udp -i eth1 --sport 53 -j ACCEPT
iptables -A FORWARD -p udp -o eth1 --dport 53 -j ACCEPT

# internet eth0
iptables -A OUTPUT -o eth0 -m state --state NEW,ESTABLISHED,RELATED -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -p tcp --sport 80 -j ACCEPT
iptables -A OUTPUT -o eth0 -m state --state NEW,ESTABLISHED,RELATED -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -p tcp --sport 443 -j ACCEPT


# partage de connexion
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

# connexion ADSL, problème du MTU.
# le problème vient du fait que le MTU de la liaison entre votre
# fournisseur d'accès et le serveur NAT est un petit peu inférieur au
# MTU de la liaison Ethernet qui relie le serveur NAT aux machines qui
# sont derrière le NAT.
iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS -o eth0 --clamp-mss-to-pmtu

# forward
iptables -A FORWARD -i eth1 -o eth0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth0 -o eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 192.168.0.2:80

# ping
# To prevent denial of service attacks based on ICMP bombs, filter
# incoming Redirect (5) and outgoing Destination Unreachable (3).
# Note, however, disabling Destination Unreachable (3) is not
# advisable, as it is used to negotiate packet fragment size.

# For bi-directional ping.
# Message Types: Echo_Reply (0), Echo_Request (8)
# To prevent attacks, limit the src addresses to your ISP range.
#
# For outgoing traceroute.
# Message Types: INCOMING Dest_Unreachable (3), Time_Exceeded (11)
# default UDP base: 33434 to base+nhops-1
#
# For incoming traceroute.
# Message Types: OUTGOING Dest_Unreachable (3), Time_Exceeded (11)
# To block this, deny OUTGOING 3 and 11

# 0: echo-reply (pong)
# 3: destination-unreachable, port-unreachable, fragmentation-needed, etc.
# 4: source-quench
# 5: redirect
# 8: echo-request (ping)
# 11: time-exceeded
# 12: parameter-problem

iptables -A INPUT -i eth0 -p icmp --icmp-type 0 -d w.x.y.z -j ACCEPT
iptables -A INPUT -i eth0 -p icmp --icmp-type destination-unreachable -d w.x.y.z -j ACCEPT
iptables -A INPUT -i eth0 -p icmp --icmp-type source-quench -d w.x.y.z -j ACCEPT
iptables -A INPUT -i eth0 -p icmp --icmp-type time-exceeded -d w.x.y.z -j ACCEPT
iptables -A INPUT -i eth0 -p icmp --icmp-type parameter-problem -d w.x.y.z -j ACCEPT
iptables -A OUTPUT -o eth0 -p icmp -s w.x.y.z --icmp-type fragmentation-needed -j ACCEPT
iptables -A OUTPUT -o eth0 -p icmp -s w.x.y.z --icmp-type source-quench -j ACCEPT
iptables -A OUTPUT -o eth0 -p icmp -s w.x.y.z --icmp-type 8 -j ACCEPT
iptables -A OUTPUT -o eth0 -p icmp -s w.x.y.z --icmp-type parameter-problem -j ACCEPT

# mails
iptables -A INPUT -i eth0 -p tcp ! --syn --sport 110 -d w.x.y.z --destination-port 1024:65535 -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --dport 110 -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 1024: -d 213.228.0.176 --dport 25 -m state --state ! INVALID -j ACCEPT
iptables -A INPUT -i eth0 -p tcp -s 213.228.0.176 --sport 25 --dport 1024: -m state --state RELATED,ESTABLISHED -j ACCEPT

# AUTH client (113)
iptables -A OUTPUT -o eth0 -p tcp -s w.x.y.z --sport 1024:65535 --dport 113 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp ! --syn --sport 113 -d w.x.y.z --dport 1024:65535 -j ULOG --ulog-prefix " ok auth "
iptables -A INPUT -i eth0 -p tcp ! --syn --sport 113 -d w.x.y.z --dport 1024:65535 -j ACCEPT

# WHOIS client (43)
iptables -A OUTPUT -o eth0 -p tcp -s w.x.y.z --sport 1024:65535 --dport 43 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp ! --syn --sport 43 -d w.x.y.z --dport 1024:65535 -j ACCEPT

# FTP client (21)
iptables -A INPUT -i eth0 -p tcp --sport 21 -m state --state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A INPUT -i eth0 -p tcp --sport 20 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --dport 20 -m state --state ESTABLISHED -j ACCEPT

iptables -A INPUT -i eth0 -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED,RELATED -j ACCEPT

# OUTGOING TRACEROUTE
iptables -A OUTPUT -o eth0 -p udp -s w.x.y.z --sport 32769:65535 --dport 33434:33523 -j ACCEPT



# pas de spoofing
iptables -A INPUT -i eth0 -s 192.168.0.0/24 -j ULOG --ulog-prefix " SPOOFING "
iptables -A INPUT -i eth0 -s 192.168.0.0/24 -j DROP

iptables -A INPUT -i eth0 -s 10.0.0.0/8 -j ULOG --ulog-prefix " SPOOFING "
iptables -A INPUT -i eth0 -s 10.0.0.0/8 -j DROP

iptables -A INPUT -i eth0 -s 172.16.0.0/12 -j ULOG --ulog-prefix " SPOOFING "
iptables -A INPUT -i eth0 -s 172.16.0.0/12 -j DROP

iptables -A INPUT -i eth0 -s 127.0.0.0/8 -j ULOG --ulog-prefix " SPOOFING "
iptables -A INPUT -i eth0 -s 127.0.0.0/8 -j DROP

iptables -A INPUT -i eth0 -s 255.255.255.255 -j ULOG --ulog-prefix " SPOOFING "
iptables -A INPUT -i eth0 -s 255.255.255.255 -j DROP

iptables -A INPUT -i eth0 -d 0.0.0.0 -j ULOG --ulog-prefix " SPOOFING "
iptables -A INPUT -i eth0 -d 0.0.0.0 -j DROP


# samba anti 139
iptables -A INPUT -i eth0 -p tcp --dport 139 -j ULOG --ulog-prefix " connection samba "
iptables -A INPUT -i eth0 -p tcp --dport 139 -j DROP

iptables -A INPUT -i eth0 -p udp --dport 139 -j ULOG --ulog-prefix " connection samba "
iptables -A INPUT -i eth0 -p udp --dport 139 -j DROP

# clés Gnupg
iptables -A OUTPUT -o eth0 -p tcp --dport 11371 -j ACCEPT

# log
iptables -A INPUT -i eth0 -p tcp -j DROP

iptables -A INPUT -i eth0 -p udp --destination-port 0:1023 -j ULOG --ulog-prefix " udp reject "
iptables -A INPUT -i eth0 -p udp --dport 0:1023 -j DROP

iptables -A INPUT -i eth0 -p udp --destination-port 1024:65535 -j ULOG --ulog-prefix " trojan "
iptables -A INPUT -i eth0 -p udp --dport 1024:65535 -j DROP

iptables -A INPUT -i eth0 -p icmp --icmp-type 5 -j ULOG --ulog-prefix " icmp redir "
iptables -A INPUT -i eth0 -p icmp --icmp-type 5 -j DROP

iptables -A INPUT -i eth0 -p icmp -j ULOG --ulog-prefix " autres icmp "
iptables -A INPUT -i eth0 -p icmp -j DROP
#forget all other icmp

# --icmp-type 13:255 -j DROP

iptables -A OUTPUT -o eth0 -j ULOG --ulog-prefix " output "
iptables -A OUTPUT -o eth0 -j REJECT
omsarath
Matelot
Matelot
 
Messages: 6
Inscrit le: 23 Août 2004 15:01

firewall.

Messagepar arrakis » 03 Sep 2004 12:27

j'ai regardé un peu le script de firewall.

je n'ai rien vu d'anormal dedans.
vous avez vérifié l'adresse.

Par contre vous l'avez mis ou ce scriptt? /etc/rc.d/init.d

cela peut effectivement venir de la freebox.

est-ce que le script au démarrage s'éxécute correctement?.

je vais encore verifier votre script.

Merci


Marc BEY
http://www.bashprofile.net
BASHPROFILE Informatique et Open Source
Avatar de l’utilisateur
arrakis
Quartier Maître
Quartier Maître
 
Messages: 19
Inscrit le: 15 Juin 2003 00:00
Localisation: marseille

Messagepar omsarath » 03 Sep 2004 15:34

j'ai mis ce script dans /etc/network/if-pre-up.d/
c'est pas là ?

et il s'exécute correctement je crois (pas de messages d'erreurs, logs (ulog) présents ...)

mais si ça vient de la freebox, c'est bizarre d'avoir un coup tous les ports filtrés et après tous ouverts,
(et puis ça m'embête j'aurais bien fait des tests et tout est faussé.)

en tous cas, merci beaucoup de votre aide et du temps que vous prenez pour me répondre.
omsarath
Matelot
Matelot
 
Messages: 6
Inscrit le: 23 Août 2004 15:01

firewall

Messagepar arrakis » 03 Sep 2004 18:18

jIl faut mettre votre script dans /etc/rc.d/init.d

lorsque le système démarre il va chercher tout ce qu'il y a dans init et le charger puis activer les deamons.
C'est peu-être cela .
verifiez le +x
Sur notre réseau , on a placé notre politique de sécurité dans /etc/rc.d/init.d. les machines tournent sous Red Hat.
Par je n'ai pas trouvé la raison de votre problème dans votre script qui est pas mal.
Je pense qu'il faut dédouaner un pb d'emplacement et d'exécution de scriptnez avant de s'occuper de la freebox.
Ce n'est que mon avis.
vous pouvez essayer de l'exécuter à la main et faire un nmap après.
est ce que le service iptables est bien activé?


Merci de me tenir au courant.

Cordialement

Marc BEY
http://www.bashprofile.net
BASHPROFILE Informatique et Open Source
Avatar de l’utilisateur
arrakis
Quartier Maître
Quartier Maître
 
Messages: 19
Inscrit le: 15 Juin 2003 00:00
Localisation: marseille

iptables

Messagepar omsarath » 07 Sep 2004 21:00

bonjour,

j'ai fouiné un peu dans les fichiers relatifs à iptables, il apparaît que le script est bien placé (ce doit être spécifique aux distributions debian)
j'ai vérifié le -x (au cas où)
j'ai essayé de rentrer à la main après avoir supprimé les chaines :

iptables -t filter -P INPUT DROP
iptables -t filter -P OUTPUT DROP
iptables -t filter -P FORWARD DROP

et fait un nmap après
mêmes résultats (façon de parler), c'est comme si il y avait deux machines ayant la même adresse IP, un coup je scanne l'une: tout est filtré, un coup l'autre : tout ouvert, mais ce n'est pas possible avec la freebox, c'est une adresse fixe (qui semble bien reconnue au point de vue de la localisation),

je crois que je vais essayer avec quelqu'un qui a une freebox aussi.

merci pour tout.
omsarath
Matelot
Matelot
 
Messages: 6
Inscrit le: 23 Août 2004 15:01


Retour vers Sécurité et réseaux

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 0 invité(s)