Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi API zur Firewall / Virenscanner (https://www.delphipraxis.net/163151-api-zur-firewall-virenscanner.html)

musicman56 17. Sep 2011 10:10

API zur Firewall / Virenscanner
 
Hallo,

ich habe mit meiner Datenbank-Anwendung (Client-Server) immer wieder die selben Probleme beim Kunden:

1. Die Firewall blockiert den TCP/IP-Daten-Transfer zwischen Programm und Datenbank-Server. Der Datenbank-Server läuft als Dienst. Gibt es irgend eine Möglichkeit die Blockierung des Dienstes durch die Firewall festzustellen? Das Problem ist, dass Kunden mit der Firewall oft gar nicht umgehen können und manchmal sogar "dauerhaft blockieren" einstellen. Aber, gewesen ist es dann keiner :oops:

2. Die Dateien vom Typ ".nx1" werden vom Viren-Scan nicht ausgeschlossen, und somit passiert es ab und zu, dass ein Virenscanner "glaubt" einen Virus in der DB entdeckt zu haben, die Datenbank bei nächst bester Gelegenheit "repariert", und damit den Header zerschießt. Der Kunde hat natürlich keine - oder nur eine alte - Datensicherung. Gibt es via API - oder auf anderem Weg - eine Möglichkeit festzustellen, ob der Virenscanner eine bestimmte Dateiendung scannt?

Übrigens: Durch den Ausschluss der ".nx1"-Dateien aus dem Scan kann m.E. kein Sicherheitsrisiko entstehen, weil die Dateiendung zum Öffnen/Ausführen mit meiner Anwendung verknüpft ist.

WICHTIG: Ich möchte in beiden Fällen absolut nichts an den Einstellungen ändern!! Nur dem Kunden eine Meldung anzeigen, was er zu tun hat.

Da ich zu beiden Themen nichts Brauchbares gefunden habe, sind die Spezialisten hier meine Hoffnung! 8-)

Union 17. Sep 2011 16:23

AW: API zur Firewall / Virenscanner
 
Du kannst nur feststellen dass die Verbindung nicht funktioniert, z.b. durch Timeout. Aber nicht warum. Die Windows-Firewall kannst Du aber abfragen und Einträge hinzufügen bzw. ändern für bestimmte Ports oder Anwendungen.

BUG 17. Sep 2011 16:44

AW: API zur Firewall / Virenscanner
 
Zitat:

Zitat von musicman56 (Beitrag 1124985)
eine Möglichkeit festzustellen, ob der Virenscanner eine bestimmte Dateiendung scannt?

Du könntest den Eceir-Testvirus in eine ".nx1"-Datei schreiben und danach gucken ob die Datei blockiert ist oder geändert wurde.

Das solltest du aber unbedingt so machen, das dem Nutzer klar ist, was du da machst.
Du könntest es ja in eine Art Assistenten verpacken, der testet ob die Datenbank erreichbar ist und guckt ob die ".nx1"-Test-Datei angefasst wurde.

Eine API für alle AV-Produkte wirst du vermutlich nicht finden und selbst dann wäre die Herausgabe der durchsuchten Dateitypen eine Gefährdung.

Lemmy 17. Sep 2011 22:46

AW: API zur Firewall / Virenscanner
 
Hi,

API darfs nicht geben, woher soll der Virenscanner/Firewall auch wissen, dass Du ein "gutes" Programm bist? Und wenn Du dem Anwender keine Änderung an den Einstellungen (wegen mir auch durch euren Support) zumuten willst, dann gibts dafür keine Lösung. Signierung bringt nichts, Meldung an die AV-Center bringt nichts. Alles schon mal durchprobiert.

Entweder du schließt bei den Kunden die Dateiendung aus, oder du erstellst zwangsweise beim Beenden oder einmal am Tag eine Datensicherung (wäre eh zu empfehlen), ob der Kunde will oder nicht. Dann hast DU wenigstens ein Fallback...

Grüße

Bernhard Geyer 18. Sep 2011 08:44

AW: API zur Firewall / Virenscanner
 
Such mal im Bereich der Security Center API.
Evtl. ist auch dasIAttachmentExecute ein guter Ansatz für die Prüfung.

musicman56 18. Sep 2011 21:46

AW: API zur Firewall / Virenscanner
 
Hallo Kollegen,

erst mal vielen Dank für die Beiträge und Anregungen. Wie ich mir schon dachte bzw. aus meinen bisherigen ergebnislosen Recherchen folgere, sind die beiden Probleme nicht einfach zu lösen.

Irgendwie hab ich das Gefühl, dass das Windows Security Center (WSC) der Schlüssel zum Erfolg sein könnte. Die MSDN-Library hat mich allerdings noch nicht auf die richtige Spur gebracht :cyclops:

Hinzu kommt, dass mein Englisch nicht perfekt ist. Für ein paar grundsätzliche Dinge reicht's, aber wenn es in die Tiefe geht....:roll:


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:32 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz