KekSec

SIXTEEN Line "faggot" string obfuscator by Freak

Jan 7th, 2021 (edited)
744
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.87 KB | None | 0 0
  1. import sys,zlib,ast,collections #CODED BY FREAK - http://pastebin.com/u/KekSec - LEAVE CREDS IF U USE DONT BE A RIPPER - Original src (updated from time to time): https://pastebin.com/raw/WzYJJnmW
  2. def escape(s):
  3.     ch = (ord(c) for c in s)
  4.     return ''.join(('\\x%02x' % c) if c <= 255 else ('\\u%04x' % c) for c in ch)
  5. global newcode
  6. code = newcode = open(sys.argv[1]).read()
  7. root = ast.parse(code)
  8. class ShowStrings(ast.NodeVisitor):
  9.   def visit_Str(self, node):
  10.     if len(node.s) >= 5 and "re." not in code.split("\n")[node.lineno-1] and ":(" not in code.split("\n")[node.lineno-1] and ": (" not in code.split("\n")[node.lineno-1]: #min length five and no regex statements or dicts allowed
  11.             global newcode
  12.             string=code.split("\n")[node.lineno-1][node.col_offset:node.col_offset+len(node.s)+2][0]+"".join(code.split("\n")[node.lineno-1][node.col_offset+1:node.col_offset+len(node.s)+len(code.split("\n")[node.lineno-1][node.col_offset-1:node.col_offset+len(node.s)+2].split(code.split("\n")[node.lineno-1][node.col_offset+1:node.col_offset+len(node.s)+2][0])[0])+4][:code.split("\n")[node.lineno-1][node.col_offset+1:node.col_offset+len(node.s)+len(code.split("\n")[node.lineno-1][node.col_offset-1:node.col_offset+len(node.s)+2].split(code.split("\n")[node.lineno-1][node.col_offset+1:node.col_offset+len(node.s)+2][0])[0])+4].find(code.split("\n")[node.lineno-1][node.col_offset:node.col_offset+len(node.s)+2][0])])+code.split("\n")[node.lineno-1][node.col_offset:node.col_offset+len(node.s)+2][0]
  13.             compressed="zlib.decompress("+code.split("\n")[node.lineno-1][node.col_offset:node.col_offset+len(node.s)+2][0]+escape(zlib.compress(node.s))+code.split("\n")[node.lineno-1][node.col_offset:node.col_offset+len(node.s)+2][0]+")"
  14.             newcode=newcode.replace(string, compressed)
  15. ShowStrings().visit(root)
  16. with open("secret.py", 'w') as f: f.write(newcode)
Add Comment
Please, Sign In to add comment