Virenschutzprogramm "VirTroDel"

    • Beta
    • Closed Source

    Es gibt 61 Antworten in diesem Thema. Der letzte Beitrag () ist von Runshak.

      Virenschutzprogramm "VirTroDel"

      Name des Programms:
      VirTroDel BETA_3.3

      Beschreibung:
      Kostenloser Virenschutz in der BETA-Phase

      Screenshots:
      siehe Anhang

      Verwendete Programmiersprache:
      Visual Basic .NET (IDE: VB 2010 Express)

      Systemanforderungen:
      • Adminrechte
      • .NET Framework v4.5

      Sonstiges:
      • Erstellt/ändert Registryeinträge:
        Löscht/Ändert virenrelevante Einträge
      • Erstellt/ändert Dateien:
        Löscht/Ändert virenrelevante Dateien

      Bekannte Bugs:
      • Noch keine :)

      ToDo:
      • Einfügen von Update-Service
      • Einfügen von mehr Virenarten
      • Einfügen von Backgroundworker
      • Einfügen von nicht-automatischem Löschen; erst nach Bestätigung des Benutzers

      Dateigröße:
      289 KB (Setup in ZIP); 362 KB (Alle Dateien zusammen); 134 KB (Hauptprogramm und Scanprogramm)

      Lizenz/Weitergabe:
      Freeware; Closed Source

      [expander=Hashes]MD5 : 9B428D640FA19C85025860E7F021A453
      SHA1 : 856AC6420ADD4E90578C5E1675455CDC81A39E0E
      SHA256 : DC718D053EB0CDF95C809454AC6CC60D3D5AD0EC6ADBE6D0FEF0FCF89200D004[/expander]


      Hier präsentiere ich mein (seit Oktober 2013 programmierter) Virenschutz. Am Anfang wurde er mit Batch geschrieben; seit er in der Version BETA_3.0 ist, wird er in VB.NET geschrieben. Zwar findet er bisher nur eine Virenart, aber weitere Virenarten folgen.

      Feedback ist nicht erlaubt, sondern erwünscht :)

      Gruß, FanMaderWeb
      Bilder
      • Ashampoo_Snap_2014.09.02_22h17m57s_001_VirTroDel.png

        47,45 kB, 1.004×604, 378 mal angesehen
      • Ashampoo_Snap_2014.09.02_22h18m54s_002_Scan - VirTroDel.png

        25,77 kB, 1.004×604, 359 mal angesehen
      Dateien
      Die Datenbank würde ich gerne sehen...
      Außerdem frage ich mich, wie das Teil performant läuft. Wie machst du das?
      #define for for(int z=0;z<2;++z)for // Have fun!
      Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

      Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
      Wow. Das Programm sieht eben so schlimm aus, wie es hier präsentiert wird.
      Und es ist ebenso schlimm geschrieben, wie es aussieht.

      Das Programm kann man maximal als Schadsoftware-Entfernungs-Tool bezeichnet werden, aber nicht als Virenschutz.
      Nicht mal ein kommerzielles Produkt kann man als Virenschutz bezeichnen.

      Alles, was das Programm macht, ist: Prozess abwürgen, Dateien löschen, Registry-Einträge löschen. Alles mit absoluten Pfaden. Wie gesagt, maximal ein Entfernungs-Tool für einfache Schadprogramme. (Mal davon abgesehen, dass man einen befallenen Computer in fast allen Fällen sowieso neu aufsetzen sollte.)

      Ich will jetzt gar nicht auf die Details eingehen, aber ganz kurz:
      Setup unnötig, .Net Framework 4.5 evtl. OP, Debug- statt Release-Version, GUI sieht nicht gut aus, 2 Assemblies statt 1.

      anubis.iseclab.org/?action=res…50cc503403200&format=html
      anubis.iseclab.org/?action=res…f24f52701a652&format=html
      virustotal.com/de/file/dc718d0…d004/analysis/1410938362/
      virustotal.com/de/file/b48df62…1ca2/analysis/1410938364/
      Der eine Treffer von VirTroDel.exe kann wahrscheinlich ignoriert werden. Ich hab mir das Programm aber nicht im Detail durchgesehen.
      "Luckily luh... luckily it wasn't poi-"
      -- Brady in Wonderland, 23. Februar 2015, 1:56
      Desktop Pinner | ApplicationSettings | OnUtils

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Niko Ortner“ ()

      Was zum Teufel hat dann da fast nen Jahr gedauert?
      #define for for(int z=0;z<2;++z)for // Have fun!
      Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

      Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:

      Trade schrieb:

      Die Datenbank würde ich gerne sehen...

      Ist momentan alles noch Intern, wird aber bald Extern eingespeist

      nafets3646 schrieb:

      Ich glaube kaum, dass das Ding auch nur einen Virus/Trojaner anständig erkennt. Das Ding ist also höchstwahrscheinlich nicht funktionsfähig.

      Prüft, ob eine Datei, welche zu eine Virenart gehört, existiert. Wenn ja, löscht es alle weiteren zusammenhängenden Dateien und Registrypfäde.

      simpelSoft schrieb:

      Setup? Nee danke!

      Viele Nutzer hatten sich ein Setup gewünscht und deswegen habe ich es extra eingefügt.

      Bluespide schrieb:

      "Kann nur -1- Virus entfernen."
      Joa das ist ein bisschen mager, wol?

      Wohlgemerkt ist das die BETA_3 ... das bedeutet, dass ich erstmal mit dem Konzept der GUI, des Quellcodes usw. Anfange und am Ende die Virenarten einschleuse. Bis BETA_2 (als ich das mit Batch gemacht habe) konnte es schon ein wenig mehr Virenarten finden^^

      Trade schrieb:

      Was zum Teufel hat dann da fast nen Jahr gedauert?

      Vieles. Virendefinitionen herraussuchen, benutzerfreundlicher Gestalten. Der größte Teil wurde - wie erwähnt- in Batch programmiert. Vorallem die Behebung der Bugs zwangen eine Neuschreibung sowohl in der Ehemaligen Batch-Version als auch in der neuen VB.NET-Version
      Hint: Beta heißt aber, dass nur noch ganz viele Bugs enthalten sind. Wenn noch nicht alles implementiert ist, dann ist es ne (Pre-)Alpha. ;)
      #define for for(int z=0;z<2;++z)for // Have fun!
      Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

      Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:

      Trade schrieb:

      Hint: Beta heißt aber, dass nur noch ganz viele Bugs enthalten sind. Wenn noch nicht alles implementiert ist, dann ist es ne (Pre-)Alpha.

      Joa, aber bei einem Virenschutz ist eigentlich nie noch nicht alles implentiert ;) Grundfunktionen dazu sind schon da, fehlen nur noch die Virensignaturen :)
      Man, jeder kann dein Ding umgehen und jede anständig programmierte hartnäckige Malware wird von dir weder erkannt, noch kannst du sie im Falle einer Erkennung noch stoppen. Ich mach dir ein Programm, welches automatisch zufällig modifizierte Versionen von sich kompiliert und sich selbst durch diese ersetzt (ist net allzu schwer) - du wirst nicht den Hauch einer Chance haben, irgendwas zu implementieren, was das verhindern kann (denke ich ^^).
      MfG Stefan
      Prüft, ob eine Datei, welche zu eine Virenart gehört, existiert. Wenn ja, löscht es alle weiteren zusammenhängenden Dateien und Registrypfäde.

      Nur den Prozess abzuwürgen und einzelne Dateien zu löschen wird, wie nafets bereits erwähnt hat, nur bei ganz einfachen Programmen was bringen. Keine ernsthafte Schadsoftware würde so was simples auch nur kratzen.

      Viele Nutzer hatten sich ein Setup gewünscht und deswegen habe ich es extra eingefügt.

      Verwendet das ernsthaft jemand? Wenn nicht mal ein kommerzielles virenprktschz Schadsoftware richtig erkennen/bekämpfen kann, was soll dann ein .Net-Programm ausrichten?
      Mal davon abgesehen. Ist es so schwer, den Ordner zu öffnen und auf eine Exe zu doppelklicken? Vielleicht liegt's auch daran, dass aus irgendeinem Grund 2 Exe-Dateien da sind, obwohl es eigentlich nur eine bräuchte.

      mehr Virenarten finden

      Das hört sich toll an, aber Du findest da nur einzelne Teile von konkreten Viren.

      benutzerfreundlicher Gestalten

      Design ist zu einem gewissen Grad subjektiv, aber diese GUI ist alles andere als benutzerfreundlich.
      Das fängt beim Setup an, geht über den Splashscreen und endet bei den viel zu großen und auf Skalierung falsch reagierenden Fenstern.
      "Luckily luh... luckily it wasn't poi-"
      -- Brady in Wonderland, 23. Februar 2015, 1:56
      Desktop Pinner | ApplicationSettings | OnUtils

      Niko Ortner schrieb:

      Nur den Prozess abzuwürgen und einzelne Dateien zu löschen wird, wie nafets bereits erwähnt hat, nur bei ganz einfachen Programmen was bringen. Keine ernsthafte Schadsoftware würde so was simples auch nur kratzen.

      In meiner Quelle, woher ich die definitionen bekomme, ist (abgeschätzt) 70% so aufgebaut. Die anderen beeinhalten dann E-Mail-Programme, unspezifische Dateinamen (also Zufallsdateinamen) bzw. Dateifaden, welche nicht konstrankt einprogrammiert werden können. Das liegt daran, dass ich immernoch beim selben Konzept wie früher bei Batch war.

      Niko Ortner schrieb:

      Verwendet das ernsthaft jemand?

      Ja, um es zu testen und mir Feedback zu geben. Einige Freunde von mir benutzen das in einer speziell Angefertigten Sandbox, wo sie einige Viren reinschieben und dann das Programm laufen lassen. Dadurch geben sie mir Verbesserungsvorschläge etc.

      Niko Ortner schrieb:

      Vielleicht liegt's auch daran, dass aus irgendeinem Grund 2 Exe-Dateien da sind, obwohl es eigentlich nur eine bräuchte.

      Irgendwie muss das Programm auch mit administrativen Rechten arbeiten. Deswegen gibt es ja eine Verknüpfung auf dem Desktop, welches zu dem "Launcher" führt. Von dort aus kann man dann auf "Scan" klicken, welches einen dann das Scan-Prorgramm öffnen lässt.
      (Soweit ich weiß macht das G DATA auch, oder?)

      Niko Ortner schrieb:

      Das hört sich toll an, aber Du findest da nur einzelne Teile von konkreten Viren.

      In meiner Quelle ist jeder Virus so genau wie möglich aufgelistet worden, sodass ich einfach nur schauen muss, was der Virus macht.

      Niko Ortner schrieb:

      Design ist zu einem gewissen Grad subjektiv, aber diese GUI ist alles andere als benutzerfreundlich.
      Das fängt beim Setup an, geht über den Splashscreen und endet bei den viel zu großen und auf Skalierung falsch reagierenden Fenstern.


      Ich finde die GUI recht einfach gestaltet (insgesamt zwei/drei Klicks zum Scan).
      Das Setup lasse ich mir mit einem Setup-Creator erstellen. Am Splashscreen habe ich eigentlich nicht auszusetzen; ich finde ihn sogar recht nützlich.
      Das mit der Skalierung ist noch ein Problem. Momentan habe ich die Fenstergröße an meiner Bildschirmgröße angepasst. (1024x600) Werde ich warscheinlich später noch mit Split-Container und der Dock-Funktion ausbessern
      welchen virus kann er den überhaupt erkennen? Scan läuft eine Sekunde lang - scheinbar fertig - nix passiert kein Report oder sonstiges. Ich würde mir auch wünschen das unten angezeigt wird welcher ordner gescannt wird. Achja Admin Rechte sind gegeben. Habe ich mal verweigert direkt ein Ausnahmefehler; ich würde mir gerne kein Standardfehler angezeigt bekommen sondern einen von dir erstellten Fehlertext.
      Anbei der Fehlercode:

      Spoiler anzeigen

      Brainfuck-Quellcode

      1. ​Informationen über das Aufrufen von JIT-Debuggen
      2. anstelle dieses Dialogfelds finden Sie am Ende dieser Meldung.
      3. ************** Ausnahmetext **************
      4. System.ComponentModel.Win32Exception (0x80004005): Der Vorgang wurde durch den Benutzer abgebrochen
      5. bei System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
      6. bei System.Diagnostics.Process.Start()
      7. bei System.Diagnostics.Process.Start(ProcessStartInfo startInfo)
      8. bei VirTroDel.Form1.btnScan_Click(Object sender, EventArgs e) in F:\VirTroDel Programm\Haupt\VirTroDel\VirTroDel\Form1.vb:Zeile 20.
      9. bei System.Windows.Forms.Control.OnClick(EventArgs e)
      10. bei System.Windows.Forms.Button.OnClick(EventArgs e)
      11. bei System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
      12. bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
      13. bei System.Windows.Forms.Control.WndProc(Message& m)
      14. bei System.Windows.Forms.ButtonBase.WndProc(Message& m)
      15. bei System.Windows.Forms.Button.WndProc(Message& m)
      16. bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
      17. bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
      18. bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
      19. ************** Geladene Assemblys **************
      20. mscorlib
      21. Assembly-Version: 4.0.0.0.
      22. Win32-Version: 4.0.30319.18444 built by: FX451RTMGDR.
      23. CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll.
      24. ----------------------------------------
      25. VirTroDel
      26. Assembly-Version: 1.0.0.0.
      27. Win32-Version: 1.0.0.0.

      Jens schrieb:

      welchen virus kann er den überhaupt erkennen?

      Adware.Whenu.Scannow.E

      Werde ich dann in Zukunft ein Log einfügen, wo steht, was alles passiert ist

      Jens schrieb:

      Habe ich mal verweigert direkt ein Ausnahmefehler; ich würde mir gerne kein Standardfehler angezeigt bekommen sondern einen von dir erstellten Fehlertext.


      Um das Problem werde ich mich in Zukunft kümmern :)
      @timmi31061
      Nö. Das ist ja der Witz an der Sache.
      Das einzige, was das Programm im Moment macht, ist zu prüfen, ob die exe-Datei in C:\Programme\nochwas (hab den genauen Pfad nicht mehr in Erinnerung) liegt. Wenn sie nicht an exakt dieser Position existiert, wird angenommen, dass die Schadsoftware nicht drauf ist.

      @FanMaderWeb
      Ich geb's auf, Dir zu erklären, dass das Programm kein Virenschutz ist.

      um es zu testen und mir Feedback zu geben

      Gott sei Dank nur zum Testen. Mit "ernsthaft" meinte ich übrigens "auf dem eigentlichen Computer laufen lassen".

      mit administrativen Rechten

      Direkt mit Adminrechten starten? Wofür gibt es den "Launcher" eigentlich? Was hat man davon, dass man den startet, und nicht direkt das eigentliche Programm.

      Soweit ich weiß macht das G DATA auch, oder

      Siehe ersten an Dich gerichteten Satz dieses Postes.

      was der Virus macht.

      Aber genau das machst Du ja nicht. Du schaust eben nicht nach, was ein beliebiges Programm macht und ob das als Schadsoftware eingestuft werden kann. Du schaust nur, ob eine Datei an einem ganz exakten Ort existiert. Wenn die Datei auch nur im geringsten anders heißt, oder sich einfach irgendwo anders befindet, dann meint Dein Programm, dass alles OK ist.

      recht einfach gestaltet

      Sieht aber trotzdem nicht schön aus. Hast Du mal die Größe geändert? Das flackert wie verrückt. Die Controls werden nicht angepasst (im eigentlichen Programm auch nicht). Und was macht der Splashscreen eigentlich, außer den Benutzer warten zu lassen?
      Spoiler: Gar nichts.
      "Luckily luh... luckily it wasn't poi-"
      -- Brady in Wonderland, 23. Februar 2015, 1:56
      Desktop Pinner | ApplicationSettings | OnUtils

      timmi31061 schrieb:

      Kann das Ding wenigstens die EICAR-Testdatei erkennen?

      Nein, diese Datei wurde noch nicht implentiert. Das Programm ist ja auch noch nicht fertig.

      Niko Ortner schrieb:

      Wenn sie nicht an exakt dieser Position existiert, wird angenommen, dass die Schadsoftware nicht drauf ist.

      Dann wird angenommen, dass diese Virenart nicht auf dem PC ist.

      Niko Ortner schrieb:

      Ich geb's auf, Dir zu erklären, dass das Programm kein Virenschutz ist.

      Doch, ist er. Aber ein extrem schlechter.

      Niko Ortner schrieb:

      auf dem eigentlichen Computer laufen lassen

      Jep; als von jemandem meiner "Tester" sein Virenschutz abgelaufen ist, hatte er für einige Wochen noch keine Möglichkeit, sich ein neues zu besorgen, da er unbedingt Kaspersky sich kaufen wollte. In der Zeit hat er halt (noch die Batch-Vesion) das Programm benutzt - und ja, es hat geklappt.

      Niko Ortner schrieb:

      Direkt mit Adminrechten starten? Wofür gibt es den "Launcher" eigentlich? Was hat man davon, dass man den startet, und nicht direkt das eigentliche Programm.

      Ausführung als Administrator des Programms. Eine andere Lösung habe ich noch nicht

      Niko Ortner schrieb:

      Du schaust eben nicht nach, was ein beliebiges Programm macht

      Nö, ist auch zu Batch-Zeiten nicht möglich gewesen. --> Ich benutze immernoch mein Batch-Konzept

      Niko Ortner schrieb:

      Wenn die Datei auch nur im geringsten anders heißt, oder sich einfach irgendwo anders befindet, dann meint Dein Programm, dass alles OK ist.

      Die Datei, welcher zu der Virenart gehört, wird nicht anders heißen, da diese nur die bestimmten Dateien / Regkeys anlegen

      Niko Ortner schrieb:

      Hast Du mal die Größe geändert? Das flackert wie verrückt.

      Ist ja auch ein gescratchter Hintergrundbild dort.

      Niko Ortner schrieb:

      Die Controls werden nicht angepasst (im eigentlichen Programm auch nicht).

      Ich bin ja auch immernoch nicht fertig ^^

      Niko Ortner schrieb:

      Und was macht der Splashscreen eigentlich, außer den Benutzer warten zu lassen?

      Der Splashscreen war ein Wunsch von Benutzern.

      FanMaderWeb schrieb:

      Nein, diese Datei wurde noch nicht implentiert. Das Programm ist ja auch noch nicht fertig.
      Achso. Der Standard-AV-Test funktioniert nicht.

      FanMaderWeb schrieb:

      In der Zeit hat er halt (noch die Batch-Vesion) das Programm benutzt
      Wat? Ein Batch-AV?!

      FanMaderWeb schrieb:

      Ich benutze immernoch mein Batch-Konzept
      Aha. Dann kann das nichts werden. Ein AV muss eine riesige Virensignatur-DB und Echtzeitschutz haben.
      Mit freundlichen Grüßen,
      Thunderbolt