FTP security
Plaintext FTP risks
Understand what an observer can learn or change when FTP credentials, commands, filenames, and file data are not encrypted.
8 minute lesson
Classic FTP does not encrypt the control or data connection. A network observer can read usernames, passwords, commands, filenames, listings, and file contents.
An active attacker may also alter transferred data or replies. Restricting filesystem permissions helps the server, but it does not protect traffic in transit.
Do not expose cleartext authenticated FTP to the public Internet. Use a protected protocol and validate the server identity.
Both channels leak:
control: USER alice
control: PASS reusable-password
control: CWD payroll
control: RETR july.csv
data: employee and salary records
Protecting only the password would not hide filenames or file contents. Protecting only the control connection would still leave listings and transfers exposed.
Cleartext also lacks integrity. An on-path attacker can alter a downloaded installer, replace an upload, or change a reply. A successful 226 proves only what the FTP server observed on that connection.
Use explicit FTPS with private data connections when FTP interoperability is required. Prefer SFTP, HTTPS, or a purpose-built storage API when you control both ends. Restrict credentials and filesystem access even after encryption because a compromised account still acts with its granted permissions.
Write a threat table for the transcript above. List what a passive observer learns, what an active attacker can change, and which risk remains after TLS.
Lesson completed