{"id":7182,"date":"2013-02-03T22:35:59","date_gmt":"2013-02-03T21:35:59","guid":{"rendered":"http:\/\/www.glorf.it\/blog\/?p=7182"},"modified":"2013-02-03T22:35:59","modified_gmt":"2013-02-03T21:35:59","slug":"debuggen-ohne-admin-rechte","status":"publish","type":"post","link":"http:\/\/www.glorf.it\/blog\/2013\/02\/03\/entwickler\/debuggen-ohne-admin-rechte","title":{"rendered":"Debuggen ohne Admin-Rechte"},"content":{"rendered":"<p>F&#252;r alle Software-Entwickler, die zwar Debuggen k&#246;nnen, aber nicht glauben, dass f&#252;r das Debugging unter Windows unter bestimmten Umst&#228;nden schon normale Benutzerrechte ausreichen, folgt hier eine kleine Anleitung, wie sie sich selber oder andere von Gegenteil &#252;berzeugen k&#246;nnen. <\/p>\n<p>Bis vor etlichen Jahren dachte auch ich, dass nur Administratoren debuggen k&#246;nnen. Gen&#228;hrt wird die Annahme das durch entsprechende Eintr&#228;ge in den Gruppenpolicies und der Tatsache, dass man zum Entwickeln oftmals Adminrechte ben&#246;tigt. Tats&#228;chlich ben&#246;tigt man aber f&#252;r Anwendungen, die man selber starten kann, die also im eigenen Benutzerkontext ausgef&#252;hrt werden, keine Admin-Rechte. Das birgt erhebliche Sicherheitsrisiken f&#252;r Fat-Client-Anwendungen, die von einer Anzahl an Mitarbeitern auf deren Rechnern ausgef&#252;hrt werden. <\/p>\n<p>Normale Mitarbeiter k&#246;nnen freilich eher keine Debugger bedienen. Tracer verwenden aber teilweise &#228;hnliche Mechanismen, um Anwendungen viel bequemer auszuforschen. Sie sind leichter zu bedienen und die Ergebnisse einfacher weiter zu verwenden. Wo man debuggen kann, da kann man auch tracen, umgekehrt nicht unbedingt. <\/p>\n<p>Die folgenden Anleitung ist recht spartanisch, sollte aber f&#252;r alle Softwareentwickler ausreichend sein, um es selber auszuprobieren. Das Debuggen an sich wird nicht erkl&#228;rt, weil das die Zielgruppe des Artikels schon kennt. Daher plaudert die Anleitung in meinen Augen nichts Sicherheitskritisches aus. Genau genommen ist sie sogar &#228;u&#223;erst trivial. Sie soll auch nur dazu motivieren eigene Annahmen zu &#252;berpr&#252;fen, wenn es n&#246;tig ist. <\/p>\n<p>Wenn also wieder mal jemand sagt, dass f&#252;r Debuggng und Tracing Administratorrechte n&#246;tig sind, dann fragt ihn mal, ob er das ausprobiert hat&#8230;<\/p>\n<p><strong>Vorbereitung<\/strong><\/p>\n<p>Die Schritte habe ich unter Windows 7 Professional ausgef&#252;hrt. Die Transferleistung auf andere Versionen ist aber gering.<\/p>\n<p>Benutzer ohne Adminrechte anlegen:<\/p>\n<ul>\n<li>&quot;cmd.exe&quot; als Administrator ausf&#252;hren.<\/li>\n<li>Dort ausf&#252;hren: net user \/add noadminuser topsecrpwd<\/li>\n<li>Mit &quot;net user noadminuser&quot; kann man pr&#252;fen, dass er wirklich nur Mitglied der Gruppe &quot;Benutzer ist.<\/li>\n<\/ul>\n<p>Debugger besorgen:<\/p>\n<ul>\n<li>Hier nehmen wir den vergleichsweise beliebten Debugger &quot;<a href=\"http:\/\/www.ollydbg.de\">Ollydbg<\/a>&quot;. Ich kenne und nutze ihn sonst nicht und habe ihn vor allem deswegen ausgew&#228;hlt, weil er keine Installation ben&#246;tigt. Das darf ein normaler Benutzer n&#228;mlich nicht. <\/li>\n<li>Wir k&#246;nnten den auch im kommenden Schritt download, wenn wir uns als Benutzer &quot;noadminuser&quot; anmelden. Aber der erste Start des Browsers dauert immer so lange, weil er Profile einrichtet, etc&#8230;<\/li>\n<\/ul>\n<p><b>Durchf&#252;hrung<\/b><\/p>\n<p>Dazu melden wir uns als der Windows-Benutzer &quot;noadminuser&quot; an, entpacken das Archiv mit Ollydbg irgendwohin, z.B, auf den Desktop. Mit einem Doppelklick auf Ollydbg.exe wird der Debugger gestartet.<\/p>\n<p>Prompt werden wir mit dem Hinweis begr&#252;&#223;t, dass wir keine Admin-Rechte haben und daher einige Aktionen nicht m&#246;glich sind:<br \/>\n<img decoding=\"async\" loading=\"lazy\" src=\"http:\/\/www.glorf.it\/blog\/wp-content\/uploads\/2013\/02\/Ollydbg_NoAdmin_Message.jpg\" alt=\"Debugging eingeschr&#228;nkt wegen fehlender Admin-Rechte\" width=\"483\" height=\"214\" class=\"alignnone size-full wp-image-7185\" srcset=\"http:\/\/www.glorf.it\/blog\/wp-content\/uploads\/2013\/02\/Ollydbg_NoAdmin_Message.jpg 483w, http:\/\/www.glorf.it\/blog\/wp-content\/uploads\/2013\/02\/Ollydbg_NoAdmin_Message-300x132.jpg 300w\" sizes=\"(max-width: 483px) 100vw, 483px\" \/><br \/>\nDas st&#246;rt uns aber weiter nicht, wir wollen weder Remote-Debugging, noch andere fortgeschrittene Dinge tun.<\/p>\n<p>Anschlie&#223;end starten wir &#252;ber &quot;File | Open&quot; die zu &#252;berwachende Anwendung &quot;notepad.exe&quot; aus dem Verzeichnis &quot;C:\\windows\\system32&quot;. Daraufhin springt der Debugger in die Startsequenz der Anwendung. Mit einen Klick auf den Run-Button kommen wir in die eigentliche Anwendung und k&#246;nnen debuggen:<br \/>\n<img decoding=\"async\" loading=\"lazy\" src=\"http:\/\/www.glorf.it\/blog\/wp-content\/uploads\/2013\/02\/notepad_debuggen.jpg\" alt=\"Notepad im Debugger\" width=\"719\" height=\"480\" class=\"alignnone size-full wp-image-7189\" srcset=\"http:\/\/www.glorf.it\/blog\/wp-content\/uploads\/2013\/02\/notepad_debuggen.jpg 719w, http:\/\/www.glorf.it\/blog\/wp-content\/uploads\/2013\/02\/notepad_debuggen-300x200.jpg 300w\" sizes=\"(max-width: 719px) 100vw, 719px\" \/><\/p>\n<p>Freilich kann man auch auf andere Arten debuggen, das ist nur <em>ein<\/em> Beispiel wie ich es machen w&#252;rde. Hier kann jeder selber die M&#246;glichkeiten ausprobieren. Der Proof-of-Concept ist damit abgeschlossen. Tests mit verschiedenen erh&#228;ltlichen Tracern kann jeder Interessierte selber machen.<\/p>\n<p><strong>Aufr&#228;umen nicht vergessen<\/strong><\/p>\n<p>Wer dazu keine VM genutzt hat, der muss den Benutzer &quot;noadminuser&quot; auch wieder l&#246;schen. Das ist diesmal besser &#252;ber die Systemsteuerung zu erledigen, weil dann alle Profil-Dateien mitgel&#246;scht werden k&#246;nnen. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>F&#252;r alle Software-Entwickler, die zwar Debuggen k&#246;nnen, aber nicht glauben, dass f&#252;r das Debugging unter Windows unter bestimmten Umst&#228;nden schon normale Benutzerrechte ausreichen, folgt hier eine kleine Anleitung, wie sie sich selber oder andere von Gegenteil &#252;berzeugen k&#246;nnen. Bis vor etlichen Jahren dachte auch ich, dass nur Administratoren debuggen k&#246;nnen. Gen&#228;hrt wird die Annahme das [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[17,19],"tags":[433],"_links":{"self":[{"href":"http:\/\/www.glorf.it\/blog\/wp-json\/wp\/v2\/posts\/7182"}],"collection":[{"href":"http:\/\/www.glorf.it\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.glorf.it\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.glorf.it\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.glorf.it\/blog\/wp-json\/wp\/v2\/comments?post=7182"}],"version-history":[{"count":14,"href":"http:\/\/www.glorf.it\/blog\/wp-json\/wp\/v2\/posts\/7182\/revisions"}],"predecessor-version":[{"id":7198,"href":"http:\/\/www.glorf.it\/blog\/wp-json\/wp\/v2\/posts\/7182\/revisions\/7198"}],"wp:attachment":[{"href":"http:\/\/www.glorf.it\/blog\/wp-json\/wp\/v2\/media?parent=7182"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.glorf.it\/blog\/wp-json\/wp\/v2\/categories?post=7182"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.glorf.it\/blog\/wp-json\/wp\/v2\/tags?post=7182"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}