MCPcopy Create free account
hub / github.com/alexandre-lavoie/python-log4rce / Serializer

Class Serializer

log4rce.py:33–63  ·  view source on GitHub ↗

Stack-based Serialization utility.

Source from the content-addressed store, hash-verified

31log4j_logger = logging.getLogger("Log4RCE")
32
33class Serializer():
34 """
35 Stack-based Serialization utility.
36 """
37
38 __payload: bytes
39 __size_stack: bytes
40
41 def __init__(self):
42 self.__payload = b""
43 self.__size_stack = []
44
45 def push(self, data: bytes) -> "Serializer":
46 self.__last = data
47 self.__payload = data + self.__payload
48 return self
49
50 def pop_size(self) -> "Serializer":
51 return self.push(bytes([len(self.__payload) - self.__size_stack.pop()]))
52
53 def push_size(self, count=1) -> "Serializer":
54 for _ in range(count):
55 self.__size_stack.append(len(self.__payload))
56
57 return self
58
59 def build(self) -> bytes:
60 return self.__payload
61
62 def __repr__(self) -> str:
63 return f"Serializer{self.__payload}"
64
65class JavaClass():
66 """

Callers 1

serializeMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected