[ back to Tom 7 Radar ]

w
e
b

l
i
n
k
Half-Life 2 Delayed Again (07 Oct 2003 at 12:25)
Valve says that Half-Life 2 will be delayed another 4 months because their source code was "stolen."


OK, let's take a look at this.

1. On face value, they seem to be saying, "Our source code was stolen from us, so we need to rewrite it."

This doesn't make sense. Obviously, they still have a copy of the source code---if they don't, they can just download it from any of the million mirrors on the internet. Admittedly, this is much worse than copying mp3s or even the full HL2 CD when it is released, and it may even be misappropriation of trade secrets, but it's still not stealing. They still have the code.

2. Maybe they really mean, "There are significant secrets in the code which, if revealed, make our product not viable."

Perhaps. What might those secrets be?

2a. The format of the network code.

Reasonable. This is what people mean when they talk about how the release of the source code means in-roads for cheaters. But obfuscating the network code is not a four-month job. They only need to change basic things like the packet layout and their fake encryption or whatever. (Aside: IMO the best way to deal with current forms of cheating is to simply release frequent updates to the protocol and binaries. Reverse engineering is a lot slower than "forward" engineering, so exploit that asymmetry.)

2b. The CD key code.

Seriously, the CD key code is rarely any more useful as a C function than as a compiled binary. People debug key checkers and write keygens in like, a day. Unless they have some seriously new regime here, that's not a reasonable cause for 4 months. (Aside: If they used RSA and a key was just a digital signature (of some token), then cracking keys would be really, really hard, like, net you an instant PhD hard. Also, revealing the keycheck algorithm would do nothing for hackers. It would probably make keys a bit longer, though.)

2c. Buffer overflows and other exploitable bugs, or deliberate backdoors.

Maybe. But if they know about them, maybe they should just get rid of them? If they're thinking of auditing for them, maybe they should have done that even if the source wasn't copied? In truth, I bet having the source code out there will incite a lot of the bugtraq attention-seeking white-hats to audit the code for them. HL2 is a pretty high-profile piece of software.

2d. GPL violations.

Ha, well, yeah. Apparently there are some of those in the code, though I don't know the specifics.

3. Maybe they really mean, "We forgot how long it takes to actually polish a product and ship it. We were going to delay again at the cost of the fan community's ire, but now we can shift that blame onto hackers!"

This is my guess: like a defeated player complaining about lag, they're just shifting the blame.

c
o
m
m
e
n
t
FARINA00 (213.255.104.225) – 10.07.03 13:52:21
> Ha, well, yeah. Apparently there are some of those in the code,
> though I don't know the specifics.

Not that I noticed, and I spent hours looking the code, mesmerized by it, following a C++ function after another.
There's no GPL violation as far I can see... but lots of embarassing(or not?) things like code taken "as it is" from QUAKE 1. And I mean One. Quake number one. A game which is old - 7 years, maybe?

On the other hand, there's code I would be quite frustrated to be unwillingly share with the world. Math and geometry tricks worth a Field Medal, really.

Well...uhm, in the end... shit! I wanted to play HalfLife2 before Christmas :(
c
o
m
m
e
n
t
Marc (h00102b024a85.ne.client2.attbi.com) – 10.08.03 08:49:02
Of course no one person is going to be able to say that there is *not* any GPL violation...
c
o
m
m
e
n
t
Andrew (yale128036074100.student.yale.edu) – 10.08.03 13:49:11
All I know is, not long after the Quake 1 source was GPL'd, the game apparently became unplayable online because of all the cheating. The main problem is that the servers send more information to the client than is supposed to be shown to the player, so if you mess around with the client, you can get it to show you all the locations of players that you are not supposed to. Just altering the packet structure won't do much, because the h4x0rz can just drop in a new packet parser under their ReaperBot. That said, I have no idea what they plan to do for 4 months.
c
o
m
m
e
n
t
Tom 7 (gs82.sp.cs.cmu.edu) – 10.08.03 15:19:37
Yeah, definitely, and this is the case with every popular FPS. All I'm saying is, it doesn't take much to obfuscate the packets every few months so that the hackers need to do a lot of work to keep up with the curve.
c
o
m
m
e
n
t
FARINA00 (213.255.104.225) – 10.09.03 04:24:02
By the way. Would you perhaps know (I am not into "hack/retroengineering" stuff at all) some way to sinff/guess a simple text tcp/ip protocol?

Namely, I am trying to put Isaḅt (that froodlike AI) into www.habbo.com , whose protocol of course isn't documented anywhere.
c
o
m
m
e
n
t
Tom 7 (h-66-167-9-120.phlapafg.dynamic.covad.net) – 10.09.03 10:06:50
The way I do it is to have the client connect through a proxy that just passes the data back and forth while recording it.

If the client has a configurable server address, that's great, configure it to connect to your proxy instead.

Otherwise, type netstat -a while it's running to see where it connects, and then put entries in your hosts file:

server01.habbo.com 127.0.0.1

... so that it thinks your local machine is habbo.com (then the proxy needs to use the real IP address to connect through).

The main trouble with this approach is if the protocol makes secondary connections, like FTP does, but I think that is pretty rare these days.
c
o
m
m
e
n
t
Anonymous (151.213.190.97) – 12.21.03 00:23:45
Man...dem mo-fos ain't never gonna release dat damn game. It's all a gubment conspiricee. Nobody know dis but dat game was really based on a real happenin and da gubment don't want nobody to know. Dey sent sum dudes in der to steal da game an told dose dudes dat if dey ever say anything dey was gonna disapeer.
c
o
m
m
e
n
t
sexy_karl_6@hotmail.com (belf-cache-2.server.ntli.net) – 04.04.05 14:24:01
hey i searched habbbo backdoors and this website came up ?? wat da fuk is this about
c
o
m
m
e
n
t
Anonymous (host217-42-58-131.range217-42.btcentralplus.com) – 06.11.05 02:36:34
tryuiol
c
o
m
m
e
n
t
Anonymous (brhm-cache-3.server.ntli.net) – 08.30.05 18:09:00
yoyoyoyoyo
c
o
m
m
e
n
t
zac!! (nott-cache-5.server.ntli.net) – 11.21.05 13:04:55
yoyoyoyoyooy
c
o
m
m
e
n
t
Alexbleks (217.219.203.16) – 03.28.06 19:26:46
Hey, I'm currently working on reverse engineering the Habbo Hotel protocol. Its both easy and hard, the hard part was to detect what the heck the server sends back to the client when connected (Some kind of a code so that the client thinks it real)
c
o
m
m
e
n
t
Tom 7 (pool-70-20-87-179.pitt.east.verizon.net) – 03.28.06 21:19:43
okay
c
o
m
m
e
n
t
mike (pool-141-149-27-241.alb.east.verizon.net) – 05.28.06 21:50:21
any one got a free counter strike source cd key or know where to get one i wanna play badly
p
o
s
t

a

c
o
m
m
e
n
t
[ Tom 7 Radar  •  Tom 7 on Google+  •  on Twitter  •  on Facebook ]