forked from p15670423/monkey
Agent: Improve InvalidExploitTemplateError messages
This commit is contained in:
parent
4d5a2511c6
commit
fddaa16931
|
@ -1,6 +1,8 @@
|
|||
import struct
|
||||
from pathlib import Path
|
||||
|
||||
# This code has been adapted from https://github.com/alexandre-lavoie/python-log4rce
|
||||
|
||||
EXPLOIT_TEMPLATE_PATH = Path(__file__).parent / "Exploit.class.template"
|
||||
INJECTION_TAG = "###"
|
||||
|
||||
|
@ -34,7 +36,7 @@ def _load_template_bytecode(exploit_template_path: Path) -> bytes:
|
|||
|
||||
if not template_bytecode.startswith(b"\xca\xfe\xba\xbe"):
|
||||
raise InvalidExploitTemplateError(
|
||||
f"Trying to load non-compiled Java class `{EXPLOIT_TEMPLATE_PATH}`."
|
||||
f'The file "{EXPLOIT_TEMPLATE_PATH}" is not a compiled Java class'
|
||||
)
|
||||
|
||||
return template_bytecode
|
||||
|
@ -44,7 +46,9 @@ def _inject_payload(payload: str, template_bytecode: bytes):
|
|||
payload_bytes = payload.encode()
|
||||
|
||||
if not INJECTION_TAG.encode() in template_bytecode:
|
||||
raise InvalidExploitTemplateError(f'No "{INJECTION_TAG}" tag to inject payload into.')
|
||||
raise InvalidExploitTemplateError(
|
||||
f'Unable to find "{INJECTION_TAG}" tag in the template bytecode'
|
||||
)
|
||||
|
||||
index = template_bytecode.index(INJECTION_TAG.encode())
|
||||
|
||||
|
|
Loading…
Reference in New Issue