File tree Expand file tree Collapse file tree 2 files changed +140
-0
lines changed
templated/templateddetector/plugins/cve/2024 Expand file tree Collapse file tree 2 files changed +140
-0
lines changed Original file line number Diff line number Diff line change 1+ # proto-file: proto/templated_plugin.proto
2+ # proto-message: TemplatedPlugin
3+
4+ # ##############
5+ # PLUGIN INFO #
6+ # ##############
7+
8+ info: {
9+ type: VULN_DETECTION
10+ name: " ApachePinot_CVE_2024_56325"
11+ author: " Joern w"
12+ version: " 1.0"
13+ }
14+
15+ finding: {
16+ main_id: {
17+ publisher: " GOOGLE"
18+ value: " APACHEPINOT_CVE_2024_56325"
19+ }
20+ severity: HIGH
21+ title: " ApachePinot is vulnerable to Authentication Bypass"
22+ description: " The instance of ApachePinot is vulnerable Authentication Bypass. This allows to create a new user which can run pinot SQL queries."
23+ recommendation: " Update to version 1.4.0 or higher."
24+ related_id: {
25+ publisher: " CVE"
26+ value: " CVE-2024-56325"
27+ }
28+ }
29+
30+ config: {}
31+
32+ # ##########
33+ # ACTIONS #
34+ # ##########
35+
36+ actions: {
37+ name: " fingerprint_pinot"
38+ http_request: {
39+ method: GET
40+ uri: " /"
41+ response: {
42+ http_status: 200
43+ expect_all: {
44+ conditions: [
45+ { body: {} contains: ' <title>Apache Pinot</title>' },
46+ { body: {} contains: " <meta name=\" description\" content=\" Pinot Controller UI\" >" }
47+ ]
48+ }
49+ }
50+ }
51+ }
52+
53+ actions: {
54+ name: " check_auth_bypass"
55+ http_request: {
56+ method: GET
57+ uri: " /tables;."
58+ response: {
59+ http_status: 200
60+ expect_all: {
61+ conditions: [
62+ { body: {} contains: ' {"tables":[]}' }
63+ ]
64+ }
65+ }
66+ }
67+ }
68+
69+ # ############
70+ # WORKFLOWS #
71+ # ############
72+
73+ workflows: {
74+ actions: [
75+ " fingerprint_pinot" ,
76+ " check_auth_bypass"
77+ ]
78+ }
Original file line number Diff line number Diff line change 1+ # proto-file: proto/templated_plugin_tests.proto
2+ # proto-message: TemplatedPluginTests
3+
4+ config: {
5+ tested_plugin: " ApachePinot_CVE_2024_56325"
6+ disabled: false
7+ }
8+
9+ tests: {
10+ name: " whenVulnerable_returnsTrue"
11+ expect_vulnerability: true
12+
13+ mock_http_server: {
14+ mock_responses: [
15+ {
16+ uri: " /"
17+ status: 200
18+ body_content: ' <title>Apache Pinot</title> <meta name="description" content="Pinot Controller UI">'
19+ },
20+ {
21+ uri: " /tables;."
22+ status: 200
23+ body_content: ' {"tables":[]}'
24+ }
25+ ]
26+ }
27+ }
28+
29+ tests: {
30+ name: " whenNotVulnerable_returnsFalse"
31+ expect_vulnerability: false
32+
33+ mock_http_server: {
34+ mock_responses: [
35+ {
36+ uri: " /"
37+ status: 200
38+ body_content: ' <title>Apache Pinot</title> <metaname="description" content="Pinot Controller UI">'
39+ },
40+ {
41+ uri: " /tables\\ ;."
42+ status: 403
43+ body_content: ' {"code":401,"error":"HTTP 401 Unauthorized"}'
44+ }
45+ ]
46+ }
47+ }
48+
49+ tests: {
50+ name: " whenNotApachePinot_returnsFalse"
51+ expect_vulnerability: false
52+
53+ mock_http_server: {
54+ mock_responses: [
55+ {
56+ uri: " TSUNAMI_MAGIC_ANY_URI"
57+ status: 200
58+ body_content: " Login to your Drupal account"
59+ }
60+ ]
61+ }
62+ }
You can’t perform that action at this time.
0 commit comments