hacktricks/network-services-pentesting/pentesting-voip/basic-voip-protocols
2024-04-07 04:23:52 +00:00
..
README.md Translated to Serbian 2024-02-10 13:11:20 +00:00
sip-session-initiation-protocol.md Translated ['README.md', 'binary-exploitation/arbitrary-write-2-exec/REA 2024-04-07 04:23:52 +00:00

Osnovni VoIP protokoli

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Signalni protokoli

SIP (Session Initiation Protocol)

Ovo je industrijski standard, za više informacija proverite:

{% content-ref url="sip-session-initiation-protocol.md" %} sip-session-initiation-protocol.md {% endcontent-ref %}

MGCP (Media Gateway Control Protocol)

MGCP (Media Gateway Control Protocol) je signalni i kontrolni protokol poziva opisan u RFC 3435. Radi u centralizovanoj arhitekturi koja se sastoji od tri glavne komponente:

  1. Call Agent ili Media Gateway Controller (MGC): Glavna kapija u MGCP arhitekturi je odgovorna za upravljanje i kontrolu medijskih kapija. Ona se bavi procesima postavljanja, izmena i prekida poziva. MGC komunicira sa medijskim kapijama koristeći MGCP protokol.
  2. Medijske kapije (MGs) ili Slave kapije: Ovi uređaji konvertuju digitalne medijske tokove između različitih mreža, kao što su tradicionalna prekidačka telefonska mreža i paketski prekidačke IP mreže. Upravlja ih MGC i izvršavaju naredbe koje dobijaju od njega. Medijske kapije mogu sadržati funkcije kao što su transcoding, paketizacija i otklanjanje eha.
  3. Signalne kapije (SGs): Ove kapije su odgovorne za konvertovanje signalnih poruka između različitih mreža, omogućavajući besprekornu komunikaciju između tradicionalnih telefonskih sistema (npr. SS7) i IP baziranih mreža (npr. SIP ili H.323). Signalne kapije su ključne za interoperabilnost i obezbeđivanje pravilne komunikacije informacija o kontroli poziva između različitih mreža.

Ukratko, MGCP centralizuje logiku kontrole poziva u call agentu, što olakšava upravljanje medijskim i signalnim kapijama, pružajući bolju skalabilnost, pouzdanost i efikasnost u telekomunikacionim mrežama.

SCCP (Skinny Client Control Protocol)

Skinny Client Control Protocol (SCCP) je vlasnički signalni i kontrolni protokol poziva u vlasništvu kompanije Cisco Systems. Koristi se pretežno za komunikaciju između Cisco Unified Communications Manager (ranije poznat kao CallManager) i Cisco IP telefona ili drugih Cisco glasovnih i video uređaja.

SCCP je lak protokol koji pojednostavljuje komunikaciju između servera za kontrolu poziva i uređaja. Naziva se "Skinny" zbog svog minimalističkog dizajna i smanjenih zahteva za propusnost u odnosu na druge VoIP protokole poput H.323 ili SIP.

Glavne komponente sistema zasnovanog na SCCP-u su:

  1. Server za kontrolu poziva: Ovaj server, obično Cisco Unified Communications Manager, upravlja procesima postavljanja, izmena i prekida poziva, kao i drugim telefonskim funkcijama kao što su preusmeravanje poziva, prenos poziva i zadržavanje poziva.
  2. SCCP uređaji: To su uređaji poput IP telefona, video konferencijskih jedinica ili drugih Cisco glasovnih i video uređaja koji koriste SCCP za komunikaciju sa serverom za kontrolu poziva. Oni se registruju kod servera, šalju i primaju signalne poruke i prate instrukcije koje pruža server za kontrolu poziva za upravljanje pozivima.
  3. Kapije: Ovi uređaji, poput glasovnih kapija ili medijskih kapija, odgovorni su za konvertovanje medijskih tokova između različitih mreža, poput tradicionalne prekidačke telefonske mreže i paketski prekidačke IP mreže. Mogu takođe sadržati dodatne funkcionalnosti kao što su transcoding ili otklanjanje eha.

SCCP nudi jednostavan i efikasan način komunikacije između Cisco servera za kontrolu poziva i uređaja. Međutim, vredi napomenuti da je SCCP vlasnički protokol, što može ograničiti interoperabilnost sa ne-Cisco sistemima. U takvim slučajevima, drugi standardni VoIP protokoli poput SIP-a mogu biti pogodniji.

H.323

H.323 je skup protokola za multimedijalnu komunikaciju, uključujući glas, video i konferencije podataka preko paketski prekidačkih mreža, kao što su IP bazirane mreže. Razvijen je od strane Međunarodnog telekomunikacionog saveza (ITU-T) i pruža sveobuhvatan okvir za upravljanje sesijama multimedijalne komunikacije.

Neki ključni elementi H.323 skupa uključuju:

  1. Terminali: To su uređaji na kraju, poput IP telefona, sistema za video konferencije ili softverskih aplikacija, koji podržavaju H.323 i mogu učestvovati u sesijama multimedijalne komunikacije.
  2. Kapije: Ovi uređaji konvertuju medijske tokove između različitih mreža, poput tradicionalne prekidačke telefonske mreže i paketski prekidačke IP mreže, omogućavajući interoperabilnost između H.323 i drugih komunikacionih sistema. Mogu takođe sadržati dodatne funkcionalnosti kao što su transcoding ili otklanjanje eha.
  3. Kapije za signalizaciju: Ove kapije su odgovorne za konvertovanje signalnih poruka između različitih mreža, omogućavajući besprekornu komunikaciju između tradicionalnih telefonskih sistema (npr. SS7) i IP baziranih mreža (npr. SIP ili H.323). Kapije za signalizaciju su ključne za interoperabilnost i obezbeđivanje pravilne komunikacije informacija o kontroli poziva između različitih mreža.
  4. **Multip

Protokoli za prenos i transport

SDP (Protokol za opis sesije)

SDP (Session Description Protocol) je tekstualni format koji se koristi za opisivanje karakteristika multimedijalnih sesija, kao što su glas, video ili konferencije podataka, preko IP mreža. Razvijen je od strane Internet Engineering Task Force (IETF) i definisan je u RFC 4566. SDP ne upravlja samim prenosom medija ili uspostavom sesije, već se koristi u kombinaciji sa drugim signalizacijskim protokolima, poput SIP (Session Initiation Protocol), za pregovaranje i razmenu informacija o medija tokovima i njihovim atributima.

Neki ključni elementi SDP-a uključuju:

  1. Informacije o sesiji: SDP opisuje detalje multimedijalne sesije, uključujući naziv sesije, opis sesije, vreme početka i vreme završetka.
  2. Medijski tokovi: SDP definiše karakteristike medijskih tokova, kao što su vrsta medija (audio, video ili tekst), transportni protokol (npr. RTP ili SRTP) i format medija (npr. informacije o kodeku).
  3. Informacije o vezi: SDP pruža informacije o mrežnoj adresi (IP adresa) i broju porta na kojem bi medij trebao biti poslat ili primljen.
  4. Atributi: SDP podržava upotrebu atributa radi pružanja dodatnih, opcionih informacija o sesiji ili medijskom toku. Atributi se mogu koristiti za specificiranje različitih funkcionalnosti kao što su ključevi za enkripciju, zahtevi za propusnost ili mehanizmi za kontrolu medija.

SDP se obično koristi u sledećem procesu:

  1. Inicirajuća strana kreira SDP opis predložene multimedijalne sesije, uključujući detalje medijskih tokova i njihove atribute.
  2. SDP opis se šalje primajućoj strani, obično ugrađen unutar signalizacijske poruke kao što je SIP ili RTSP.
  3. Primajuća strana obrađuje SDP opis i, na osnovu svojih mogućnosti, može prihvatiti, odbiti ili izmeniti predloženu sesiju.
  4. Konačan SDP opis se šalje nazad inicirajućoj strani kao deo signalizacijske poruke, čime se završava proces pregovaranja.

Jednostavnost i fleksibilnost SDP-a čine ga široko prihvaćenim standardom za opisivanje multimedijalnih sesija u različitim komunikacionim sistemima, igrajući ključnu ulogu u uspostavljanju i upravljanju realnom vremenskom multimedijalnom sesijom preko IP mreža.

RTP / RTCP / SRTP / ZRTP

  1. RTP (Real-time Transport Protocol): RTP je mrežni protokol dizajniran za prenos audio i video podataka, ili drugih medija u realnom vremenu, preko IP mreža. Razvijen od strane IETF i definisan u RFC 3550, RTP se često koristi sa signalizacijskim protokolima poput SIP-a i H.323 radi omogućavanja multimedijalne komunikacije. RTP pruža mehanizme za sinhronizaciju, sekvenciranje i vremensko označavanje medijskih tokova, pomažući u osiguravanju glatkog i pravovremenog reprodukovanja medija.
  2. RTCP (Real-time Transport Control Protocol): RTCP je prateći protokol za RTP, koji se koristi za praćenje kvaliteta usluge (QoS) i pružanje povratnih informacija o prenosu medijskih tokova. Definisan u istom RFC 3550 kao RTP, RTCP periodično razmenjuje kontrolne pakete između učesnika u RTP sesiji. Deli informacije kao što su gubitak paketa, varijacija kašnjenja i vreme povratnog puta, što pomaže u dijagnostikovanju i prilagođavanju mrežnim uslovima, poboljšavajući ukupan kvalitet medija.
  3. SRTP (Secure Real-time Transport Protocol): SRTP je proširenje RTP-a koje pruža enkripciju, autentifikaciju poruka i zaštitu od reprodukcije za medijske tokove, osiguravajući siguran prenos osetljivih audio i video podataka. Definisan u RFC 3711, SRTP koristi kriptografske algoritme poput AES za enkripciju i HMAC-SHA1 za autentifikaciju poruka. SRTP se često koristi u kombinaciji sa sigurnim signalizacijskim protokolima poput SIP-a preko TLS-a radi obezbeđivanja sigurnosti od kraja do kraja u multimedijalnoj komunikaciji.
  4. ZRTP (Zimmermann Real-time Transport Protocol): ZRTP je kriptografski protokol za dogovor o ključevima koji pruža enkripciju od kraja do kraja za RTP medijske tokove. Razvijen od strane Phil Zimmermanna, tvorca PGP-a, ZRTP je opisan u RFC 6189. Za razliku od SRTP-a, koji se oslanja na signalizacijske protokole za razmenu ključeva, ZRTP je dizajniran da radi nezavisno od signalizacijskog protokola. Koristi Diffie-Hellman razmenu ključeva radi uspostavljanja zajedničke tajne između komunicirajućih strana, bez potrebe za prethodnim poverenjem ili infrastrukturom javnih ključeva (PKI). ZRTP takođe uključuje funkcionalnosti poput Short Authentication Strings (SAS) radi zaštite od napada čovek-u-sredini.

Ovi protokoli igraju ključne uloge u isporuci i obezbeđivanju sigurne komunikacije u realnom vremenu preko IP mreža. Dok RTP i RTCP upravljaju samim prenosom medija i praćenjem kvaliteta, SRTP i ZRTP osiguravaju da se preneti medij zaštiti od prisluškivanja, manipulacije i napada reprodukcijom.