Note: At the time of writing this blog post both the Cross Site Scripting instances were fixed by Atlassian
Last month I reported multiple cross site scripting (XSS) instances on Atlassian's "HipChat" web based chat user interface. Below is a brief summary on the XSS instances which I reported to the Atlassian's security team.
1. Cross Site Scripting in “Delete Room” feature of HipChat Web Interface:
This XSS instance in particular was pretty interesting to find out. In HipChat there is a feature to create a new chat room. I used the text field i.e. Room Name associated with this feature for injecting the evil JavaScript code. The sample JavaScript code which I injected into the text field was: <img src=1 onerror=prompt(0)>
Once I clicked on the "Create Room" button, HipChat created a new room by the name "<img src=1 onerror=prompt(0)>". I visited the "Lobby" feature to view the recently created room. This feature also offered the functionality to delete a room.
So I used the "Delete room" option for deleting "<img src=1 onerror=prompt(0)>"
Prior deleting the room, HipChat re-confirmed my decision by throwing an alert box.
Once I clicked on the "OK" button ... bingo the JavaScript payload got executed.
2.
Self Inflicted
Cross Site Scripting
in “File Sharing” feature of HipChat
Web Interface:
<img src=1 onerror=alert(document.cookie)>.jpg
Once the file got successfully uploaded, I clicked on to the "Share" button .... the JavaScript payload got executed.
Altassian security team was very responsive. The moment I reported the multiple XSS instances, Altassian team acknowledged my responsible vulnerability disclosure report. They followed-up with the development team to get the issues fixed ASAP.
Atlassian security team recognized my effort towards responsible vulnerability disclosure by inducting my name into Atlassian's "Security Hall of Fame" and awarding a cool T-shirt.
I am grateful to Atlassian Security team for their warm gesture :)
![]() |
Atlassian's Security Hall of Fame |