绕过 RestrictedUnpickler

上周跑模型的间隙,看到一个关于 Python Pickle 反序列化的 CTF 题,和以往见到的不太一样,感觉很有意思,遂打算研究一下。

0x00 Pickle 反序列化

我们知道,当我们控制了如 pickle.loads等序列化数据的输入接口时,我们可以通过构造恶意的 Payload 来达到任意代码执行的效果。这是因为, pickle 库在反序列化(unpickling)的过程中,默认会导入 Payload 中找到的任意类或者函数对象。所以,Python 的开发者也一直警告大家,不要轻易用 pickle 来反序列化没有经过数据清洗的输入数据。同时,还推荐开发者通过实现自己的 Unpickler,来限制反序列化过程中能够 import 的类或函数,参考:https://docs.python.org/3.7/library/pickle.html#restricting-globals

阅读全文 “绕过 RestrictedUnpickler” »

【威胁通告】Cisco Stealthwatch Management Console及Unity Express高危漏洞CVE-2018-15394,CVE-2018-15381

当地时间11月7日,Cisco官方发布安全通告称修复了Stealthwatch Management Console以及Unity Express的2个高危漏洞。CVE-2018-15394,该漏洞源于系统配置存在隐患,一个未授权的攻击者可以远程绕过验证流程,从而受影响的系统上以管理员身份执行代码。CVE-2018-15381,该漏洞源于对用户提供的内容进行反序列化操作是没有进行足够的过滤。攻击者可以向受影响的系统RMI服务发送一个恶意的java序列化对象来触发该漏洞,从而以root权限执行任意shell命令。

阅读全文 “【威胁通告】Cisco Stealthwatch Management Console及Unity Express高危漏洞CVE-2018-15394,CVE-2018-15381” »