PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [C#] Keine nötigen Schreibrechte unter Win7



Antrax
14.10.2010, 17:39
Hallo,
ich bin soweit fertig mit dem Code meines neuen Rat's. Jedoch bin ich gerade am überlegen wie ich den am besten harmlos aussehen lassen könnte.
Da ich nicht darauf aus bin mir irgendwelche willkürlichen Vics in Chats etc zu suchen sondern ich den wenn überhaupt an bestimmte Personen verschicken würde, bräuchte ich natürlich einen guten Vorwand.
Eigendlich hatte ich vor die Dateiendung .scr mit einem Icon eines Bildes zu verwenden und das Bild dann auch beim Start aufzurufen. Gleichzeitig hätte der Trojaner sich in ein anderes Verzeichnis droppen sollen. Nun hab ich blöderweise gerade festgestellt das unter Win7/Vista dank der Benutzerkontensteuerung kaum Schreibrechte vorhanden sind :D
Deshalb, kennt jemand eine Codelösung (oder sonst eine Lösung) um sich die Schreibrechte für z.B. C:\Windows zu "erschleichen"?
Adminrechte beim Start zu fordern fällt weg dar es die .scr enttarnen würde :P

Hu5eL
14.10.2010, 18:19
appdata oder temp ist nicht schlecht, ggf eigene datein

SysLab
14.10.2010, 18:25
Temporäres Verzeichnis ist allerdings schlecht, da dort die relevanten Daten nur Zeitweise gespeichert werden, bevor das Verzeichnis geleert wird.

Wenn mich nicht alles täuscht, müsste eine UAC-Umgehung viâ DEP Buffer-Overflow realisierbar sein.

Antrax
14.10.2010, 19:28
Temp und Eigene Datein sind in diesem Fall wohl nicht ganz so gut geeignet da Temp ab und zu geleert wird und man im Eigene Datein Ordner zu schnell über die Exe stolpern würde. Ich werde dann wohl %APPDATA% benutzen. Bezüglich DEP Buffer-Overflow, hat da jemand einen Link oder so zu? Per Google hab ich da nichts brauchbares gefunden.
Ansonsten schonmal danke ;)

krusty
14.10.2010, 19:39
also mein rat (echelon) droppt in den temp ordner je nach Usereinstellung noch in den Appdata. Der Tempordner wird eignedlich fast nie komplett gelöscht, und wenn, dann werden Daten, die sich gerade in benutzung finden nicht gelöscht.
So weit ich weiß funktioniert ein UAC bypass durch eine LL injetion in den winlogin prozess. Da du in .net keine injizierbaren dlls schreiben kannst dürfte die Opfion wohl wegfallen.

sarex
14.10.2010, 20:11
ne meinung von mir^^ :
lass das betriebssystem abfragen per if schleife wenn er xp benuzt kannst ja hinkopieren wo du lustig bist und wenn höher als xp also vista w7 lässt in appdata what ever droppen und beim nächsten pc start forderst admin rechte an und tarnst dein server als irgendein update darauf fallen auch die meisten rein ...

mfg

Antrax
14.10.2010, 20:48
Eine If-Abfrage nach dem Betriebssystem ist im Dropper bereits drinn. Adminrechte erst nach dem Start einzufordern ist aber eine gute Idee. Mein Rat baut eh erst nach 2 Pc starts eine Verbindung zum Internet auf, irgendwie so in dem Dreh könnte man den Rat auch mit Adminrechten verschieben lassen.

SysLab
15.10.2010, 14:46
Bezüglich DEP Buffer-Overflow, hat da jemand einen Link oder so zu?

Artikel nicht direkt, könnte dazu aber eine kleine Zusammenfassung über das Wochenende schreiben.


Der Tempordner wird eignedlich fast nie komplett gelöscht, und wenn, dann werden Daten, die sich gerade in benutzung finden nicht gelöscht.

Stimmt, das habe ich nicht beachtet - aber noch besser wäre es, wenn die Datei zusätzlich noch "schreibgeschützt" wäre.

So weit ich weiß funktioniert ein UAC bypass durch eine LL injetion in den winlogin prozess.[/QUOTE]

Also ich kenne nur die Methode mit dem DEP Buffer-Overflow - aber eine DLL-Injection in den Winlogin Prozess würde nicht klappen, da evtl. die Rechte über diesen Prozess Benutzer spezifiziert angelegt und verwaltet werden.

Antrax
22.10.2010, 18:43
Dass gerade laufende Dateien nicht gelöscht werden hab ich auch nicht bedacht, von daher ist der Temp wohl doch ne ganz gute Alternative.
@ SysLab, wenn du Bock und Zeit hast wäre ne Zusammenfassung sehr hilfreich ;)

Bin ebend durch Zufall auf eine weiterführende, ziemlich simple Lösung gekommen. Damit könnte man dann den Rat auch unter Eigene Datein speichern.
Einfach einen versteckten Ordner per C# erstellen und darin dann den Rat laufen lassen.

Source:


Directory.CreateDirectory(Directory);
DirectoryInfo dirInf = new DirectoryInfo(Directory);
dirInf.Attributes = FileAttributes.Hidden;

c2x
22.10.2010, 19:39
Wenn du wirklich gewillt bist, die UAC zu Bypassen und die nötigen Voraussetzungen (Wissen) mitbringst, kann ich dir die folgenden Artikel an's Herz legen. Letztenendes auch aus dem Grund, weil das Projekt höchstwahrscheinlich scheitern wird ;) (bitte nicht übel nehmen).

Vista UAC: The Definitive Guide - CodeProject (http://www.codeproject.com/KB/vista-security/UAC__The_Definitive_Guide.aspx)

Launch your application in Vista under the local system account without the UAC popup - CodeProject (http://www.codeproject.com/KB/vista-security/VistaSessions.aspx)

greetz
c2x