FTP
FTP е протокол, използван от компютрите за споделяне на информация по мрежата. Най-просто казано, това е начин за споделяне на файлове между свързани компютри. Тъй като HTTP е създаден за уебсайтове, FTP е оптимизиран за прехвърляне на големи файлове между компютри.
FTP клиентът първо създава a контролна връзка заявка към сървърния порт 21. Контролната връзка изисква вход за установяване на връзка. Но някои сървъри правят цялото си съдържание достъпно без никакви идентификационни данни. Такива сървъри са известни като анонимни FTP сървъри. По-късно отделно връзка за данни е създадена за прехвърляне на файлове и папки.
FTP анализ на трафика
FTP клиентът и сървърът комуникират, без да знаят, че TCP управлява всяка сесия. TCP обикновено се използва във всяка сесия за контрол на доставката на дейтаграми, пристигането и управлението на размера на прозореца. За всеки обмен на дейтаграми, TCP инициира нова сесия между FTP клиента и FTP сървъра. Следователно, ние ще започнем нашия анализ с наличната информация за TCP пакет за иницииране и прекратяване на FTP сесия в средния панел.
Започнете улавяне на пакети от избрания от вас интерфейс и използвайте ftp команда в терминала за достъп до сайта ftp.mcafee.com.
ubuntu $ ubuntu: ~ $ ftp ftp.mcafee.com
Влезте с вашите идентификационни данни, както е показано на екранната снимка по-долу.
Използвайте Ctrl + C за да спрете улавянето и да потърсите инициирането на FTP сесия, последвано от tcp [SYN], [SYN-ACK], и [ACK] пакети, илюстриращи трипосочно ръкостискане за надеждна сесия. Приложете tcp филтър, за да видите първите три пакета в панела на списъка с пакети.
Wireshark показва подробна информация за TCP, която съответства на сегмента на TCP пакет. Открояваме TCP пакета от хост компютъра до ftp McAfee сървъра, за да проучим слоя на протокола за управление на трансфера в панела с подробности за пакета. Можете да забележите, че първата TCP дейтаграма за започване на ftp сесия само задава SYN малко до 1.
Обяснението за всяко поле в слоя Transport Control Protocol в Wireshark е дадено по-долу:
- Изходен порт: 43854, TCP хостът е този, който инициира връзка. Това е число, което се намира някъде над 1023.
- Пристанище на дестинация: 21, това е номер на порт, свързан с ftp услуга. Това означава, че FTP сървърът слуша на порт 21 за заявки за клиентска връзка.
- Пореден номер: Това е 32-битово поле, което съдържа число за първия байт, изпратен в определен сегмент. Този номер помага при идентифицирането на съобщенията, получени по ред.
- Номер на потвърждение: 32-битово поле посочва приемник за потвърждение, който очаква да получи след успешно предаване на предишни байтове.
- Контролни знамена: всеки битов формуляр на кода има специално значение в управлението на TCP сесия, което допринася за лечението на всеки сегмент от пакети.
ACK: потвърждава номера на потвърждение на сегмент на разписка.
SYN: синхронизирайте поредния номер, който се задава при започване на нова TCP сесия
FIN: искане за прекратяване на сесията
URG: искания от подателя за изпращане на спешни данни
RST: заявка за нулиране на сесията
PSH: искане за тласък
- Размер на прозореца: това е стойността на плъзгащия се прозорец, която казва размера на изпратените TCP байтове.
- Контролна сума: поле, което съдържа контролна сума за контрол на грешки. Това поле е задължително в TCP за разлика от UDP.
Придвижване към втората TCP дейтаграма, заснета във филтъра Wireshark. Сървърът на McAfee потвърждава SYN заявка. Можете да забележите стойностите на SYN и ACK битове, зададени на 1.
В последния пакет можете да забележите, че хостът изпраща потвърждение до сървъра за иницииране на FTP сесия. Можете да забележите, че Пореден номер и ACK битове са настроени на 1.
След установяване на TCP сесия, FTP клиентът и сървърът обменят малко трафик, FTP клиентът потвърждава FTP сървъра Отговор 220 пакет, изпратен чрез TCP сесия чрез TCP сесия. Следователно обменът на цялата информация се осъществява чрез TCP сесия на FTP клиент и FTP сървър.
След завършване на FTP сесията, ftp клиентът изпраща съобщение за прекратяване до сървъра. След потвърждение на заявката, TCP сесията на сървъра изпраща съобщение за прекратяване на TCP сесията на клиента. В отговор TCP сесията на клиента потвърждава дейтаграмата за прекратяване и изпраща своя собствена сесия за прекратяване. След получаване на сесията за прекратяване, FTP сървърът изпраща потвърждение за прекратяването и сесията е затворена.
Внимание
FTP не използва криптиране и идентификационните данни за вход и парола се виждат посред бял ден. Следователно, докато никой не подслушва и вие прехвърляте чувствителни файлове в мрежата си, това е безопасно. Но не използвайте този протокол за достъп до съдържание от интернет. Използвайте SFTP който използва защитен SSH черупка за прехвърляне на файлове.
Заснемане на FTP парола
Сега ще покажем защо е важно да не се използва FTP през интернет. Ще потърсим конкретните фрази в съдържащия трафик потребител, потребителско име, парола, и т.н., както е указано по-долу.
Отидете на Редактиране-> „Намиране на пакет“ и изберете String за Показване на филтър, и след това изберете Байтове на пакети за да се покажат търсените данни в чист текст.
Въведете низа мине във филтъра и щракнете върху намирам. Ще намерите пакета с низа „Моля, посочете паролата ” в Байтове на пакети панел. Можете също така да забележите маркирания пакет в Списък с пакети панел.
Отворете този пакет в отделен прозорец Wireshark, като щракнете с десния бутон върху пакета и изберете Следвайте-> TCP поток.
Сега потърсете отново и ще намерите паролата в обикновен текст в панела Packet byte. Отворете маркирания пакет в отделен прозорец, както по-горе. Ще намерите идентификационните данни на потребителя в свободен текст.
Заключение
Тази статия научи как работи FTP, анализира как TCP контролира и управлява операции в FTP сесия и разбра защо е важно да се използват защитени протоколи на черупката за прехвърляне на файлове през интернет. Предстоящи статии ще разгледат някои от интерфейсите на командния ред за Wireshark.