metasploit-payloads 2.0.59 → 2.0.63
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/data/android/meterpreter.jar +0 -0
- data/data/android/metstage.jar +0 -0
- data/data/android/shell.jar +0 -0
- data/data/meterpreter/elevator.x64.dll +0 -0
- data/data/meterpreter/elevator.x86.dll +0 -0
- data/data/meterpreter/ext_server_espia.x64.dll +0 -0
- data/data/meterpreter/ext_server_espia.x86.dll +0 -0
- data/data/meterpreter/ext_server_extapi.x64.dll +0 -0
- data/data/meterpreter/ext_server_extapi.x86.dll +0 -0
- data/data/meterpreter/ext_server_incognito.x64.dll +0 -0
- data/data/meterpreter/ext_server_incognito.x86.dll +0 -0
- data/data/meterpreter/ext_server_kiwi.x64.dll +0 -0
- data/data/meterpreter/ext_server_kiwi.x86.dll +0 -0
- data/data/meterpreter/ext_server_lanattacks.x64.dll +0 -0
- data/data/meterpreter/ext_server_lanattacks.x86.dll +0 -0
- data/data/meterpreter/ext_server_peinjector.x64.dll +0 -0
- data/data/meterpreter/ext_server_peinjector.x86.dll +0 -0
- data/data/meterpreter/ext_server_powershell.x64.dll +0 -0
- data/data/meterpreter/ext_server_powershell.x86.dll +0 -0
- data/data/meterpreter/ext_server_priv.x64.dll +0 -0
- data/data/meterpreter/ext_server_priv.x86.dll +0 -0
- data/data/meterpreter/ext_server_python.x64.dll +0 -0
- data/data/meterpreter/ext_server_python.x86.dll +0 -0
- data/data/meterpreter/ext_server_sniffer.x64.dll +0 -0
- data/data/meterpreter/ext_server_sniffer.x86.dll +0 -0
- data/data/meterpreter/ext_server_stdapi.php +12 -6
- data/data/meterpreter/ext_server_stdapi.py +4 -1
- data/data/meterpreter/ext_server_stdapi.x64.dll +0 -0
- data/data/meterpreter/ext_server_stdapi.x86.dll +0 -0
- data/data/meterpreter/ext_server_unhook.x64.dll +0 -0
- data/data/meterpreter/ext_server_unhook.x86.dll +0 -0
- data/data/meterpreter/ext_server_winpmem.x64.dll +0 -0
- data/data/meterpreter/ext_server_winpmem.x86.dll +0 -0
- data/data/meterpreter/meterpreter.py +18 -10
- data/data/meterpreter/metsrv.x64.dll +0 -0
- data/data/meterpreter/metsrv.x86.dll +0 -0
- data/data/meterpreter/screenshot.x64.dll +0 -0
- data/data/meterpreter/screenshot.x86.dll +0 -0
- data/lib/metasploit-payloads/version.rb +1 -1
- data.tar.gz.sig +0 -0
- metadata +2 -2
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 70fb6b8c214c2032e3f506341d7f9b069e93639b6abf7afbd3fd279ea087d9e6
|
4
|
+
data.tar.gz: a2541c9ad2051533ee66ea252f3fa1d84774f7dbea2dbe823fa45b50e8add977
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8938435f3345901ff7d6401ae487ae12117f09035c8fd4cc74d733eebb56a1d731b045321b5ad6aaac42ade9a884e284ab36358589857bd195443ae8e5ae9db1
|
7
|
+
data.tar.gz: ac0be6bedfaf25d2b3c102f42f020625d110d63d559b8361ae2b1f8199ad1df214e489bd3dbb0e251ec4c10d50e6df61a4839f929b868ba74a1cc0214677d1b5
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
Binary file
|
data/data/android/metstage.jar
CHANGED
Binary file
|
data/data/android/shell.jar
CHANGED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -461,7 +461,8 @@ function resolve_host($hostname, $family) {
|
|
461
461
|
} elseif ($family == AF_INET6) {
|
462
462
|
$dns_family = DNS_AAAA;
|
463
463
|
} else {
|
464
|
-
|
464
|
+
my_print('invalid family, must be AF_INET or AF_INET6');
|
465
|
+
return NULL;
|
465
466
|
}
|
466
467
|
|
467
468
|
$dns = dns_get_record($hostname, $dns_family);
|
@@ -1224,15 +1225,18 @@ if (!function_exists('stdapi_net_resolve_host')) {
|
|
1224
1225
|
register_command('stdapi_net_resolve_host', COMMAND_ID_STDAPI_NET_RESOLVE_HOST);
|
1225
1226
|
function stdapi_net_resolve_host($req, &$pkt) {
|
1226
1227
|
my_print("doing stdapi_net_resolve_host");
|
1227
|
-
$
|
1228
|
-
$
|
1228
|
+
$hostname_tlv = packet_get_tlv($req, TLV_TYPE_HOST_NAME);
|
1229
|
+
$hostname = $hostname['value'];
|
1230
|
+
$family_tlv = packet_get_tlv($req, TLV_TYPE_ADDR_TYPE);
|
1231
|
+
$family = $family['value'];
|
1229
1232
|
|
1230
1233
|
if ($family == WIN_AF_INET) {
|
1231
1234
|
$family = AF_INET;
|
1232
1235
|
} elseif ($family == WIN_AF_INET6) {
|
1233
1236
|
$family = AF_INET6;
|
1234
1237
|
} else {
|
1235
|
-
|
1238
|
+
my_print('invalid family, must be AF_INET or AF_INET6');
|
1239
|
+
return ERROR_FAILURE;
|
1236
1240
|
}
|
1237
1241
|
|
1238
1242
|
$ret = ERROR_FAILURE;
|
@@ -1250,14 +1254,16 @@ if (!function_exists('stdapi_net_resolve_hosts')) {
|
|
1250
1254
|
register_command('stdapi_net_resolve_hosts', COMMAND_ID_STDAPI_NET_RESOLVE_HOSTS);
|
1251
1255
|
function stdapi_net_resolve_hosts($req, &$pkt) {
|
1252
1256
|
my_print("doing stdapi_net_resolve_hosts");
|
1253
|
-
$
|
1257
|
+
$family_tlv = packet_get_tlv($req, TLV_TYPE_ADDR_TYPE);
|
1258
|
+
$family = $family_tlv['value'];
|
1254
1259
|
|
1255
1260
|
if ($family == WIN_AF_INET) {
|
1256
1261
|
$family = AF_INET;
|
1257
1262
|
} elseif ($family == WIN_AF_INET6) {
|
1258
1263
|
$family = AF_INET6;
|
1259
1264
|
} else {
|
1260
|
-
|
1265
|
+
my_print('invalid family, must be AF_INET or AF_INET6');
|
1266
|
+
return ERROR_FAILURE;
|
1261
1267
|
}
|
1262
1268
|
|
1263
1269
|
$hostname_tlvs = packet_get_all_tlvs($req, TLV_TYPE_HOST_NAME);
|
@@ -662,6 +662,7 @@ PROCESS_EXECUTE_FLAG_CHANNELIZED = (1 << 1)
|
|
662
662
|
PROCESS_EXECUTE_FLAG_SUSPENDED = (1 << 2)
|
663
663
|
PROCESS_EXECUTE_FLAG_USE_THREAD_TOKEN = (1 << 3)
|
664
664
|
PROCESS_EXECUTE_FLAG_SUBSHELL = (1 << 6)
|
665
|
+
PROCESS_EXECUTE_FLAG_PTY = (1 << 7)
|
665
666
|
|
666
667
|
PROCESS_ARCH_UNKNOWN = 0
|
667
668
|
PROCESS_ARCH_X86 = 1
|
@@ -1146,6 +1147,8 @@ def stdapi_sys_process_close(request, response):
|
|
1146
1147
|
proc_h_id = proc_h_id['value']
|
1147
1148
|
if proc_h_id in meterpreter.processes:
|
1148
1149
|
del meterpreter.processes[proc_h_id]
|
1150
|
+
if not meterpreter.close_channel(proc_h_id):
|
1151
|
+
return ERROR_FAILURE, response
|
1149
1152
|
return ERROR_SUCCESS, response
|
1150
1153
|
|
1151
1154
|
@register_function
|
@@ -1166,7 +1169,7 @@ def stdapi_sys_process_execute(request, response):
|
|
1166
1169
|
args.extend(shlex.split(raw_args))
|
1167
1170
|
|
1168
1171
|
if (flags & PROCESS_EXECUTE_FLAG_CHANNELIZED):
|
1169
|
-
if has_pty:
|
1172
|
+
if has_pty and (flags & PROCESS_EXECUTE_FLAG_PTY):
|
1170
1173
|
master, slave = pty.openpty()
|
1171
1174
|
if has_termios:
|
1172
1175
|
try:
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -667,6 +667,7 @@ class MeterpreterProcess(MeterpreterChannel):
|
|
667
667
|
self.proc_h.kill()
|
668
668
|
if self.proc_h.ptyfd is not None:
|
669
669
|
os.close(self.proc_h.ptyfd)
|
670
|
+
self.proc_h.ptyfd = None
|
670
671
|
for stream in (self.proc_h.stdin, self.proc_h.stdout, self.proc_h.stderr):
|
671
672
|
if not hasattr(stream, 'close'):
|
672
673
|
continue
|
@@ -1241,6 +1242,21 @@ class PythonMeterpreter(object):
|
|
1241
1242
|
self.next_process_id += 1
|
1242
1243
|
return idx
|
1243
1244
|
|
1245
|
+
def close_channel(self, channel_id):
|
1246
|
+
if channel_id not in self.channels:
|
1247
|
+
return False
|
1248
|
+
channel = self.channels[channel_id]
|
1249
|
+
try:
|
1250
|
+
channel.close()
|
1251
|
+
except Exception:
|
1252
|
+
debug_traceback('[-] failed to close channel id: ' + str(channel_id))
|
1253
|
+
return False
|
1254
|
+
del self.channels[channel_id]
|
1255
|
+
if channel_id in self.interact_channels:
|
1256
|
+
self.interact_channels.remove(channel_id)
|
1257
|
+
debug_print('[*] closed and removed channel id: ' + str(channel_id))
|
1258
|
+
return True
|
1259
|
+
|
1244
1260
|
def get_packet(self):
|
1245
1261
|
pkt = self.transport.get_packet()
|
1246
1262
|
if pkt is None and self.transport.should_retire:
|
@@ -1362,7 +1378,6 @@ class PythonMeterpreter(object):
|
|
1362
1378
|
self.send_packet(tlv_pack_request('core_channel_write', write_request_parts))
|
1363
1379
|
|
1364
1380
|
def handle_dead_resource_channel(self, channel_id):
|
1365
|
-
del self.channels[channel_id]
|
1366
1381
|
if channel_id in self.interact_channels:
|
1367
1382
|
self.interact_channels.remove(channel_id)
|
1368
1383
|
self.send_packet(tlv_pack_request('core_channel_close', [
|
@@ -1570,16 +1585,9 @@ class PythonMeterpreter(object):
|
|
1570
1585
|
|
1571
1586
|
def _core_channel_close(self, request, response):
|
1572
1587
|
channel_id = packet_get_tlv(request, TLV_TYPE_CHANNEL_ID)['value']
|
1573
|
-
if
|
1588
|
+
if not self.close_channel(channel_id):
|
1574
1589
|
return ERROR_FAILURE, response
|
1575
|
-
|
1576
|
-
status, response = channel.core_close(request, response)
|
1577
|
-
if status == ERROR_SUCCESS:
|
1578
|
-
del self.channels[channel_id]
|
1579
|
-
if channel_id in self.interact_channels:
|
1580
|
-
self.interact_channels.remove(channel_id)
|
1581
|
-
debug_print('[*] closed and removed channel id: ' + str(channel_id))
|
1582
|
-
return status, response
|
1590
|
+
return ERROR_SUCCESS, response
|
1583
1591
|
|
1584
1592
|
def _core_channel_eof(self, request, response):
|
1585
1593
|
channel_id = packet_get_tlv(request, TLV_TYPE_CHANNEL_ID)['value']
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metasploit-payloads
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.63
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- OJ Reeves
|
@@ -96,7 +96,7 @@ cert_chain:
|
|
96
96
|
EknWpNgVhohbot1lfVAMmIhdtOVaRVcQQixWPwprDj/ydB8ryDMDosIMcw+fkoXU
|
97
97
|
9GJsSaSRRYQ9UUkVL27b64okU8D48m8=
|
98
98
|
-----END CERTIFICATE-----
|
99
|
-
date: 2021-
|
99
|
+
date: 2021-12-08 00:00:00.000000000 Z
|
100
100
|
dependencies:
|
101
101
|
- !ruby/object:Gem::Dependency
|
102
102
|
name: rake
|
metadata.gz.sig
CHANGED
Binary file
|