-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Security Evaluation of Frog CMS Version tested: 0.9.4 by Justin C. Klein Keane This advisory is also posted at http://www.madirish.net/vulnerabilities/frog-cms Frog CMS (http://www.madebyfrog.com/) is a lightweight content management system written in PHP that supports several back-end databases (including MySQL). "Frog CMS simplifies content management by offering an elegant user interface, flexible templating per page, simple user management and permissions, as well as the tools necessary for file management." Frog CMS uses a robust, object oriented PHP codebase that eliminates many of the most common web application vulnerabilities found in PHP. Frog CMS does, however, have some deficiencies that should be cause for concern. The following are issues identified during a short code audit of the application: * Frog CMS encourages the use of root user MySQL connection by defaulting to that user and leaving the "Database password" field blank in the installation script. * Frog CMS requires config.php and the public/ directory to be Apache writable. This exposes these files to modification by the web server process. This is especially dangerous because the PHP constant TABLE_PREFIX is defined in config.php and is not sanitized when used in SQL queries throughout the application, which exposes the possibility of SQL injection. * Frog CMS utilizes a default administration username and password (admin/password) * Frog CMS allows enumeration of user e-mail accounts using the "Forgot password" functionality (admin/?/login/forgot) which will return a "No user found!" error if no e-mail address is registered. * Frog CMS users with rights to create content can inject arbitrary content in page headers by manipulating the keywords and descriptions field. For instance, entering: "/>