phpEventCalendar version 0.2 does not check title and event text when the data is inserted in the database, allowing for arbitrary HTML injection.
e8a699fef2e513e4378aa82199db727c3e572800b81722fc116d8c0e405fae00
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Title: phpEventCalendar HTML injection
Vulnerability discovery: Madelman <madelman AT iname.com>
Date: 25/01/2005
Severity: Medium. Registered users can obtain other users cookies
Summary:
- --------
phpEventCalendar is a MySQL backed application that allows users to post and
display events or notes on a month-at-a-glance calendar. A user administration
panel allows authorized users (Administrators) to control who can add, delete,
and edit events (Editors).
(from vendor site: https://www.ikemcg.com/scripts/pec/index.html)
phpEventCalendar doesn't check title and text of events inserted in the database,
so we can inject arbitrary HTML which will be executed by other users.
This vulnerability has been tested with phpEventCalendar 0.2
Details:
- --------
When inserting a new event into the system, phpEventCalendar doesn't check the
values of title and text variables, it only escapes it when necessary to avoid
SQL injection. These variables will be later retrieved by other user viewing the
calendar and showed with strip_slashes so we can write arbitrary HTML (or Javascript)
which will be executed by other users when they look at the calendar (if inserted in
title, but take care there's a limit in the length of the title shown in the calendar)
or when they look at the individual entry.
Example of exploitation:
Insert an event with text: <script>alert(document.cookie);</script>
Solution:
- ---------
Upgrade to phpEventCalendar 0.2.1
Timeline
- --------
07/01/2005 - Vulnerability found
07/01/2005 - Vendor contacted
08/01/2005 - Vendor replied confirming bug
18/01/2005 - New version released
25/01/2005 - Advisory released
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (MingW32)
Comment: Using GnuPG with Thunderbird - https://enigmail.mozdev.org
iD8DBQFB9pIg3RWooxY20cIRAtDzAKCCr/Uh64X4NaCXvFgjTUaHn0l7aQCZARDF
1l2Zx92XmzX+j825gG871AY=
=waZY
-----END PGP SIGNATURE-----