Seite 1 von 1
Dateien vor Löschen schützen
Verfasst: Montag 16. Oktober 2006, 16:07
von Anfänger1911
Hi!
Wie kann ich meine Programmdateien davor schützen, von einem anderen Programm auf dem Rechner auf dem sie installiert sind gelöscht zu werden? Also praktisch sowas wie der Selbstschutz beim Antivirusprogramm. Ein Virus kann das Programm nicht löschen aber der Benutzer kann es noch Deinstallieren. Geht das und wenn ja wie?
MfG
Anfänger1911
Verfasst: Montag 16. Oktober 2006, 16:26
von Y0Gi
Das dürfte nicht gehen, ohne tief in das System einzugreifen, was dem Anwender aber sicher nicht gefällt und gewöhnlich auch irgendwo seine Zustimmung oder Interaktion erfordert. Aber frag mal die Entwickler vom Sony-Rootkit...

Verfasst: Montag 16. Oktober 2006, 16:28
von murph
dafür such dir ne andere programmiersprache^^
selbst da geht das nich ganz ohne.
nimm lieber die möglichkeit, dass man das skript nur als root installieren kann und lasse dann dein programm schreibgeschützt im root-verzeichnis hinlegen...
Verfasst: Montag 16. Oktober 2006, 16:34
von Anfänger1911
Und wie mach ich das mit dem root? Ich hab keine Ahnung was das sein soll!

Verfasst: Montag 16. Oktober 2006, 17:13
von BlackJack
Ignorier murph einfach. Manchmal schreibt er ziemlichen Müll. 'Tschuldigung wenn das jetzt etwas hart klingt, aber das hat überhaupt nichts mit der Programmiersprache zu tun. Und wenn ich unter Linux/Unix ein Programm in das Heimatverzeichnis von `root` lege (ich hoffe doch mal murph meinte nicht das Wurzelverzeichnis '/'), dann kann da im Regelfall auch nur noch der Benutzer `root` drauf zugreifen. Ist natürlich sehr sicher wenn man es nicht mal mehr lesen/ausführen kann.
Du musst verhindern das ein Prozess das Recht hat, Dein Programm zu löschen. Das ist eine Frage von Dateizugriffsrechten und die sind sehr betriebssystemspezifisch umgesetzt.
Verfasst: Montag 16. Oktober 2006, 17:32
von Anfänger1911
Und wie läuft das dann bei Antivirussoftware? Die verhindern doch auch, dass irgendein Virus sie löscht. Dann müsste das doch auch bei anderen Programmen funktioniern.
Verfasst: Montag 16. Oktober 2006, 18:15
von BlackJack
Antivirussoftware ist nicht nur durch die üblichen Zugriffsrechte des Betriebssystems geschützt sondern sie fängt ja *jeden* Dateizugriff ab und analysiert ihn. Da ist es natürlich ein leichtes, sowohl Schreibzugriffe auf die Programmdatei selbst, als auch auf das Verzeichnis in dem die Datei liegt, zu unterbinden. AV-Software greift aber ganz tief in das Betriebssystem ein und bremst es auch aus. Das ist nichts was man mal eben macht um ein beliebiges Programm zu schützen.
Re: Dateien vor Löschen schützen
Verfasst: Montag 16. Oktober 2006, 21:31
von gerold
Anfänger1911 hat geschrieben:Wie kann ich meine Programmdateien davor schützen, von einem anderen Programm auf dem Rechner auf dem sie installiert sind gelöscht zu werden?
Hallo Anfänger1911!
Du kannst die Datei z.B. mit einem Schreibschutz ausstatten. Den kann man zwar wieder ausschalten, aber so ist es zumindest schon schwieriger die Datei zu überschreiben.
Code: Alles auswählen
>>> import os
>>> import stat
>>> os.chmod(r"C:\eine_datei.txt", stat.S_IREAD)
>>>
So hebst du den Schutz wieder auf:
Siehe
http://docs.python.org/lib/os-file-dir.html --> suche nach "chmod".
mfg
Gerold

Verfasst: Dienstag 17. Oktober 2006, 09:24
von Anfänger1911
Danke ich glaub das mach ich so. Ein anderes Programm kann mein Programm dann nicht verändern und ich könnte ja in mein Programm eine Option für den Benutzer einbauen um den Schreibschutz aufzuheben, oder?
Verfasst: Dienstag 17. Oktober 2006, 09:32
von Blattlaus
Doch natürlich kann ein anderes Programm deins verändern, es muss nur vorher den Schreibschutz aufheben. Und das kostet den Programmierer ca. 2 Zeilen mehr Code.
Lass es bleiben, so ein Pseudoschutz ist bloß eine verschwendung von Ressourcen.
Verfasst: Dienstag 17. Oktober 2006, 19:57
von murph
@blackjack:
sry, da habe ich micht ausformuliert. natürlich sollte man selber root sein, wenn man die lösung nimmt

hatte an meinen zustand gedacht, wo ich selber root bin, aber nicht als root unterwechs durchs net surfe.
das werde ich das nächste mal genauer formulieren.
außerdem
an andere programmiersprachen hae ich wegen der würmer und viren gedacht. die kann man ja nicht so ohne weiteres löschen, weil die sich im moment des löschens in den arbeitsspeicher verziehen und danach erst wieder sich auf die platte schreiben. und das hat auf jeden fall was damit zu tun, welche programmiersprache man nimmt. das halte ich mit purem python für unrealisierbar, aber ganz anders wird es bei assembler, wo man ja seinen eigenen code komplett im arbeitsspeicher schreiben kann (das hatte ich mal in einem tutorial gesehen^^)
nichts für ungut, das hatte aber so schon seinen sinn...