COVIL HACKER

, ! .


» COVIL HACKER » rachaduras/inversão » Artigo Valve anti-cheat (VAC) - processo de desenvolvimento e métodos


Artigo Valve anti-cheat (VAC) - processo de desenvolvimento e métodos

1 2 2

1

Há mais de 20 anos luto contra o VAC - Valve Anti-Cheat.
A experiência que ganhei pode ser aplicada não apenas no desenvolvimento de cheats - em qualquer área onde uma presença discreta no sistema seja importante (no modo de usuário com acesso limitado ao Ring 3 - externo). No âmbito do artigo, consideraremos os princípios de funcionamento deste sistema anti-fraude, sua evolução, técnicas básicas e métodos de neutralização da detecção.

Histórico
Em 8 de novembro de 2000, Counter-Strike foi lançado. A Valve comprou o jogo e começou uma batalha difícil com os trapaceiros. Half-Life herdou o antitrapaça do PunkBuster. A Valve decidiu abandonar o PunkBuster em favor de seu sistema Valve Anti-Cheat em 2002.

O que é VAC?
O VAC é um sistema totalmente automatizado que executa um conjunto de medidas para impedir a modificação do jogo a fim de obter uma vantagem.

Arquitetura
O sistema VAC consiste em vários módulos do lado do cliente inter- relacionados , seu objetivo é proteger contra a substituição e modificação dos arquivos executáveis ​​do cliente Steam, o jogo e as bibliotecas de links dinâmicos .DLL , bem como a parte do lado do servidor para detectar trapaceiros coletando e analisando estatísticas do jogo. Em março de 2018, a Valve revelou uma abordagem baseada em IA - VACnet .

https://forumupload.ru/uploads/001b/c9/09/2/t741297.jpg

Princípios operacionais
O lado do cliente é dividido em módulos VAC 2 e VAC 3 .
O VAC 2 é usado em jogos legados, como Counter-Strike 1.6 e Source.
VAC 3 é usado em jogos como Counter-Strike Global Offensive e Dota 2. VAC 2 também é usado neste caso .

O VAC 2 não tem diferenças fundamentais do PunkBuster e funciona com um princípio semelhante:
varredura em tempo real usando o banco de dados integrado ( hashes MD5 e CRC32 , FileSize , FileName );
verificar as configurações do motor do jogo (por exemplo, a transparência das texturas);
processos em execução no sistema (via GetProcessesByName ).

A tecnologia de detecção mais primitiva.

Antecedentes Históricos Os
fóruns de hack geralmente ofereciam um serviço de modificação , geralmente consistindo em editar o arquivo com qualquer editor hexadecimal e desenhar nulos no final do arquivo. Vezes 50 rublos e WebMoney. Você poderia ficar rico. O fluxo de clientes era inesgotável, após a fusão do método, o que causou indignação e crise existencial dos hackers locais 🤬

Como contornar Randomizers
foram usados ​​em cheats privados, o usuário recebia uma biblioteca com um injetor que tinha nomes de arquivos aleatórios já modificados aleatoriamente .

Na luta contra a Valve, houve casos interessantes. Então, um dia nosso software foi descoberto. Depois de despejar e estudar novos módulos, notei um recurso interessante, a Valve usou o seguinte truque: a comparação com o pro-base foi baseada no hash MD5 de uma parte do arquivo. Assim, o método de modificação pública foi eliminado. Scrambling (embaralhar o arquivo no disco) é adequado para ignorar a detecção em termos de hash .

https://forumupload.ru/uploads/001b/c9/09/2/t531390.jpg

https://forumupload.ru/uploads/001b/c9/09/2/t504434.jpg



No diagrama, você pode ver claramente que o hash é calculado não para o arquivo inteiro, mas para sua parte. Por exemplo, misturei apenas dois blocos, na prática, você precisa usar algoritmos de mixagem mais complexos. Ao mesmo tempo, chamo a atenção para o fato de que esta técnica funciona apenas no caso de análise estática no disco, NÃO na memória.

Continua? Este tópico é interessante?

0

2


» COVIL HACKER » rachaduras/inversão » Artigo Valve anti-cheat (VAC) - processo de desenvolvimento e métodos


|