2015-08-17 54 views
5

W OpenBSD manual stany:IPv6: Dlaczego adresy mapowane w IPv4 stanowią zagrożenie dla bezpieczeństwa?

Ze względów bezpieczeństwa, OpenBSD nie przekazuje ruch IPv4 do gniazdka AF_INET6, i nie obsługuje IPv4 mapped addresses, gdzie ruch IPv4 jest postrzegana jako jeśli chodzi z adresu IPv6 jak :: ffff : 10.1.1.1. Tam, gdzie zarówno ruch IPv4, jak i IPv6 musi być akceptowany, nasłuchuj na dwóch gniazdach.

Jednak nie ma żadnych wyjaśnień dotyczących tych "powodów bezpieczeństwa". Czym oni są? Nie mogę myśleć o żadnych problemach bezpieczeństwa związanych z tym mapowaniem.

Odpowiedz

0

Z tego co wiem, głównym powodem jest oddzielenie stosów IPv4 i IPv6. Są to hacki niezbędne do obsługi pakietów przychodzących na jednym stosie, ale obsługiwanych przez inne, które powodują zagrożenie bezpieczeństwa.

1

Nie znam konkretnej motywacji, z której korzystał OpenBSD, ale znam przynajmniej jeden problem, który może stanowić problem bezpieczeństwa, a konkretnie listy ACL, a konkretnie czarne listy.

Rozważ, że masz połączenie przychodzące z 10.1.1.1. Ten adres znajduje się na czarnej liście ACL, a zatem odmawiasz połączenia. Ale jeśli używasz zmapowanego adresu, zamiast tego pojawi się on z :: ffff: 10.1.1.1. Twoja czarna lista może nie być w stanie tego złapać i może przepuścić połączenie.

Można to rozwiązać za pomocą logiki aplikacji, a ponieważ używanie pojedynczego gniazda może uprościć kod, osobiście uważam, że decyzja OpenBSD jest niefortunna. Możliwe jest ustawienie domyślne v4mapped na off, ale zezwolenie na włączenie przez setsockopt.

Mogli mieć więcej problemów, chociaż nie jestem tego świadomy.

+0

Oczywiście, adresy mapowane w IPv4 nie są routowane w Internecie, więc na czarnej liście jest małe prawdopodobieństwo. –