AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Anti Cheat Engine

Ein Thema von napsterxx · begonnen am 13. Dez 2007 · letzter Beitrag vom 27. Aug 2008
Antwort Antwort
Seite 1 von 3  1 23      
napsterxx

Registriert seit: 18. Mär 2007
Ort: Borland
556 Beiträge
 
Delphi 7 Enterprise
 
#1

Anti Cheat Engine

  Alt 13. Dez 2007, 20:08
Moinsen,
ich wollte eine allgemeine Anti Cheat Engine (im kleinen Stil) programmieren. Sie soll wenn sie fertig ist und funktioniert dem User sage dass er gerade Cheatet. Die Engine soll nur für Games wie CS sein wo man mit einer DLL z.B. injezieren muss. Deshlab dachte ich überprüfe welche DLLs das Programm geladen hat und ob es die selben sind. Kann mir jemand einen kleinen Stubs in Richtung einer guten Lösung geben?^^
Du derefernzierst p2 einmal und weißt die Adresse von i zu. Das heißt p2 (also der Zeiger auf einen Zeiger) zeigt auf den Zeiger p1 welchen du so auf i zeigen lässt.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.056 Beiträge
 
Delphi 12 Athens
 
#2

Re: Anti Cheat Engine

  Alt 13. Dez 2007, 20:22
Ein paar Probleme wirst du aber dennoch bekommen.

Es ist zwar möglich auszulesen welche DLLs eine EXE läd, aber welche DLLs diese DLLs wiederum laden weiß man damit nicht

und dann wird z.B. bei mir in "jedes" Programm eine DLL von meiner Maus injeziert.

es ist also garnicht so einfach zu entscheiden welche DLLs "nötig" sind und welche zweck's Cheat drin sind.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Neotracer64

Registriert seit: 27. Okt 2004
292 Beiträge
 
Delphi 7 Professional
 
#3

Re: Anti Cheat Engine

  Alt 13. Dez 2007, 20:23
Wie möchtest du prüfen ob die DLL legitim ist?
Es könnte sich zum Beispiel um DLLs von Third-Party Apps handeln. Extensions für Tastatur oder Maustreiber zum Beispiel.

Also musst du eine Whitelist erstellen. Das hat widerum den Nachteil, dass du viele False Positives detectest, und eine Blacklist natürlich, dass zu viele False Negatives erwischst.

Dazu kommt, dass es mittlerweise schon soweit ist, dass die meisten Cheats den PE-Header ihrer DLL wipen und sich aus den 3 Linked Module Listen austragen. So kannst du die DLL eigentlich nicht mehr finden, dann musst du auf Signaturen zurückgreifen als Blacklist... Du erkennst das Dilemma?

Um einen wirksamen Anticheat zu schreiben musst du schon tief in die HL-Engine gehen, so wie es das einzig "erfolgreiche" AC-Tool gemacht hat. (Cheating Death)
Und zwar heisst es hier nicht, den Cheat detecten, sondern verhindern, dass der Cheat überhaupt die Engine manipuliert. Prävention ist also viel geeigneter zur Bekämpfung.

//EDIT: slow
  Mit Zitat antworten Zitat
Benutzerbild von vlees91
vlees91

Registriert seit: 19. Apr 2004
843 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Anti Cheat Engine

  Alt 13. Dez 2007, 20:35
Hmmm. was macht VAC2 denn?
Ist das nicht auch direkt in der Engine? (Ja, der blockierts nicht, bannt aber nach ca. 2 wochen den account)
vlees91
  Mit Zitat antworten Zitat
Benutzerbild von PaddyL
PaddyL

Registriert seit: 23. Nov 2007
Ort: Lautertal
34 Beiträge
 
#5

Re: Anti Cheat Engine

  Alt 13. Dez 2007, 20:43
Und wieso sollte man nicht ohne DLL injecten können? Geht ganz simpel mit Threads. Wenn du nicht selbst Autor des Spiels bist kannst du es so ziemlich vergessen das richtig zu machen.
Patrick
  Mit Zitat antworten Zitat
Neotracer64

Registriert seit: 27. Okt 2004
292 Beiträge
 
Delphi 7 Professional
 
#6

Re: Anti Cheat Engine

  Alt 13. Dez 2007, 21:05
Zitat:
VAC2 [...] Ist das nicht auch direkt in der Engine?
Nein. Es liest nur rum und checkt Code Integrität und sucht nach Blacklisted Signaturen von Cheats.

Man kann Cheats nicht für ein und allemal aufhalten, aber man kann es immer ein Stück weit schwieriger machen.
Zitat:
Wenn du nicht selbst Autor des Spiels bist kannst du es so ziemlich vergessen das richtig zu machen.
Wieso?
Das HL SDK sollte übrigens alles vereinfachen.
  Mit Zitat antworten Zitat
Benutzerbild von vlees91
vlees91

Registriert seit: 19. Apr 2004
843 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Anti Cheat Engine

  Alt 13. Dez 2007, 21:07
Und ausserdem muss es ja irgendwann moeglich sein, dass es ein Computer schafft so zu spielen wie ein Mensch, und das ganze ueber einen externen Computer funktioniert der per WebCam (haha) das Spiel sieht und mit nem Robotarm die Maus und Tastatur bedient.
vlees91
  Mit Zitat antworten Zitat
napsterxx

Registriert seit: 18. Mär 2007
Ort: Borland
556 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: Anti Cheat Engine

  Alt 13. Dez 2007, 21:36
Uff also gibt es kein wirkliches Kochrezept, um das zu lösen. Und was für möglichkeiten gäbe es noch neben dem AC die relativ sicher sind?
Du derefernzierst p2 einmal und weißt die Adresse von i zu. Das heißt p2 (also der Zeiger auf einen Zeiger) zeigt auf den Zeiger p1 welchen du so auf i zeigen lässt.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.056 Beiträge
 
Delphi 12 Athens
 
#9

Re: Anti Cheat Engine

  Alt 13. Dez 2007, 21:37
Zitat von vlees91:
und das ganze ueber einen externen Computer funktioniert der per WebCam (haha) das Spiel sieht und mit nem Robotarm die Maus und Tastatur bedient.
ala VM 'ne virtuelle Maus/Tastatur/Monitor
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von PaddyL
PaddyL

Registriert seit: 23. Nov 2007
Ort: Lautertal
34 Beiträge
 
#10

Re: Anti Cheat Engine

  Alt 13. Dez 2007, 22:24
Zitat von Neotracer64:
Das HL SDK sollte übrigens alles vereinfachen.
Hast du es dir auch ganz genau angesehen? Das HL SDK ist ein Template für DLL Files zum Erstellen von HL(2) Mods, nicht mehr und nicht weniger als vollkommen eigenständigen (sprich von anderen Mos - etwa CS(S) unabhängigen) Mods.
Patrick
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:19 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