alphaspirit - Fotolia
Java and Python were both found vulnerable to FTP injection attacks, as caused by XML external entity flaws. Oracle and Python have not released patches. What are the possible attack scenarios for FTP injections, and how can enterprises mitigate them?
File Transfer Protocol (FTP) is an unencrypted protocol. It was one of the earliest protocols developed for use on IP networks and is embedded in many types of devices using IP and different programming languages.
Information security was not a top concern when FTP was developed -- networks were much more trusting and were not as open as the current internet. This resulted in a legacy system that has largely been replaced by secure file transfer protocols and programming libraries that have at least gone through minimal security review.
Java was found vulnerable to an attack that enables an attacker to send spam or even directly connect to internal email servers using FTP libraries. The attack on Python uses an FTP injection to open TCP connections on a firewall. Both attacks require code execution on the vulnerable server and passing on arbitrary data when an FTP connection is setup.
Timothy Morgan, founder of Blindspot Security, described several scenarios that enable attackers to bypass firewall settings, such as triggering Java Web Start to run by using Java Network Launch Protocol files containing malicious FTP URLs, using a man-in-the-middle attack and using server-side request forgery.
Enterprises can mitigate the risk from FTP injection vulnerabilities by implementing a secure software development lifecycle, which offers several benefits: code for weeding out malicious inputs to prevent security vulnerabilities; code published on web servers being vetted to ensure it's from a trusted developer; and using secure network protocols, like HTTPS or Secure File Transfer Protocol.
When an enterprise runs code or any application, including web applications, it must be able to trust that the code isn't malicious and exploiting a vulnerability in how a protocol is processed. These mitigations must be built on top of a secure operating system and application environment to be most effective.
Using an encrypted connection also minimizes the chance that the network traffic will be altered with malicious commands, such as from an FTP injection.
Learn what irregular occurrences to look out for when monitoring outbound network traffic
Find out how to pick a secure file transfer product for use in your enterprise
Read how open FTP servers can be protected from the Miner-C malware infection
Dig Deeper on Application firewall security
Related Q&A from Nick Lewis
New variants of popular botnets were found targeting IoT devices by Palo Alto Networks' Unit 42. Discover how these variants differ from their ... Continue Reading
Detected malware can now efficiently be tracked due to VirusTotal's enterprise version of its software. Discover what N-gram is and how it can be ... Continue Reading
A new Kronos banking Trojan variant was found to use process impersonation to bypass defenses. Learn what this evasion technique is and the threat it... Continue Reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.