Skip to content

Commit

Permalink
Merge pull request #10131 from DEVisions/apache_streampipes
Browse files Browse the repository at this point in the history
Added apache-streampipes-detect.yaml and CVE-2024-29868.yaml + moved …
  • Loading branch information
DhiyaneshGeek authored Aug 28, 2024
2 parents c7242dd + a9e4e26 commit 1d15d3a
Show file tree
Hide file tree
Showing 3 changed files with 104 additions and 0 deletions.
65 changes: 65 additions & 0 deletions http/cves/2024/CVE-2024-29868.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
id: CVE-2024-29868

info:
name: Apache StreamPipes <= 0.93.0 - Use of Cryptographically Weak PRNG in Recovery Token Generation
author: Alessandro Albani - DEVisions
severity: critical
description: |
Apache StreamPipes from version 0.69.0 through 0.93.0 uses a cryptographically weak Pseudo-Random Number Generator (PRNG) in the recovery token generation mechanism. Given a valid token it's possible to predict all past and future generated tokens.
impact: |
Successful exploitation of this vulnerability could allow an attacker to take over user accounts.
remediation: |
Update to Apache StreamPipes 0.95.0 or later.
reference:
- https://labs.yarix.com/2024/06/cve-2024-29868
- https://www.cve.org/CVERecord?id=CVE-2024-29868
- https://lists.apache.org/thread/g7t7zctvq2fysrw1x17flnc12592nhx7
- https://nvd.nist.gov/vuln/detail/CVE-2024-29868
classification:
cve-id: CVE-2024-29868
cwe-id: CWE-338
metadata:
max-request: 2
shodan-query: http.title:"apache streampipes"
fofa-query: title="apache streampipes"
tags: cve,cve2024,apache,streampipes,account-takeover

flow: http(1) && http(2)

http:
- method: GET
path:
- '{{BaseURL}}/streampipes-backend/api/v2/auth/settings'
headers:
User-Agent: "{{randstr}}"

extractors:
- type: json
part: body
name: settings
group: 1
json:
- 'if .allowPasswordRecovery==true and .allowSelfRegistration==true then true else false end'
internal: true

- method: GET
path:
- '{{BaseURL}}/streampipes-backend/api/openapi.json'
headers:
User-Agent: "{{randstr}}"

extractors:
- type: json
part: body
name: version
group: 1
json:
- '.info.version'
internal: true

matchers:
- type: dsl
dsl:
- 'contains(settings, true)'
- "compare_versions(version, '>= 0.69.0') && compare_versions(version, '<= 0.93.0')"
condition: and
File renamed without changes.
39 changes: 39 additions & 0 deletions http/technologies/apache/apache-streampipes-detect.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
id: apache-streampipes-detect

info:
name: Apache StreamPipes - Detect
author: Alessandro Albani - DEVisions
severity: info
description: |
Checks for the presence of Apache StreamPipes by looking in the body or matching the favicon hash.
metadata:
max-request: 3
verified: true
shodan-query: title:"apache streampipes"
fofa-query: title="apache streampipes"
tags: tech,apache,streampipes,detect

http:
- method: GET
path:
- '{{BaseURL}}/streampipes-backend/api/openapi.json'
- '{{BaseURL}}/assets/img/favicon/favicon.ico'
- '{{BaseURL}}'

host-redirects: true
max-redirects: 2
stop-at-first-match: true

matchers:
- type: dsl
dsl:
- contains_any(to_lower(body), "<title>apache streampipes", "apache streampipes api")
- status_code==200 && ("1937041138" == mmh3(base64_py(body)) || "480680877" == mmh3(base64_py(body)))
condition: or

extractors:
- type: json
part: body
group: 1
json:
- '.info.version'

0 comments on commit 1d15d3a

Please sign in to comment.