HackingScripts/upload_file.py

52 lines
1.4 KiB
Python
Raw Normal View History

2020-06-02 14:15:03 +02:00
#!/usr/bin/python
2020-01-28 22:15:42 +01:00
import sys
2020-02-06 23:27:29 +01:00
import os
2020-06-02 14:15:03 +02:00
import util
2023-10-05 13:00:16 +02:00
import argparse
2020-01-28 22:15:42 +01:00
2023-10-05 13:00:16 +02:00
def serve_file(listen_sock, path, forever=False):
try:
while True:
print('[ ] Waiting for a connection')
connection, client_address = listen_sock.accept()
2020-01-28 22:15:42 +01:00
2023-10-05 13:00:16 +02:00
try:
print('[+] Connection from', client_address)
2020-01-28 22:15:42 +01:00
2023-10-05 13:00:16 +02:00
with open(FILENAME, "rb") as f:
content = f.read()
connection.sendall(content)
2020-01-28 22:15:42 +01:00
2023-10-05 13:00:16 +02:00
print("[+] File Transfer succeeded")
finally:
connection.close()
2020-01-28 22:15:42 +01:00
2023-10-05 13:00:16 +02:00
if not forever:
break
2020-01-28 22:15:42 +01:00
finally:
2023-10-05 13:00:16 +02:00
listen_sock.close()
if __name__ == "__main__":
parser = argparse.ArgumentParser(description="File Transfer using netcat")
parser.add_argument("--port", type=int, required=False, default=None, help="Listening port")
parser.add_argument("--path", type=str, required=True, help="Path to the file you wish to upload")
args = parser.parse_args()
path = args.path
if not os.path.isfile(path):
print("[-] File not found:", path)
exit(1)
address = util.get_address()
sock = util.open_server(address, args.port)
if not sock:
exit(1)
print("[+] Now listening, download file using:")
print('nc %s %d > %s' % (address, sock.getsockname()[1], os.path.basename(path)))
print()
serve_file(listen_sock, path, forever=True)