
There is also an auxiliary FTP server built in to Metasploit as well that is easy to deploy and configure.

If you want to grant the anonymous user write access, add the -w flag as well. One benefit of using FTP over HTTP is the ability to transfer files both way. With no arguments it runs on port 2121 and accepts anonymous authentication. Now from the directory you want to serve, just run the Python module. This only requires a single line of Python thanks to Python’s SimpleHTTPServer module: The other option is to just start a Python webserver directly inside the shells directory. To serve a file up over Apache, just simply copy it to /var/www/html and enable the Apache service. The two ways I usually serve a file over HTTP from Kali are either through Apache or through a Python HTTP server. HTTPĭownloading files via HTTP is pretty straightforward if you have access to the desktop and can open up a web browser, but it’s also possible to do it through the command line as well.

I’m putting this post together as a “cheat sheet” of sorts for my favorite ways to transfer files.įor purposes of demonstration, the file I’ll be copying over using all these methods is called met8888.exe and is located in /root/shells. I generated the payload with Veil but needed a way to transfer the file to the Windows server running ColdFusion through simple commands. It was a very limited, non-interactive shell and I wanted to download and execute a reverse Meterpreter binary from my attack machine. As a perfect example, on a recent pentest, I found a vulnerable ColdFusion server and was able to upload a CFM webshell. Often times on an engagement I find myself needing to copy a tool or a payload from my Kali linux attack box to a compromised Windows machine.
