()

Cześć! Dziś dowiesz się, czym są protokoły warstwy aplikacyjnej. Jakiś czas temu opisałem model OSI, wiec powinieneś już wiedzieć, że dzieli się on na 7 warstw, a najwyższą z nich jest właśnie warstwa aplikacyjna.

Wstęp

By lepiej zrozumieć, jak aplikacje się pomiędzy sobą komunikują, musisz poznać, z jakich protokołów korzystają. Przejdźmy od razu do rzeczy, dziś postaram się opisać Ci HTTP/HTTPS, DNS, SMTP, IMAP 4, SNMP, FTP, TFTP, SFTP, Telnet, SSH, SCP, NTP, LDAP, NetBios.

Są lepsze i gorsze protokoły — z niektórych powinieneś korzystać, inne od razu powinieneś odrzucić. Ważne jest, byś je znał, będą Ci potrzebne w pracy. Ogólnie każdy, kto jest w IT, powinien je znać i orientować się, do czego służą.

Protokoły warstwy aplikacyjnej: HTTP/HTTPS

HTTP to z angielskiego Hypertext Transfer Protocol – i już tu pewnie Cię zaskoczyłem, bo nigdy nie rozwijałeś skrótu. Bo i po co? Każdy zna HTTP i HTTPS. Korzysta się z niego po to, by połączyć się z serwerem i móc wykonywać interakcje na serwerze webowym.

HTTP jest protokołem, który nie wie, o co klient poprosił, a o co nie. Nie może śledzić użytkownika, który poprosił o konkretną zawartość. Za pomocą HTTP serwer wysyła niezależne pakiety bez informacji kontekstowych z poprzednich pakietów w sesji, co pomaga przy potężnych aplikacjach.

HTTPS to ta korzystniejsza wersja, która daje Ci S, czyli secure. Pozwala ona na połączenie się z serwerem webowym w sposób szyfrowany za pomocą SSL/TLS (Secure Sockets Layer/Transport Layer Security). Jak zawsze ludzie chcieli bezpieczniejszej wersji komunikacji, by nikt ich nie podsłuchiwał i nie zbierał informacji o nich.

No, ale jak to zawsze bywa ze wszystkimi rozwiązaniami stworzonymi przez ludzi – ktoś wymyślił, jak to zrobić, to ktoś wymyśli też, jak to złamać. Dlatego należy korzystać z HTTPS, przy czym wymuszać komunikację po najnowszym TLS, który zastępuje poprzednie i jest bardziej rozwinięty.

Nie powinniście już w żadnym wypadku korzystać z HTTP. Przy aktualnej prędkości internetu i rozwiązaniach typu Docker, kontenery i mikro serwisy nie ma potrzeby korzystania z nie szyfrowanej wersji protokołu.

Portem domyślnym dla HTTP jest 80

Portem domyślnym dla HTTPS jest 443

Protokoły warstwy aplikacyjnej: DNS

Domain Name System. Jest to niezbędny protokół dla nas ludzi. Bez niego internet na taką skalę nie miałby racji bytu. Protokół ten zamienia adres 216.58.210.3 na nazwę google.pl. Teraz wyobraź sobie, że musiałbyś zapamiętać 10 stron w formie adresu IP – na więcej stron byś nie wszedł.

I gdyby nie ta zmiana, internet pozostałby przestrzenią dla nerdów i geeków, którzy by zapamiętywali tego typu adresy. Założę się, że Tobie by się nie chciało ;). Mnie na pewno nie, więc jestem wdzięczny za ten protokół. Poniżej dorzucam filmik z kanału PowerCert Animated Videos – w przyszłości planuję zastąpić własnym, ale na tę chwilę zapraszam do obejrzenia poniższego.

Portem domyślnym dla DNS jest UDP – 53

Protokoły warstwy aplikacyjnej: SMTP

Protokół ten jest odpowiedzialny za przesyłanie lub wysyłanie maili przez TCP/IP (na przykład przez internet). Większość serwerów poczty obsługuje SMTP, czyli Simple Mail Transfer Protocol.

Portem domyślnym dla SMTP jest TCP – 25

Protokoły warstwy aplikacyjnej: POP3

Dobrze, jeśli SMTP odpowiada za wysyłanie maili, coś musi odpowiadać za ich odbieranie. Post Office Protocol version 3 jest jednych z takich protokołów. Służy on do pobrania e-maili z serwera do klienta, na przykład do Mozilla Thunderbird Client.

Maile są pobierane na przykład z serwera Google za pomocą POP3 zaraz po autentykacji. Protokół ten ma jednak swoje ograniczenia, może zsynchronizować tylko przychodzące, wychodzące, wysłane i usunięte maile.

Portem domyślnym dla POP3 jest TCP- 110

Protokoły warstwy aplikacyjnej: IMAP4

No i tutaj z pomocą przychodzi nam Internet Message Access Protocol version 4. Jest to podobny protokół do poprzedniego, z tym że nie ma takich ograniczeń jak powyższy.

Portem domyślnym dla IMAP4 jest TCP – 143

Protokoły warstwy aplikacyjnej: SNMP

Simple Network Management Protocol. Jest to standard, który umożliwia zdalne zarządzanie siecią. Można za jego pomocą sprawdzać statystyki urządzenia, jego zużycie oraz uruchomić diagnostykę. Celem jest scentralizowanie zarządzania siecią.

Portem domyślnym dla SNMP jest UDP – 161

Protokoły warstwy aplikacyjnej: FTP

Jest to protokół odpowiedzialny za przesyłanie i ściąganie plików, pełna nazwa to File Transfer Protocol. Za pomocą FTP możemy ustawić połączenia między komputerem a komputerem/serwerem poprzez IP lub nazwę urządzenia.

Mam dla Ciebie zadanie. Spróbuj za pomocą Google dorks / Google hacking znaleźć ciekawe serwery FTP dostępne w internecie i wstawić je w komentarzu.

Portem domyślnym dla FTP jest TCP – 20/21

Protokoły warstwy aplikacyjnej: TFTP

Trivial File Transfer Protocol jest to protokół podobny do FTP, z tym że z jego pomocą możemy tylko odczytywać i zapisywać pliki. Normalnie jest on wykorzystywany do wrzucania konfiguracji na router, a także do bootowania urządzeń przy załadowaniu plików z serwera TFTP.

Portem domyślnym dla TFTP jest UDP – 69

Protokoły warstwy aplikacyjnej: SFTP

Secure File Transfer Protocol. Jak zwykle rozwijamy się i zabezpieczamy, w związku z czym protokół SFTP – w przeciwieństwie do TFTP – jest szyfrowany i może korzystać z klucza publicznego oraz kompresji. Ma też interaktywną powłokę, w której można wyszukiwać czy też tworzyć foldery, ściągać czy wgrywać pliki (czego nie można zrobić w TFTP).

Portem dla SFTP może być TCP-22

Protokoły warstwy aplikacyjnej: FTPs

Protokół, który również korzysta z szyfrowania pakietów. FTP Secure działa jak protokół FTP – z tą różnicą, że wysyłane pakiety są szyfrowane. Jest to inny protokół niż SFTP, nie ma w nim możliwości wykorzystania klucza publicznego do autentykacji.

Portem domyślnym dla FTPs jest TCP – 21/990

Protokoły warstwy aplikacyjnej: Telnet

Terminal Emulation Protocol. Służy głównie do administracji zdalnej – można się podłączyć do terminala i zdalnie wykonać komendy. Trzeba jednak pamiętać, że połączenie nie jest szyfrowane i wszystkie wykonane komendy mogą zostać przejęte podczas MITM.

Portem domyślnym dla Telnet-u jest TCP – 23

Protokoły warstwy aplikacyjnej: SSH

Secure Shell jest to program, który tworzy terminal i sesje ze zdalnym systemem używając bezpiecznego połączenia. Jak już uzyskasz połączenie, będzie można na przykład kopiować pliki lub wykonywać komendy jak poprzez Telnet.

SSH jest bezpieczną wersją, ponieważ w Telnet wszystko leci po plain text (czyli tak, jak to wysyłasz), a w SSH mamy zaszyfrowaną zarówno autentykację, jak i całą komunikację. Wszędzie powinieneś korzystać z SSH.

Portem domyślnym dla SSH jest TCP – 22

SCP

Secure Copy Protocol. Służy do kopiowania plików ze zdalnego serwera do lokalnego systemu poprzez szyfrowany ruch. Ma zapewnić poufność danych w ruchu. Większość SCP korzysta z połączenia SSH.

NTP

Network Time Protocol. Służy do ustawienia czasu na serwerach – poprzez konfigurację jednego serwera czasu zostaje on rozesłany na pozostałe systemy.

Portem domyślnym dla SSH jest UDP – 123

LDAP

Lightweight Directory Access Protocol. Jest wykorzystywany do połączenia z usługami katalogowymi takimi jak AD (Active Directory). LDAP umożliwia klientowi na połączenie się z bazą danych lub z folderem, na przeszukiwanie bazy danych w sprawie obiektów takich jak użytkownicy, konta użytkowników czy drukarki.

NetBios

Network Basic Input/Output System jest to API, które jest używane do wykonywania połączeń sieciowych do systemu zdalnego oraz służy do zarządzania sesjami. Ma dwa stany połączenia. Pierwszy to:

  • Sesion mode: używany do stworzenia sesji z systemem, monitorowania tej sesji i znajdowania błędów oraz ich naprawiania przed zerwaniem sesji.
  • Datagram mode: używany, gdy otwarcie sesji nie jest potrzebne. Nie obsługuje też znajdowania ani rozwiązywania błędów z połączeniem.

Podsumowanie

Poznałeś dzisiaj sporo ważnych protokołów, warto, byś coś o nich wiedział. Pamiętał, z jakich portów korzystają, ponieważ często dzięki nimi możesz dostać się do systemu. Możesz wykorzystać luki w klientach poczty korzystających z protokołu POP3 i tak dalej i tak dalej.

Wiec zapamiętaj dobrze wymienione powyżej i gdy będziesz miał okazję, wykorzystaj wiedzę tu zawartą. Ogólnie wiadomo, że lepiej korzystać z wersji szyfrowanej niż nieszyfrowanej, ale nie zawsze jest to możliwe.

Zapraszam do ocenienia artykułu, by poinformować mnie jak i przyszłych czytelników o jego wartości.

Pozdrawiam – Pusz 🙂

The form you have selected does not exist.

Jak przydatny był ten Artykuł

Kliknij gwiazdke by zagłosować

Średni / 5. Liczba głosów

Doceń naszą prace

Przepraszam że ten post nie był dla Ciebie przydatny

Popraw ten post!

Napisz mi co mogę poprawić