![]() |
Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
[EDIT: Für alle, denen das zu viel Text ist: der relevantere Teil (meine konkreten Fragen) befindet sich weiter unten und ist Fett gedruckt.]
Da ich sie selbst nicht umsetzen kann, die Idee aber prinzipiell für brauchbar halte und glaube, dass dies auch für Andere interessant sein könnte, möchte ich euch hier eine Programmidee vorstellen: Ich stelle mir ein Programm vor, das nach Programmstart einen Dateipfad zu einer beliebigen .exe abfragt (den User fragt) und diese Anwendung dann "begleitet" ausführt. Sinn des Programmes soll es sein, dass wenn die gewählte .exe Datei Dateien erstellen möchte, eine andere Datei ausführen möchte (.exe, .bat, .vbs oder irgendetwas anderes), einen Service erstellen möchte, ins Internet gehen oder Änderungen in der Registry vornehmen möchte, dass das Programm dann diese Aktionen unterbindet und den User fragt "darf er das?" und erst wenn der User dies mit "jop, geht in Ordnung" bestätigt, soll die Datei die gewählte Aktion durchführen dürfen. Dabei soll dem User aber auch genau angezeigt werden, welche Dateien, in welchem Verzeichnis und wohin extrahiert werden, was gelöscht wird und zu welchen Seiten/Servern die .exe kommuniziert (bevor die .exe das macht und bevor der User das bestätigt - damit er weiß, was er da bestätigt) Sinnvoll wäre auch, dass dieses Programm dauerhaft im Hintergrund läuft und bei dem Start einer .exe erst fragt, ob die .exe überhaupt gestartet werden soll und dann bei (fast) jeder Kleinigkeit (siehe oben) erneut eine Bestätigung einholt. Damit das Nutzen des favorisierten Browsers nicht zur Tortur wird, sollte die Funktion bestehen, eine bestimmte .exe als "vertrauenswürdig" zu markieren, die dann folglich nicht mehr geprüft wird. Warum das ganze? Heruntergeladene Dateien beinhalten oft unangenehme Überraschungen (z.B. noch viel mehr Programme, die man nie haben wollte oder wunderschöne Werbeanzeigen, die alle 2 Minuten erscheinen etc.), die Antivirenscanner oft nicht sehen. Generell bin ich enttäuscht von Antivirenscannern, weshalb ich diese Lösung als (zumindest für etwas fortgeschrittenere User) sinnvoll ansehe. Da das Projekt recht umfangreich ist, wäre es zu viel verlangt, wenn ich fragen würde, ob das jemand für mich programmiert, aber falls ihr Ideen habt, wie man das umsetzen kann (oder allgemeine Kritik an der Idee), wäre ich euch sehr verbunden. Solltet ihr die Idee für unnütz oder blöd halten, klärt mich bitte auf, warum. Der Vorteil einer solchen Software wäre, dass sie einem erfahrenen Nutzer immer verraten kann, ob man es mit einem Virus zu tun hat oder nicht bzw. wie man das wieder rückgängig machen kann, was die Anwendung "verbrochen" hat. Sollte man der Anwendung die Aktionen gewähren (oder nicht), kann man auch alles, was die App macht / vorhat, zu tun, in eine Logdatei schreiben, damit man später genaueres über den Vorgang erfahren kann. Sollte ich das Projekt irgendwann fertigstellen, werde ich es hier als open Source einstellen Meine konkreten Fragen dazu könnt ihr gerne auch teilweise beantworten: 1. wie stelle ich fest, dass eine Anwendung vor hat, Dateien zu erstellen, ändern, löschen, kopieren, lesen? 1.1 wie kann ich das (temporär) verhindern und erst nach Bestätigung freigeben? 1.2 (wie) kann ich wissen, welche Dateinamen die betreffenden Daten haben? 2. wie stelle ich fest, dass eine Anwendung ins Internet möchte? 2.1 wie kann ich das (temporär) verhindern und erst nach Bestätigung freigeben? 2.2 (wie) kann ich wissen, welche Seiten/Server aufgerufen werden sollen? 3. wie stelle ich fest, dass eine Anwendung irgendeine andere Datei aufrufen möchte? 3.1 wie kann ich das (temporär) verhindern und erst nach Bestätigung freigeben? 3.2 (wie) kann ich wissen, welche Dateien aufgerufen werden sollen? 4. wie stelle ich fest, dass eine Anwendung Dienste erstellen möchte? 4.1 wie kann ich das (temporär) verhindern und erst nach Bestätigung freigeben? 4.2 (wie) kann ich abfragen, welchen Pfad die Datei des zu erstellenden Dienstes hat? 5. Wie kann ich prüfen, ob eine .exe versucht, ausgeführt zu werden? (wenn das Programm dauerhaft im Hintergrund läuft oder geht das auch per Event, das bei .exe Start ausgeführt wird?) Eine ergänzende Idee dazu wäre auch, sowas wie den Root für Windows zu basteln, indem vor jeder kritischen Änderung (etwas in den Autostart schieben, Dateizugriff in %appdata% oder %windir% oder C:\Programme, Service erstellen, etc.) eine (Passwort-)Abfrage stattfindet. Letztere Idee kann optimiert werden, wenn der Nutzer wählen kann, bei welchen Ereignissen er genervt werden will. Vielen Dank für die Mühe, dass du diesen langen Text gelesen hast :) |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Praktisch alles was du machen willst, ist mit globalen WinAPI Hooks realisierbar. Dazu dürftest du im Netz eine Menge an Informationen finden. Grob beschrieben lenkst du die API Aufrufe aller gestarteten Programme auf eigene Callback-Funktionen um. In diesen Callbacks kannst du nun nach Belieben Input Parameter und Rückgabewerte modifizieren oder auch den Aufruf der originalen API einfach unterlassen.
Am Beispiel von ![]()
Delphi-Quellcode:
Für globale Hooks hast du zwei Methoden:
function MessageBoxWCallback(hWnd: HWND; lpText, lpCaption: LPCWSTR; uType: UINT): Integer; stdcall;
begin if ((uType or MB_ICONERROR) = MB_ICONERROR) then begin // Wir moegen keine Fehlermeldungen Result := IDOK; end else begin // Fuer alles Andere rufen wir die Originalfunktion auf, aber aendern den Titel Result := MessageBoxWOrig(hWnd, lpText, 'Hook Title', uType); end; end;
Beide Methoden haben Vor- und Nachteile. Beim Usermode Hooking benötigst du den Code in den meisten Fällen sowohl als 32-, als auch als 64-Bit Kompilat und musst zudem den Start neuer Prozesse überwachen (gut, das funktioniert mit einem ![]() Fürs Kernelmode Hooking brauchst du einen signierten Treiber. Zudem kann man seit Vista nicht mehr ohne Weiteres die SSDT patchen, da ein neues Sicherheits-Feature namens Patch-Guard integriert wurde. Für viele Fälle stellt Windows allerdings nativ Filter und Callbacks zur Verfügung. Ob sich die Sache lohnt, ist allerdings eine andere Frage: Hooks werden von existierender AntiViren Software oft als schädliche Modifikation erkannt. Außerdem gillt (insbesondere bei Ring3 Hooks): Sofern ein Programm damit rechnet, gehookt zu werden, ist der Aufwand die Hooks zu umgehen nicht sonderlich groß. |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zunächst danke für die schnelle Antwort.
Da ich mich auf diesem Gebiet noch nicht bewegt habe und das ganze überwiegend dazu dienen soll, die üblichen Ich_installiere_dir_mal_noch_alles_an_Müll_was_ich _so_finde und Ich_installiere_mich_an_unübliche_Orte_und_habe_ke ine_Deinstallationsroutine Programme etwas zu entkräften, möchte ich mal erfragen, ob es üblich ist, dass diese Programme Hooks bemerken und sich dagegen wehren. Wenn nicht wäre der ring0 Kernelmode Hook das, was ich ausprobieren würde. Dass dieser nicht ohne Weiteres implementiert werden kann, legt nahe, dass es eben doch irgendwie möglich ist. Da du dich da auskennst frage ich einfach mal, um mir die Recherche zu ersparen, ob es ein vertretbarer Mehraufwand beim Nutzen des fertigen Programmes ist und / oder nur die Programmierung weit aufwändiger ist? Da Hooks allgemein offensichtlich recht einfach umgangen werden können, stellt sich mir die Frage, ob es überhaupt möglich ist, das, was ich vor habe, so umzusetzen, dass es nicht umgangen werden kann. Das Problem ist ja unter Windows, dass so gut wie jedes Programm Adminrechte bekommt, wenn es will und der Endnutzer das auch nicht ungewöhnlich finden muss, da jede Installationsroutine Adminrechte braucht, dann aber auch alles tun kann, was sie will. Sinnvoll wäre es, dass man nur Adminrechte für eine spezifische Handlung einfordert (wie bei Linux die root-Abfrage) Die Umsetzung eines solchen Unterfangens stelle ich mir realisierbar vor, glaube aber, dass der Aufwand sich kaum lohnen würde: Ich glaube, dass man dem Admin bzw. der Admingruppe sämtliche Rechte entziehen kann, einen Ersatzadmin erstellt (der mit der Admingruppe nichts zu tun hat), nennen wir ihn Rolf und bei jeder Adminhandlung (Zugriff auf C:\Windows oder regedit zum Beispiel) sagt Windows "nö!" Um das ganze doch tun zu können, könnte man dann die Andwendung nicht als Admin, sondern als Rolf ausführen und innerhalb dieses Rolfkontos könnte das ganze ring3 oder ring0 gehookt werden, da der Hook (meines Wissens) nur als Admin (der dann ja nichts mehr zu melden hat) umgangen werden kann, was aber als Rolf auch nicht drin ist, da Rolf das auch untersagt wird. Ist das so überhaupt umsetzbar und wenn ja, ist es dann auch realistisch, dass das praktische Anwendung finden könnte? (Die Rolflösung müsste natürlich auch von der Software eingerichtet werden, da das keinem normalen Nutzer zuzumuten ist) |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Zitat:
Wo ist der Unterschied ob das Admin-Konto Admin oder Rolf heißt? Und die Gruppen vereinfachen nur die Zuweisung von Rechten. Anstatt jede 100 Benutzerkonten einzeln zu konfigurieren, konfiguriere ich eine Gruppe und ordne den Benutzern der Gruppe zu. Klar kannst du deinen Rolf keiner Gruppe zu weisen und ihm dann doch wieder alle rechte geben, die ein Admin normalerweise hat. Nur was hast du damit gewonnen? Und ob du in der UAC jetzt dem Admin "Admin" ein gibts oder den Admin "Rolf" spielt keine Rolle. Apropos dein "Nö", das macht Windiws bei aktivierter UAC so wie so und fragt nach einem Benutzerkonto mit den nötigen Rechten. |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Falls du zu dem Thema noch Informationen brauchst:
Unter Linux gibt es sowas schon lang. Bekannteste Vertreter sind ![]() ![]() Das Erstellen eines solchen Regelsatzes ist jedoch recht aufwendig. Im Allgemeinen wird SELinux dafür in einen Modus versetzt, der alle Zugriffe zulässt. Anschließend wird mitgeloggt und daraus ein Profil erstellt. Man geht also davon aus, dass das Programm während es läuft sicher ist und nur das tut, was es tun soll. Natürlich kann man auch manuell nacharbeiten. Generell ist der Ansatz von der Idee her nicht schlecht. Meiner Meinung nach ist er für Endanwender allerdings denkbar ungeeignet. Der durchschnittliche Benutzer hat keinerlei Ahnung von gar nichts und kann mit Begriffen wie Administrator, Berechtigung, Programmverzeichnis, Exe usw. überhaupt nichts anfangen. Für das Härten eines Servers sieht die Sache anders natürlich dabei aus. Die größte Gefahr stammt daher meiner Meinung nach aus dem Umgang mit ausführbarem Code unter Windows. Wenn ich als erfahrener ITler selbst nicht mehr in der Lage bin, Werbung vom richtigen Downloadbutton auf einer Webseite zu unterscheiden, dann läuft etwas gewaltig schief. Unter Linux fährt man daher seit Jahrzehnten mit Paketlisten. Nahezu alle was ich auf dem Desktop brauche ist mit dem gleichen, einheitlichen Befehl installiert. Software herunterladen und installieren ist vollkommen out und verpönt. Toll wäre es, dies in der Microsoftwelt zu etablieren. Natürlich ist Linux auch nicht Virenfrei. Aber das Einfallstor ist nicht der dumme Nutzer, der die Rechnung.exe aus dem Anhang öffnet. Es sind Bugs in Programmen, die man irgendwann schon in den Griff bekommen wird. Dass ich meine Programme aus bekannten, verifizierten Listen beziehe, ist ein riesiger Vorteil in Sachen Sicherheit und auch Einfachheit. Sorry, das ist jetzt etwas ausgeartet, aber vielleicht interessiert's ja jemanden... |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Zitat:
Zitat:
Dass das umter Linux schon recht gut umgesetzt wird weiß ich und das ist auch das Vorbild meiner Überlegung, sowas in Windows auch einzubinden. Die Sache mit dem Rolf war nicht so gemeint, dem Admin bloß nen anderen Namen zu geben, sondern dafür zu sorgen, das ein Programm, das Admjnrechte hat, sich nicht ganz frei austoben kann wie als admin üblich. Die "Admin"Rechte wären dann useless, aber der Rolf (an sich auch useless) soll die Schnittstelle zwischen bekannten Adminrechten und dem Nutzer sein, wie in einer halben Sandbox, indem Rolf zwar auch alles gestatten kann, aber im Gegensatz zum bekannten Admin erst nach Durchwinken vom User. Das soll mit dem angesprochenen Hook geschehen, der ja nur mit Adminrechten umgangen werden kann (soweit ich weiß - wenn nicht ist die ganze Überlegung natürlich sinnfrei), was aber nichts wird, da dem Admin die Rechte dazu fehlen. Rolf soll sie aber auch nicht bekommen (den Hook auszuhebeln) und dann klappt das ganze so, dass ich etwas als Admin ausführen kann oder als Rolf und letzterer lässt die Änderung am System nur zu, wenn der Nutzer sein " okay" gibt. Sicherlich ist das dann auch nicht die ultimative Lösung, da die Zielgruppe "ganz unerfahren" logischerweise ausscheidet, die Zielgruppe "hab ich nicht nötig, weil ich weiß was man installieren sollte" auch, aber für "ich kenne mich mit Computern aus, lade mir aber gerne/umabsichtlich Mist runter" wär das genau das richtige. Letztere Zielgruppe ist glaube ich die schrumpfende Mittelschicht der Anwender, für die das genau das richtige wäre. Und es muss ja nicht unbeding die bekannte Rechnung.exe sein. Manchmal lädt man sich ein Programm von Chip.de runter und der Installer schlägt einem standardmäßig aktiviert vor, dies umd das noch gleich mit zu installieren und dann hat man den Salat. Das ist schon häufiger die Ursache gewesen, dass mich Leute gefragt haben, ob ich ihren Müll entfernen kann. Sowas kann mal passieren und wenn man nicht 100% weiß wo das sitzt oder dass das passiert (bzw beides) hat man verloren. Darum halte ich es für halbwegs sinnvoll, auch wenn es die bekanntesten Zielgruppen nicht bedienen kann. Zitat:
|
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Mein Problem mit der UAC ist, dass sie fragt "bla.exe möchte Adminrechte. Ja Nein" was ich haben wollen würde ist dann sowas wie "bla.exe möchte in Verzeichnis xyz und Unterverzeichnissen Lesen und schreiben". Checkboxen mit "Lesen", "Schreiben", "Unterverzeichnisse auch" und Buttons "markiertes erlauben" und "nichts da!"
|
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Das klingt ja nach RBAC & Co. ähnlich wie GRSecurity oder FreeBSD oder oder...
Willst du das wirklich selber bauen...? Das erfordert spitzenmäßige OS Kenntnisse, zumindest wenn das Ganze auch was taugen soll... Ich hätte gerne 'ne SRC-Kopie als Delphi-Code, in den ich mich dann die nächsten 20 Jahre einarbeiten kann... Aber "AV-Ergänzung" finde ich lustig.. die AV-Software macht dann alles wieder kaputt was die Sicherheitssoftware mühsam etabliert hat... Zitat:
Sowas macht hübsch aggressiv... alleine schon was man da für Zeit reinbuttert... Zitat:
Zitat:
Ich glaube, dass man soetwas nur mit extrem starker Nutzungseinschränkung bauen kann. Jede Abfrage/oder Meldung für normle Nutzer wie UAC & Co. sind ohne Bedeutung wenn der Nutzer sie nicht beantworten kann oder versteht was da eigentlich passiert. Ist aber ein interessantes Thema so eine Software für Standard-Windows-Versionen zu bekommen... Groß ist die Auswahl da ja nicht, oder ich hab' bis jetzt an der falschen Stelle geschaut... Vielleicht werde ich in 100 Jahren auch mal so gut, dann greife ich das auf jeden Fall auch auf... Viel Erfolg! |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Dass das mit der Bestätigung nicht so gut klappt, wenn sich jemand nicht gut auskennt, sieht man daran, dass viele dann einfach UAC Anforderungen ohne zu lesen bestätigen. Wenn dann noch mehr Fragen kommen, wird man erst recht abgestumpft... |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Gefühlt würde ich sagen dass Anti-Virenprogramme eher (ziemlich wahrscheinlich) Hooks umgehen, Viren oder generell Malware wahrscheinlich nur zum Teil (Ich würde mal unqualifizierte ~10% in den Raum werfen) Hooks umgehen. Bei "normalen" Programmen liegt der Anteil wahrscheinlich unter 1%. Das sind wie gesagt komplett in den Raum geworfene Zahlen, aber ich denke mal dass sie nicht allzu fern von der Realität sind. Zitat:
Außerdem kannst du dann Delphi schon mal vergessen (falls du vor hattest dafür Delphi zu verwenden). Zitat:
Ich würde zumindest mal in Ring3 anfangen und einfach mal Copy oder/und CreateFile hooken und ein bisschen rumtesten ob sich meine Zahlen oben bestätigen. Wenn sich herausstellt (was ich nicht denke), dass jedes 2. Programm deine Hooks umgeht (oder ganz allgemein für deinen Geschmack "zu viele") dann musst du dir die Ring0 Hooks vielleicht doch mal anschauen. Aber würde erstmal Ring3 antesten. Zitat:
Und ich denke wie gesagt, dass es unterm Strich mindestens 90% aller Programme NICHT tun. Was mir aber noch eingefallen ist: Könnte man nicht das umgehen von Hooks umgehen indem man GetProcAddress hookt? |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Irgendwie schaffen es Virenprogrammierer immer wieder, ihre Software zu installieren, ohne daß der Benutzer mehr als unbedingt nötig belästigt wird (meistens nie). Und in den meisten Fällen funktioniert sie auch noch. :mrgreen: Gruß K-H |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
|
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Hallo,
Zitat:
Und dann bleiben noch die Softwareentwickler, die mit diesem Sicherheitsfeature die unterschiedlichsten Probleme haben. Wie ich. Bei einem meiner Projekte wüsste ich gar nicht wie ich das Signieren umsetzten sollte, selbst wenn ich mir das leisten könnte. einbeliebigername. |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Dann will ich auch mal meinen unqualifizierten Senf dazugeben, aber der Initiator dieses Threads hat es ja so gewollt:
Ich würde mir einen solche Software definitiv niemals installieren. Die macht Einiges von dem, weswegen ich schon Windows Vista oder auch Windows 8 nicht installiert habe: MICH BEVORMUNDEN! Das ist MEIN PC und MEIN BETRIEBSSYSTEM und wenn ICH ENTSCHEIDE mir eine Software XYZ zu installieren, dann hat mein PC das gefälligst zu tun und zwar OHNE WENN UND ABER! ....wenn ich im Nachhinein feststelle, dass diese Software Schrott ist oder Dinge tut die ich nicht möchte, naja, dann fliegt sie halt wieder! VG Peter |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Da bleibt dann nur das letzte Backup einzuspielen (zumindest als seriöse Vorgehensweise). |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
[ot]
Zitat:
![]() |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Da das manuelle Laden der Dll auch nicht ohne Weiteres festgestellt werden kann, ist davon auszugehen, dass auch keine Inline Hooks mehr im Code aktiv sind. Und wenn man ganz viel Zeit zu viel hat, dann bastelt man sich für jede Windows Version eine Syscall-Table. Kennt man die entsprechenden Interrupt Nummern (sieht man in der ntdll.dll auf den ersten Blick in fast jeder nativen API), kann man über das direkte Ausführen der SYSCALL Instruction auch die entsprechende API im Kernel ansprechen. |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Ja gut wer sich so viel Arbeit macht hat es auch verdient nicht gehookt zu werden :mrgreen:
|
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Wenn im Hintergrund auf modernen Rechnern ein oder zwei Dienste zusätzlich laufen, dann macht sich das in der Geschwindigkeit überhaupt nicht bemerkbar und bei guter Programmierung werden die Dienste nichtmal mehr angezeigt... zumindest nicht mit StandardTools... Zitat:
Zitat:
Wie willst du bemerken ob eine Software: - einen globalen Hook einrichtet - einen direkten Speicherzugriff macht - einen laufenden Prozess manipuliert bzw. verändert - eine DLL initialisiert oder sich indirekt an einen laufenden Prozess anhängt - in den Speicherbereich einer anderen Anwendung schreibt - sich höhere oder mehr Rechte beschafft - Dateien austauscht - Dienste nutzt ... Mal ganz abgesehen von der Tatsache, dass eine moderne CPU 'ne Menge an Dingen innerhalb von wenigen Millisekunden oder Mikrosekunden oder Nanosekunden macht. Danach sieht dann schon wieder alles anders aus (Tarnmodus an). Und die meisten Rechner laufen länger als nur hier und da mal 'ne Minute. Wenn du etwas bemerkst, dann hat der Angreifer 'was falsch gemacht. Ich will gar nicht wissen wie viele Rechner und Webseiten sich da draußen im Zombie-Modus befinden. Ich hab' mal OpenOffice getestet (welche Version weiß ich aber nicht mehr) und war sehr überrascht, dass DRAW ohne globalen Hook nicht funktionieren wollte, nach weiteren Tests hat sich OpenOffice sogar einen direkten Speicherzugriff gönnen wollen. Komischerweise macht LibreOffice das nicht und DRAW funzt auch ohne globalen Hook in LibreOffice. Seitdem bin ich LibreOfficeFan (Portable Version). Oder: Windows 7 Notepad holt sich immer einen globalen Hook wenn man das zulässt. Funktioniert allerdings auch prima ohne diesen. Welcher Nutzer bekommt das denn mit ???? |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Ich entnehme den vorherigen Kommentaren, dass sich das ganze (für mich) wohl eher weniger zu programmieren lohnt, da es für den gewonnenen Nutzen zu aufwändig ist.
Da Delphi wohl die falsche Plattform ist lasse ich es gleich sein, da ich mit anderen Sprachen wie C, C++ usw. nichts am Hut habe. Alternativ hätte ich eine Ersatzidee, die nicht ganz so erfahrenen Nutzern dennoch nützlich werden könnte (sofern sie wenigstens ein ganz kleines bisschen von Computern verstehen) Da ich Antivirenprogrammen aus Gründen* nicht vertraue, möchte ich gerne etwas schreiben, das es einem ermöglicht, Viren zu bekämpfen, ohne auf herkömmliche AV Lösungen zurückgreifen zu müssen. Meine Idee wäre also folgende: Da der Großteil der Viren irgendeine .exe und/oder .dll irgendwo hin erstellt habe ich mir überlegt, dass man ein Notfallprogramm (für den durchschnittlichen, aber nicht ganz dummen Nutzer) schrieben kann, das eine Dateiliste von C:\ und Unterverzeichnissen anlegt und einem dann alle Dateien anzeigt, die innerhalb einer bestimmten Zeit installiert wurden (der Nutzer kann soll zunächst eingeben, seit wieviel Tagen er komisches Verhalten beobachtet und das Programm listet dann alle Dateien auf, die seitdem erstellt worden sind) Dann soll der Nutzer die Möglichkeit haben, die betreffenden Daten zu entfernen. Dass das ganze eine ziemlich dreckige Lösung ist weiß ich selbst, das braucht mir keiner sagen, aber es soll auch NUR eine Notfallösung darstellen, sodass spontan schnell weitergearbeitet werden kann, wobei man sich mittelfristig etwas detailierter um sein System kümmern sollte. Das ganze kann sinnvoll sein, wenn die besagte Rechnung.exe irgendwo was hinkopiert hat, was da nicht hin soll. Dass dann in irgendwelchen Autostarteinträgen oder sonstigen Verweisen auf die nicht mehr existente Datei referiert wird ist mir bekannt, kann aber aufgrund der Notfallösung vernachlässigt werden. Für hartnäckige Viren ist die Nutzung eines solchen Programmes von einer Live CD empfehlenswert, allerdings bin ich am überlegen, ob man auch den Loginscreen mit sowas ausstatten könnte (utilman.exe oder sethc.exe ersetzen) Dass das Risiko besteht, dass Nutzer Daten löschen, die eigentlich noch gebraucht werden habe ich auch schon überlegt. Das könnte man so umgehen, dass das Programm vor dem Löschen eine Sicherheitskopie in C:\Backup_vor_Löschung_von_Sachen\ anlegt, mitsamt einer Textdatei, wo die gesicherten Daten herkommen, sodass man sie falls das OS nicht mehr arbeiten will, per Live CD zurückschieben kann. Gebt bitte auch hierzu euren Senf ab, besonders, wenn ihr Verbesserungsvorschläge habt. *Ich habe in Delphi mal just for Fun einen kleinen Virus geschrieben, um zu sehen, wie die AV Programme darauf reagieren. Das Ding war recht billig und nicht sehr auufwändig geschrieben (Arbeitszeit 2 bis 4 Stunden oder so und das auch nur weil ich recherchieren musste, wie man Tastatureingaben hookt) Die .exe hat sich erstmal irgendwo in %appdata%\bla.. kopiert und in der regedit in den Autostart gepflanzt. Während das Ding lief hat es alle Tastatureingaben (hab ich gehookt) geloggt und alle 20 Sekunden auf einen FTP Server hochgeladen. Zudem hat er alle 30 Sekunden einen Screenshot gemascht und den ebenfalls auf den FTP Server geladen. Ich dachte, dass das 80% der Antivirenscanner komisch finden müssten, aber nichts da! habe die Project1.exe auf virustotal hochgeladen und die Seite sagte mir, dass 52 von 52 Antivirenprogrammen grünes Licht gegeben haben und es offenbar keines der Programme komisch fand, was da abgeht. (3 Programme haben gemeckert, als ich versucht hab, die selbe Datei unter dem Namen blabla.txt.exe oder so hochzuladen, allerdings auch NUR aufgrund des Namens und nicht, weil es eine gefährliche Aktion ausführen will..) Naja seit dem Tag sind AV Programme für mich gestorben, weil ich erkannte, dass wenn man ohne nennenswerte Kenntnisse über Viren einen Virus schreiben kann, der nicht erkannt wird, die AV Lösungen wohl wenig taugen. -> Das ist auch der Grund, warum ich selbst so etwas schreiben will. Ob es dann ständig nervt oder nicht steht auf einem anderen Blatt, aber zumindest in Puncto Sicherheit soll das ganze punkten. |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Die eben gepostete Idee hat da eine Lösung für (nicht gerade die beste - das weiß ich auch) |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
An sich ist das eine sehr gute Idee, allerdings glaube ich nicht, dass jede Software, die man gerne installieren möchte, signiert/zertifiziert ist, was dann für einen großen Teil der Anwender wieder problematisch ist und jene Zertifizierung lässt sich teilweise auch fälschen. |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Das Problem ist, dass man keinen 100%igen Schutz anbieten kann, der dann auch noch 95% der Anwender gerecht wird. Die in diesem Forum angemeldeten Nutzer können auf einem ganz anderen Level bedient werden, als es beim DAU (dumbest allowed User) nötig ist. Der mittelmäßig informierte Nutzer hingegen sollte wiederum anders geschützt werden.
Hier im Forum muss man glaube ich keinen vor einer Rechnung.exe aus einer Email warnen und es klickt auch keiner auf Werbung, die einem zum 20. Mal am Tag erklärt, dass man ja schon wieder ein neues iPhone gewonnen hat, wenn man bloß seine Kreditkartennummer angibt.. Es gibt aber auch andere Nutzer. Darum sollte man beim Erstellen einer Schutzsoftware entweder explizit eine bestimmte Zielgruppe bedienen, mit der das Programm "keinen Stress hat" oder man baut das ganze so, dass jeder Nutzer was damit anfangen kann, was aber fast unmöglich ist. Ich bin beispielsweise jedes mal angepisst, wenn AV Programme eine Autorun.inf auf meinem Stick als gefährlich ansehen, ja sich sogar teilweise erdreisten, die gleich mal zu löschen, obwohl sie nur das Icon der Partiton ändern soll :wall: |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Wie gesagt, es richtet sich nur an mittelmäßig erfahrene Nutzer und nicht an die, die eh schon wissen, was sie tun. |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Ich meine das sind ja nicht die 99% der Viren, die unterwegs sind (behaupte ich einfach mal) Zitat:
|
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Wegen der SYS-Files? Das kann man mit Delphi3 machen und auch mit höheren Delphi-Versionen mit Hilfe des DDDK. (Delphi Driver Development Kit) Muß man ja auch nicht verwenden, ist sozusagen 'ne Hilfe... AV-Software kann nicht funktionieren, aber das hinterfragt ja keiner... Jeder, der sich auch nur etwas auskennt weiß das schon seit Ewigkeiten!!! Führende ITler im Sicherheitsbereich benutzen solch eine Software nicht! Warum wohl nicht? |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Nur mal so am Rande bemerkt:
Du hast keinen Virus programmiert, sondern ein Programm geschrieben, dass die Tastatureingaben loggt, Screenshots macht und regelmäßig Daten auf einen FTP-Server hochlädt. Ein Virus versucht sich selber zu vermehren (auf anderen Systemen zu verbreiten) und das fehlt bei dir komplett. Was sollte jetzt ein Antiviren-Programm an deinem Programm zu meckern haben? Schadprogramme müssen erst einmal als Schadprogramm erkannt und dann eine Signatur erstellt werden damit dies auch von den AV erkannt wird. Die Heuristik springt auf jeden Fall nicht bei deinem Programm an, sonst würden eine ganze Reihe von normalen Programmen auch auf der Abschußliste stehen. |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Ich finde, dass das AV Programm das durchaus mit einem "könnte gefährlich sein, muss es aber nicht" um die Ecke kommen sollte. Ich meine auch wenn es sich nicht selbst fortpflanzt, reicht das beschriebene doch schon aus, um sagen zu können, dass da eventuell etwas passieren könnte, das nicht im Sinne des Endnutzers sein kann. (Von Wegen Heuristik und so - die soll ja genau das eigentlich tun: Gefahren erkennen, bevor sie auftreten) Dass auch normale Programme auf der Abschussliste stehen würden ist logisch, aber durchaus nicht ganz blöd. Wenn dem Nutzer nur gesagt wird "das Programm macht folgendes: Hook setzen, Internet nutzen, im Autostart verankern, sich selbst kopieren" ohne, dass das als Gefahr deklariert wird kann der Nutzer ja selbst entscheiden, dass das für eine AntiVir.exe in Ordnung geht, aber für eine Rechnung.exe nicht. Zitat:
Zitat:
|
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
PS: Ich hatte mir mal vor x Jahren ZoneAlarm installiert. Was Internet angeht macht das Programm ziemlich genau das, was ich vorhabe, allerdings auch wirklich nur, wenn eine .exe nach Hause telefonieren will. Sonstige Aktionen interessieren das Programm nicht wirklich. |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Nicht, dass ich Zertifizierung / Signierung generell für wenig aussagekräftig halte - meistens passt das ja, aber es ist eben auch nicht ganz zuverlässig und ein Zertifikat kostet Geld, das nicht jeder Entwickler bereit ist, auszugeben. |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Hallo,
ein Software-Entwickler der keine roundabout 100 Euronen jährlich für ein Zertifikat übrig hat, ist kein Software-Entwickler, sondern ein Hinterhof-Schrauber(Programmierer) dem ich mein Auto nicht zur Reparatur anvertrauen würde. Um es mal im KFZ-Jargon auszudrücken. Wenn ich eine SW installieren möchte und sehe einen gelben UAC-Dialog, dann wird das von mir sofort abgebrochen. Es sei denn, die Quelle ist mir sehr gut bekannt. Ich bin noch nicht schlecht damit gefahren. Es ist klar, und da sind wir alle wahrscheinlich einer Meinung, dass ein Zertifikat keine Garantie für eine saubere (virenfreie) Software ist. Aber, es ist ein kleines Indiz dafür, wie gewissenhaft der Ersteller einer Software (Hinterhof-Klitsche oder Markenwerkstatt?) grundsätzlich arbeitet. Zudem ging es mir mit dem Zertifikats-Hinweis nicht nur um eine simple Zertifizierung via SW-Zertifikat. Warum haben die Apfel-User weniger derartige Probleme als die Windows-Fraktion? Das sollte man mal hinterfragen. Der Windows-App-Store ist in dieser Hinsicht ein schlechter Witz. Vielleicht weil man Angst hat, im Mobile-Bereich noch mehr Anschluss an die Android-Konkurrenz zu verlieren? Oder weil der Markt für AV-Software so riesig und ertragreich ist, dass man eine Kuh die Milch gibt nicht schlachten kann/möchte? BTW es geht hier ja primär um eine "Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]" und da finde ich, ist der Markt ausgereizt und gesättigt. Bis auf wirklich gute und einfach zu bedienende Backup-Software. Weil ein gutes Backup die beste Ergänzung für eine AV-Software ist. Acronis & Co sind zwar nicht schlecht, aber das könnte man durchaus noch etwas benutzerfreundlicher machen. In dem Zusammenhang fällt mir noch ein, gibt es eigentlich eine Möglichkeit eine Verschlüsselung einer Datei zu verhindern? Das wäre bei den derzeit akuten Verschlüsselungs-Trojanern mal etwas wirklich Nützliches! |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Wenn das Programm tatsächlich irgendwo läuft, könnte die Heuristik mancher Virenscanner darauf reagieren. Diverse Erpressungstrojaner der letzten Zeit wurden z.B. durch die Heuristik einiger Hersteller auch erkannt bevor sie bekannt wurden und Signaturen davon existierten. Zitat:
![]() Deshalb hat sich das nicht weit verbreitet. (Wobei sich viele wohl eher Sorgen machen, dass ihre Raubkopien dann nicht mehr laufen...) |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Die Obstkonsumenten haben einen Appstore, in den SW erst nach Prüfung des Apfelgroßbauern wandert. Apple ist da recht streng was die Zulassung für Apps angeht. Für Windows gibt es keinen Appstore dieser Art. Microsoft und Android Nutzer könnenbzw. müssen sich SW überall zusammensuchen und müssen darauf vertrauen, was der Hersteller sagt. Bei Apple ist das etwas besser (für die Endnutzer) gelöst. Ich bin definitiv kein Applefan, aber was den Appstore angeht können sich andere Softwarekonzerne mal eine Scheibe abschneiden. Alles relevante an Software in einem Appstore, ohne amdere Seiten nutzen zu müssen und vorherige Prüfung der SW sehe ich als sehr sinnvoll an. Was Backups angeht kann man sicher noch etwas an der User Experience schrauben, aber generell sind Backuplösungen schon garnicht so schlecht. Dateien vor Verschlüsselung schützen stelle ich mir sehr einfach vor (vllt liege ich da falsch, aber ich glaube das Konzept wäre umsetzbar): Man nehme (programmiere) eine Software, die ein Dateisystem erstellt, auf das Lesen/Schreiben erst nach Passworteingabe und dann nur für eine bestimmte Zeit und für ein bestimmtes Programm möglich ist. Ich glaube, dass das recht einfach umsetzbar wäre. (Geht das so oder stelle ich mir das zu einfach vor?) Edit: Das wäre so noch nicht bombensicher, da die Partition selbst noch formatiert (bzw. Kopiert, verschlüsselt und entfernt) werden kann, aber die bloße Verschlüssenung von Dateien innerhalb der Partition wäre damit nicht mehr möglich. Und ich habe noch nie von einer Schadsoftware gehört, die sich an ganzen Partitionen vergriffen hat (Bitte um Aufklärung, falls das doch üblich/vorgekommen sein sollte) |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Ein Zertifikat ist schneller an die Software gedengelt, als man denkt.
Es muss auch kein offiziell abgesegnetes sein, wenn man die Benutzer "kennt" (Software für einen bestimmten Kundenkreis) oder es sich im Hobby-/Freeware-Bereich bewegt. Dann gibt man den Fingerprint des Zertifikats heraus und ein jeder kann dann die Vertrauensstellung für dieses Zertifikat entsprechend einmalig setzen. (siehe meine Signatur) Natürlich ist das umständlicher als ein gekauftes und offiziell abgesegnetes Zertifikat, aber dafür auch für nix Geld. |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Ich habe mal gehört, dass Google sich selbst zertifiziert hat und bin daher unsicher, ob das nur geht weil es Google ist und in der "Liste vertrauenswürdiger Zertifikatsaussteller" ist oder ob das jeder x beliebige auch kann. |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Mir ist gerade ein Konzept eingefallen, wie man (relativ) gut prüfen könnte, ob ein Programm vertrauenswürdig ist oder nicht.
Man braucht eine definitiv vertrauenswürdige Intersetseite (Stiftung Software Warentest o.ä.), die Programme prüft und auf ihrer Seite kurz schreibt, was das Programm macht und welche Checksummen es hat und natürlich, dass das ganze vertrauenswürdig ist. Bei der Installation kann das Programm dann sagen "guck mal auf softwarecheck.de/lookup?=meineMD5Checksumme" und der Nutzer kann dann sehen, dass dieses Programm mit der Checksumme als gut gekennzeichnet wurde. Um die Echtheit solch einer Seite zu garantieren, kann der Nutzer einem kostenlosen Account anlegen mit einer bestimmten Nachticht, die am oberen Rand der Seite immer zu sehen ist, sodass der Nutzer selbst auf einer gefälschten Seite sehen kann, ob es das Original ist, oder nicht. Hätte sowas Potential? Gibt es das vllt schon? |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Und wer vertraut dem Vertrauer? Und wenn der Vertrauer gehackt wird bzw. dessen Website?
Nein, da kommt dann wohl eher etwas, was wir bei den Mobiles schon kennen: ![]() Es muss nur tief genug im System verankert sein und 100% Sicherheit gibt es auch nicht. |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
Dass das gehackt werden kann ist klar, aber es ging mir generelk um die Idee an sich. Die ist glaub ich recht gut. Das in dem Link ähnelt dem Ursprungspost dieses Threads und ist etwa das, was ich anfangs meinte, allerdings für Linux. Ich fänd es gut, wenn man Windows (auf ähnliche Weise) sicherer machen könnte, da das OS von einem Großteil der Nutzer genutzt wird und somit eine größere Zielgruppe hat, zumal ich Linuxusern unterstelle, dass sie tendentiell eher weniger zusätzlichen Schutz nötig haben als Windowsnutzer. |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Ich glaube der ganze Thread dreht sich nur um den Sicherheitswahn/Paranoia der meisten am Gespräche beteiligten.
Unsignierte Programme erst gar nicht zu starten oder Webseiten ohne Zertifikate nicht zu besuchen bzw. erstmal nicht zu vertrauen ist doch bescheuert (sorry). Das beste Virenprogramm/Zertifikat ist ein gesunder Menschenverstand in meinen Augen. Bei den meisten Seiten/Programmen sieht man meist auf den ersten Blick wie vertrauenswürdig es ist. Der Eindruck kann zwar vor allem bei Phishing täuschen, aber wer den oben genannten Verstand oder/und Google gebraucht wird sich nicht mal auf solche Seiten verirren bzw. auf solche Links klicken. Mein Antivirenprogramm habe ich glaube ich seit Jahren nicht mehr "passiv" gebraucht. Das einzige Anwendungsgebiet bleibt wenn ich bewusst etwas runterlade wo ich schon vorher davon ausgegangen bin dass es ein Schadprogramm sein könnte um das heruntergeladene Programm dann explizit von meinem Antivirenprogramm überprüfen und ggf. löschen zu lassen. Unterm Strich ist natürlich nichts 100%ig sicher, aber zu mindestens 90% brauche ich weder Zertifikate/Antivirenprogramme oder eine Signatur um Dinge korrekt als sicher oder unsicher einzustufen. Natürlich kann man auch mal falsch liegen und kann dann nur hoffen dass man sich nichts schlimmes eingefangen hat, aber lieber so als jeden Klick den ich mache 3x bestätigen zu müssen und auf einen Großteil guter und harmloser Software zu verzichten. |
AW: Softwareidee für Antivirenergänzung [Lösungsansätze gesucht]
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:11 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz