Skip to content
This repository has been archived by the owner on Dec 19, 2023. It is now read-only.

Fixed Cross Site scripting on OpenCart-Overclocked #1

Merged
merged 1 commit into from
Aug 10, 2020

Conversation

Asjidkalam
Copy link

馃搳 Metadata *

Fixed Cross Site Scripting.

Bounty URL: https://www.huntr.dev/bounties/1-packagist-opencart-overclocked

鈿欙笍 Description *

Reflected Cross-Site Scripting (XSS) may allow an attacker to execute JavaScript code in the context of the victim's browser. This may lead to unauthorized actions being performed, unauthorized access to data, stealing of session information, denial of service, etc. An attacker needs to coerce a user into visiting a link with the XSS payload to be properly exploited against a victim.

馃捇 Technical Description *

The following code shows that the $_GET['token'] variable is reflected in the victim's browser without any input validation, leading to reflected XSS:
https://github.com/villagedefrance/OpenCart-Overclocked/blob/d145e4c9baaa6fba76c88ecfdd90fccc21a7ef8a/upload/admin/view/template/extension/openbay.tpl#L95
To fix the issue, PHP's htmlspecialchars() is used to convert special characters to HTML entities.

Reference: https://stackoverflow.com/questions/1996122/how-to-prevent-xss-with-html-php

馃悰 Proof of Concept (PoC) *

Payload: "; alert(1); //
Use this payload with the GET parameter token to trigger the XSS

馃敟 Proof of Fix (PoF) *

After using the htmlspecialchars, all payloads are sanitized to prevent triggering XSS.

馃憤 User Acceptance Testing (UAT)

Just wrapped the echo command with the htmlspecialchars, no breaking changes introduced. :)

Copy link

@Mik317 Mik317 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 馃槃

Cheers,
Mik

Copy link

@toufik-airane toufik-airane left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's been a long time I've not read some PHP. 馃槄
Nice job. 馃憤

huntr馃槄

Copy link

@mufeedvh mufeedvh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@JamieSlome JamieSlome merged commit a67e903 into 418sec:master Aug 10, 2020
@huntr-helper
Copy link
Member

Congratulations Asjidkalam - your fix has been selected! 馃帀

Thanks for being part of the community & helping secure the world's open source code.
If you have any questions, please respond in the comments section. Your bounty is on its way - keep hunting!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
6 participants