mirror of
https://github.com/TheAlgorithms/Python.git
synced 2024-11-24 05:21:09 +00:00
basic client-server implementation
This commit is contained in:
parent
ca5c6f268a
commit
621192998e
43
server.py
43
server.py
|
@ -1,43 +0,0 @@
|
|||
# all imports - including #s
|
||||
import socket
|
||||
#import os
|
||||
#import sys
|
||||
#import subprocess
|
||||
# end of imports
|
||||
# the below classes will clarify what information is for the attacker and client
|
||||
class Termrequire:
|
||||
host = socket.gethostname()
|
||||
port = 3333 # fake numeral for the moment
|
||||
class Clientrequire:
|
||||
host = socket.gethostname()
|
||||
port = 2222 # fake numeral for the moment
|
||||
#CORE REQUIREMENTS OF PROGRAM:
|
||||
### host ip = server ip
|
||||
### potential connection hosts info (host, port)
|
||||
### user.config
|
||||
### user.config
|
||||
# using SERVER for connections and linux meterpreter sessions
|
||||
# SERVER DETAILS:
|
||||
#5 client availability for pivoting #although that is not yet available in a regular form of
|
||||
#exploitation - we have to go with what we have.
|
||||
|
||||
# #learnmore - USER_CONFIG
|
||||
# server ip will be displayed every connection at version 2.0
|
||||
# terminal attacker socket object creation
|
||||
t = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
# terminal attacker socket binding
|
||||
t.bind()
|
||||
# terminal attacker socket listen
|
||||
t.listen()
|
||||
# client socket object creation
|
||||
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
# binding information with s.bind method
|
||||
s.bind()
|
||||
#listening for connections with s.listen method
|
||||
s.listen(1)
|
||||
# server_functionality waits for terminal shell and then gets client information connectivity
|
||||
def func4client():
|
||||
s.accept()
|
||||
# terminal functionality for attacker - I will definitely customize it soon. Maybe tkinter?
|
||||
def func4term():
|
||||
t.accept()
|
6
simple-client-server/README.md
Normal file
6
simple-client-server/README.md
Normal file
|
@ -0,0 +1,6 @@
|
|||
# simple client server
|
||||
|
||||
#### Note:
|
||||
- Run **`server.py`** first.
|
||||
- Now, run **`client.py`**.
|
||||
- verify the output.
|
14
simple-client-server/client.py
Normal file
14
simple-client-server/client.py
Normal file
|
@ -0,0 +1,14 @@
|
|||
# client.py
|
||||
|
||||
import socket
|
||||
|
||||
HOST, PORT = '127.0.0.1', 1400
|
||||
|
||||
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
s.connect((HOST, PORT))
|
||||
|
||||
s.send(b'Hello World')
|
||||
data = s.recv(1024)
|
||||
|
||||
s.close()
|
||||
print(repr(data.decode('ascii')))
|
21
simple-client-server/server.py
Normal file
21
simple-client-server/server.py
Normal file
|
@ -0,0 +1,21 @@
|
|||
# server.py
|
||||
|
||||
import socket
|
||||
|
||||
HOST, PORT = '127.0.0.1', 1400
|
||||
|
||||
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
s.bind((HOST, PORT))
|
||||
s.listen(1)
|
||||
|
||||
conn, addr = s.accept()
|
||||
|
||||
print('connected to:', addr)
|
||||
|
||||
while 1:
|
||||
data = conn.recv(1024)
|
||||
if not data:
|
||||
break
|
||||
conn.send(data + b' [ addition by server ]')
|
||||
|
||||
conn.close()
|
Loading…
Reference in New Issue
Block a user