by Tan Chew Keong
Release Date: 2008-06-27
[en] [jp]
Summary
A vulnerability has been found within the FTP client in AceFTP. When exploited, this vulnerability allows an anonymous attacker to write files to arbitrary locations on a Windows user's system.
Tested Versions
Details
This advisory discloses a vulnerability within the FTP client in AceFTP. When exploited, this vulnerability allows an anonymous attacker to write files to arbitrary locations on a Windows user's system.
The FTP client does not properly sanitise filenames containing directory traversal sequences (forward-slash) that are received from an FTP server in response to the LIST command.
An example of such a response from a malicious FTP server is shown below.
Response to LIST (forward-slash):
-rw-r--r-- 1 ftp ftp 20 Mar 01 05:37 /../../../../../../../../../testfile.txt\r\n
By tricking a user to download a directory from a malicious FTP server that contains files with fowward-slash directory traversal sequences in their filenames, it is possible for the attacker to write files to arbitrary locations on a user's system with privileges of that user. An attacker can potentially leverage this issue to write files into a user's Windows Startup folder and execute arbitrary code when the user logs on.
POC / Test Code
Please download the POC here and follow the instructions below.
Zulu Platform X64 Architecture Deutsch [2021] -
java -version Viele Java-Tools (Maven, Tomcat, Gradle) benötigen JAVA_HOME .
1. Was ist die Zulu Platform? Die Zulu Platform ist eine kostenlose, produktionsreife Open-Source-Version von OpenJDK (Java Development Kit), bereitgestellt von Azul Systems. Sie ermöglicht die Ausführung von Java-Anwendungen auf verschiedenen Betriebssystemen.
tar -xvf zulu<version>-linux_x64.tar.gz sudo mv zulu<version> /usr/lib/jvm/ sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/zulu<version>/bin/java 1 zulu platform x64 architecture deutsch
setx JAVA_HOME "C:\Program Files\Zulu\zulu-<version>" setx PATH "%JAVA_HOME%\bin;%PATH%"
sudo apt remove zulu21-jdk Lösche den Ordner in /Library/Java/JavaVirtualMachines/ . 11. Kurzzusammenfassung Die Zulu Platform für x64 ist die empfohlene OpenJDK-Distribution für 64-Bit-Systeme. Lade das passende Paket für dein Betriebssystem von Azul herunter, installiere es, setze JAVA_HOME und prüfe mit java -version . Damit läuft jede Java-Anwendung stabil und sicher auf deiner x64-Hardware. Bei weiteren Fragen (z. B. zu Containern, Build-Tools oder spezifischen Java-Versionen) einfach nachfragen! ~/.zshrc oder /etc/environment eintragen.
java -version Ausgabe sollte enthalten: Zulu x64 und die Versionsnummer. Via APT-Repository (einfach):
export JAVA_HOME=/pfad/zu/zulu export PATH=$JAVA_HOME/bin:$PATH Dauerhaft in ~/.bashrc , ~/.zshrc oder /etc/environment eintragen. java -version # Enthält: "64-Bit" Zusätzlich: Die Zulu Platform ist eine kostenlose
# Repository hinzufügen sudo apt update sudo apt install -y gnupg curl curl -s https://repos.azul.com/azul-repo.key | sudo gpg --dearmor -o /usr/share/keyrings/azul.gpg echo "deb [signed-by=/usr/share/keyrings/azul.gpg] https://repos.azul.com/zulu/deb stable main" | sudo tee /etc/apt/sources.list.d/zulu.list sudo apt update sudo apt install zulu21-jdk # oder zulu17-jdk, zulu11-jdk, zulu8-jdk
Patch / Workaround
Avoid downloading files/directories from untrusted FTP servers.
Disclosure Timeline
2008-06-15 - Vulnerability Discovered.
2008-06-16 - Vulnerability Details Sent to Vendor via online support form (no reply).
2008-06-18 - Vulnerability Details Sent to Vendor again via online support form (no reply).
2008-06-25 - Vulnerability Details Sent to Vendor again via online support form (no reply).
2008-06-27 - Public Release.