Thema: Delphi "Persistent" Firewall

Einzelnen Beitrag anzeigen

Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#2

AW: "Persistent" Firewall

  Alt 29. Jul 2010, 06:39
Ich nehme an, es handelt sich um ein UNI / Schul Project? Dann könnte man z.b. Code in den Explorer injizieren (WriteProcessMemory, CreateRemoteThread) der prüft, ob die Firewall aktiv ist und wenn nicht neu startet.

Ist allerdings eine unsaubere Lösung, da sie unter 64 bit nicht funktionieren wird und außerdem leicht ausgehebelt werden kann. Das wird allerdings ohne einen Treiber immmer so sein.

Alternative und sauberere Lösung: Eine DLL programmieren, die Funktionen wie OpenProcess() hookt und diese in alle Prozesse laden (entweder per Injection oder als AppInit DLL eintragen). So könnte man verhindern, dass der Prozess über den Taskmanager terminiert wird (auch hier kein 64 bit Support außer ihr erstellt mit Lazarus eine zweite 64 bit DLL). Ein Thread der prüft, ob die Firewall noch aktiv ist könnte man ja zusätzlich in der DLL anbringen.

Dritter Vorschlag: 2 sich gegenseitig überwachende Prozesse.
  Mit Zitat antworten Zitat