You are an unregistered user, you can register here
Navigation

Information

Site

Donations
If you wish to make a donation you can by clicking the image below.


 
Go Back   The Unreal Admins Page > Forums > Hosted Forums > AnthraXs Corner > General Chat

Closed Thread
 
Thread Tools Display Modes
  #1  
Unread 20th December, 2005, 08:25 PM
AnthraX's Avatar
AnthraX AnthraX is offline
Administrator
 
Join Date: Jun 2004
Location: Ghent (Belgium)
Posts: 1,380
Default [Release] AnthChecker v1.34

Code:
##############################################################################
#                            AnthChecker v1.34                               #
#                            by )°DoE°(-AnthraX                              #
##############################################################################

1) What is it?
--------------

AnthChecker is an advanced unrealscript-based cross-platform packagechecker.

|| Please take a few minutes to read this document, it will spare you and me a lot
|| of trouble.

2) What does it do?
-------------------

AnthChecker will validate every client (including clients that run Linux/MacOS)
after they enter the server. Depending on the server's settings AnthChecker will:
    * Perform selfchecks to prevent clients from redirecting/bypassing the checking routines
    * Perform CRC (Type 1) checks on files that should be identical on the server and on the client (files like UTPure.u)
    * Perform CRC (Type 2) checks to identify the client's skintextures and kick if they're hacked
    * Perform MD5 checks to identify the client's renderdevice and kick if it's hacked
    * Perform MD5 checks to identify the client's libraries and kick if they're hacked
    * Scan for disallowed files

3) Installation
---------------

To install AnthChecker on your server:

1. Unzip the contents of this zip package in your server's system folder. 

2. Open your server's unrealtournament.ini file and find the line that reads "[Engine.GameEngine]".

3. Add these lines under it:

    ServerActors=AnthCheckerS_v134.ACActor
    ServerPackages=AnthCheckerC_v134
    
4. Move to the end of your UT.ini file and add these lines 
   (you can find the explanation of the settings under 4) Settings):    
    
    [AnthCheckerS_v134.ACActor]
    bKickUnknownRenderer=true
    bKickUnknownLibrary=true
    bKickUnknownSound=true
    bKickUnknownSkin=true
    bBroadCastJoin=true
    bBroadCastIPs=false
    bExternalNotify=false
    bSelfCheck=true
    bPureCheck=true
    bEUTCheck=false
    bSkinCheck=true
    bSoundCheck=true
    bShowConsoleMessages=true
    TimeOut=30
    CheckDelay=3.0
    bReportCheats=True
    bReceiveUpdates=True
    Packages[0]=
    Packages[1]=
    Packages[2]=
    Packages[3]=
    Packages[4]=
    Packages[5]=
    Packages[6]=
    Packages[7]=
    Packages[8]=
    Packages[9]=
    bExternalLogs=true
    LogPrefix=
    LogPath=
    
5. Restart your server

4) Settings
-----------

You can easily change the AnthChecker settings by opening your server's ini file and changing
the lines you added at the end.

    bKickUnknownRenderer : set to false if you don't want to kick clients with an unknown renderdevice
    bKickUnknownLibrary  : set to false if you don't want to kick clients with unknown libraries
    bKickUnknownSound    : set to false if you don't want to kick clients with unknown soundpackages
    bKickUnknownSkin     : set to false if you don't want to kick clients with unknown skinpackages
    bBroadCastJoin       : set to false if you don't want to broadcast every client's nickname/renderdevice/operating system after the validation
    bBroadCastIPs        : set to true if you want to add the client's IP's to the bBroadCastJoin messages
    bExternalNotify      : set to true if you want AnthChecker to send playerjoin reports to other mods (requires compatible mod)
    bSelfCheck           : set to false if you don't want to perform a crc check on the anthchecker client package
    bPureCheck           : set to false if you don't want to perform a crc check on the utpure package
    bEUTCheck            : set to true if you want to perform a crc check on the EUT package
    bSkinCheck           : set to false if you don't want to perform crc checks on the skintextures
    bSoundCheck          : set to false if you don't want to perform a crc check on the female2voice package
    bShowConsoleMessages : set to false if you don't want to display what's going on in the client's console
    bReceiveUpdates      : set to false if you don't want to receive info about new renderdevices from the AnthChecker masterserver
    bReportCheats        : set to false if you don't want AnthChecker to report cheating attempts to the AnthChecker masterserver
    TimeOut              : ammount of time the client gets to finish the checks (in seconds)
    CheckDelay           : ammount of time between the playerjoin and the start of the checks (in seconds)
    Packages[x]          : you can manually add files to crc (type 1) check here
                           syntax: <file extension>,<filename>,<packagepercent (1-255)> (*)
    bExternalLogs        : set to false if you don't want to log AnthChecker's kicks to external files
    LogPrefix            : Prefix of the external logfiles (default: [AC])
    LogPath              : The path in which the external logfiles are stored (default: ../Logs/)
 
 !! Important !!: Due to the limitations of the unreal engine, you're not advised to manually add files.
 		  If you do decide to do so, use a small packagepercent, UT will usually crash after crc checking
 		  10Mb of data.
    			  
 (*) if for example you want to perform a crc type 1 check on the 10 first bytes of every 255-byte block of CTF-Gauntlet.unr, 
 you'd have to add "unr,CTF-Gauntlet,10" (without the quotes)
 
5) History
----------

v1.34 (Public):
    * [Fixed] Security flaw in the clientcode. Could have been used to redirect CRC Checks.
    * [Fixed] Timeout issues caused by a typo in the serverside code.
    * [Added] Option bKickUnknownSound
    * [Added] Option bKickUnknownSkin

v1.33 (Public):
    * [Changed] Minor security update in the clientcode

v1.32 (Internal):
    * [Changed] Improved the active renderdevice detection (should resolve some type 1 kicks)
    * [Changed] Some improvements in the actor code
    * [Added] Hashes for a lot of libraries (UTCacheCleaner, UTWinAmp, UTDCv17b, OldUnreal MediaPatches, UT v436 Linux, Editor binaries)
    * [Added] Posibility to broadcast playerjoins to other mods (bExternalNotify option)
    * [Added] bEUTCheck option
    * [Added] bExternalLogs option
    * [Fixed] Bug in the HTTP updating code
    * [Fixed] Bug that caused timeouts if bGUIDCheck was still in the ini file

v1.31 (Public):
    * [Fixed] Critical bug in the packet handler that caused random timeouts for some players

v1.30 (Public):
    * [Added] Packet handler that allows the client to send long strings to the server without making it crash
    * [Added] Extra selfchecks to prevent CRC redirection
    * [Added] New hashes
    * [Added] Option CheckDelay to specify the number of seconds between the playerjoin and the start of the checks
    * [Added] Checks to detect illegal libraries loaded by the client, some cheatcoders use this exploit to bypass UTDC
    * [Added] Option bKickUnknownLibrary
    * [Added] Server receives updated library whitelists from the masterserver (only if bReceiveUpdates is set to true)
    * [Changed] Option bKickUnknown renamed to bKickUnknownRenderer
    * [Changed] AC no longer uses a mutator for client-server communication
    * [Changed] Removed Type 8 (GUID) kick
    * [Changed] Clients can see which files are being checked by AnthChecker
    * [Changed] Rewrote some routines for better performance
    * [Changed] Forced the client to regenerate GUID if it's not valid
    * [Changed] New cache cleaner code for mac/linux -> no more reconnect window
    * [Fixed] Type 1 kicks caused by a bug in the pathsparser
    * [Fixed] Some false type 7 (disallowed files) kicks
    * [Fixed] MacOS issues
 
v1.29 (Public):
    * [Fixed] Some false GUID kicks
    * [Added] New renderhashes
 
v1.28 (Internal):
    * [Changed] Rewrote some laggy core routines
    * [Changed] bSkinCheck now picks 2 random skins to check instead of 7

v1.27 (Public):
    * [Fixed] Players getting kicktype 8 because of the slow connection between the UT server and the masterserver
    * [Fixed] Illegal GUID's for linux clients with v451
    * [Changed] Linux/Mac Cachecleaner can move multiple files at one time

v1.26 (Internal):
    * [Added] Routine to find cached files even when the cache.ini file is corrupted
    * [Added] Option bBroadCastIPs
    * [Added] AnthChecker version gets logged to the external logs
    * [Changed] Players get to see the URL of my forum + AnthChecker version/build when they get kicked

v1.25 (Internal) :
    * [Added] Extra GUID check
 
v1.24 (Internal) :
    * [Fixed] bug in masterserver encryption
    * [Fixed] bug in the skinidentification (players with unknown skins were allowed to enter the server)
    * [Fixed] Linux/Mac timeouts
    * [Fixed] Critical bug that broke every mutator loaded after AnthChecker (this also affected SmartCTF/BDBMapVote/3dfxmapvote/...)
    * [Fixed] bug that caused a lot of type 1 kicks (failed to generate checksum) for cached files (only happened for clients with corrupted cache.ini files)
    * [Added] options LogPath and LogPrefix for the external logs
    * [Added] Support for clients that have multiple system/textures/... folders
    * [Added] Blocked "EnhancedSkins"
    * [Added] New hashes for several renderers
    * [Added] GUID verification (so far, this is only used for the masterserver)
    * [Added] AnthChecker automaticly adds itself to the serverpackages list if needed
    * [Changed] names of the Ref1 skins to Ref 1/Warez
 
v1.23 (Public) :
    * First public release
 
6) Thanks to
------------
 
- Azazel & UnrealAdmin       : for hosting the UTGL masterserver and my forum
- Nuffy & Magma              : for providing gamearena.co.uk betatest servers
- Cratos                     : for providing renderdevices and a betatest server
- TNSe                       : for advice/ideas/help
- Just_Me                    : for advice/ideas/help
- Sardukar                   : for advice/ideas/help
- Obsidian & Rush & Neopythe : for linux betatesting
- ZorroTheFox & The_Dave     : for MacOS betatesting
- Petr Jelinek	             : for the original MD5 code

 
7) Feedback & Support
---------------------

http://www.unrealadmin.org/forums/forumdisplay.php?f=176
Attached Files
File Type: zip AnthChecker_v134.zip (37.5 KB, 507 views)
  #2  
Unread 20th December, 2005, 08:27 PM
AnthraX's Avatar
AnthraX AnthraX is offline
Administrator
 
Join Date: Jun 2004
Location: Ghent (Belgium)
Posts: 1,380
Default

let's hope this one lasts for a while
  #3  
Unread 20th December, 2005, 08:28 PM
SixtSense's Avatar
SixtSense SixtSense is offline
Holy Shit!!
 
Join Date: Jun 2004
Location: The Hague ,Holland
Posts: 1,001
Default

Hehe you keep us busy Anth LoL
__________________
DMC HomePage
------------------------------------------------------
Other Projects:
Fun-Dump.com 5k uniques daily
Phunneyshit.net 2k uniques daily
Trash n Babes 1,5k uniques daily
Babe-Dumper 1,5k uniques daily <New Site
________________________________
We allways search for "active" plug exchange
  #4  
Unread 20th December, 2005, 08:31 PM
AnthraX's Avatar
AnthraX AnthraX is offline
Administrator
 
Join Date: Jun 2004
Location: Ghent (Belgium)
Posts: 1,380
Default

hehe well, I might try to build a fully automatic updater in the next version
  #5  
Unread 20th December, 2005, 08:52 PM
Baiter's Avatar
Baiter Baiter is offline
Holy Shit!!
 
Join Date: Apr 2004
Location: Houston, TX
Posts: 1,566
Default

Great Job Anthrax, this version should be great!!!
  #6  
Unread 20th December, 2005, 08:52 PM
kawaii kawaii is offline
Holy Shit!!
 
Join Date: Oct 2004
Posts: 1,205
Default

Very nice
__________________
Stats!
  #7  
Unread 20th December, 2005, 09:12 PM
|KOA|The_Dave's Avatar
|KOA|The_Dave |KOA|The_Dave is offline
Godlike
 
Join Date: Jul 2005
Posts: 345
Default

Hey Anthrax, can I just ask ... what files exactly does AnthChecker check by default?

Right now, I use UTDC to validate MD5s of UTDCv17b.u, UTDCv17b.dll, UTMenu.u, Botpack.u, Engine.u, UWindow.u, and EUT_1G.u. I'd like to know if I still need to validate these files using UTDC, or if just using AnthChecker would surfice? I'm sure it probably creates more lag than necessary to validate with both UTDC and AnthChecker, and besides that UTDC can't validate on Mac or Linux anyway.
  #8  
Unread 20th December, 2005, 09:14 PM
kawaii kawaii is offline
Holy Shit!!
 
Join Date: Oct 2004
Posts: 1,205
Default

AC checks packages like pure and EUT if you turned it on, and UTDC is checked automaticly if it's get detected on the server.
And it chooses a few skin/sound packages to check.

At least that is what i heared/think
__________________
Stats!
  #9  
Unread 20th December, 2005, 11:24 PM
Ratty's Avatar
Ratty Ratty is offline
Rampage
 
Join Date: Mar 2005
Location: Germany
Posts: 87
Default

I think he knows this and wants only to know if its still needed to check with UTDC too. Btw I got the same question because UTDC and AC checks both my files on the server
  #10  
Unread 20th December, 2005, 11:38 PM
PizzaMan's Avatar
PizzaMan PizzaMan is offline
Holy Shit!!
 
Join Date: Jun 2004
Location: Bergen - Norway
Posts: 2,389
Default

It doesnt really hurt to let both AC and UTDC check the files, and even let them check each other. It just means that theres a short pause at the beginning of each map.
  #11  
Unread 21st December, 2005, 12:50 AM
Matthew Matthew is offline
Holy Shit!!
 
Join Date: Dec 2004
Posts: 2,382
Default

Well if AC checks UTDC and EUT, then right there would be 2 totally unnecessary checks from UTDC as well.
  #12  
Unread 21st December, 2005, 12:55 AM
PizzaMan's Avatar
PizzaMan PizzaMan is offline
Holy Shit!!
 
Join Date: Jun 2004
Location: Bergen - Norway
Posts: 2,389
Default

Might be unneccessary as long as nothing gets bypassed, but I dont see why you absolutely have to remove those checks. Its over and done with in 3-4 seconds anyway.
  #13  
Unread 21st December, 2005, 12:58 AM
Matthew Matthew is offline
Holy Shit!!
 
Join Date: Dec 2004
Posts: 2,382
Default

True.
  #14  
Unread 21st December, 2005, 01:02 AM
|KOA|The_Dave's Avatar
|KOA|The_Dave |KOA|The_Dave is offline
Godlike
 
Join Date: Jul 2005
Posts: 345
Default

I just played on KOA East with about 11 people, and ... AnthChecker didn't seem to add any significant lag honestly. So I'll just keep it how it is.

Good suggestion, PizzaMan -- I'll probably actually add AnthCheckerC to the list of files for UTDC to validate MD5 on.
  #15  
Unread 21st December, 2005, 01:25 AM
Matthew Matthew is offline
Holy Shit!!
 
Join Date: Dec 2004
Posts: 2,382
Default

Dave did the actor I re-coded for you reduce the lag on your server? I personally have been getting a lower ping.. wondered if you had as well?
  #16  
Unread 21st December, 2005, 01:57 AM
|KOA|The_Dave's Avatar
|KOA|The_Dave |KOA|The_Dave is offline
Godlike
 
Join Date: Jul 2005
Posts: 345
Default

Matthew -- bit off topic for this thread, no? But yeah, seems like the game's smoother. I consistently ping around 30 ms anyway, though, so it's hard for me to tell. You should probably release that publically to everyone else.
  #17  
Unread 21st December, 2005, 02:09 AM
Matthew Matthew is offline
Holy Shit!!
 
Join Date: Dec 2004
Posts: 2,382
Default

Maybe so...


At any rate good work on this Anth - up until this point I've never been able to get onto AC servers, so I do appreciate it, lol.
  #18  
Unread 21st December, 2005, 01:43 PM
AnthraX's Avatar
AnthraX AnthraX is offline
Administrator
 
Join Date: Jun 2004
Location: Ghent (Belgium)
Posts: 1,380
Default

Quote:
Originally Posted by Matthew
Maybe so...


At any rate good work on this Anth - up until this point I've never been able to get onto AC servers, so I do appreciate it, .
why didn't you tell me then? :p
  #19  
Unread 21st December, 2005, 06:20 PM
Cratos Cratos is offline
Rampage
 
Join Date: Apr 2003
Location: Austria
Posts: 63
Default

good work Anthrax
  #20  
Unread 21st December, 2005, 11:17 PM
|KOA|The_Dave's Avatar
|KOA|The_Dave |KOA|The_Dave is offline
Godlike
 
Join Date: Jul 2005
Posts: 345
Default

Not a major issue, but I had one user getting kicked falsely for "illegally hacked renderer" when it wasn't really hacked -- he had v451. An update to v451b fixed him up just fine.
Closed Thread


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT +1. The time now is 04:16 AM.


 

All pages are copyright The Unreal Admins Page.
You may not copy any pages without our express permission.