这是一个基于 ROP 的 CVE 2020-14871 基础漏洞利用程序。CVE 2020-14871 是 Sun Solaris 系统中的一个漏洞。 该漏洞实际上是位于 PAM parse_user_name 函数中的一个经典栈缓冲区溢出漏洞。 攻击者可以通过操纵 SSH 客户端设置,强制使用键盘交互式身份验证来提示输入用户名, 然后向 PAM parse_user_name 函数传递无限制的输入。当输入达到 512 字节时, 用户名缓冲区将发生溢出。该漏洞是在 Mandiant 执行的一次入侵评估中在野外被发现的, 当时它被用作获取系统访问权限的初始漏洞利用程序。
此版本是在 VMWare 上的 sun-solaris 10 中开发的,并在裸机生产机器上进行了测试。栈上的 位置可能因 libpam 的版本而异。这个版本对我是有效的。你可以尝试 喷射基址,因为使被利用的 ssh 进程崩溃不会带来任何后果。
该漏洞利用程序将在系统上执行 shell 命令。在提供的版本中,它会创建一个基于 Python 的 反向 shell,并使用 'disown' 执行它。