GHSA-cwgg-57xj-g77r
changedetection.io Path Traversal
Details
### Summary When a WebDriver is used to fetch files source:file:///etc/passwd can be used to retrieve local system files, where the more traditional file:///etc/passwd gets blocked
### Details The root cause is the payload source:file:///etc/passwdpasses the regex [here](https://github.com/dgtlmoon/changedetection.io/blob/master/changedetectionio/model/Watch.py#L19) and also passes the check [here](https://github.com/dgtlmoon/changedetection.io/blob/master/changedetectionio/processors/__init__.py#L35) where a traditional file:///etc/passwd would get blocked
### PoC [CL-ChangeDetection.io Path Travsersal-311024-181039.pdf](https://github.com/user-attachments/files/17591630/CL-ChangeDetection.io.Path.Travsersal-311024-181039.pdf)
### Impact It depends on where the webdriver is deployed but generally this is a high impact vulnerability
Are you affected?
Enter the version of the package you're using.
Affected packages
0 Fixed in: 0.47.5 pip install --upgrade 'changedetection-io>=0.47.5' References
- https://github.com/dgtlmoon/changedetection.io/security/advisories/GHSA-cwgg-57xj-g77r [WEB]
- https://nvd.nist.gov/vuln/detail/CVE-2024-51483 [ADVISORY]
- https://github.com/dgtlmoon/changedetection.io [PACKAGE]
- https://github.com/dgtlmoon/changedetection.io/blob/master/changedetectionio/model/Watch.py#L19 [WEB]
- https://github.com/dgtlmoon/changedetection.io/blob/master/changedetectionio/processors/__init__.py#L35 [WEB]
- https://github.com/user-attachments/files/17591630/CL-ChangeDetection.io.Path.Travsersal-311024-181039.pdf [WEB]