mirror of https://github.com/hak5/ToorChat.git
Updates to website
parent
2a53fcb76c
commit
963990f80f
|
@ -4,6 +4,14 @@ from threading import Thread
|
||||||
|
|
||||||
USER_NAME_SIZE = 9
|
USER_NAME_SIZE = 9
|
||||||
|
|
||||||
|
def string_into_even_peices(string, size):
|
||||||
|
peices = len(string)/size
|
||||||
|
result = []
|
||||||
|
if len(string) % size:
|
||||||
|
peices +=1
|
||||||
|
for index in range(peices):
|
||||||
|
result.append(string[index*size:(index*size)+size])
|
||||||
|
return result
|
||||||
|
|
||||||
def get_web_site(visual, site):
|
def get_web_site(visual, site):
|
||||||
''' This is a threaded message to query a website and create message to pass back '''
|
''' This is a threaded message to query a website and create message to pass back '''
|
||||||
|
@ -11,9 +19,13 @@ def get_web_site(visual, site):
|
||||||
connection = httplib.HTTPConnection(site)
|
connection = httplib.HTTPConnection(site)
|
||||||
connection.request("GET", "/")
|
connection.request("GET", "/")
|
||||||
result = connection.getresponse().read()
|
result = connection.getresponse().read()
|
||||||
visual.message_quque.append(result)
|
result_list = string_into_even_peices(result, 100)
|
||||||
except Exception:
|
site_xid = os.urandom(8)
|
||||||
pass
|
for index, item in enumerate(result_list):
|
||||||
|
msg = ToorMessage(item, None, ToorChatProtocol.get_web_response_type(), site_xid, str(index), )
|
||||||
|
# visual.message_queue.append(msg)
|
||||||
|
except Exception as e:
|
||||||
|
print e
|
||||||
|
|
||||||
|
|
||||||
class ToorChatProtocol():
|
class ToorChatProtocol():
|
||||||
|
@ -67,20 +79,39 @@ class ToorChatProtocol():
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def get_chat_type(cls):
|
def get_chat_type(cls):
|
||||||
return "1"
|
return "01"
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def get_web_request_type(cls):
|
def get_web_request_type(cls):
|
||||||
return "2"
|
return "02"
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def get_web_response_type(cls):
|
||||||
|
return "03"
|
||||||
|
|
||||||
class ToorMessage():
|
class ToorMessage():
|
||||||
''' This is a simple Message object wrapper to make things cleaner '''
|
''' This is a simple Message object wrapper to make things cleaner '''
|
||||||
|
|
||||||
def __init__(self, message = "", user = None, type=ToorChatProtocol.get_chat_type()):
|
''' This is confusing as shit so here is a diagram to attempt to help us all out '''
|
||||||
|
''' ___________________________________________________________________________ '''
|
||||||
|
'''| Start | XID | Type | Index | Last | Data | End | '''
|
||||||
|
'''|___4___|__8__|__2___|___1___|__1___|__________100-200_______________|__4__| '''
|
||||||
|
|
||||||
|
''' The numbers represent the number of byte in a given message '''
|
||||||
|
''' Note: The more data bytes we use, the harder it is to catch over the air '''
|
||||||
|
|
||||||
|
|
||||||
|
def __init__(self, message = "", user = None, protocol_type=ToorChatProtocol.get_chat_type(), xid=None, index="0", last="0"):
|
||||||
self.raw = None
|
self.raw = None
|
||||||
self.start = ToorChatProtocol.get_packet_start()
|
self.start = ToorChatProtocol.get_packet_start()
|
||||||
self.xid = self.get_random_xid()
|
if xid == None:
|
||||||
self.type = type
|
self.xid = self.get_random_xid()
|
||||||
|
else:
|
||||||
|
self.xid = xid
|
||||||
|
|
||||||
|
self.type = protocol_type
|
||||||
|
self.index = index
|
||||||
|
self.last = last
|
||||||
if user != None:
|
if user != None:
|
||||||
self.user = user
|
self.user = user
|
||||||
if len(self.user) < USER_NAME_SIZE:
|
if len(self.user) < USER_NAME_SIZE:
|
||||||
|
|
|
@ -37,6 +37,7 @@ class Visualizer():
|
||||||
self.badge.setModeRX()
|
self.badge.setModeRX()
|
||||||
self.protocol = ToorChatProtocol(self.badge)
|
self.protocol = ToorChatProtocol(self.badge)
|
||||||
self.message_queue = []
|
self.message_queue = []
|
||||||
|
self.website_buffer = []
|
||||||
self.user = None
|
self.user = None
|
||||||
#This when set to True will kill the thread
|
#This when set to True will kill the thread
|
||||||
self.exit = False
|
self.exit = False
|
||||||
|
@ -115,7 +116,6 @@ if __name__ == '__main__':
|
||||||
visual = Visualizer()
|
visual = Visualizer()
|
||||||
if len(sys.argv) > 1:
|
if len(sys.argv) > 1:
|
||||||
if sys.argv[1] == "-s":
|
if sys.argv[1] == "-s":
|
||||||
|
print "SET server"
|
||||||
visual.set_server()
|
visual.set_server()
|
||||||
visual.start()
|
visual.start()
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue