python -m pyftpdlib -p 21 -w - uruchom anonimowy serwer FTP do zapisu
tty1 · python
$ python -m pyftpdlib -p 21 -w
#Unix#RedTeam#BlueTeam#FTP#Exfil#Python
Oczywiście wcześniej należy upewnić się, że biblioteka pyftpdlib jest zainstalowana, np.:
pip install pyftpdlib
lub
apt install python-pyftpdlib
Biblioteka pyftpdlib umożliwia również implementację własnego serwera FTP. Poniżej przykład prostego skryptu, który sprawdza czy użytkownik próbuje pobrać plik zawierający w nazwie test_ i jeśli tak, wyświetla jego drugą część.
#!/usr/bin/env python
from pyftpdlib.handlers import FTPHandler
from pyftpdlib.servers import FTPServer
from pyftpdlib.authorizers import DummyAuthorizer
class MyHandler(FTPHandler):
def ftp_RETR(self, file):
arr = file.split("/test_")
if (len(arr) == 2):
print arr[1]
self.respond('550 dupa')
def main():
authorizer = DummyAuthorizer()
authorizer.add_anonymous(homedir='.')
handler = MyHandler
handler.authorizer = authorizer
server = FTPServer(('', 21), handler)
server.serve_forever()
if __name__ == "__main__":
main()
A do czego to się może przydać? A np. do /pl/0039.