{"id":210996,"date":"2018-10-26T00:45:06","date_gmt":"2018-10-25T22:45:06","guid":{"rendered":"https:\/\/www.borncity.com\/blog\/?p=210996"},"modified":"2018-12-19T12:49:25","modified_gmt":"2018-12-19T11:49:25","slug":"bug-in-uwp-api-ermglicht-nutzerdaten-abzugreifen","status":"publish","type":"post","link":"https:\/\/borncity.com\/blog\/2018\/10\/26\/bug-in-uwp-api-ermglicht-nutzerdaten-abzugreifen\/","title":{"rendered":"Win 10: Bug in UWP-API erm&ouml;glicht Nutzerdaten abzugreifen"},"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\/2015\/01\/win102.jpg\" width=\"58\" height=\"58\" align=\"left\" \/>[<a href=\"https:\/\/borncity.com\/win\/2018\/10\/26\/win-10-bug-in-uwp-api-enables-access-to-user-data-file\/\" target=\"_blank\" rel=\"noopener\">English<\/a>]Es gibt die Diskussion dar\u00fcber, dass eine Designschw\u00e4che (ein Bug) in der Universal Windows Platform-API es UWP-App-Entwicklern erm\u00f6glicht, auf beliebige Nutzerdaten zuzugreifen. In Windows 10 V1809 hat Microsoft versucht, den Bug abzuschw\u00e4chen \u2013 aber dann st\u00fcrzen UWP-Apps ab.<\/p>\n<p><!--more--><\/p>\n<p>Dem App-Entwickler und MVP S\u00e9bastien Lachance ist k\u00fcrzlich aufgefallen, dass UWP-Apps auf das gesamte Dateisystem zugreifen k\u00f6nnen. D.h. die App ist nicht darauf beschr\u00e4nkt, das der Zugriff auf Dateien und Ordner \u00fcber einen Datei-Picker oder <em>LocalStorage <\/em>beschr\u00e4nkt ist. Microsoft hat die zul\u00e4ssigen Zugriffe auf das Dateisystem in <a href=\"https:\/\/docs.microsoft.com\/en-us\/windows\/uwp\/files\/file-access-permissions\" target=\"_blank\" rel=\"noopener\">diesem Dokument<\/a> (broadFileSystemAccess API) beschrieben. In der Dokumentation hei\u00dft es auch: \"Bei der ersten Benutzung fordert das System den Benutzer auf, den Zugriff zu erlauben\". Es sind von Microsoft als (theoretisch) Sicherungsma\u00dfnahmen f\u00fcr den Zugriff vorgesehen, die unberechtigte Zugriffsversuche abfangen. Ohne Nutzerzugriff kann eine UWP-App nicht auf Dateien zugreifen, ohne dass der Benutzer dem zugestimmt hat \u2013 zumindest theoretisch \u2026<\/p>\n<h2>Die UWP-App fragt bis Windows 10 V1803 nicht nach<\/h2>\n<p>Als Lachance dann in einer UWP-App ein Feature zum Zugriff auf lokale Dateien implementierte, stellte er fest, dass sein fest implementierter Pfad \"C:\\myAppData\" keine Nachfrage von Windows, ob der Zugriff zul\u00e4ssig sei, provozierte. An diesem Punkt l\u00e4sst sich also feststellen, dass die Microsoft-Dokumentation nicht stimmt, sondern genau das Gegenteil behauptet. Es w\u00e4re also bis Windows 10 V1803 m\u00f6glich, per UWP-App auf das Dateisystem zuzugreifen und Informationen abzurufen.<\/p>\n<h2>Die UWP-App st\u00fcrzt ab Windows 10 V1809 pl\u00f6tzlich ab<\/h2>\n<p>Als er dann die App unter Windows 10 V1809, das zur\u00fcckgezogene Oktober 2018 Update, testete, st\u00fcrzte diese pl\u00f6tzlich bereits beim Start ab, wie er <a href=\"http:\/\/www.dotnetapp.com\/?p=438\" target=\"_blank\" rel=\"noopener\">hier<\/a> schreibt. Er hat dann herausgefunden, dass der Zugriff auf die Datei im oben angegebenen Pfad den Absturz der App verursachte.<\/p>\n<p>So etwas ist nat\u00fcrlich f\u00fcr einen App-Entwickler t\u00f6dlich \u2013 er schnitzt eine App und nach einem Feature-Update l\u00e4uft diese nicht mehr. Zuerst dachte er, dass das Manifest der UWP-App ge\u00e4ndert wurde, und der Absturz deshalb passierte. Also hat er seine Ansprechpartner bei Microsoft kontaktiert.<\/p>\n<h2>Tricky L\u00f6sung unter Windows 10 V1809<\/h2>\n<p>Diese haben ihm dann zwei wichtige Informationen in Bezug auf Dateizugriffe bei UWP-Apps best\u00e4tigt.<\/p>\n<ul>\n<li>Dass kein Windows-Dialog beim ersten Zugriff auf eine Datei angezeigt wird, ist schlicht ein Bug. Das konnte man auch schon anhand der oben verlinkten MSDN-Dokumentation vermuten.<\/li>\n<li>Da es sich (bei den Dateizugriffen) um ein Datenschutzproblem handelt, entschied sich Microsoft in Windows 10 Oktober 2018 Update zu einer \u00c4nderung. Den Wert f\u00fcr den Zugriff auf alle Dateien des Dateisystems (er schreibt von 'broad access file system') auf OFF zu setzen.<\/li>\n<\/ul>\n<p>Der erste Punkt hat zur Folge, dass bis Windows 10 V1803 Zugriffe auf alle Dateien aus UWP-Apps m\u00f6glich sind. Der zweite Punkt bewirkt, dass diese Zugriffe von den Datenschutzeinstellungen angefangen werden sollen, dann aber einen App-Absturz ausl\u00f6sen.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" title=\"Dateizugriff in UWP-Apps\" src=\"http:\/\/www.dotnetapp.com\/wp-content\/uploads\/2018\/10\/image_thumb.png\" alt=\"Dateizugriff in UWP-Apps\" width=\"617\" height=\"594\" \/><br \/>\n(Quelle: Lachance)<\/p>\n<p>Lachance <a href=\"http:\/\/www.dotnetapp.com\/?p=438\" target=\"_blank\" rel=\"noopener\">schreibt<\/a>, dass sich die Liste der Anwendungen, die Zugriff auf das Dateisystem haben k\u00f6nnen, in der Windows 10 <em>Einstellungen<\/em>-App unter <em>Datenschutz &gt; Dateisystem <\/em>zu finden ist (siehe obiger Screenshot). Ist der Zugriff auf das Dateisystem eingeschaltet, l\u00e4sst sich f\u00fcr jede App vorgeben, ob diese auf das Dateisystem zugreifen darf.<\/p>\n<p>Entwickler von UWP-Apps k\u00f6nnen mit folgendem API-Aufruf die Anzeige dieser Einstellungsseite erzwingen:<\/p>\n<p><em>await Windows.System.Launcher.LaunchUriAsync(new Uri(\"ms-settings:privacy-broadfilesystemaccess\"));<\/em><\/p>\n<p>Entwickler k\u00f6nnen diese Methode aufrufen, nachdem Sie einen Dateisystemzugriff in einem Try\/Catch durchgef\u00fchrt haben, und dann festlegen, ob Sie die Einstellungsansicht aufrufen m\u00fcssen. Man sollte aber beachten, dass das Umschalten des Wertes in den Windows-Einstellungen dazu f\u00fchrt, dass die ausgef\u00fchrte UWP-App abst\u00fcrzt. Lachance empfiehlt, den Benutzer entsprechend zu warnen. Auch eine L\u00f6sung, Programmierung per Vorschlaghammer. (<a href=\"https:\/\/mspoweruser.com\/uwp-api-bug-means-apps-can-steal-all-your-data-without-you-knowing\/\" target=\"_blank\" rel=\"noopener\">via<\/a>)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>[English]Es gibt die Diskussion dar\u00fcber, dass eine Designschw\u00e4che (ein Bug) in der Universal Windows Platform-API es UWP-App-Entwicklern erm\u00f6glicht, auf beliebige Nutzerdaten zuzugreifen. In Windows 10 V1809 hat Microsoft versucht, den Bug abzuschw\u00e4chen \u2013 aber dann st\u00fcrzen UWP-Apps ab.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1440,426,3694],"tags":[4346,24,4328,4378],"class_list":["post-210996","post","type-post","status-publish","format-standard","hentry","category-app","category-sicherheit","category-windows-10","tag-app","tag-problem","tag-sicherheit","tag-windows-10"],"_links":{"self":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/210996","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=210996"}],"version-history":[{"count":0,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/210996\/revisions"}],"wp:attachment":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/media?parent=210996"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/categories?post=210996"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/tags?post=210996"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}