A
Aware Fish
This is what I have so far as code:
=begin
Timed Challenge #1
[http://www.hellboundhackers.org/challenges/timed/timed1/index.php]
RULE: You have 1 second to retrieve/submit this!
GOAL: 1. Decrypt the following random string: a2UpYDkyYjhyLCRebCFneA==
2. Answer like this:
/challenges/timed/timed/index.php?b64=decryptedString
=end
require 'net/http'
require 'socket'
require 'base64'
# The web server
host = 'www.hellboundhackers.org'
# Default HTTP port
port = 80
# The file we want
path = "/challenges/timed/timed1/index.php"
# This is the HTTP request we send to fetch a file
request = "GET #{path} HTTP/1.0\r\n\r\n"
# Connect to server
socket = TCPSocket.open(host,port)
# Send request
socket.print(request)
# Read complete response
response = socket.read
# Split response at first blank line into headers and body
headers,body = response.split("\r\n\r\n", 2)
print body
# The encryted message to work on
if(body =~ /\w*==/)
encoded = $1;
end
# Decryption of Base64 string value
decoded = Base64.decode64(encoded)
pre-answer = '/challenges/timed/timed1/index.php?b64='+decoded
answer = "Get #{pre-answer} HTTP/1.0\r\n\r\n"
# Submit the decrypted text to "/challenges/timed/timed1/index.php?b64="
socket.print(answer)
response = socket.read
# Split response at first blank line into headers and body
headers,body = response.split("\r\n\r\n", 2)
print body
I am stuck on using login data before submitting anything. I know how to
do this in PHP's cURL library, but not with Ruby.
Any help would be greatly appreciated. No spoiler either. I like to work
for the answer. I would not want to ruin it for my brain.
=begin
Timed Challenge #1
[http://www.hellboundhackers.org/challenges/timed/timed1/index.php]
RULE: You have 1 second to retrieve/submit this!
GOAL: 1. Decrypt the following random string: a2UpYDkyYjhyLCRebCFneA==
2. Answer like this:
/challenges/timed/timed/index.php?b64=decryptedString
=end
require 'net/http'
require 'socket'
require 'base64'
# The web server
host = 'www.hellboundhackers.org'
# Default HTTP port
port = 80
# The file we want
path = "/challenges/timed/timed1/index.php"
# This is the HTTP request we send to fetch a file
request = "GET #{path} HTTP/1.0\r\n\r\n"
# Connect to server
socket = TCPSocket.open(host,port)
# Send request
socket.print(request)
# Read complete response
response = socket.read
# Split response at first blank line into headers and body
headers,body = response.split("\r\n\r\n", 2)
print body
# The encryted message to work on
if(body =~ /\w*==/)
encoded = $1;
end
# Decryption of Base64 string value
decoded = Base64.decode64(encoded)
pre-answer = '/challenges/timed/timed1/index.php?b64='+decoded
answer = "Get #{pre-answer} HTTP/1.0\r\n\r\n"
# Submit the decrypted text to "/challenges/timed/timed1/index.php?b64="
socket.print(answer)
response = socket.read
# Split response at first blank line into headers and body
headers,body = response.split("\r\n\r\n", 2)
print body
I am stuck on using login data before submitting anything. I know how to
do this in PHP's cURL library, but not with Ruby.
Any help would be greatly appreciated. No spoiler either. I like to work
for the answer. I would not want to ruin it for my brain.