FTP
FTP yra protokolas, kurį kompiuteriai naudoja dalydamiesi informacija tinkle. Paprasčiau tariant, tai būdas dalytis failais tarp prijungtų kompiuterių. Kadangi HTTP sukurtas svetainėms, FTP yra optimizuotas dideliems failų perkėlimams tarp kompiuterių.
FTP klientas pirmiausia sukuria a valdymo jungtis užklausa serverio prievadui 21. Norint užmegzti ryšį, reikalingas prisijungimas prie valdymo. Tačiau kai kurie serveriai pateikia visą savo turinį be jokių įgaliojimų. Tokie serveriai yra žinomi kaip anoniminiai FTP serveriai. Vėliau atskiras duomenų ryšys sukurta failams ir aplankams perkelti.
FTP srauto analizė
FTP klientas ir serveris bendrauja nežinodami, kad TCP valdo kiekvieną sesiją. TCP paprastai naudojamas kiekvienoje sesijoje kontroliuojant datagramų pristatymą, atvykimą ir lango dydžio valdymą. Kiekvienam duomenų mainui TCP inicijuoja naują sesiją tarp FTP kliento ir FTP serverio. Taigi analizę pradėsime nuo turimos TCP paketų informacijos apie FTP sesijos inicijavimą ir nutraukimą vidurinėje srityje.
Pradėkite paketų fiksavimą iš pasirinktos sąsajos ir naudokite ftp komandą terminale patekti į svetainę ftp.mcafee.com.
ubuntu $ ubuntu: ~ $ ftp ftp.mcafee.com
Prisijunkite naudodami savo kredencialus, kaip parodyta toliau pateiktoje ekrano kopijoje.
Naudokite „Ctrl“ + C sustabdyti fiksavimą ir ieškoti FTP sesijos inicijavimo, po kurio eina TCP [SYN], [SYN-ACK], ir [ACK] paketai, iliustruojantys trijų krypčių rankos paspaudimą patikimam seansui. Norėdami pamatyti pirmuosius tris paketus paketų sąrašo skydelyje, pritaikykite TCP filtrą.
„Wireshark“ pateikia išsamią TCP informaciją, atitinkančią TCP paketų segmentą. Mes išryškiname TCP paketą iš pagrindinio kompiuterio į ftp „McAfee“ serverį, kad galėtume ištirti perdavimo valdymo protokolo sluoksnį paketo detalių skydelyje. Galite pastebėti, kad pirmoji TCP datagrama, skirta ftp sesijos inicijavimui, nustatoma tik SYN šiek tiek 1.
Toliau pateikiamas kiekvieno „Wireshark“ „Transport Control Protocol“ sluoksnio lauko paaiškinimas:
- Šaltinio uostas: 43854, tai TCP kompiuteris, kuris inicijavo ryšį. Tai skaičius, esantis virš 1023 m.
- Kelionės tikslo uostas: 21, tai prievado numeris, susietas su ftp paslauga. Tai reiškia, kad FTP serveris klausosi kliento prisijungimo užklausų 21 prievade.
- Eilės numeris: Tai 32 bitų laukas, kuriame yra pirmojo baito, išsiųsto konkrečiame segmente, skaičius. Šis numeris padeda identifikuoti gautus pranešimus eilės tvarka.
- Patvirtinimo numeris: 32 bitų lauke nurodomas patvirtinimo imtuvas, kurį tikimasi gauti sėkmingai perdavus ankstesnius baitus.
- Valdymo vėliavos: kiekviena kodo bitų forma turi ypatingą reikšmę TCP seansų valdyme, kuri prisideda prie kiekvieno paketų segmento apdorojimo.
ACK: patvirtina kvitų segmento patvirtinimo numerį.
SYN: sinchronizuoti eilės numerį, kuris nustatomas pradedant naują TCP sesiją
FIN: prašymas nutraukti sesiją
URG: siuntėjo prašymai siųsti skubius duomenis
RST: prašymas iš naujo nustatyti sesiją
PSH: prašymas stumti
- Lango dydis: tai slenkančio lango vertė, nurodanti išsiųstų TCP baitų dydį.
- Kontrolinė suma: laukas, kuriame yra klaidų kontrolės kontrolinė suma. Šis laukas yra privalomas TCP, priešingai nei UDP.
Judama link antrosios TCP datagramos, užfiksuotos „Wireshark“ filtre. „McAfee“ serveris pripažįsta SYN prašymą. Galite pastebėti SYN ir ACK bitai nustatyti 1.
Paskutiniame pakete galite pastebėti, kad pagrindinis kompiuteris siunčia patvirtinimą serveriui už FTP sesijos inicijavimą. Galite pastebėti, kad Eilės numeris ir ACK bitai nustatomi į 1.
Sukūrę TCP sesiją, FTP klientas ir serveris keičiasi tam tikru srautu, FTP klientas pripažįsta FTP serverį Atsakymas 220 paketas siunčiamas per TCP seansą per TCP seansą. Taigi visa informacija keičiamasi per TCP sesiją FTP kliente ir FTP serveryje.
Baigus FTP sesiją, ftp klientas siunčia nutraukimo pranešimą į serverį. Po užklausos patvirtinimo TCP sesija serveryje siunčia pranešimą apie nutraukimą kliento TCP sesijai. Atsakydamas, TCP sesija kliente patvirtina nutraukimo datagramą ir siunčia savo nutraukimo sesiją. Gavęs nutraukimo sesiją, FTP serveris išsiunčia patvirtinimą apie nutraukimą ir sesija uždaryta.
Įspėjimas
FTP nenaudoja šifravimo, o prisijungimo ir slaptažodžio kredencialai matomi dienos šviesoje. Taigi, kol niekas nesiklauso jūsų slapto failo ir perduodate jį savo tinkle, tai saugu. Tačiau nenaudokite šio protokolo norėdami pasiekti turinį iš interneto. Naudokite SFTP kuris naudoja saugų apvalkalo SSH failams perduoti.
FTP slaptažodžio surinkimas
Dabar parodysime, kodėl svarbu nenaudoti FTP internete. Konkrečių frazių ieškosime užfiksuotame sraute vartotojas, vartotojo vardas, slaptažodis, ir pan., kaip nurodyta žemiau.
Eiti į Redaguoti-> „Rasti paketą“ ir pasirinkite String for the Ekrano filtras, tada pasirinkite Paketiniai baitai kad ieškomi duomenys būtų rodomi aiškiu tekstu.
Įveskite eilutę praeiti filtrą ir spustelėkite Rasti. Rasite paketą su eilute „Nurodykite slaptažodį “ viduje konors Paketiniai baitai skydelyje. Taip pat galite pastebėti paryškintą paketą Paketų sąrašas skydelyje.
Atidarykite šį paketą atskirame „Wireshark“ lange dešiniuoju pelės mygtuku spustelėkite paketą ir pasirinkite Stebėti-> TCP srautas.
Dabar ieškokite dar kartą ir „Packet byte“ skydelyje rasite slaptažodį paprastu tekstu. Atidarykite paryškintą paketą atskirame lange, kaip nurodyta aukščiau. Vartotojo kredencialus rasite paprastame tekste.
Išvada
Šiame straipsnyje buvo išmokta, kaip veikia FTP, išanalizuota, kaip TCP valdo ir valdo operacijas FTP sesijoje, ir suprato, kodėl failų perdavimui internetu svarbu naudoti saugius apvalkalo protokolus. Ateinančiuose straipsniuose aptarsime kai kurias „Wireshark“ komandų eilutės sąsajas.