Bridge Commander Central

BC Forums => BC Technical Support => Topic started by: XFSIllusion on May 22, 2009, 08:15:47 PM

Title: Checksum Failure
Post by: XFSIllusion on May 22, 2009, 08:15:47 PM
There is a mod going around based on KM, unlike anything I ever seen really.  It has a few ships with beefed up weapons hardpoints which is nothing special.  Thing is, people with the mod can enter normal unmodded KM servers and vice versa, and the ship upgrades are still there.  I never knew this to be possible in other versions of BC unless KM has some type of exploit that allows this.  Its as if the checksumming of scripts isn't catching the modifications or something.  I don't think this was the intention but now its clearly being used as a cheat.

Assuming this is possible, which I have countless stuff that says it is, is there a way to defend against it?  Maybe create a patch to prevent this mod from entering our servers or something, while still allowing unmodded KM users.  Details can be found in our clan forums http://www.xfsclan.net/forums/showthread.php?t=13737
Title: Re: Checksum Failure
Post by: limey BSc. on May 22, 2009, 09:34:21 PM
I don't get it. I just downloaded the beta thats linked to in that post. Theres nothing but hardpoints, plugins and textures in it. The files aren't noticably bigger (about 200 bytes over 120 files), so its not likely to be a hidden function in some random HP. As far as my somewhat limited knowledge of both Python and BC goes, I can't think how it's possible.
Title: Re: Checksum Failure
Post by: XFSIllusion on May 22, 2009, 09:46:25 PM
See if it lets you in an unmodded KM game, it let me in with no problem...a friend of mine also reported the same.  It also let unmodded KM players join my game, in both cases the ship upgrades remained.
Title: Re: Checksum Failure
Post by: Nebula on May 22, 2009, 09:54:42 PM
I think the checksum checks for major changes... if the HP is relativity the same size of another I think they can get through...

That's what I gather anyway.
Title: Re: Checksum Failure
Post by: WileyCoyote on May 22, 2009, 11:12:07 PM
Quote
I think the checksum checks for major changes... if the HP is relativity the same size of another I think they can get through...
It could be just minor changes like "rapid fire" torpedoes and infinite shielding which would just be some small character change and not affect the total filesize. Then again, this is one of the reasons why I don't play online.
Title: Re: Checksum Failure
Post by: Nebula on May 22, 2009, 11:29:16 PM
when you play online it is best to play with people you know or set up the server ya self so you can kick players that start hacking....
Title: Re: Checksum Failure
Post by: tiqhud on May 23, 2009, 09:45:35 AM
I have vot played online in quite some time, also, for this very reason.
Title: Re: Checksum Failure
Post by: XFSIllusion on May 23, 2009, 02:27:19 PM
So most here agree that the checksum just looks at filesizes?  One would think BC would detect other mismatches in the ships.  We just found out something else about this mod, the person with it can see cloaked ships.  Details on this are on our forums.
Title: Re: Checksum Failure
Post by: MLeo on May 23, 2009, 06:51:00 PM
BC probably uses CRC (http://en.wikipedia.org/wiki/Cyclic_redundancy_check) for this, not entire secure so to speak. While it should be unlikely that any random modification will give the same CRC, it's possible.

Seeing cloaked ships on the other hand, is more serious.
One big questions is, did it happen on one of your hosted servers?
If it did, then it's really serious. If they hosted it, then it might just be possible to hack it.

Could you e-mail me the mod in question (or a direct download link)?


Also, regarding the CRC, it's how they modded the demo, on which it's, more or less, impossible to mod (intentionally locked out).

[EDIT] I've been reading the thread mentioned, and saw the two videos on page 2, I'm not sure what I'm supposed to see in video 1, and in video 2 I see what might be a cheat (firing in the direction of a cloaked ship), but the ship doesn't get hit by it and explodes without reason in the end.

Could you also send me those attached images?
Title: Re: Checksum Failure
Post by: XFS10 Shadow on May 25, 2009, 01:54:37 AM
BC probably uses CRC (http://en.wikipedia.org/wiki/Cyclic_redundancy_check) for this, not entire secure so to speak. While it should be unlikely that any random modification will give the same CRC, it's possible.

Seeing cloaked ships on the other hand, is more serious.
One big questions is, did it happen on one of your hosted servers?
If it did, then it's really serious. If they hosted it, then it might just be possible to hack it.

Hi there Mleo I'm another member of the XFS that worked directly with gathering evidence on this, they used it in their own servers first...then after our friends set up a trap for the cheaters which said cheaters fell right into, it was found that these people could use these cheats in *other* people's servers.  I'd be happy to talk to you more about this.


Quote from: Mleo
[EDIT] I've been reading the thread mentioned, and saw the two videos on page 2, I'm not sure what I'm supposed to see in video 1, and in video 2 I see what might be a cheat (firing in the direction of a cloaked ship), but the ship doesn't get hit by it and explodes without reason in the end.

Could you also send me those attached images?

I'll see about those images, but in those videos, #1 watch it again and then see where the sovereign class is blown up by like 4 spreads of three klingon photon torpedoes apiece (obviously not possible normally)...#2 was simply to prove that even though the guy was cloaked, the cheater knew where he was by firing at him, and even though all of the hits looked like they missed, some of them lagged into him and killed him.  The point is, seeing people while they're cloaked, and being able to fire at them while being cloaked yourself. 

I'll be checking this thread from time to time for updates
XFS10 Shadow.
Title: Re: Checksum Failure
Post by: XFSIllusion on May 25, 2009, 02:04:16 AM
I got a screeny in our thread where Hellkat admits he uses this cheat, he justifies using it by saying he uses it against cloak hoppers....but a cheat is a cheat.  He claims it allows him to see a cloaked ship.  The direct link to his post is http://www.xfsclan.net/forums/showthread.php?p=185437#post185437 (I think guests can view it)
Title: Re: Checksum Failure
Post by: limey BSc. on May 25, 2009, 06:24:07 AM
I got a screeny in our thread where Hellkat admits he uses this cheat, he justifies using it by saying he uses it against cloak hoppers....but a cheat is a cheat.  He claims it allows him to see a cloaked ship.  The direct link to his post is http://www.xfsclan.net/forums/showthread.php?p=185437#post185437 (I think guests can view it)

Can see the thread, yes. But need to be registered to view attachments.
Title: Re: Checksum Failure
Post by: XFSIllusion on May 27, 2009, 06:56:23 PM
I did find one cheat being used, it looks like its used to extend the cloak time.  This was found in the FoundationTech.py file in the KM mod.  App.CloakingSubsystem_SetCloakTime(999.2) should read App.CloakingSubsystem_SetCloakTime(3.2)

Quote
# With thanks to MLeoDaalder - Dasher42
class CloakTriggerDef(Foundation.TriggerDef):
   def __call__(self, pObject, pEvent):
      debug(__name__ + ", __call__")
      App.CloakingSubsystem_SetCloakTime(999.2)
      pObject.CallNextHandler(pEvent)

CloakTriggerDef('Cloak Timing', App.ET_CLOAK_BEGINNING)
CloakTriggerDef('Decloak Timing', App.ET_DECLOAK_BEGINNING)

# App.UtopiaModule_SetGameUnitConversionFactor(0.17999997)
Title: Re: Checksum Failure
Post by: MLeo on May 28, 2009, 06:02:02 PM
Assuming it works correctly in MP, the only thing that it does is increase the cloaking time greatly. Shields go down quite fast, and you don't actually disappear from radar (targetability) after that period.

Of course, if it doesn't work correctly for MP, then the cheat would work. All the other clients see the ship as cloaked, except the client doing the cheat.
And if the client says it's firing, because according to the client it can, then it might just work.
The reverse also works, if only one client has that cheat, and an opponent cloaks, then the cheat will allow the client to still see the ship for a while.

You know, I might just be able to fix this leak.
I can disallow setting that property when in multiplayer.
But there is the problem that it's "global", meaning you can set it once, and it will remain that setting for the rest of the BC runtime.
If we can make it required to play, and not trivially changed such as this value (I can't see any way how it could give the same checksum).


But I think Defiant needs to give his view on this. He knows more about this.
Title: Re: Checksum Failure
Post by: Dawg81 on June 08, 2009, 05:35:56 PM
add to that someone is hacking around changing the names of active servers into flame servers
Title: Re: Checksum Failure
Post by: MLeo on June 08, 2009, 05:38:58 PM
For future purpose, if you see a cheat, please add a screenshot.
Title: Re: Checksum Failure
Post by: Dawg81 on June 08, 2009, 05:48:09 PM
my mistake its the players names that are being changed while they are ingame Shepherds name was changed to DD=Raven=A1 along with everyone else on that server though i do not know who was on there at the time besides the host shepherd
Title: Re: Checksum Failure
Post by: josephdavis on September 14, 2009, 09:58:16 AM
passed onto me by a fellow clan member. the person in question then returned under different tags

(http://i171.photobucket.com/albums/u285/torrex_joe/avnfhl.jpg)
Title: Re: Checksum Failure
Post by: Dalek on September 15, 2009, 11:13:22 AM
This was posted by 9thwinter on the NF Forums.

Quote from: 9thwinter
That sorry to say is only a drop in the bucket to whats out there.
***warning***
they can phthon your comp your in trouble...they end your game to desktop...
if that happens close your server do a clean..unplug your modem re power wait 2min.
and plug back in...this gives you a fresh ip addy...and dont host a game on km1.0 without
knowing who your going to invite...its best to password your km1.0 games online
as for other cheats...
they can freeze your score at 0 even if you kill 4 or 6 times...
they can take your torp load from 300 to 0.
they can increase their sheilds to max 9999999999.0
or torp fire to ultra..as seen in pic
they can shift what ships they play in so you might think your fighting a rodie but its a sov..
the list wont ever end...
but if you want a good clean game play 9th players..in closed rooms...
its safer that way..
Title: Re: Checksum Failure
Post by: MLeo on October 04, 2009, 07:41:32 AM
I've been having internet connection problems (wireless card) so I haven't had the time to keep up properly.

One thing is sure, BC is sandboxed, it's impossible to read or write anything outside of scripts/Custom/, sure, they might be able to completely wreck your install, but never your windows installation (not easily anyway, unless they somehow manage to write an executable virus and you run it yourself).