Good hacking challenges

gets ta steppin'

Has anyone here played Uplink Hacker Elite much?

I have played it several times.

good game for a independent software house, but it is buggy as shit and it shows.

they could have used a better QA department.. hell, they probably didn't have one.

on a side note, all of the stuff on is real hacking technique.. it may be a game, but it's one that's pretty much the same as reality.

hey rob, how good are you at reading raw tcpdumps?

"hey rob, how good are you at reading raw tcpdumps?"

not very, but I'll give it a shot if you want.

I'd rather read it tomorrow though, I could use some z's.

I want to learn how to read pure HEx :) mmm

Hex is easy to read.

the real question is what are you looking at and what format is it in.

is it code? if so, better know assembler and memorize the hex codes for specific assembler instructions.

is it ASCII? that's pretty easy to remember and read with a bit of work.

is it Unicode? if so, you need to know the formatting (UCS-2,UTF-8, etc.) and all the symbol codes for the language in question.


"but where am I meant to use it?"

try SSH'ing into the box, perhaps?

I have a solution in C I haven't tested yet, but shit has just been flying at me the last few days.

I'll have to change it now, though, because I thought they were using Network Byte Order (aka Big-Endian)

This perl script is a solution for 0.

!/usr/bin/perl -w

use IO::Socket;

use strict;

my $PORT = 5842;

my $SERVER = "";

my $sock = new IO::Socket::INET (

      PeerAddr => $SERVER,

      PeerPort => $PORT,

      Proto =>

$sock or die "Could not create socket: $!\n";

my $num, my $bytes;

my $sum=0;

for (my $i = 0;$i < 4; $i++) {

  $sock->recv($bytes, 4);

  $num = unpack("V", $bytes);

  $sum += $num;

  print ("num = $num , sum = $sum\n");


$sum = pack("V", $sum);


print <$sock>;


I beat level 1 too, but I won't write the solution because if you saw it, it's so simple that you wouldn't be able to un-see it and solve it yourself.

By the way, to type in the 0xca byte in Mac OS X, in Terminal window settings, in display, set the character set encoding to MacRoman (Not Unicode), and hit option-space.

Yeah, I had the same problem. You can't pipe it to the program because the pipe only happens after the interpreter finishes, and then you can't have an interactive shell.

You have to actually paste/type in the stuff into the program interactively.