这是一个故意存在 CVE-2022-42889 漏洞的 Web 应用。
它使用嵌入式 Jetty 服务器和 Maven 启动一个 servlet,监听 8080 端口,URL 为 \api。该端点接受一个 URL 参数 cmd。该参数被嵌入在 ${ 和 } 之间,并传递给 StringSubstitutor 函数;该函数进而实现了 StringLookupFactory。
漏洞产生的原因是 StringLookupFactory 包含了一些插值器,如果提供不可信的输入,这些插值器很容易被利用。这些插值器包括 script、dns 和 url。自 v1.10.0 起,它们已在默认情况下被禁用。coomons-text 1.5 及以上版本直至 v1.10 均受影响。
你可以通过执行以下命令在本地运行:
mvn package exec:java
注意:程序默认监听
0.0.0.0。因此,请勿在连接到不受信任的网络时运行此程序。