Guest User

Untitled

a guest
Oct 30th, 2017
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.98 KB | None | 0 0
  1. #!/usr/bin/env python
  2. #
  3.  
  4. from enc import sqlenc
  5. import sys, socket, string
  6.  
  7. if len(sys.argv) != 5:
  8.     print "Usage: ./sqlenc.py <host> <port> <nick> <channel>"
  9.     sys.exit(1)
  10.  
  11. HOST = sys.argv[1]
  12. PORT = int(sys.argv[2])
  13. NICK = sys.argv[3]
  14. CHAN = sys.argv[4]
  15. readbuffer = ""
  16.  
  17. s=socket.socket( )
  18. s.connect((HOST, PORT))
  19. s.send("NICK %s\r\n" % NICK)
  20. s.send("USER %s %s bla :%s\r\n" % (NICK, NICK, NICK))
  21. s.send("JOIN :%s\r\n" % CHAN)
  22. sqlenc = sqlenc()
  23.  
  24. while 1:
  25.     readbuffer=readbuffer+s.recv(1024)
  26.         temp=string.split(readbuffer, "\n")
  27.         readbuffer=temp.pop( )
  28.  
  29.         for line in temp:
  30.             line=string.rstrip(line)
  31.             line=string.split(line)
  32.         try:
  33.             if line[3] == ":!sqlenc":
  34.                 name = str(line[0].split("!")[0])
  35.                 query = line[4:]
  36.                 query = " ".join(query)
  37.                 s.send("PRIVMSG %s :%s%s ...\r\n" % (CHAN, "Encoding for ", name.replace(":","")))
  38.                 s.send("PRIVMSG %s :QUERY: %s\r\n" % (CHAN, query))
  39.                 s.send("PRIVMSG %s :MySQL: %s\r\n" % (CHAN, sqlenc.myToAscii(query)))
  40.                 s.send("PRIVMSG %s :MySQL hex: %s\r\n" % (CHAN, sqlenc.myToHex(query)))
  41.                 s.send("PRIVMSG %s :Oracle: %s\r\n" % (CHAN, sqlenc.oraToAscii(query)))
  42.                 s.send("PRIVMSG %s :MSSQL: %s\r\n" % (CHAN, sqlenc.msToAscii(query)))
  43.                
  44.         except(IndexError):
  45.             pass
  46.         if(line[0]=="PING"):
  47.                 s.send("PONG %s\r\n" % line[1])
  48. ##################################################################################################
  49. #sqlenc enc file
  50. #
  51. #convert string to hex
  52. import re
  53. class sqlenc(object):
  54.  
  55.       def __init__(self):
  56.     pass
  57.      
  58.       def toHex(self,string):
  59.     result = []
  60.     string = str(self,string)
  61.     for i in string:
  62.       result.append("0x"+i.encode("hex"))
  63.     return result
  64.    
  65.       def defToHex(self,string):
  66.     string = self.toHex(string)
  67.     return "\\".join(string)
  68.  
  69.       def myToHex(self,string):
  70.     string = "0x"+string.encode("hex")
  71.     return string
  72.  
  73.       def toAscii(self,string):
  74.     result = []
  75.     string = str(string)
  76.     for i in string:
  77.       result.append(str(ord(i)))
  78.     return result
  79.  
  80.       def myToAscii(self,string):
  81.     string = self.toAscii(string)
  82.     return "char("+",".join(string)+")"
  83.  
  84.  
  85.       def oraToAscii(self,string):
  86.     result = []
  87.     string = str(string)
  88.     for i in string:
  89.       result.append('chr('+str(ord(i))+')')
  90.     return "||".join(result)
  91.    
  92.       def msToAscii(self,string):
  93.     result = []
  94.     string = str(string)
  95.     for i in string:
  96.       result.append('char('+str(ord(i))+')')
  97.     return "+".join(result)
  98.  
  99.  
  100.       def hexToStr(self,string):
  101.       result = []
  102.       string = string.replace('/', '')
  103.       string = string.replace('CHAR', '')
  104.       string = string.replace('(', '')
  105.       string = string.replace(')', '')
  106.       string = string.replace('|', '')
  107.       string = string.replace('chr', '')
  108.       string = string.replace('char', '')
  109.       string = string.replace(',', ' ')
  110.       keys = re.findall(("0x([-\\w\\.]+)"), string)
  111.       for i in keys:
  112.         result.append(i.decode("hex"))
  113.       return "".join(result)
  114.  
  115. #a = sqlenc().myToAscii("select")
  116. #print a
  117. #print hexToStr(a)
Add Comment
Please, Sign In to add comment