The Unreal Admins Page - Forums

The Unreal Admins Page - Forums (https://unrealadmin.org/forums/index.php)
-   UT Server - General Chat (https://unrealadmin.org/forums/forumdisplay.php?f=102)
-   -   [Nexgen] Nexgen Advanced Ban Manager [With ACE features] (https://unrealadmin.org/forums/showthread.php?t=31285)

Sp0ngeb0b 3rd September, 2013 04:00 PM

[Nexgen] Nexgen Advanced Ban Manager [With ACE features]
 
Version 2 released. See here
Nexgen Advanced Ban Manager ~ By Sp0ngeb0b

What's new in version 1.02?
Two critical bugs have been fixed, see changelog for further details. On top of that, version 1.02 introduces a new feature with regards to a possible ACE exploit, which allows possible cheaters to prevent ACE from initializing them. NexgenABM now allows the admin to determine a timelimit until each client's Hardware ID and MAC Hash must be available. If the client fails to provide this info in the specified time, he will automatically be kicked. The settings can be changed ingame in the Server -> Settings -> Plugins panel.


About
The main goal of the Nexgen Advanced Ban Manager is - as the name suggests - the improvement of the existing ban system in Nexgen. It offers reliable functions to keep unwanted players out permanently, as it makes use of the unique and not-changeable hardware Information detected by ACE. On top of that, NexgenABM also includes the ability to ban via the player's hostname. Both, IP and hostname bans offer support for Ban Masks, which allow range banning and precise specifications.

Nexgen's original Ban Control tab has been completely revised, creating the necessary space for including access to all ban parameters. Besides that, a polished Ban Search panel has been added to complement the User friendly interface.

Coming with NexgenABM is the use of the TCP implementation in Nexgen 1.12, which kicks the Client - Server communication of UT into a new dimension. It guarantees fast, smooth and reliable data transfer with low impact on the server performance. Nexgen's original ban data was sent using UT's replication netcode, which was slow, limited and uncomfortable. Client initialization often took around 10 seconds with a full ban list. NexgenABM's banlist instead even allows the double amount of ban entries (256) and initializes the clients in a few seconds. The TCP communication is also used
for another main feature of NexgenABM ...

... called the ACE Admin panel. As you might have already thought, it integrates important ACE functions in Nexgen. It's similiar to The_Cowboy's ACEManager, as the panel provides the possibility to easily request a ScreenShot of any player plus view the detailed ACE Infos of them.

Last but not least contains this plugin the complete functions of NexgenWarn, which can and must be dropped from the server in return.

For your comfort, NexgenABM comes with an integrated setup program, which will automatically transfer all existing ban entries from Nexgen's original ban system to the NexgenABM.ini file (and eventually erase the old data in Nexgen.ini).

Version 1.02 introduces a new feature with regards to a possible ACE exploit, which allows possible cheaters to prevent ACE from initializing them. NexgenABM now allows the admin to determine a timelimit until each client's Hardware ID and MAC Hash must be available. If the client fails to provide this info in the specified time, he will automatically be kicked. The settings can be changed ingame in the Server -> Settings -> Plugins panel.


Facts:
  • Use of the extended TCP netcode of Nexgen 1.12
    Ultra fast client initializing and data transfer
  • Ability to ban per Hardware ID, MAC Hash, Hostname and introduction of Ban Masks
    Unwanted players can be kept out reliable
  • Revised Ban Control tab
    Featuring a search function
  • New Panel: ACE Admin
    Ability to view detailed hardware and security Info for each client, including a function to save the data to a file. You can now directly request a screenshot from each player, which will be saved on the server.
  • Includes all functions of NexgenWarn
  • ACE bypass detection


Requirements
Code:

Nexgen 1.12
ACE v 0.8 (any version using IACEv08c)
IpToCountry (optional, enables Hostname Banning)

Removal of NexgenWarn



Preview

(Click on image for full size)




Credits and thanks
- Defrost for developing Nexgen and especially for his nearly forgotten work on the great TCP implementation in Nexgen 1.12.
- AnthraX for his priceless work on ACE
- Thanks to Matthew "MSuLL" Sullivan for parts of his work from HostnameBan.
- [es]Rush and MSuLL for creating IpToCountry.
- The_Cowboy for ACE_Manager
- To my admin team from the 'ComboGib >GRAPPLE< Server <//UrS//>', for their intensive testing, bug-finding and feedback, and ofcourse for simply beeing the best team to have. Big thanks guys! :)
- aZ-Boy for bug reporting and his suggestion for the ACE bypass kick feature


Download
NexgenABM101 (For Nexgen 112)
NexgenABM101N (For Nexgen 112N)
NexgenABM102 (For Nexgen 112)
NexgenABM102N (For Nexgen 112N)


FAQs
Code:

Q: Does this plugin require ACE absolutely?
A: Yes, as it makes heavy use of ACE's features.

Q: What ACE versions are supported?
A: By now, only ACE versions 0.8g and 0.8h are supported. In theory, every version using the IACEv08c
  package should work.
 
Q: Will there be a version for ACE 0.9?
A: If this version is ever gonna be released to the public, there will for sure be an update of this
  plugin. Until then, I can not compile this plugin for 0.9 since I don't have the specific IACE file.

Q: Do I have to run IpToCountry?
A: No, IpToCountry is only optional. Note that you won't be able to perform Hostname bans if you
  don't run IpToCountry.
 
Q: Why are spectators not affected by HardwareID and MAC bans?
A: Since all public ACE versions only perform checks on players, there is no way to detect Spectator's
  hardware info.
 
Q: Banned players rejoin the game for a few seconds before beeing kicked again. Why is there a delay?
A: There could be 2 possible reasons for that:
  1) The player is only hardware banned, and ACE needs some time to detect the hardware Info.
  2) NexgenABM uses the original Nexgen setting whether to automatically update ban entries. If this
      feature is enabled, the plugin waits with kicking the player until all required info is received.
      Although the client may have already failed the first check (IP and ID bans), it will stay
      on the server until its Hostname and its ACE info is received. Eventually he will be kicked.

Q: How many ban entries are supported?
A: 256.

Q: What admin permissions are required for accessing the ACE Admin tab?
A: Clients must have Moderator rights to access the panel.

Q: I'm using a custom Nexgen version and there's no compatible version of this plugin available.
  Am I allowed to recompile this package on my own?
A: Generally, if you want a version of this plugin for a custom Nexgen version, ask me and I will
  do the job for you. If - for whatever reasons - you are unable to get in contact with me, you are
  allowed to recompile the plugin with respecting the conditions stated in section 5.
Q: How does the ACE bypass detection work?
A: NexgenABM constantly checks whether each client's Hardware ID and MAC Hash is available. If it isn't after the specified timelimit, it will assume that the player is trying to bypass ACE and kick him.


Interesting for programmers
While working with Nexgen's 1.12 TCP functions, I encountered a far-reaching bug in Nexgen's core file which will prevent empty strings in an array to be transfered correctly. A detailed explanation and solution can be found here: here.


Changelog
Code:

- Version 1.02:
  [Fix]  RequestInfo and TakeScreenshot buttons mistakenly disabled for green, gold and teamless
          players
  [Fix]  Critical bug in use with Bots
  [Added] Feature to detect ACE bypass attempts and kick the respective player

- Hotfix  1.01:
  [Fix]  Sometimes players were erroneously considered as banned


Feedback is welcome!

Sp0ngeb0b 3rd September, 2013 06:27 PM

What will happen will happen. Bug popped up one hour after official release, I highly recommend anyone who dlled version 1.00 to delete it and use the hotfix 1.01 instead.

Chronox 4th September, 2013 12:22 AM

Awesome ! keep up the good work !..

Btw can this tool take SShots from the players view ? (1st person)

Im having problems taking SShots with regular ace command :( (Player not found, taking sshot from wrong player, etc)

Thanks !

The_Cowboy 4th September, 2013 01:18 AM

Nice work!
I am sure you are aware that ACE can find the real ip of players behind proxy. Might I suggest (if you are not already doing so) resolving that real ip, using iptocountry, to get real hostnames (and country) for hostname bans.

back4more 4th September, 2013 01:52 AM

^ Correct , bTunnel=True or something.

be Great to have that Ability .. Good work.

Chamberly 4th September, 2013 03:51 AM

Very nice! I've sent a link to someone about this who may be interested. :)

I wish I can make mods but I don't know how to code. I can only give ideas... lol.

Sp0ngeb0b 4th September, 2013 04:31 PM

Quote:

Originally Posted by Chronox (Post 168708)
Btw can this tool take SShots from the players view ? (1st person)

Yes it can. Should fix your problems.


Quote:

Originally Posted by The_Cowboy (Post 168710)
Nice work!
I am sure you are aware that ACE can find the real ip of players behind proxy. Might I suggest (if you are not already doing so) resolving that real ip, using iptocountry, to get real hostnames (and country) for hostname bans.

NexgenABM will show the real IP in the ACE Admin Panel. If you ban a player who is using a Proxy, it will ban the Proxy IP though. I don't think it will make any sense to automatically ban the Proxy IP, since the player already knows how to use a Proxy, and therefore is probably able to change to a new Proxy pretty fast.
I swear on Hardware bans instead.


@All: Thanks for your input so far!

Chronox 4th September, 2013 09:49 PM

Thanks for your reply Sponge !

Installed it without any issues with Nexgen 112N MHA edition ! (And Nexgen Plus of course)

Keep up the good work mate :D

Chronox 13th September, 2013 12:03 AM

BUMPY !

Is it normal that I cant take SShots from a Specific player ?

Cant even take his info and stuff, and also got some Demos of suspucious gameplay from him... Other players from the server have also claimed suspicious behaviour !.

Thank you !

Sp0ngeb0b 13th September, 2013 08:41 AM

What's actually happening when you try to take a Screenshot of him or when you request the ACE info? Any error msg / etc?

medor 13th September, 2013 11:08 AM

May be you have not the folder "Shots"

Chronox 13th September, 2013 03:28 PM

I can take Sshots from any other player, and also haave the SShots folder with the other players SShots saved... The_Cowboy told me that he may be using Linux Client.. But he is using WinXP 32 bits.

medor 13th September, 2013 05:55 PM

ACE search Shots and not SShots

Chronox 13th September, 2013 06:35 PM

Sorry, it is named "Shots". I just made a typo :P...

Sp0ngeb0b 1st October, 2013 09:22 AM

Version 1.02 released. See first post.

nogginBasher 15th October, 2013 02:37 AM

Just here to say "Nice work" :)

Chronox 15th October, 2013 05:21 AM

Lol I forgot to say the same.

BTW: Can the Ace kick stuff have False positives ?

Ty

Sp0ngeb0b 20th October, 2013 03:07 AM

Well, it definitaly can. As stated, its just a feature that will kick any player whose hardware information isnt available after X seconds. If - for whatever reasons - the receiving takes to long (connection issues for example), it may also kick innocent people. I implemented this feature as it is possible for cheaters/lamers to prevent ace from initializing them. If you encounter to many false kicks, increase the timeout time ;)

ShaiHulud 20th October, 2013 11:41 AM

Now that's some dedication. Sponge is half way around the world and still checking up on the forum threads! :)

Chronox 20th October, 2013 08:56 PM

Thanks for explanation, will make the timeout time longer !


All times are GMT +1. The time now is 07:06 AM.

 


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