此仓库包含一个Python脚本,用于自动化测试名为Text4Shell的漏洞,该漏洞的CVE编号为:CVE-2022-42889。
Text4Shell是一个影响广泛系统的严重漏洞。该漏洞存在于这些系统解析文本字符串的方式中,允许执行任意代码或发起SSRF攻击。通过精心构造的字符串,可以执行JavaScript代码(导致远程代码执行RCE)或获取URL(导致服务器端请求伪造SSRF)。
来自 Tarlogic 的内容:
利用条件:
应用程序接受用户控制的输入,随后由受影响组件的以下方法之一处理:
Java版本15及以上不会受到远程代码执行的影响,因为Nashorn引擎被禁用,“script”前缀不可用。但是,通过“url”和“dns”前缀的其他攻击是可能的。
此Python脚本用于测试系统中是否存在Text4Shell漏洞。该脚本的范围包括:测试script和url前缀。
脚本有两种操作模式:RCE和SSRF,由-m或--mode命令行参数控制。它根据所选模式构建包含精心构造字符串的URL,并向该URL发起GET请求。
在RCE模式下,脚本创建一个尝试执行JavaScript命令的精心构造字符串。要执行的命令通过-c或--command命令行参数传递。
python text4shell.py -u 'http://example.com/search?query=' -c 'your_command' -m 'rce'
在SSRF模式下,脚本创建一个包含URL获取命令的精心构造字符串。
python text4shell.py -u 'http://example.com/search?query=' -m 'ssrf' -s 'http://example.com/resource'
脚本向构造的URL发起GET请求,并打印HTTP响应状态码和正文。