| |
|
|
ToM | Hi!
habe schon überall geschaut jedoch mit nichts einen Erfolg gehabt, hab grad mehrere Projekte am laufen unter anderen ein AntiCheat Tool für Spiele, alles klappt, Ports werden gesperrt etc nur is das Problem, mann kan das Programm mim Taskmanager beenden und dass ist nich so toll.
habs bis jetzt mit Set_process_ace_in_dacl GuardSheep,System,-,PROCESS_TERMINATE
unter anderen Benutzernamen gehts auch nicht leider.
wie kann man das realisieren ?! möchte nur nen Tipp ... verwende Profan 7.
sonnige Grüße aus Österreich |
|
|
| AMD Athlon 64 4500+ / 1500 MB Ram / Windows Server 2003 Enterprise / Profan 7.0 | 05.06.2006 ▲ |
|
|
|
|
Michael Dell | Hmmm, vielleicht ne Tarnung?
Benenne dein Proggi in services.exe um, dann mittels Franks DatenGenerator in ein Starterprogramm setzen dieses (erzeugt beim Erststart &) started deine services.exe die dann mit diesem Dateinamen im Tastkmanager angezeigt wird.
Allerdings wird sie dort unterm Profilnamen und nicht alls Systemprozess angezeigt, vielleicht weiß Andreas Hötker wie man das Proggi dann als Systemdienst oder so started.
Den ursprünglichen Dateinamen erhält dann das Starterprogramm. |
|
|
| Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 06.06.2006 ▲ |
|
|
|
|
ToM | naja eigentlich ne gute idee.
nur um ein Programm als System zu starten, benötigt man ja das jeweilige Passwort und dass ist immer verschieden. (cmd - runas)
ich versteh nich was ich bei den oberen befehl falsch gemacht habe hmm.
funzt das nicht unter allen Windows Versionen ?! unter Win2003 32/64Bit funzt das nicht, XP hab ich nich.
mfg ToM |
|
|
| AMD Athlon 64 4500+ / 1500 MB Ram / Windows Server 2003 Enterprise / Profan 7.0 | 06.06.2006 ▲ |
|
|
|
|
| Wozu gibts die DACL_SET.INC? |
|
|
| |
|
|
|
ToM | naja der thread is alt aber egal,
DACL_SET.INC funktioniert nicht bei mir, keine ahnung wieso, viell liegts am windows server 2003, aber ich bräuchte ja ne lösung für winxp und 2003 weil 2003 auch schon sehr verbreitet ist.
lg tom |
|
|
| AMD Athlon 64 4500+ / 1500 MB Ram / Windows Server 2003 Enterprise / Profan 7.0 | 11.09.2006 ▲ |
|
|
|
|
| Warum solls auf 2003 und XP nicht gehen? Was hast du mit der INC genau für Probleme? |
|
|
| |
|
|
|
| Ah, ich sehs grad. Du must das Recht für den Account Jeder verbiten znd für den Account Administratoren. Schreib dir gleich mal Quelltext - bis gleich... |
|
|
| |
|
|
|
| Andreas unser Tokemon |
|
|
| |
|
|
|
| KompilierenMarkierenSeparieren $I DACL_SET.INC
Def @SetProcessShutdownParameters(2) !"Kernel32","SetProcessShutdownParameters"
ASSIGN #1,"C:TEST.TXT"
CHDIR "C:"
IF @FINDFIRST$("TEST.TXT")=""
REWRITE #1
Close #1
endif
Declare KILL&,ENDE%,ProgrammPfad$,Übergabe$,AT&,TIME&,TIME$
Windowtitle "Kleiner Abschalttest"
Windowstyle 31+512
Window 0,0-640,440
USERMESSAGES $10,$44 $0044=WM_COMMNOTIFY = obsolete in Win32
Case @Left$($WINVER,1)="5" : @SetProcessShutdownParameters($100,0)
GET_Group_Name "Jeder",1,Log_Einträge& Aufruf der DACL_SET.INC zum Ermitteln des Gruppennamens des "Jeder" SIDs.
Set_Process_ACE_IN_DACL "",@$(0),"-UCN","PROCESS_TERMINATE _DELETE",1,Log_Einträge& Die Rechte zum Fremdbeenden eines Processes werden entzogen.
GET_Group_Name "Administratoren",1,Log_Einträge& Aufruf der DACL_SET.INC zum Ermitteln des Gruppennamens des "Jeder" SIDs.
Set_Process_ACE_IN_DACL "",@$(0),"-UCN","PROCESS_TERMINATE _DELETE",1,Log_Einträge& Die Rechte zum Fremdbeenden eines Processes werden entzogen.
Whilenot %MENUITEM=-2
WAITINPUT
Wend
Mit [...] kannst du überprüfen, was da passiert... |
|
|
| |
|
|
|
ToM | Hi!
100 mal danke für deine bemühung, vor dir muss man echt respekt haben, wenn wer windows neu schreibt, dann du ;)
aber leider funzt das nicht. an was kann das liegen ?! der prozess soll sich ja beim taskmanager nich beenden lassen, aber ich kanns beenden.
lg tom |
|
|
| AMD Athlon 64 4500+ / 1500 MB Ram / Windows Server 2003 Enterprise / Profan 7.0 | 11.09.2006 ▲ |
|
|
|
|
| Ach ja! Windows2000 reagiert da anders als der XP Taskmanager. Unter XP werden die jeweiligen Rechte wieder zurückgesetzt (wie man es auch bei TNT tun kann) - das geht deshalb, weil der Taskmanager im Account des eingeloggten Users läuft und Eigentumsrechte auf den jeweiligen Prozess hat und so die Rechte immer wieder ändern kann.
Abhilfe: Dein Sicherheitsprogramm muß in einem anderen Account laufen als der Taskmanager, d.h. es muß als Service (vorzugsweise im Systemaccount) gestartet werden. Werden in diesem Programm dann die Rechte verboten, hat der Taskmanager keinen Zugriff mehr darauf. Einen richtigen Service zu schreiben ist nicht ganz so einfach (ich habs noch nicht hinbekommen ). Warum ist das schwierig? Das OS wartet laufend auf Rückmeldungen des Services - kommt irgendwann keine mehr, wird der Service beendet. Einen Trick kann man aber anwenden: Man registriert ein kleines Programm über die API als Service. Sofort nach dem Start ruft dieses Programm ein weiteres Programm auf. Das neue Programm wird dann mit dem gleichen Token versehen, wie der Service. Windows wartet eine Augenblick - da keine Rückmeldung vom Service kommt, wird dein erstes Programm beendet. Vom zweiten Programm weiß Windows nichts und es läuft lüstig weiter. Eine weiter Möglichkeit, einen Service zu starten, wäre über den DOS-Befehl AT .
Ein Service mit einem Fenster ist immer ein riesengroßes Sicherheitsrisiko, also besser die Finger davon lassen - denn XProfan (ab Version 9) erzeugt in jedem Fall Fenster. |
|
|
| |
|
|
|
ToM | hmm wow is das kompliziert
ich hab jetzt also nen service gemacht mittls instsrv.exe, und der service startet schnell ne andere datei, wie du gesagt hast, und wird dann unter dem systemaccount ausgeführt. jetzt kann man wenn man die dacl verwendet, den prozess nichmehr beenden danke vielmals!
wie meintest du das mit den befehl AT ?!
achja, wieso das so ist, dass er gleich wieda beendet und wie mans lösen kann steht hier: [...]
nur versteh ichs nich *g* viell was für dich
danke nochmal ;)
greets Tom |
|
|
| AMD Athlon 64 4500+ / 1500 MB Ram / Windows Server 2003 Enterprise / Profan 7.0 | 12.09.2006 ▲ |
|
|
|