alphasec academy

python -m pyftpdlib -p 21 -w - uruchom anonimowy serwer FTP do zapisu

Dodatkowe informacje

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 aptm.in/protip/0039.

Przydatne linki


Subskrybuj

Jeśli chcesz otrzymywać nowe, mięsiste protipy na maila, a także zostać czasem powiadomiony o wartościowych wydarzeniach - dołącz do subskrybentów.