pixel24
Goto Top

Schreibweise der DST-IP

Hallo zusammen,

ich arbeite gerade alte Prüfungen (FiSi) durch und stolpere hier gerade über eine Schreibweise.

Die Fragestellung:

Sie haben eine SPI-Firewall.
Nachfolgende Bedingungen sollen erfüllt werden:
Die Mitarbeiter aus dem Intranet sollen auf den E-Mail-Server in der DMZ zugreifen können (schicken und abholen IMAP).
Auf WWW-Seiten kommen die Mitarbeiter nur über den Proxy.
Der E-Mail-Server soll ins Internet E-Mails senden und empfangen dürfen.
Auch soll von außen Zugriff auf den Web-Server erlaubt sein.
Für die Namensauflösung der Firma ist der DNS in der DMZ zuständig.

Intranet: 192.168.1.0
E-Mail: 172.18.2.2
WWW-Server: 172.18.2.3
Proxy: 172.18.2.4, Port: 8080
DNS: 172.18.2.5


Ich habe die gesamte Frage gepostet demit der Kontext verständlich ist. Die erste Regel in der Lösung, welche sich auf den Mailzugriff: Intranet -> Mailserver (DMZ) bezieht lautet hier wie folgt:


Protokoll|     SRC-IP      |     DST-IP      |  SRC-Port  |  DST-Port   | Regel
-----------------------------------------------------------------------------------------------------------
TCP      | 192.168.1.0/24  |  172.18.2.2/32  |  >1023     |  25         | allow

Bei der SRC-IP notiere ich in diesem Fall die Netzwerk-Adresse und Suffix was logisch ist. Bei der DST-IP hätte ich einfach die IP-Adresse ( 172.18.2.2) geschrieben und kein Suffix dran gehängt da die IP ja bereits eindeutig ist.

So kenne ich es auch von meiner pfSense. Wenn ich hier unter Zieladresse "Einzelner Host oder Alias" wähle ist das Feld für den Suffix gesperrt.

Ist die Schreibweise einer IP mit Suffix auf anderen Systemen üblich?

Beste Grüße
pixel24

Content-ID: 7749609120

Url: https://administrator.de/contentid/7749609120

Ausgedruckt am: 22.11.2024 um 05:11 Uhr

Spirit-of-Eli
Spirit-of-Eli 05.07.2023 um 14:20:49 Uhr
Goto Top
Moin,

die Notation 192.168.2.2/32 ist korrekt und spezifischer als 192.168.2.2 ohne Subnetz.

Irgend einen Lehrer wird es sicherlich geben, den das juckt. Total bescheuert.

Gruß
Spirit
aqui
aqui 05.07.2023 aktualisiert um 14:50:50 Uhr
Goto Top
"Üblich" ist sicher auch der falsche Ausdruck. Es wird mal so und mal so gemacht. Diese Notation schafft aber unter allen Umständen immer Klarheit.
Z.B. Beispiel ist die Angabe 192.168.2.8 nicht zwingend ein Host. Bei z.B. einem /29er Prefix könnte es auch ein ganzes Netzwerk bezeichnen was in einem Regelwerk einen deutlichen Unterschied bedeuten kann wenn man das nicht angibt!
Auch ist es bei L3 Access Listen auf Switches generell üblich Hostmasken anzugeben. Bei Router Loopback Adressen auch usw.
Mit anderen Worten: Ganz so bescheuert ist es also nicht und hat schon einen Grund. Eine Regel was üblich ist und was nicht ist eher nicht die Frage sondern wie korrekt man es angeben will und man meint das Gegenüber versteht es auch so. Mit der o.a. Notation wäre immer alles geklärt! face-wink
lcer00
lcer00 05.07.2023 um 14:59:16 Uhr
Goto Top
Hallo,

ich würde immer von der Notation mit Subnetz ausgehen. Wenn die Firewall-GUI da vereinfacht, ist das nett, aber unpräzise.

Auch wenn es für Firewalls meist nicht relevant ist - als Denkanstoß: schau Dir mal in RFC 3330 https://datatracker.ietf.org/doc/html/rfc3330 die Definition für localhost an. Wie würdest die Regel lauten müssen, das Ziel der localhost sein soll (wobei der meist für die Firewall irrelevant ist)?

Grüße

lcer
aqui
aqui 05.07.2023 um 15:04:38 Uhr
Goto Top
Die Firewall ist da keineswegs unpräzise. Der Terminus "Einzelner Host" impliziert immer einen /32er Prefix! face-wink
pixel24
pixel24 05.07.2023 um 15:12:28 Uhr
Goto Top
Hey, danke für die Info. Den Fall mit dem /29 Subnetz bzw. dass ich es ja durch das GUI in pfSense mit definiere hatte ich nicht bedacht. Werde mir also angewöhnen es mit zu notieren.

Besten Dank!
lcer00
lcer00 05.07.2023 um 15:15:06 Uhr
Goto Top
Hallo,
Zitat von @aqui:

Die Firewall ist da keineswegs unpräzise. Der Terminus "Einzelner Host" impliziert immer einen /32er Prefix! face-wink
… was man vermutlich im heruntergeladenen Config-File überprüfen kann.

Grüße

lcer
pixel24
pixel24 05.07.2023 aktualisiert um 15:35:06 Uhr
Goto Top
Auch wenn es nicht mehr zum Titel passt. Ich kenne eben nur pfSense und vor vielen Jahren ipFire.

Bei der pfSense ist per alles verboten was ich nicht explizit erlaube. In der Lösung zur o.g. Aufgabe schreiben sie in der letzten Zeile:

Protokoll|     SRC-IP      |     DST-IP      |  SRC-Port  |  DST-Port   | Regel
-----------------------------------------------------------------------------------------------------------
IP             | Any       |  Any            |  Any       |  Any        | deny

Ich vermute mal dass dies auch die allg. Shreibweise für: Alles was oben erlaubt ist. alles andere verweigert.
aqui
aqui 05.07.2023 aktualisiert um 15:51:38 Uhr
Goto Top
Bei der pfSense ist per alles verboten was ich nicht explizit erlaube.
Das ist bekanntlich bei ALLEN Firewalls auf der ganzen Welt so! Nicht nur bei der pfSense. face-wink
Alles was oben erlaubt ist. alles andere verweigert.
Die sog. Implicit DENY Rule ist Quatsch auf einer Firewall weil wie du oben ja schon selbst schreibst diese firewallüblich IMMER Default, also evident, ist. Es ist also überflüssiger Unsinn diese immer noch extra am Ende anzugeben, schadet aber auch nicht.

Bei Routern und auch Switch ACLs die im Gegensatz zu einer Firewall (Whitelist Prinzip) immer mit einem Blacklist Prinzip arbeiten sieht die Regelwelt dadurch prinzipbedingt natürlich wieder anders aus. Das sollte man immer auf dem Radar haben.
Bei einigen Switches kann man in der Konfig festlegen ob die ACLs grundsätzlich nach einem Whitelisting oder Blacklisting arbeiten sollen.
Mit anderen Worten: Die Regel Welt ist bunt und vielfältig! face-wink
pixel24
pixel24 06.07.2023 um 07:19:46 Uhr
Goto Top
Das ist bekanntlich bei ALLEN Firewalls auf der ganzen Welt so! Nicht nur bei der pfSense.
Ich habe mir das schon fast gedacht, kann es ja aber schlecht behaupten/annehmen wenn ich es nicht definitiv weiß face-smile

Falls es in der Klausur/Prüfung dran kommt werde ich es einfach am Ende so formulieren.

Mir ist dann doch noch eine Frage zu der Schreibweise:

Protokoll|     SRC-IP      |     DST-IP      |  SRC-Port  |  DST-Port   | Regel
-----------------------------------------------------------------------------------------------------------
TCP      | 192.168.1.0/24  |  172.18.2.2/32  |  >1023     |  25         | allow

eingefallen. Genauer gesagt dur DST-IP. In der Fragestellung ist ja weder bei Intranet noch der DMZ ein Suffix angegeben. Wenn jetzt z.B. bei der DMZ das Netzwerk mit:

172.18.2.0/24

angegeben wäre. Dann wäre doch die Schreibweise:

172.18.2.2/24

auch eindeutig. Oder?
lcer00
lcer00 06.07.2023 um 08:35:17 Uhr
Goto Top
Zitat von @pixel24:

Das ist bekanntlich bei ALLEN Firewalls auf der ganzen Welt so! Nicht nur bei der pfSense.
Ich habe mir das schon fast gedacht, kann es ja aber schlecht behaupten/annehmen wenn ich es nicht definitiv weiß face-smile
Ich würde es erwähnen. Programmtechnisch kann man das mit einem if-then-Konstrukt vergleichen. Variante 1 wäre:
IF (source/dest) then allow
ELSEIF (source/dest) then allow
ELSE deny

Variante 2 wäre:
Action = deny
IF (source/dest) then Action=allow
ELSEIF (source/dest) then Action=allow

IF Action then allow
ELSE deny

Sicherlich gibt es noch ein paar Varianten, aber zum Schluss muss immer irgendwo entschieden werden, ob das Paket verworfen oder weitergeleitet werden soll. Im Quellcode der Firewall ist damit tatsächlich irgendwo eine implicit-Deny-Regel zu finden.

Variante 3 wäre:
Action = allow
IF (source/dest) then Action=allow
ELSEIF (source/dest) then Action=allow

IF Action then allow
ELSE deny
Das würde aber kaum jemand Vernünftiges so Programmieren. Aber kann man da sichern sein? Es gibt ja so unzählig viele Open-Source-Clone von irgendwelchen Linux-Projekten .... face-smile Dazu kommen noch diverse proprietäre Lösungen die sich von der Konkurenz abheben wollen, zum Beispiel duch Kostenersparnisse .....

Bei Fortigate wird beispielsweise eine Implicit-Deny-Regel angezeigt. Alle Eigenschaften können nicht geändert werden, bis auf die Logging-Einstellungen.

Falls es in der Klausur/Prüfung dran kommt werde ich es einfach am Ende so formulieren.

Mir ist dann doch noch eine Frage zu der Schreibweise:

Protokoll|     SRC-IP      |     DST-IP      |  SRC-Port  |  DST-Port   | Regel
-----------------------------------------------------------------------------------------------------------
TCP      | 192.168.1.0/24  |  172.18.2.2/32  |  >1023     |  25         | allow

eingefallen. Genauer gesagt dur DST-IP. In der Fragestellung ist ja weder bei Intranet noch der DMZ ein Suffix angegeben. Wenn jetzt z.B. bei der DMZ das Netzwerk mit:

172.18.2.0/24

angegeben wäre. Dann wäre doch die Schreibweise:

172.18.2.2/24

auch eindeutig. Oder?
Eindeutig, aber verwirrend. Als Prüfer würde ich mich fragen, ob der Kandidat mich veralbern will oder schusselig arbeitet.

Grüße

lcer
pixel24
pixel24 06.07.2023 um 08:45:36 Uhr
Goto Top
ok, also bei einer klar definierten IP immer /32 angeben. Danke face-smile
lcer00
lcer00 06.07.2023 um 08:58:47 Uhr
Goto Top
Hallo,

ich bin mir jetzt nicht sicher, ob ich Deine Frage richtig verstanden habe:
Zitat von @lcer00:

Zitat von @pixel24:
172.18.2.0/24

angegeben wäre. Dann wäre doch die Schreibweise:

172.18.2.2/24

auch eindeutig. Oder?
Zitat von @pixel24:

ok, also bei einer klar definierten IP immer /32 angeben. Danke face-smile

172.18.2.2/24 ist ein Netz, kein Host. und zwar ein Netz, das identisch ist mit:
172.18.2.0/24, 172.18.2.1/24, 172.18.2.2/24, 172.18.2.3/24 ... 172.18.2.255/24

Grüße

lcer
aqui
aqui 06.07.2023 um 10:20:28 Uhr
Goto Top
Dann wäre doch die Schreibweise: 172.18.2.2/24 auch eindeutig. Oder?
Landläufig ja. Das ist der klassische Weg auszudrücken das du eine Hostadresse von .2 in einem /24er Netz benutzt. Das wäre die allgemein bekannte Schreibweise Hostadressen anzugeben.
Bei 172.18.2.2/32 kannst du nicht wissen ob diese in einem /24er Netz liegt oder z.B. in einem /16er Netz. Folglich ist die Angabe der Netzadresse zur Hostadresse essentiell wichtig.
/32 gibt man in der Regel bei Hostrouten oder Loopback Interfaces so an.
lcer00
lcer00 06.07.2023 um 11:16:07 Uhr
Goto Top
Hallo,
Zitat von @aqui:

Dann wäre doch die Schreibweise: 172.18.2.2/24 auch eindeutig. Oder?
Landläufig ja. Das ist der klassische Weg auszudrücken das du eine Hostadresse von .2 in einem /24er Netz benutzt. Das wäre die allgemein bekannte Schreibweise Hostadressen anzugeben.
Die Schreibweise kommt vom CIDR: https://de.wikipedia.org/wiki/Classless_Inter-Domain_Routing Da steht ROUTING ! Primär ging es um die effektive Verteilung von IP-Adressen, was eine Änderung vom bisherigen Klassenbasierten Routing erforderlich machte. die /24 steht dabei für die Subnetzmaske. Primär ist diese Schreibweise also für das Routing "erfunden" worden. Eine /32 Adresse ist eine Netzwerk, dass aus genau einem Host besteht. Kleinere Suffixe bedeuten größere Netze.

Für ein Netzwerkinterface muss man aber ein Netzwerk und eine Host-"Nummer" angeben. Hier trennt dann das Suffix/die Netzwerkmaske die Netzwerkadresse vom Hostanteil. Das kann man dann durchaus so schreiben: 172.18.2.2/24 Diese Schreibweise wird aber verwendet, um eine Netzwerkschnittstelle eines Hosts zu definieren. Dasm ist etwas ganz anderes als ein Routingeintrag.

Im Kontext Routing/Firewall ist also nur /32 ein Host. Im Kontext "Definition einer Schittstelle" ist 172.18.2.2/24 eine Konfigurationeinstellung für die Schnittstelle. Leider ist diese Trennung in manchen Firewall-UIs nicht sofort erkennbar. Also immer erst gut nachdenken, bevor man etwas einträgt.

Grüße

lcer