BanG

From ASSS Wiki
Revision as of 05:02, 15 January 2005 by CypherJF (talk | contribs) (fixed overflow)
Jump to: navigation, search

BanG is a Biller based banning system in Continuum. Here's Catid's take on banG:

BanG, and other famous ban systems these days have several layers:
 (In proper order of checking)

PermissionID ban -- "Moderator alert"
  For the record, only subgame servers even look at Permission ID, but this is still important.
  Mods and SMods use a different *kill ID, Permission ID.
  Both Machine and Permission ID's may be found in the registry, incidentally,
   as keys D1 and D2, in that order, under LOCAL_MACHINE/Software/
  Both MachineID and PermissionID must be different or else online moderators will get
   big red warning messages whenever you enter the zone.
  Change in memory with:
      PokeDWORD(4914080, NewPermissionID);
      PokeDWORD(4915000, NewPermissionID);

Password packet floods -- "Busy signal"
  Initially, you are given a grace period and once it is exceeded,
   the message "The server is busy processing login requests..." is returned.
  After this period (intentional?), connections from your IP are restricted
   to about 3 times a minute, to any zone on the network.

Invalid names -- "Invalid name"
  You cannot enter with the name ^Banned, for instance.  Printable
   characters, exclusively, are allowed.  Spaces are clipped from
   the end of your name.

Invalid TimeZoneBias -- ^Banned ID #0
  The TZB must be:
  + Divisible by 30.
  + Greater than or equal to -720.
  + Less than or equal to 720.
  TZB may be changed via the system tray or by PokeWORD(4911604, NewTZB);

Invalid MachineID -- ^Banned ID #0
  Machine ID must be a positive number greater than 0.
  '*1337' may or may not be declared invalid.

UserID ban -- ^Banned
  Once you are banned, you cannot use that name ever again.

MachineID ban -- ^Banned
  Same as IDBlock.txt
  Machine ID is your volume C:\ serial number, pre-computed every time you
   start subspace or leave a zone.  Some argue JeffP wrote this flaw
   intentionally to make it easy to unban yourself.  He definately wrote the
   CD-check to be hacked: he disagreed with the CD-check, and has said so repeatedly.
  Machine ID, therefore, may be PokeDWORD(4923356, NewMachineID);
  SysOp *kill bans use this ID.

IP [range] ban -- ^Banned
  Same as IPBlock.txt
  Your IP is assigned to you when you connect to the internet.
  Your ISP will assign you this number from a small range of values,
   which leaves the possibility to tag players by their internet connection.
  To get around this, sign up for NetZero or AOL for free.  If you cannot do this
   on your computer, set up a subspace proxy on another machine with a dial-up connection.

Registration form hostname ban -- "It looks like you are getting in, then it kicks you"
  This was my idea.  You use the registration form-provided hostname to 
  identify IP-banned players.  It cannot be spoofed client-side with a 
  process patcher unless you modify the client's code in memory.  It is
  overcome with a custom-coded proxy server or some truly elite client hacking.

NetBIOS hostname ban -- "It looks like you are getting in, then it kicks you"
  This one is a bit of a stretch in my opinion, but BanG queries your
  machine for a NetBIOS name.  It is overcome with a firewall such as
  ZoneAlarm.

Ban updating -- N/A
  There are also some additional features, like updating the IP range when
   players trigger the registration form hostname ban, etc.
  To get around this, be sure that every one of these checks has been passed
   before logging in.

Tricks -- N/A
  Using a really long name or a confusing one like 'the mod', will make it more difficult to
   trace you.  Furthermore, hopping arenas by macro'ing ?go %freq%selfname%red etc may help.
  Alias checks are now possible on SSC, after a lot of prodding, so if you want to
   keep your scores be sure that your Machine ID, TZB and IP do not match any of your
   other names.
  When you enter as ^Banned with a generic check (they don't know WHICH cheater you are), that
   reads "BanID # 0", you are getting close - randomize everything again and double-check the
   generic checks.

Future bans -- N/A
  While I offer ways around existing bans, new ones may appear; for
   instance, I proposed a design earlier this year where timestamps sent to zones
   would be stored for 24 hours, and players banned in that period would need to
   reboot in order to unban themselves.  This check would have to be bypassed with
   a proxy, or some SpeedCheat derivative.
  I am unaware of any other alternative ban schemes, and with the arrival of Continuum
   it is doubtful that any more attention will be paid to SubSpace's ban problems.
  When you are hacking other games, or Continuum or whatever, please note that ban ID's
   tend to reside near the login packet with your name and password; they also LOOK random,
   but they will not change between sessions with the server.

Okay!  Now that you see how advanced ban capability has become these days, certainly
       you will recognize the difficulty in getting around any serious block.  This
       has become almost a hobby for me, since the first time I developed a MacID
       randomizer.  And I hope that by quenching the thirst for this kind of
       documentation, players will play more legally and respect the staff a bit more... =)