{"id":249451,"date":"2021-02-17T00:36:00","date_gmt":"2021-02-16T23:36:00","guid":{"rendered":"https:\/\/www.borncity.com\/blog\/?p=249451"},"modified":"2021-02-16T14:46:50","modified_gmt":"2021-02-16T13:46:50","slug":"privilege-escalation-schwachstelle-in-der-windows-shell","status":"publish","type":"post","link":"https:\/\/borncity.com\/blog\/2021\/02\/17\/privilege-escalation-schwachstelle-in-der-windows-shell\/","title":{"rendered":"Privilege Escalation-Schwachstelle in der Windows-Shell"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" style=\"float: left; margin: 0px 10px 0px 0px; display: inline;\" src=\"https:\/\/borncity.com\/blog\/wp-content\/uploads\/2013\/03\/winb.jpg\" width=\"58\" height=\"58\" align=\"left\" \/>[<a href=\"https:\/\/borncity.com\/win\/?p=18719\" target=\"_blank\" rel=\"noopener\">English<\/a>]Heute noch ein Thema, welches schon etwas l\u00e4nger hier bei mir auf der Agenda steht. In der Shell von Windows gibt es eine Privilege Escalation-Schwachstelle, die einem lokalen Angreifer die Ausweitung von Nutzerrechten erm\u00f6glicht. Ist aber recht schwierig und nur lokal auszunutzen.<\/p>\n<p><!--more--><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/vg09.met.vgwort.de\/na\/08e30f19a65741009155343ee13a5d3b\" alt=\"\" width=\"1\" height=\"1\" \/>Erinnerungsm\u00e4\u00dfig ist das nie breiter thematisiert worden. ich bin \u00fcber den nachfolgenden <a href=\"https:\/\/twitter.com\/jonasLyk\/status\/1302311297619578883\" target=\"_blank\" rel=\"noopener\">Tweet<\/a> von Jonas L, der schon einige Schwachstellen in Windows aufgedeckt hat, auf das Thema gesto\u00dfen.<\/p>\n<p><a href=\"https:\/\/twitter.com\/jonasLyk\/status\/1302311297619578883\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"https:\/\/i.imgur.com\/IiLGR87.png\" \/><\/a><\/p>\n<p>Das Ganze ist in <a href=\"https:\/\/docs.google.com\/document\/d\/e\/2PACX-1vTP5OvJToWToMOKyeMyPcIPJhqbnESgWY6dYje9seJY96-ezCEJbXsMkfMWhoqPRaCNRs6BOO7urQyF\/pub\" target=\"_blank\" rel=\"noopener\">diesem Google Docs-Dokument<\/a> skizziert. Wenn der Benutzer das Profilbild eines Benutzerkontos \u00e4ndert, l\u00f6st DCOM einen Aufruf des Shell Create Object Task Server als System aus und schreibt das neue Bild nach C<em>:\\users\\public\\AccountPictures<\/em>. Eine Ausnutzung dieser Schwachstelle zur lokalen Privilegien-Erh\u00f6hung erwies sich aber als schwierig, schreibt der Entdecker. Nachdem er bereits drei Mal gescheitert war, fand er doch noch einen Trick, der zum Ziel f\u00fchrte. Der Ansatz basiert auf den Hinweisen von\u00a0 James Forshaw und kann <a href=\"https:\/\/www.alchemistowl.org\/pocorgtfo\/pocorgtfo13.pdf\" target=\"_blank\" rel=\"noopener\">hier nachgelesen<\/a> werden.<\/p>\n<p>Im Wesentlichen geht es darum, wie man einen Pfad im NT-Objekt-Namensraum bastelt, der so lange als m\u00f6glich zum Parsen ben\u00f6tigt. Wird das Bild des Benutzerkontos ge\u00e4ndert, l\u00f6st dies verschieden Dateiaktionen im Pfad c:\\users\\public\\AccountPictures) aus:<\/p>\n<pre><code>\\AccountPictures\\S-1-5-21-2781542633-746229175-3265460138-1001\r\n\r\nIs checked if it redirects to another path.\r\n\r\n\r\n\\S-1-5-21-2781542633-746229175-3265460138-1001\\{2E84DAF4-572D-4F17-A374-336A1E77E9B6}-Image96.jpg\r\n\r\nIs created, notice that the filename contains an random GUID\r\n\r\n\r\n\\S-1-5-21-2781542633-746229175-3265460138-1001\\{2E84DAF4-572D-4F17-A374-336A1E77E9B6}-Image96.tmp\r\n\r\nIs created\r\n\r\n\r\n\\S-1-5-21-2781542633-746229175-3265460138-1001\\~2E84DAF4-572D-4F17-A374-336A1E77E9B6}-Image96.tmp\r\n\r\nIs created and the calling user is granted full permission to the file.\r\n\r\n\r\n\\S-1-5-21-2781542633-746229175-3265460138-1001\\{2E84DAF4-572D-4F17-A374-336A1E77E9B6}-Image96.jpg~RFb1bdf30.TMP\r\n\r\nIs created<\/code><\/pre>\n<p>Dann wiederholt sich der Vorgang f\u00fcr Image32 statt image96 und weiter geht es mit 192, 40, 448, 32 ,48 ,240 ,96. Wenn ein Angreifer es schafft, die Datei, auf die der aufrufende Benutzer volle Berechtigung hat, an einen anderen Ort und Dateinamen umzuleiten, kann er eine sideloading dll in system32 einschleusen und so eine eigenen Nutzlast platzieren.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/lh3.googleusercontent.com\/FiB-zMl3LPqienNa6DhugSp1yJSgz-qMAEstaa8byWFJmGzCk-5BRhtF6yaH2g29Jqtj30_teGVJwM2rwTXuMr6A1o-X4DINg32R17rY_Fjch1qgdG8P5H9S7Pikll2FNHBQsso\" \/><\/p>\n<p>In <a href=\"https:\/\/docs.google.com\/document\/d\/e\/2PACX-1vTP5OvJToWToMOKyeMyPcIPJhqbnESgWY6dYje9seJY96-ezCEJbXsMkfMWhoqPRaCNRs6BOO7urQyF\/pub\" target=\"_blank\" rel=\"noopener\">diesem Google Docs-Dokument<\/a> wird von Jonas L. skizziert, wie man den Namen der Datei herausfinden und in einem Proof of Concept (PoC) ausnutzen kann. Es ist keine kritische Schwachstelle, da die Ausnutzung sehr aufw\u00e4ndig auszunutzen ist und die Mitarbeit des Benutzers erfordert (dieser m\u00fcsste sein Benutzerkontenbild \u00e4ndern). Die Episode zeigt aber, dass der Teufel oft im Detail lauert.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>[English]Heute noch ein Thema, welches schon etwas l\u00e4nger hier bei mir auf der Agenda steht. In der Shell von Windows gibt es eine Privilege Escalation-Schwachstelle, die einem lokalen Angreifer die Ausweitung von Nutzerrechten erm\u00f6glicht. Ist aber recht schwierig und nur &hellip; <a href=\"https:\/\/borncity.com\/blog\/2021\/02\/17\/privilege-escalation-schwachstelle-in-der-windows-shell\/\">Weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[426,301],"tags":[4328,3288],"class_list":["post-249451","post","type-post","status-publish","format-standard","hentry","category-sicherheit","category-windows","tag-sicherheit","tag-windows-en"],"_links":{"self":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/249451","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/comments?post=249451"}],"version-history":[{"count":0,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/249451\/revisions"}],"wp:attachment":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/media?parent=249451"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/categories?post=249451"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/tags?post=249451"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}