Cross-site Scripting (XSS) - Stored in bigprof-software/online-invoicing-system

Valid

Reported on

Jun 28th 2021


✍️ Description

/app/admin/pageEditGroup.php with group-name parameter of pageEditGroup.php is vulnerable to Stored XSS. Line 203 of pageEditGroup.php sends unvalidated data to a web browser, which can result in the browser executing malicious code. In this case the data is sent at builtin_echo() in pageEditGroup.php at line 203.

🕵️‍♂️ Proof of Concept

  1. Data enters a web application through an untrusted source in Line 19
$name = makeSafe($_POST['name']);
  1. The data is included in dynamic content that is sent to a web user without being validated in Line 203
<p class="form-control-static"><?php echo $name; ?></p>

Payload

  1. Add new group with name as ;?></p><script>alert(1)</script>
  2. Now view the groups and XSS will be poped up.

💥 Impact

The impact of an exploited XSS vulnerability on a web application varies a lot. It ranges from user's Session Hijacking, and if used in conjunction with a social engineering attack it can also lead to disclosure of sensitive data, CSRF attacks and other security vulnerabilities. By exploiting a cross-site scripting vulnerability an attacker can impersonate the victim and take over the account. If the victim has administrative rights it might even lead to code execution on the server, depending on the application and the privileges of the account. Read about the apache.org jira incident for more information on how a XSS vulnerability was used in a successful attack which also led to code execution.

We have contacted a member of the bigprof-software/online-invoicing-system team and are waiting to hear back 2 years ago
Akshay Jain
2 years ago

Researcher


Hi, Any updates?

BigProf Software validated this vulnerability 2 years ago
Akshay Jain has been awarded the disclosure bounty
The fix bounty is now up for grabs
BigProf Software marked this as fixed with commit 2a29c6 2 years ago
BigProf Software has been awarded the fix bounty
This vulnerability will not receive a CVE
to join this conversation