Geeklog <= v1.6.0sr2 - Remote File Upload
Geeklog has several options to upload images. The image upload process does not validate the mime type of the upload. Geeklog trusts the mime type specified by the browser and also checks the file extension, both of which are very easy to spoof. Files with .jpg extensions can be uploaded, but these file can contain anything, like javascript or PHP code. Using FireFox you can upload any jpg extension and it will be accepted since FireFox sets the mime type based on file extension. Uploading usually requires that you first create a user account. Once an account is created, you can upload a user photo, which could take advantage of this vulnerability. Potential Abuse: Executable javascript can easily be uploaded. There are several XSS holes in many of the Geeklog plugins which could run the uploaded javascript. If a simple cookie stealing javascript were uploaded, it could be used to expose the Geeklog uid and password hash which is as good as having the actual password.