Toon posts:

[C#] Anti Cheat Client

Pagina: 1
Acties:
  • 823 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik moet voor een cup een counter-strike 1.6 anticheat client maken. Anticheat is een beetje een misvatting wel, wat men client gaat doen is om de x aantal minuten een screenshot nemen en die opslaan in zip file. Ook config files die zich in de counter-strike directory bevinden worden bijgehouden en alle draaiende processen worden opgeslagen.

Nu vroeg ik me af of iemand nog ideeen heeft die kunnen gebruikt worden om cheaters te pakken.

Probleem 1
Waar ik al aan dacht is alle processen die draaien, de exe's daarvan de md5'en en dan te vergelijken met een database van bekende cheat exe.

C#:
1
2
3
4
5
System.Diagnostics.Process[] myProcesses = System.Diagnostics.Process.GetProcesses();
for (int i = 0; i < myProcesses.Length; i++)
            {
                string processName = myProcesses[i].ProcessName;
            }

Zo haal ik momenteel de draaiende processen op, het nadeel aan dit is dat ik niet kan opvragen van waar de executable zich bevind.

Probleem 2
ik vroeg me af of je C# programma's kan decoden. Indien dat waar is kunnen mensen de anticheat aanpassen naar keuze en zo nutteloos maken. Iemand idee hoe ik dit kan tegengaan ?


Dusja :) paar vragen, geen idee of het juiste forum is. Maar alle hulp is welkom en ideeen op nog meer cheaters te pakken zijn zeker welkom :D

  • Snake
  • Registratie: Juli 2005
  • Laatst online: 07-03-2024

Snake

Los Angeles, CA, USA

Die md5's heeft al geen zin, want als je cheat.exe van naam veranderd in cheat2.exe is de md5 al niet meer hetzelfde.

C# kan je decompilen, maar daarvoor heb je toch die .Net obfuscator (of zoiets)

Going for adventure, lots of sun and a convertible! | GMT-8


Verwijderd

Topicstarter
Zeker dat het dan een andere md5 geeft. Als ik alleen inhoud exe md5 zou dat toch normaal altijd zelfde moeten geven ?

  • Ricvdp
  • Registratie: Juni 2005
  • Laatst online: 14:20
MSIL code (== compiled .NET) kun je disassemblen. Daaruit komt dan de letterlijke broncode uitrollen, op variablenamen en commentaren na. Probeer maar eens met het bovenstaande programma uit deze lijst:
http://www.aisto.com/roeder/dotnet/

Verder denk ik dat hackers het erg makkelijk zullen gaan hebben met je antihack programma. Ik heb enige ervaring met hacking, wat jij allemaal noemt zal erg makkelijk te ondervangen zijn, dwz je programma zal hacks niet detecteren. Ik heb een redelijk grote ervaring met hacking en dat is ook van toepassing op games. Ik kan je wel wat helpen hiermee door als "hacker" wat technieken aan je te laten zien..

Verwijderd

Topicstarter
Alle ideeen dat je kan geven zijn welkom. Als je liever via mail doet kan je altijd mailen naar snip. Het is nog altijd een forum, en als iedereen per mail ideeën geeft, dan hebben anderen niet veel meer aan dit topic

Hoe kan een hack programma rond die random screenshot gaan ? Detecteren wanneer hij gaat gebeuren en dan afspringen ?

[ Voor 22% gewijzigd door whoami op 09-01-2007 08:59 ]


  • Mishmash
  • Registratie: Juli 2002
  • Laatst online: 13-12-2023
Waarom maken jullie niet gebruik van een van de al bestaande anti cheat tools? In mijn counter-strike tijd waren er meerderen...

  • martijnve
  • Registratie: December 2004
  • Laatst online: 16:54
Verwijderd schreef op zaterdag 06 januari 2007 @ 21:56:
Alle ideeen dat je kan geven zijn welkom. Als je liever via mail doet kan je altijd mailen naar [email adres verwijderd].

Hoe kan een hack programma rond die random screenshot gaan ? Detecteren wanneer hij gaat gebeuren en dan afspringen ?
Gewoon niets op beeld laten zien? nooit dus.

[ Voor 6% gewijzigd door dusty op 13-01-2007 19:02 ]

Mini-ITX GamePC: Core i5 3470 | 16GB DDR3 | GTX 970 4GB | Samsung 830 128GB | Dell u2711 (27", IPS,1440p), 2343BW


Verwijderd

Topicstarter
Het heeft een 'persoonlijke' draai nodig :). Mischien kent iemand SSclient ?

Zal beetje werking uitleggen :

Voor dat mensen aan wedstrijd beginnen moeten ze programma opstarten en matchlink, username invullen. Deze word dan gecontroleerd met server en indien alles correct word recording gestart. De client neemt dan snapshot van draaiende programma's en config files. Deze worden om de 10min nogmaals gecontroleerd om te zien of er geen veranderingen gebeurd zijn. Tijdens het recorden word ook om de X tijd een screenshot genomen. Deze wordt opgeslagen in zip bestand tesamen met config en draaiende programma's. Na de wedstrijd wordt het zip bestand dan geupload naar server en worden de screenshots publiek gemaakt. Doordat server specifiek is en matchlink en username ook gechecked moeten worden kunnen we geen gebruik maken van andere detectie systemen.

  • martijnve
  • Registratie: December 2004
  • Laatst online: 16:54
Verwijderd schreef op zaterdag 06 januari 2007 @ 22:03:
Het heeft een 'persoonlijke' draai nodig :). Mischien kent iemand SSclient ?

Zal beetje werking uitleggen :

Voor dat mensen aan wedstrijd beginnen moeten ze programma opstarten en matchlink, username invullen. Deze word dan gecontroleerd met server en indien alles correct word recording gestart. De client neemt dan snapshot van draaiende programma's en config files. Deze worden om de 10min nogmaals gecontroleerd om te zien of er geen veranderingen gebeurd zijn. Tijdens het recorden word ook om de X tijd een screenshot genomen. Deze wordt opgeslagen in zip bestand tesamen met config en draaiende programma's. Na de wedstrijd wordt het zip bestand dan geupload naar server en worden de screenshots publiek gemaakt. Doordat server specifiek is en matchlink en username ook gechecked moeten worden kunnen we geen gebruik maken van andere detectie systemen.
Maar je zoekt dus alleen naar bekende hacks?
Eeen vriend van mij kende iemand en de schreef tegen betaling custom-aimbots voor mensen, die werden nooit gedetecteerd omdat hij ze voor iedereen iets anders maakte. Misschien kun je ook proberen of je muis en scherm bewegingen kunt vergelijken om zo datsoort aimbots af te vangen?

En warom controleer je niet elke 10 seconde de processen en sla je alleen de veranderingen op?

[ Voor 3% gewijzigd door martijnve op 06-01-2007 22:08 ]

Mini-ITX GamePC: Core i5 3470 | 16GB DDR3 | GTX 970 4GB | Samsung 830 128GB | Dell u2711 (27", IPS,1440p), 2343BW


Verwijderd


[ Voor 102% gewijzigd door Verwijderd op 18-01-2016 22:24 ]


Verwijderd

Verwijderd schreef op zaterdag 06 januari 2007 @ 22:09:
Het zou makkelijk te onderscheppen zijn door gewoon een hook op de funtie de screenshot te zetten. Je zult deze functie zeker voor hooks moeten checken.

C# kun je inderdaad beter niet gebruiken, dan maak je het de hacker alleen maar makkelijker.
Daar ben ik het niet mee eens. Het nadeel idd van C# is dat je de IL kunt decoden, maar heb je daar wat aan dan? Het antwoord is nee. Als je de applicatie goed schrijft haal je altijd de systeem informatie op net als alle andere C++ applicaties. Het verschil is dat je door middel van de IL decoder wel kunt zien hoe alles opgehaald wordt en mogelijk wat makkelijker kunt in springen op de aanwezige bugs. Dit kan echter ook vrij eenvoudig met andere talen.

Daarnaast kun je C# obfuscaten, wanneer je dan vervolgens de boel decode staat alle code door elkaar heen en maakt het alles stukken moeilijker om te begrijpen.
Ook processen zijn te verstoppen, zodat jouw functie deze niet zal vinden. Het is ook goed mogelijk dat de hacker een dll in je game.exe injecteert.

Ik geloof overigens dat er al heel wat anti-cheat clients zijn voor CS, iets van valve en counter admins dacht ik.
Je kunt de processen hiden in de task manager, maar niet vanuit de lijst met running processes en het .NET framework kijkt naar de list, niet naar de task manager.

Verwijderd

martijnve schreef op zaterdag 06 januari 2007 @ 22:08:
[...]


Maar je zoekt dus alleen naar bekende hacks?
Eeen vriend van mij kende iemand en de schreef tegen betaling custom-aimbots voor mensen, die werden nooit gedetecteerd omdat hij ze voor iedereen iets anders maakte. Misschien kun je ook proberen of je muis en scherm bewegingen kunt vergelijken om zo datsoort aimbots af te vangen?

En warom controleer je niet elke 10 seconde de processen en sla je alleen de veranderingen op?
De code en hashes zijn misschien wat anders, maar de codes die naar CS gestuurd worden zijn nog steeds hetzelfde. Dus je hoeft alleen maar af te vangen welke processen calls naar andere applicaties doen. Het is wat lastiger, maar dat mag je ook verwachten.

  • H!GHGuY
  • Registratie: December 2002
  • Niet online

H!GHGuY

Try and take over the world...

Ik heb ook nog met het id gespeeld... Als je zomaar gaat prutsen in het spel, loop je het gevaar dat je VAC triggert. programma's kunnen ook behoorlijk makkelijk uit de proces lijst verdwijnen.

Verplicht gewoon iedereen om demo's te nemen en die nadien te zippen/uploaden.
Als iemand een ander beschuldigd, dan bekijk je gewoon de demo offline met een wallhack. Desnoods laat je de server de demo's starten en stoppen.

Wij gebruiken een online java cheat scanner die redelijk wat hacks kent. We updaten die ook geregeld eens met nieuwe definities. Als het voor beperkt gebruik is kan ik mss wel eens vragen of we je wat services kunnen aanbieden.
Een andere scanner die we vroeger gebruikten (nu een stuk minder aangezien we onze eigen scanner hebben) is die van www.cheat-scanner.co.uk

natuurlijk detecteren die enkel de hax die je online downloadt en niet de home-brew spullen.

ASSUME makes an ASS out of U and ME


Verwijderd


[ Voor 97% gewijzigd door Verwijderd op 18-01-2016 22:24 ]


  • sjhgvr
  • Registratie: Januari 2004
  • Laatst online: 07:42
Snakiej schreef op zaterdag 06 januari 2007 @ 21:45:
Die md5's heeft al geen zin, want als je cheat.exe van naam veranderd in cheat2.exe is de md5 al niet meer hetzelfde.
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

D:\Documents and Settings\Administrator>md5 "C:\LimeWire.exe"
9FE8ED98B63CA6AC4DABF15025482916 C:\LimeWire.exe

D:\Documents and Settings\Administrator>md5 "C:\LimeWire2.exe"
9FE8ED98B63CA6AC4DABF15025482916 C:\LimeWire2.exe

D:\Documents and Settings\Administrator>

Ojah joh?

oisd.nl


Verwijderd

DaPi schreef op zaterdag 06 januari 2007 @ 23:08:
[...]

Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

D:\Documents and Settings\Administrator>md5 "C:\LimeWire.exe"
9FE8ED98B63CA6AC4DABF15025482916 C:\LimeWire.exe

D:\Documents and Settings\Administrator>md5 "C:\LimeWire2.exe"
9FE8ED98B63CA6AC4DABF15025482916 C:\LimeWire2.exe

D:\Documents and Settings\Administrator>

Ojah joh?
File name heeft inderdaad geen invloed op de hash.

  • eghie
  • Registratie: Februari 2002
  • Niet online

eghie

Spoken words!

Kijk ook hier eens: http://www.security.org.sg/code/kproccheck.html Is wel C/C++ code. Hier staat ook bij hoe je bijvoorbeeld processen kunt verbergen van de processlijst. Misschien kun je hier wat mee.

Om het wijzigen van bestanden te monitoren zou je ook eens hier naar kunnen kijken:
http://www.geekpedia.com/...ng-FileSystemWatcher.html
http://devdistrict.com/codedetails.aspx?A=400
Als je anti-cheat maakt zou ik hier niet alleen op vertrouwen en zou ik dan ook echt MD5 hashes gaan bouwen van de bestanden om de zoveel minuten.

Je zou deze 3 pagina's ook eens kunnen doorlezen om wat info op te doen over hooks:
http://www.dotnetspider.com/kb/Article2345.aspx
http://www.thescripts.com/forum/thread48768.html
How to set a Windows hook in Visual C# .NET

Je moet alleen nog een manier zien te vinden om hooks af te kunnen vangen. Geen idee hoe je die kunt uitlezen.

Kijk ook eens naar DLL injection. Hier bijvoorbeeld: http://www.codeproject.com/dll/DLL_Injection_tutorial.asp

Je moet een manier vinden om dat te kunnen detecteren bij counterstrike en een manier vinden om jouw eigen applicatie daartegen te beveiligen.

Installeer jouw systeem als service ofzo met SYSTEM rechten. Als er een GUI nodig is, laat het dan een los staand programma zijn.

Laat ook je programma constant communiceren met de server. Zo gauw hij verbinding verliest met de server, meteen een melding op de server maken. Gewoon de hele tijd een challenge-response achtig iets over en weer gooien.

Combineer je programma ook met andere Anticheat tools. Misschien ook een leuk om die anti-cheat programma's te kunnen monitoren en de status daarvan ook uit te kunnen lezen.

[ Voor 28% gewijzigd door eghie op 07-01-2007 15:19 ]


Verwijderd

Wat ook vaak common is met het laden van Hacks & radars etc, is dat ze in de Prefetchfolder te vinden zijn van WinXP, onder C:\Windows\prefetch. Bijv notepad.exe zou er zo uitzien in de prefetch folder: NOTEPAD.EXE-336351A9.pf

Als je wilt zoeken naar gebruikelijke bestandsnamen is de prefetch folder al een goed begin, ook de running processes natuurlijk. MD5 Hash is alleen toepasbaar op de inhoud van de file zelf, en niet op de naam. Ook zou je kunnen kijken welk onderdeel een Cheat of Hack precies "Hookt" in de engine van CS/CSS zelf.

Screenshots is ook een goed idee, maar bedenk wel dat deze ook omzeild kunnen worden (denk maar aan Unreal tournaments UTdc1.8 , die gebypassed werdt door Helios).

  • H!GHGuY
  • Registratie: December 2002
  • Niet online

H!GHGuY

Try and take over the world...

je kan geen sluitende anti-cheat maken.
anders had VAC dit al lang geweest.

ASSUME makes an ASS out of U and ME


  • TheZeroorez
  • Registratie: September 2005
  • Niet online
Klein offtopic tipje: Laat die x minuten een variabele tussen de 2 en 5 zijn, en hem dan in 5-10 seconden twee shots laten maken.

Waarom? Als hij er elke vijf minuten één maakt, en ze zijn erachter, heeft het weinig nut. Aan twee screenshots heb je meer, omdat je dan veel meer kans hebt 'n cheat te zien.

  • MSalters
  • Registratie: Juni 2001
  • Laatst online: 13-09 00:05
Helaas, kansloos. Een zichzelf respecterende cheater zal zich in deze eeuw toch niet meer door zoiets triviaals laten pakken? Het probleem is dat jouw anti-cheat start nadat de cheat al is gestart. Een goede cheat kan de anti-cheat dus in de waan houden dat er niets gebeurt. En hoe verder je van het OS af zit, hoe meer lagen er zijn om een cheat in te verstoppen.

Man hopes. Genius creates. Ralph Waldo Emerson
Never worry about theory as long as the machinery does what it's supposed to do. R. A. Heinlein


  • BasieP
  • Registratie: Oktober 2000
  • Laatst online: 19-10 08:18
mag ik vragen hoe je die screenshots gaat maken? games draaien doorgaans in D3D of openGL. Bij beide kan je screenshots maken, maar vanaf een extern programma wordt dat al wat lastiger.

heb je dat stuk al werkend?

This message was sent on 100% recyclable electrons.


  • markiemannie
  • Registratie: Mei 2006
  • Laatst online: 09-11 04:07
Klein ideetje voor probleem 2:
Als je nou om de zoveel tijd (om de dag bijvoorbeeld) de anticheat ietsje verandert, en inplaats van de hele anticheat een downloader maakt, die een hash van de anticheat maakt en die terugstuurt naar de server. De server checkt die hash vervolgens en, indien die juist is, laat hij de persoon de server.
Dat helpt toch redelijk? Natuurlijk moet de downloader ook regelmatig veranderen. Het bijhouden van keystrokes en muisbewegingen helpen ook.

Verwijderd

Dat helpt toch redelijk? Natuurlijk moet de downloader ook regelmatig veranderen. Het bijhouden van keystrokes en muisbewegingen helpen ook.
Hele goede tip :) Common keys zijn forward, backwards of wsad , c , shift an so on... keys zoals insert, click, knopje (iets wat niet common is in CS) die vallen door de mand.

Als je kijkt op www.unrealadmins.org , en dan het volgende Theadje, kan je mischien afleiden/vragen hoe deze Screenshot functie van de client, uploadend naar de server gedaan is. Die functie werkt ontzettend goed, en op roep van een admin kan dat nogmaals gedaan worden. Natuurlijk geef ik hier wel een heel kromme vergelijking om de UT engine met een CS engine te vergelijken, maar ook dat is geprogrameerd in C, en uiteindelijk naar .Uscript gecompileerd (UT taal).

Mischien zou je ook kunnen kijken bij een ander fora over Anticheat development.. Msalters heeft hier op een punt wel gelijk, anticheat kijkt vaak op het begin van de game, en zodra dat voorbij is laadt de cheater z'n hack. Nieuwe anti's enablen zichzelf automatisch erna, of bypassen compleet de Anticheat. Met een processmonitor en een lijst van geblackliste "Cheat-programmas" kan je al een goed begin maken.

  • TheZeroorez
  • Registratie: September 2005
  • Niet online
Verwijderd schreef op maandag 08 januari 2007 @ 22:24:
[...]


Hele goede tip :) Common keys zijn forward, backwards of wsad , c , shift an so on... keys zoals insert, click, knopje (iets wat niet common is in CS) die vallen door de mand.
Mja, je moet wel meer weten. Er zijn genoeg mensen die zulk soort dingen gebruiken voor XFire, TS2, Ventrillio, of whatsoever. Ook een KVM-switch kan, of zelfgemaakte binds, om sneller te spelen. Of gewoon andere instellingen natuurlijk..

Mgoed, je wilt die mensen dan ook een keylogger laten downloaden? Ik neem niet aan dat 'n client standaard naar de CS-server stuurt welke keys je in welke volgorde induwt, maar alleen welke handelingen je doet (bijv: vooruit lopen, ipv 'w'). Dat gaat dus sowieso al niet lukken.

Verwijderd

Topicstarter
H!ghguy : Er worden al demo's gevraagd momenteel maar het nadeel is dat je dan een menselijke factor hebt doordat de admins de demo moeten controleren. Soms ben je gewoon niet zeker dat iemand cheat of verstopt hij het heel goed.

BasieP : http://www.developerfusion.co.uk/show/4630/

Ik zie al heel veel goede ideen zeker die van eghie en lism. _/-\o_ Het idee van een keylogger moet ik wel laten vallen, vind ik een beetje te gevaarlijk. De kans is namelijk groot dat ik dan iets keylog dat niet de bedoeling is.

Zelf heb ik al het idee gehad om een beetje aan memory scanning te doen, doordat sommige cheats een tamelijk duidelijke footprint achterlaten in het geheugen kan ik ze zo pakken. De reden ook waarom vac2 dit niet ziet is omdat ze vaak gewoon disablen.

Een cheat schrijver heeft me ook uitgelegd dat cheats een soort hook zijn tussen game & opengl, nu vroeg ik me af of dit op een manier op te merken valt met C# (of c++).

  • eghie
  • Registratie: Februari 2002
  • Niet online

eghie

Spoken words!

Kijk ook hier eens naar:
http://www.codeproject.com/system/hooksys.asp
http://www.infoprocess.com.au/

Voor die laatste (Antihook 3.0) is een SDK beschikbaar. Voor home users (waar jij ook onder valt) is het gewoon gratis te gebruiken. Misschien is dat wat?

En inderdaad, cheats zijn meestal hooks naar het spel of naar OpenGL/DirectX. Vaak het liefst naar het spel, aangezien ze daar nog kunnen controlleren of er werkelijk een speler aan komt en eventuele posities kunnen aflezen.

[ Voor 30% gewijzigd door eghie op 13-01-2007 11:49 ]


Verwijderd

Verwijderd schreef op zaterdag 13 januari 2007 @ 11:16:
H!ghguy : Er worden al demo's gevraagd momenteel maar het nadeel is dat je dan een menselijke factor hebt doordat de admins de demo moeten controleren. Soms ben je gewoon niet zeker dat iemand cheat of verstopt hij het heel goed.

Een cheat schrijver heeft me ook uitgelegd dat cheats een soort hook zijn tussen game & opengl, nu vroeg ik me af of dit op een manier op te merken valt met C# (of c++).
Dat is niet perse altijd met OpenGL. Een hook wordt extern in het spel geladen, en de desbetreffende Functie gehooked. Een Niet-native anti kan daar niet in kijken, noch kijken wat er buiten het spel zelf meedraait. Daarom heb je idd bepaalde adressen nodig waarvan de Cheats gebruik maken, ook wel "headers". Als je die headers kan vinden, dan vind je vaak de cheat zelf al.

Processcheck (dus wat voor programma's er mee draaien met windows enzo) is ook een hele goede. Probleem met C+ geschreven cheats, is dat deze vaak te verbergen zullen zijn voor anti's. Daarom heb je vaak weer een "Header" nodig van een cheat, om een voorbeeld uit op te bouwen. Cheatschrijvers, maken hier vaak bypasses op om niet gedetecteerd te kunnen worden.

Als ik goede source + documentatie had voor op Uscript, had ik mijn eigen anti gebouwd gebaseerd op verschillende hooks en dergelijk, maar helaas is dat voor een klein handje aan mensen weggelegd. Het is zeer moeilijk om aan dat soort exclusieve materiaal te komen op het internet, omdat Cheatschrijvers vaak ook de broncode van een Anti gebruiken om zo weer bij hun nieuwe cheat, te kunnen bypassen.

Even nog antwoord op je TS vraag:
Probleem 2
ik vroeg me af of je C# programma's kan decoden. Indien dat waar is kunnen mensen de anticheat aanpassen naar keuze en zo nutteloos maken. Iemand idee hoe ik dit kan tegengaan ?
MD5 integriteit aangaan :)
TheZeroorez schreef op dinsdag 09 januari 2007 @ 15:18:
[...]

Mja, je moet wel meer weten. Er zijn genoeg mensen die zulk soort dingen gebruiken voor XFire, TS2, Ventrillio, of whatsoever. Ook een KVM-switch kan, of zelfgemaakte binds, om sneller te spelen. Of gewoon andere instellingen natuurlijk..

Mgoed, je wilt die mensen dan ook een keylogger laten downloaden? Ik neem niet aan dat 'n client standaard naar de CS-server stuurt welke keys je in welke volgorde induwt, maar alleen welke handelingen je doet (bijv: vooruit lopen, ipv 'w'). Dat gaat dus sowieso al niet lukken.
In UnrealTournament 99 is dit al "standaard" Het wordt alleen gebruikt bij situaties waarvan men niet weet, of hij heeft gecheat of niet. Daarom controleren ze de Keystrokes die gebruikt waren. Zo zag ik ooit een hele rare combinatie voorbij komen, maar het was niets meer dan ALT-TAB click paar keystrokes en ALT-Tab terug.

Ik geef je idd gelijk dat een keylogger tever gaat, maar ik denk dat je dat onder de voorwaarden van de server of matches moet zetten, dat als je in de server zit, je keys worden gelogd.

[ Voor 30% gewijzigd door Verwijderd op 13-01-2007 12:59 ]


  • TheZeroorez
  • Registratie: September 2005
  • Niet online
Verwijderd schreef op zaterdag 13 januari 2007 @ 11:55:
In UnrealTournament 99 is dit al "standaard" Het wordt alleen gebruikt bij situaties waarvan men niet weet, of hij heeft gecheat of niet. Daarom controleren ze de Keystrokes die gebruikt waren. Zo zag ik ooit een hele rare combinatie voorbij komen, maar het was niets meer dan ALT-TAB click paar keystrokes en ALT-Tab terug.
Mja, heel veel dingen werken dus met hotkeys, en geen ge Alt-Tab ;)
Ik geef je idd gelijk dat een keylogger tever gaat, maar ik denk dat je dat onder de voorwaarden van de server of matches moet zetten, dat als je in de server zit, je keys worden gelogd.
...Dan nog zal elke zelfrespecterende virusscan hem eruit schoppen ;)

  • Sjoerd
  • Registratie: December 2003
  • Niet online
TheZeroorez schreef op zaterdag 13 januari 2007 @ 14:36:
[...]
...Dan nog zal elke zelfrespecterende virusscan hem eruit schoppen ;)
dan moete ze die maar even uitzetten :) je hebt toch maar minimale kans op virussen als je gaat spelen...

Modelbouw - Alles over modelbouw, van RC tot diorama


  • BasieP
  • Registratie: Oktober 2000
  • Laatst online: 19-10 08:18
TheZeroorez schreef op zaterdag 13 januari 2007 @ 14:36:
[...]
Mja, heel veel dingen werken dus met hotkeys, en geen ge Alt-Tab ;)
sinds wanneer is alt-tab geen hotkey?
bovendien valt alt-tab ook gewoon te binden aan een ander event

This message was sent on 100% recyclable electrons.


Verwijderd

TheZeroorez schreef op zaterdag 13 januari 2007 @ 14:36:
[...]
...Dan nog zal elke zelfrespecterende virusscan hem eruit schoppen ;)
Ach. Ik ben ervan overtuigd dat als je een Anti schrijft, dat je er zo minimaal mogelijk gezever naar de client moet sturen, oftewel hem er niet mee lastig vallen. De laatste anti die ik gezien heb is ontzettend goed, maar vereist weer het een en ander gerommel met win98 Clients, omdat die anti optimaal in Win2k/XP omgevingen werkt.

Ik denk niet dat je een kant & klare keylogger naar de client moet gaan sturen, maar wel bij moet houden wat er precies uitgevoerd wordt.

  • TheZeroorez
  • Registratie: September 2005
  • Niet online
BasieP schreef op zaterdag 13 januari 2007 @ 14:47:
[...]

sinds wanneer is alt-tab geen hotkey?
bovendien valt alt-tab ook gewoon te binden aan een ander event
Mja, maar over het algemeen niet. En met die hotkeys doel ik gewoon op zo'n hotkey die je zelf voor eenofander progsel instelt, maar dat weet jij ook wel ;)

  • Infinitive
  • Registratie: Maart 2001
  • Laatst online: 25-09-2023
Bedenk wel dat je niet zomaar screenshots kan maken via conventionele manieren. Je zult de pixels uit de grafische kaart moeten lezen d.m.v. DirectX.
Een cheat schrijver heeft me ook uitgelegd dat cheats een soort hook zijn tussen game & opengl, nu vroeg ik me af of dit op een manier op te merken valt met C# (of c++).
Het kan wel, maar is niet echt makkelijk. Je kan bijvoorbeeld het geheugen van het spel scannen om te controleren of de code van de opengl dll uit de verwachte bits bestaat. Aan de andere kant kan het ook zijn dat de opengl dll zelf aangepast is. Dat kan je controleren door de kijken of het bestand zelf uit de verwachte bits bestaat. Maar als iemand de driver zelf aanpast, dan is het eigenlijk niet meer te controleren (maar ook niet zo waarschijnlijk).

Een stap verder kan je gaan door te controleren dat de code van het programma zelf niet gewijzigd is. Maar wat dat betreft zitten er nogal wat addertjes onder het gras. Bijvoorbeeld omdat zaken als copy-protection je eigen cheat-scanner in de weg kunnen zitten.

Bedenk wel dat C# programma's vrij makkelijk "te hacken" zijn, dus cheat-makers zul je niet tegen kunnen houden. Maar bijvoorbeeld spelers die eens denken te winnen door van een website een cheat te downloaden weer wel.

putStr $ map (x -> chr $ round $ 21/2 * x^3 - 92 * x^2 + 503/2 * x - 105) [1..4]


Verwijderd

Bedenk wel dat C# programma's vrij makkelijk "te hacken" zijn,
Daarom, je stukje anticheat-code , obfuscaten :) Dat is heel moeilijk terug te draaien naar een werkende source-code.
Pagina: 1