Cross-site Scripting (XSS) - Reflected in craigk5n/webcalendar


Reported on

Oct 1st 2021


Cross-Site Scripting (XSS) attacks are a type of injection, in which malicious scripts are injected into websites. An attacker can use XSS to send a malicious script to an unsuspecting user. The end user’s browser has no way to know that the script should not be trusted, and will execute the script. is vulnerable to XSS as shown below:

Proof of Concept

Vuln variable: $eType = getgetvalue ('eType'); Snippet:

<form action="edit_entry_handler.php" method="post" name="editentryform" '
   . 'id="editentryform">
      <input type="hidden" name="eType" value="' . $eType . '" />'

Login to webcalendar In a browser visit the following URL:



Because it thinks the script came from a trusted source, the malicious script can access any cookies, session tokens, or other sensitive information retained by the browser and used with that site. These scripts can even rewrite the content of the HTML page.

a year ago


Hey hitisec, I've emailed the maintainers for you.

We have contacted a member of the craigk5n/webcalendar team and are waiting to hear back a year ago
Craig Knudsen validated this vulnerability a year ago
hitisec has been awarded the disclosure bounty
The fix bounty is now up for grabs
Craig Knudsen
a year ago


Working on fix, Should be ready in a week or so in next release.

Craig Knudsen
a year ago


Fix is in bootstrap-ui branch and will be included in next release.

Jamie Slome
a year ago


Thanks for the heads up!

Craig Knudsen
a year ago


The fix for this is now included in the WebCalendar v1.9.0 release.

Craig Knudsen marked this as fixed in v1.9.0 with commit d9729b a year ago
Craig Knudsen has been awarded the fix bounty
This vulnerability will not receive a CVE
edit_entry.php#L114 has been validated
to join this conversation