poniedziałek, 30 maja 2011

Zmiana mac-a

ifconfig wlan0 down

ifconfig wlan0 hw ether 00:00:00:00:00:01

ifconfig wlan0 up

czwartek, 19 maja 2011

Bridge

#!/bin/sh
#Zaladowanie modulu mostka tak na wszelki wypadek :)
/sbin/modprobe bridge

#Musimy zresetować adresy na kartach sieciowych
ifconfig eth0 up 0.0.0.0
ifconfig eth1 up 0.0.0.0


# Tworzymy mostek o nazwie 'br0'.
brctl addbr br0

# Dodajmy do mostka br0 obie karty sieciowe
brctl addif br0 eth0
brctl addif br0 eth1

# Przydzielmy mostkowi adres ip, żeby komputer na eth0 i eth1 widział serwer na którym jest mostek
ifconfig br0 up 192.168.1.1 netmask 255.255.255.0

wtorek, 10 maja 2011

Certyfikat SSL - jak to działa ?

Podstawy SSL (Secure Socket Layer)

SSL jest protokołem sieciowym używanym do bezpiecznych połączeń internetowych. Został opracowany przez firmę Netscape i powszechnie go przyjęto jako standard szyfrowania na WWW.

Normalnie strony z serwerów oraz formularze do serwera są przesyłane przez sieć otwartym tekstem, który stosunkowo łatwo przechwycić (szczególnie w sieci lokalnej). Jeśli serwer używa protokołu SSL do komunikacji z przeglądarką, wówczas informacja w obie strony (między serwerem www i przeglądarką) jest przesyłana przez sieć w sposób zaszyfrowany.

SSL realizuje szyfrowanie, uwierzytelnienie serwera (ewentualnie użytkownika również) i zapewnienie integralności oraz poufności przesyłanych informacji. W momencie nawiązania połączenia z bezpieczną (stosującą protokół SSL) stroną www następuje ustalenie algorytmów oraz kluczy szyfrujących, stosowanych następnie przy przekazywaniu danych między przeglądarką a serwerem www.

Protokół SSL jest jedną z metod zapewniających bezpieczeństwo w transakcjach finansowych.

Moc szyfrowania

Ważną sprawą dla bezpieczeństwa zaszyfrowanych informacji jest długość używanych kluczy (np. 128 bitów). Im klucze są dłuższe, tym trudniej jest informacje odszyfrować. Powszechnie się uważa, że:

dla kluczy asymetrycznych: 512 - to zbyt mało, 768 - stosunkowo bezpiecznie, 1024 - silne bezpieczeństwo.
dla kluczy symetrycznych: 40 - to zbyt mało, 56 - stosunkowo bezpiecznie, 128 - silne bezpieczeństwo.

Łamanie kluczy metodą brute force (sprawdzanie po kolei możliwych kluczy).

Złamanie klucza 40 bitowego zajęło 3 godziny sieci komputerów.
Złamanie klucza 56 bitowego (w algorytmie RC5) zajęło 250 dni w ramach jednego z projektów distributed.net. Eksperyment został przeprowadzony przez sieć komputerów, których moc obliczeniowa była równoważna 26 tysięcom komputerów klasy Pentium 200.
Złamanie klucza 128 bitowego zajęłoby 1 bilion x 1 bilion lat (za pomocą pojedynczego superkomputera).

Powszechnie używa się takich skrótów myślowych:

SSL 128 bitów - transmisja danych szyfrowana z użyciem klucza symetrycznego o długości 128 bitów.
SSL 40 bitów - transmisja danych szyfrowana z użyciem klucza symetrycznego o długości 40 bitów.

Certyfikat SSL

W pierwszej fazie nawiązywania połączenia SSL serwer i przeglądarka wymieniają tzw. certyfikaty. Certyfikat jest odpowiednikiem dokumentu tożsamości dla serwera WWW oraz dla klienta banku. Certyfikat zawiera następujące składniki:

nazwę właściciela certyfikatu,
nazwę wydawcy certyfikatu,
publiczny klucz właściciela dla algorytm asymetrycznego,
cyfrowy podpis wystawcy certyfikatu (np. Verisign),
okres ważności,
numer seryjny (tzw. fingerprint).

Certyfikaty są wydawane przez niezależne i zaufane urzędy - Certification Authorities (CA). Wydanie certyfikatu jest poprzedzone sprawdzeniem autentyczności danego wnioskodawcy (czy taki ktoś istnieje, czy rzeczywiście jest tym za kogo się podaje).

Certyfikaty SSL serwera zapewniają uwierzytelnienie serwera bankowego. Łącząc się z serwerem WWW sprawdzaj czy jego certyfikat jest ważny oraz sprawdzaj informacje zawarte w certyfikacie (np. czy nazwa właściciela jest prawidłowa).

Oznaczenia SSL

Połączenie się ze stroną WWW poprzez SSL jest oznaczane w przeglądarkach następująco:

W obu przeglądarkach aktualny adres zaczyna się od https://.
W Internet Explorer, w prawej części paska stanu jest wyświetlany symbol kłódki. Kilkając kłódkę można zobaczyć szczegółowe informacje o certyfikacie. Po najechaniu na symbol kłódki wyświetlana jest informacja o długości klucza symetrycznego.
W Netscape Communicator zamknięta kłódka pokazuje się w lewej części paska stanu (normalnie jest otwarta). Wybierając opcję Security (Toolbar) możemy obejrzeć (View Certificate) certyfikat autentyczności danej strony. Wybierając polecenie View | Page Info możemy zobaczyć, jaki klucz symetryczny jest używany w transmisji. We wcześniejszych wersjach zamiast kłódki, występował cały kluczyk (SSL włączone) lub był przełamany (bez SSL).

Zbadaj teraz swoją przeglądarkę wchodząc na szyfrowane strony firmy Thawte (serwis posiada certyfikat SSL 128): https://www.thawte.com

Przeglądarki WWW: SSL 128 czy 40?

Długość klucza użyta w SSL zależy od dwóch elementów:

Rodzaju certyfikatu SSL serwera.
Przeglądarki WWW i jej możliwości szyfrowania.

Zawsze używany jest klucz o maksymalnej długości obsługiwanej przez oba elementy.

Certyfikaty serwerów dzielą się na dwa rodzaje: pełny SSL oraz SSL/SGC (Server Gated Cryptography). SGC jest pewnym uproszczeniem SSL na potrzeby omnięcia ograniczeń eksportowych (patrz dalej). Inicjacja połączenia szyfrowanego przy użyciu SSL/SGC 128 jest mniej bezpieczna, niż przy standardowym SSL 128, transmisja danych jest identyczna w SSL/SGC i SSL.

Przeglądarki IE oraz NN od wersji 4.0 wzwyż standardowo obsługują szyfrowanie SSL tylko do 56 bitów oraz szyfrowanie SSL/SGC do 128 bitów. Do pełnej obsługi szyfrowania SSL 128 potrzebna jest rozszerzona wersja przeglądarki (patrz dalej).

Polskie banki (np. Pekao, BPH, Fortis) w większości posiadają certyfikaty SSL/SGC 128 bitów, co oznacza że do korzystania z ich usług wystarczy standardowa zalecana przez bank przeglądarka. Certfyfikaty SSL 128 bitów posiada wiele sklepów poza Polską, jak również polski onet (np. adres https://secure.onet.pl), co oznacza że do korzystania z tych serwisów bardzo zalecane jest posiadanie rozszerzonej przeglądarki z pełnym SSL 128.

Przeglądarki obsługujące tylko 40-bit (lub 56-bit) dla certyfikatów SSL oraz 128-bit dla certyfikatów SSL/SGC to:

Netscape Communicator 4.0 i wyżej (wersja angielska)
http://home.netscape.com/download/
Internet Explorer 4.0 i wyżej (wersje polska i angielska)
http://www.microsoft.com/downloads/

Przeglądarki obsługujące w pełni szyfrowanie 128-bit dla certyfikatów SSL oraz SSL/SGC to:

specjalna wersja Netscape Communicator 128-bit (zwykle na CD-ROM'ach zamieszczana jest wersja Netscape Communicator 40-bit lub 56-bit) - musisz zainstalować specjalną wersję przeglądarki od nowa; od wersji 4.75 jest jedno - pełne 128-bitowe - wydanie;
http://home.netscape.com/download/
dodatek Fortify dla Netscape - dodatek doinstalowywany do Twojej przeglądarki Netscape (już od wersji 2.02), jeszcze brak takiego dodatku dla Sylaby;
http://www.fortify.net/ - sekcja Download
dodatek High Encryption Pack dla IE - dodatek doinstalowywany do Twojej przeglądarki IE. http://www.microsoft.com/downloads/ - wybierz wersję IE, którą posiadasz, a następnie znajdź odpowiedni link

Wszystkie wymienione przeglądarki i dodatki są bezpłatne, zarówno dla użytku domowego jak i komercyjnego.

Ograniczenia eksportowe związane z SSL 128 bitów obowiązywały do 2000-01-14. Ograniczenie nie pozwalały na ściąganie do naszego kraju przeglądarek z pełną obsługą 128-bitów SSL. Obecnie Polska nie jest obwarowana żadnymi ograniczeniami co do długości kluczy. Ograniczenia pozostały dla krajów: Afganistan, Kuba, Iran, Irak, Libia, Północna Korea, Serbia (z wyjątkiem Kosowa), Sudan, Syria.

Regulacja eksportowa dotycząca kryptografii z dnia 14.01.2000 wydana przez Departament Handlu rządu USA.

Test SSL przeglądarki

Pod jednym z poniższych adresów możesz sprawdzić czy Twoja przeglądarka obsługuje w pełni szyfrowanie RC-4 128 bitów w SSL, czy SSL 40 bitów.

https://www.rbc.com/cgi-bin/security/browser_test.cgi
https://www.fortify.net/sslcheck.html

Powyższe testy pokazują 128-bitów tylko dla przeglądarek, które w pełni obsługują szyfrowanie 128-SSL. Testy nie wskazują, czy przeglądarka obsługuje 128 bitów w SGC.

Algorytmy w SSL

SSL jest protokołem w którym stosuje się różne algorytmy szyfrujące.

Algorytm asymetryczny z kluczem publicznym i prywatnym serwera WWW (np. algorytm RSA). Ten algorytm jest używany w czasie inicjacji połączenia SSL: przeglądarka generuje losowo klucz prywatny symetryczny (dla następnego algorytmu), szyfruje go z użyciem klucza publicznego serwera i przesyła go do serwera, serwer za pomocą swojego klucza prywatnego asymetrycznego odczytuje klucz prywatny symetryczny.
Algorytm symetryczny z kluczem prywatnym (np. RC-4). Kiedy już przeglądarka oraz serwer posiadają ten sam klucz prywatny, rozpoczyna się komunikacja. Cała transmisja danych między serwerem i przeglądarką jest szyfrowana za pomocą klucza prywatnego symetrycznego. Jeden klucz jest używany podczas jednej sesji, w następnej sesji zostaje wygnerowany już nowy klucz prywatny.
Funkcja skrótu (np. MD-5) używana do generowania podpisów cyfrowych dla przesyłanej informacji. Podpisy zapewniają integralność przesyłanej informacji. Jeśli ktoś spróbuje zmienić dane w trakcie transmisji, zostanie to wykryte.

Meandry SSL

Poniższy rysunek przedstawia rodzaje szyfrowania SSL występujące między różnymi przeglądarkami i różnymi serwerami.