From 9d939b58828cb74bf4fd346b35bf8a484b1f2ad0 Mon Sep 17 00:00:00 2001 From: Derecho Date: Thu, 10 Jul 2014 00:07:08 +0200 Subject: [PATCH 1/4] Add historic January 2014 submissions --- solutions/Fox/README | 19 ++ solutions/Fox/bla.py | 7 + solutions/Fox/foo.hs | 195 +++++++++++++++++++ solutions/Fox/foo.php | 3 + solutions/Fox/foo.pl | 5 + solutions/Fox/foo.py | 7 + solutions/Fox/foo.rb | 6 + solutions/Liothen/dcc.d | 27 +++ solutions/Liothen/dcc.rb | 32 +++ solutions/Mantis/dcc.php | 41 ++++ solutions/NeX/Bash/66.sh | 1 + solutions/NeX/Bash/78.sh | 1 + solutions/NeX/Bash/82.sh | 1 + solutions/NeX/Python/dsdcc.py | 17 ++ solutions/Tempest/solution.html | 15 ++ solutions/d0gpants/DCCjan14.pl | 61 ++++++ solutions/infy/a.html | 1 + solutions/infy/timed_product.html | 31 +++ solutions/infy/timed_product.php | 49 +++++ solutions/infy/timed_product.py | 29 +++ solutions/infy/timed_product.sh | 16 ++ solutions/infy/timed_product_busybox.sh | 26 +++ solutions/infy/timed_product_busybox_PoC.jpg | Bin 0 -> 224557 bytes solutions/kurtisebear/products.py | 25 +++ solutions/majuscule/darkscience.sh | 39 ++++ solutions/majuscule/foo.sh | 1 + solutions/whoami/dcc/__init__.py | 0 solutions/whoami/dcc/plugin.py | 25 +++ 28 files changed, 680 insertions(+) create mode 100644 solutions/Fox/README create mode 100644 solutions/Fox/bla.py create mode 100644 solutions/Fox/foo.hs create mode 100644 solutions/Fox/foo.php create mode 100755 solutions/Fox/foo.pl create mode 100755 solutions/Fox/foo.py create mode 100755 solutions/Fox/foo.rb create mode 100644 solutions/Liothen/dcc.d create mode 100644 solutions/Liothen/dcc.rb create mode 100644 solutions/Mantis/dcc.php create mode 100755 solutions/NeX/Bash/66.sh create mode 100755 solutions/NeX/Bash/78.sh create mode 100755 solutions/NeX/Bash/82.sh create mode 100644 solutions/NeX/Python/dsdcc.py create mode 100644 solutions/Tempest/solution.html create mode 100755 solutions/d0gpants/DCCjan14.pl create mode 100644 solutions/infy/a.html create mode 100755 solutions/infy/timed_product.html create mode 100755 solutions/infy/timed_product.php create mode 100755 solutions/infy/timed_product.py create mode 100755 solutions/infy/timed_product.sh create mode 100755 solutions/infy/timed_product_busybox.sh create mode 100755 solutions/infy/timed_product_busybox_PoC.jpg create mode 100644 solutions/kurtisebear/products.py create mode 100755 solutions/majuscule/darkscience.sh create mode 100755 solutions/majuscule/foo.sh create mode 100644 solutions/whoami/dcc/__init__.py create mode 100644 solutions/whoami/dcc/plugin.py diff --git a/solutions/Fox/README b/solutions/Fox/README new file mode 100644 index 0000000..1c2a822 --- /dev/null +++ b/solutions/Fox/README @@ -0,0 +1,19 @@ +---------------------------------------------------------------------------------- +-- What does the Fox say? Fox'-- +-- ____ |\/| HTTP-Math-Fetch-Parse-Evaluate-Responder-- +-- \ /\ / ..__. -- +-- \/ \__\ _/ -- +-- \__ __ \ in Haskell-- +-- \____\___\ DarkScience Code Contest January-- +---------------------------------------------------------------------------------- + +-- Implementations, in order of elegance: +#1 Haskell implementation: ghc -o foo ./foo.hs +#2 Perl implementation: ./foo.pl +#3 Python implementation: ./foo.py +#4 Ruby implementation: ./foo.rb +#5 PHP implementation: ./foo.php +#6 JS implementation: See ./foo.hs comments at the top of the file, + should run in JS console at DCC page. + +[*] Scuse, the Haskell implementation is not fully commented. \ No newline at end of file diff --git a/solutions/Fox/bla.py b/solutions/Fox/bla.py new file mode 100644 index 0000000..dbb92f8 --- /dev/null +++ b/solutions/Fox/bla.py @@ -0,0 +1,7 @@ +#!/usr/bin/python +import requests +import re +import zlib +import bz2 +u = 'http://directus.darkscience.net:6789/' +print re.search('(Correct|Wrong)', requests.post(u, {'answer': eval(re.search('[0-9]+ x [0-9]+', requests.get(u).text).group(0).replace('x', '*'))}).text).group(0) diff --git a/solutions/Fox/foo.hs b/solutions/Fox/foo.hs new file mode 100644 index 0000000..44a9c65 --- /dev/null +++ b/solutions/Fox/foo.hs @@ -0,0 +1,195 @@ +---------------------------------------------------------------------------------- +-- What does the Fox say? Fox'-- +-- ____ |\/| HTTP-Math-Fetch-Parse-Evaluate-Responder-- +-- \ /\ / ..__. -- +-- \/ \__\ _/ -- +-- \__ __ \ in Haskell-- +-- \____\___\ DarkScience Code Contest January-- +---------------------------------------------------------------------------------- + +-- Perl: eval "print LWP::UserAgent->new()->post('http://directus.darkscience.net:6789', {'answer' => $1*$2})->decoded_content() =~ /(Correct|Wrong)/g;\n" if get("http://directus.darkscience.net:6789") =~ /([0-9]+) x ([0-9]+)/g + +-- Python: print re.search('(Correct|Wrong)', requests.post(u, {'answer': eval(re.search('[0-9]+ x [0-9]+', requests.get(u).text).group(0).replace('x', '*'))}).text).group(0) + +-- PHP: ($u='http://directus.darkscience.net:6789/')&&!($a=array())&&preg_match('/[0-9]+ x [0-9]+/',file_get_contents($u),$a)&&(preg_match('(Correct|Wrong)',file_get_contents($u,false,stream_context_create(array('http'=>array('header'=>"Content-type: application/x-www-form-urlencoded\r\n",'method'=>'POST','content'=>http_build_query(array('answer'=>eval('return ('.str_replace('x','*',$a[0].');')))))))),$a)) && die(reset($a)); + +-- JS: (x=new XMLHttpRequest)&&!x.open("GET","http://directus.darkscience.net:6789",false)&&!x.send(null)&&(r=/([0-9]+) x ([0-9]+)/g.exec(x.responseText))&&(a="answer="+eval(r[1]+"*"+r[2]))&&!x.open("POST","http://directus.darkscience.net:6789",false)&&!x.setRequestHeader("Content-type","application/x-www-form-urlencoded")&&!x.send(a)&&alert(/(Correct|Wrong)/.exec(x.responseText)[0]) + +-- Ruby: (a, b = Net::HTTP.get(URI.parse("http://directus.darkscience.net:6789")).scan(/([0-9]+) x ([0-9]+)/)[0]) and print /(Correct|Wrong)/.match(Net::HTTP.post_form(URI.parse("http://directus.darkscience.net:6789"), {"answer" => (a.to_i.send '*', b.to_i)}).body) + +module Main +where + +import Network.HTTP.Conduit +import Network.HTTP.Types.Method +import Control.Applicative +import Text.Regex.Posix +import Language.Haskell.Interpreter +import Data.String.Utils +import Data.Char + +import qualified Control.Exception as E + +import qualified Data.ByteString as BS +import qualified Data.ByteString.Lazy as LBS +import qualified Data.ByteString.Char8 as BS8 + +-- Our input URL +dccUrl = "http://directus.darkscience.net:6789/" + +-- Definition of our grammar +data Expression +data Operator = Plus -- We have support for Plus + | Minus -- Minus + | Multiplication -- Multiplication + | Division -- Division + deriving (Show, Eq) + +-- ^ +data Token = TokenOperator Operator -- We have an Operator token + | TokenAssign -- Assignment token + | TokenLeftParentheses -- Left parentheses + | TokenRightParentheses -- Right parentheses + | TokenIdentifier String -- Identifier + | TokenNumber Double -- Number + | TokenEnd -- End of expression + deriving (Show, Eq) + +-- ^ +data Tree = SumNode Operator Tree Tree -- A summation traverses into two trees + | ProductNode Operator Tree Tree -- A product traverses into two trees + | AssignNode String Tree -- An assignment traverses into one tree + | UnaryNode Operator Tree -- A unary traverses into one tree + | NumNode Double -- A number + | VarNode String -- A variable + deriving Show + +-- Convert an inputted Char to an Operator +operator :: Char -> Operator +operator c | c == '+' = Plus -- Plus => "+" + | c == '-' = Minus -- Minus => "-" + | c == 'x' = Multiplication -- Multiplication => "x" + | c == '/' = Division -- Division => "/" + +-- Tokenize an input string into a list of Tokens +tokenize :: String -> [Token] +tokenize [] = [] -- In case of an empty set, return an empty set +tokenize (c : cs) + | elem c "+-x/" = TokenOperator (operator c) : tokenize cs -- If we've encountered one of "+-x/" fetch c as the operator, recursively work with the rest of the string + | isDigit c = number c cs -- In case of a digit, treat c as a number + | isSpace c = tokenize cs -- In case of a space, recursively work with the current string + | otherwise = error $ "Cannot tokenize " ++ [c] -- Else we have a problem + +-- This actually is a simply head operation, returning TokenEnd on empty list +lookAhead :: [Token] -> Token +lookAhead [] = TokenEnd -- Pattern match empty list, [], to reflect TokenEnd +lookAhead (t:ts) = t -- Pattern match t as head, ts as tail, to reflect head + +-- This actually is a simple tail operation, returning an error on empty list +accept :: [Token] -> [Token] +accept [] = error "Nothing to accept" -- Pattern match empty list to trigger error +accept (t:ts) = ts -- Pattern match t as head, ts as tail to reflect tail + +number :: Char -> [Char] -> [Token] +number c cs = + let (digs, cs') = span isDigit cs in + TokenNumber (read (c : digs)) : tokenize cs' + +expression :: [Token] -> (Tree, [Token]) +expression toks = + let (termTree, toks') = term toks + in + case lookAhead toks' of + (TokenOperator op) | elem op [Plus, Minus] -> + let (exTree, toks'') = expression (accept toks') + in (SumNode op termTree exTree, toks'') + TokenAssign -> + case termTree of + VarNode str -> + let (exTree, toks'') = expression (accept toks') + in (AssignNode str exTree, toks'') + _ -> error "Assignment on non-variable!" + _ -> (termTree, toks') + +term :: [Token] -> (Tree, [Token]) +term toks = + let (facTree, toks') = factor toks + in + case lookAhead toks' of + (TokenOperator op) | elem op [Multiplication, Division] -> + let (termTree, toks'') = term (accept toks') + in (ProductNode op facTree termTree, toks'') + _ -> (facTree, toks') + +factor :: [Token] -> (Tree, [Token]) +factor toks = + case lookAhead toks of + (TokenNumber x) -> (NumNode x, accept toks) -- In case we've encountered a TokenNumber, x is NumNode, accept toks + (TokenIdentifier x) -> (VarNode x, accept toks) -- In case we've encountered a TokenIdentifier, x is VarNode, accept toks + (TokenOperator op) | elem op [Plus, Minus] -> -- In case we've encountered a TokenOperator, + let (facTree, toks') = factor (accept toks) + in (UnaryNode op facTree, toks') + TokenLeftParentheses -> + let (expTree, toks') = expression (accept toks) + in + if lookAhead toks' /= TokenRightParentheses + then error "Missing right parenthesis" + else (expTree, accept toks') + _ -> error $ "Syntax error on token: " ++ show toks -- Oops, syntax error! + +parse :: [Token] -> Tree +parse toks = let (tree, toks') = expression toks + in + if null toks' -- Traverse the + then tree -- ^ tree + else error $ "Syntax error (left over token): " ++ show toks' -- Oops, syntax error! + +-- Evaluate a SumNode tree, reflect Double +evaluate :: Tree -> Double +evaluate (SumNode op left right) = + let lft = evaluate left + rgt = evaluate right + in + case op of + Plus -> lft + rgt + Minus -> lft - rgt + +-- Evaluate a ProductNode tree, reflect Double +evaluate (ProductNode op left right) = + let lft = evaluate left + rgt = evaluate right + in + case op of + Multiplication -> lft * rgt + Division -> lft / rgt + +-- Evaluate a UnaryNode tree, reflect Double +evaluate (UnaryNode op tree) = + let x = evaluate tree + in case op of + Plus -> x + Minus -> -x + +-- Evaluate a NumNode, reflect Number +evaluate (NumNode x) = x + +-- Convert lazy ByteString to ByteString +lazyToStrictBS :: LBS.ByteString -> BS.ByteString +lazyToStrictBS x = BS.concat $ LBS.toChunks x + +-- Entry point +main :: IO () +main = do + b <- simpleHttp dccUrl + + let eq = (map (chr . fromIntegral) $ BS.unpack $ lazyToStrictBS b) =~ "[0-9]+ [+-x/] [0-9]+" :: String + let answer = show $ round $ evaluate $ parse $ tokenize eq + + initReq <- parseUrl dccUrl + let request = (flip urlEncodedBody) initReq $ [(BS8.pack "answer", BS8.pack answer)] + res <- withManager $ httpLbs request + let result = (show $ lazyToStrictBS $ responseBody res) =~ "(Correct|Wrong)" :: String + + print (eq ++ " = " ++ answer ++ " is " ++ result) + + main \ No newline at end of file diff --git a/solutions/Fox/foo.php b/solutions/Fox/foo.php new file mode 100644 index 0000000..0d123c1 --- /dev/null +++ b/solutions/Fox/foo.php @@ -0,0 +1,3 @@ +array('header'=>"Content-type: application/x-www-form-urlencoded\r\n",'method'=>'POST','content'=>http_build_query(array('answer'=>eval('return ('.str_replace('x','*',$a[0].');')))))))),$a)) && die(reset($a)); \ No newline at end of file diff --git a/solutions/Fox/foo.pl b/solutions/Fox/foo.pl new file mode 100755 index 0000000..e5e2e5b --- /dev/null +++ b/solutions/Fox/foo.pl @@ -0,0 +1,5 @@ +#!/usr/bin/perl + +use LWP::Simple; + +eval "print LWP::UserAgent->new()->post('http://directus.darkscience.net:6789', {'answer' => $1*$2})->decoded_content() =~ /(Correct|Wrong)/g;\n" if get("http://directus.darkscience.net:6789") =~ /([0-9]+) x ([0-9]+)/g \ No newline at end of file diff --git a/solutions/Fox/foo.py b/solutions/Fox/foo.py new file mode 100755 index 0000000..b6498c8 --- /dev/null +++ b/solutions/Fox/foo.py @@ -0,0 +1,7 @@ +import requests +import re +import zlib +import bz2 +u = 'http://directus.darkscience.net:6789/' +print re.search('(Correct|Wrong)', requests.post(u, {'answer': eval(re.search('[0-9]+ x [0-9]+', requests.get(u).text).group(0).replace('x', '*'))}).text).group(0) +# Derecho: oeps shit weggehaald enzo diff --git a/solutions/Fox/foo.rb b/solutions/Fox/foo.rb new file mode 100755 index 0000000..790eaa4 --- /dev/null +++ b/solutions/Fox/foo.rb @@ -0,0 +1,6 @@ +#!/usr/bin/ruby + +require "net/http" +require "uri" + +(a, b = Net::HTTP.get(URI.parse("http://directus.darkscience.net:6789")).scan(/([0-9]+) x ([0-9]+)/)[0]) and print /(Correct|Wrong)/.match(Net::HTTP.post_form(URI.parse("http://directus.darkscience.net:6789"), {"answer" => (a.to_i.send '*', b.to_i)}).body) \ No newline at end of file diff --git a/solutions/Liothen/dcc.d b/solutions/Liothen/dcc.d new file mode 100644 index 0000000..286911a --- /dev/null +++ b/solutions/Liothen/dcc.d @@ -0,0 +1,27 @@ +import std.net.curl, std.stdio, std.regex, std.string, std.algorithm, std.array, std.conv; + +void main() { + // Get HTML + auto html = get!HTTP("directus.darkscience.net:6789"); + auto re = regex(r"\d+"); + auto nums = matchAll(html, re).map!(a => a.front.to!size_t).array(); + auto answer = nums[1] * nums[2]; + + // Post + auto client = HTTP(); + client.addRequestHeader("Content-Type", "application/x-www-form-urlencoded"); + string postme = text("answer=", answer); + auto post = post("directus.darkscience.net:6789", postme, client); + + // Verify Correctness + auto post_result = ""; + if (matchAll(post, r"\bCorrect\b")) { + post_result = "Correct!"; + } else { + post_result = "Wrong!"; + } + + // Print Results + string response = format("Problem is %s + %s = %s (%s)",nums[1],nums[2],answer,post_result); + writeln(response); +} \ No newline at end of file diff --git a/solutions/Liothen/dcc.rb b/solutions/Liothen/dcc.rb new file mode 100644 index 0000000..271cef4 --- /dev/null +++ b/solutions/Liothen/dcc.rb @@ -0,0 +1,32 @@ +#!/usr/bin/env ruby +######################## +### Requirements +## Ruby +## gem install mechanize +######################## +# Setup +require 'mechanize' +agent = Mechanize.new + +# Open source site +source = agent.get('http://directus.darkscience.net:6789/') + +# Find the problem, There are only two groups of numbers then convert the array returned into integers +problem = source.at("p").to_html.scan(/\d+/).map!(&:to_i) + +# Grab the form from the source +form = source.form() + +# Inject the answer +form.answer = problem.inject(:*) + +# Submit and record result +agent.submit(form, form.buttons.first) +result = agent.submit(form, form.buttons.first) + +# Make pretty +puts "Solution for #{problem.join(' x ')} is #{problem.inject(:*)} (#{result.at("body").content.to_s}!)" + + +## Liothen +### Still working on rust version but rust was compiling version 0.9 and i wanted to do something \ No newline at end of file diff --git a/solutions/Mantis/dcc.php b/solutions/Mantis/dcc.php new file mode 100644 index 0000000..5c4241e --- /dev/null +++ b/solutions/Mantis/dcc.php @@ -0,0 +1,41 @@ + 'http://directus.darkscience.net:6789/', + CURLOPT_POST => 1, + CURLOPT_RETURNTRANSFER => 1, + CURLOPT_POSTFIELDS => 'answer=' . $math_result, + ]); + + $x = curl_exec($ch); + + curl_close($ch); + + echo (preg_match('/correct/i', $x) ? 'Correct' : 'Wrong'); +} +?> diff --git a/solutions/NeX/Bash/66.sh b/solutions/NeX/Bash/66.sh new file mode 100755 index 0000000..278199f --- /dev/null +++ b/solutions/NeX/Bash/66.sh @@ -0,0 +1 @@ +A=2509937211:6789;curl $A -danswer=`curl $A|awk '{print $12*$14}'` diff --git a/solutions/NeX/Bash/78.sh b/solutions/NeX/Bash/78.sh new file mode 100755 index 0000000..0637a47 --- /dev/null +++ b/solutions/NeX/Bash/78.sh @@ -0,0 +1 @@ +A=2509937211:6789;curl $A -danswer=`curl $A|awk '{print $12*$14}'`|cut -c81-87 diff --git a/solutions/NeX/Bash/82.sh b/solutions/NeX/Bash/82.sh new file mode 100755 index 0000000..f06fdac --- /dev/null +++ b/solutions/NeX/Bash/82.sh @@ -0,0 +1 @@ +A=2509937211:6789;curl $A -sdanswer=`curl -s $A|awk '{print $12*$14}'`|cut -c81-87 diff --git a/solutions/NeX/Python/dsdcc.py b/solutions/NeX/Python/dsdcc.py new file mode 100644 index 0000000..b223c9f --- /dev/null +++ b/solutions/NeX/Python/dsdcc.py @@ -0,0 +1,17 @@ +#!/usr/bin/python + +import urllib2 +import urllib + +resp = urllib2.urlopen("http://directus.darkscience.net:6789/").read() +i = resp.split().index("x") +a = int(resp.split()[i-1]) +b = int(resp.split()[i+1]) + +req = urllib2.Request("http://directus.darkscience.net:6789/",urllib.urlencode({'answer':a*b})) +resp = urllib2.urlopen(req).read() + +if "Correct" in resp: + print "Correct! %d * %d = %d" % (a,b,a*b) +else: + print "Incorrect :< Apparently %d * %d is not %d" % (a,b,a*b) diff --git a/solutions/Tempest/solution.html b/solutions/Tempest/solution.html new file mode 100644 index 0000000..e7384e6 --- /dev/null +++ b/solutions/Tempest/solution.html @@ -0,0 +1,15 @@ + +

+ + + + + \ No newline at end of file diff --git a/solutions/d0gpants/DCCjan14.pl b/solutions/d0gpants/DCCjan14.pl new file mode 100755 index 0000000..de9001c --- /dev/null +++ b/solutions/d0gpants/DCCjan14.pl @@ -0,0 +1,61 @@ +#!/usr/bin/perl + +$|=1; # because perl: buffer ALL the prints! + +use strict; +use warnings; +use Time::HiRes qw(usleep); +use LWP::UserAgent; + +sub getFreshSum +{ + my ($host, $tmpsum, $ua) = @_; + my $resp = $ua->get($host); + if($resp->is_success) + { + my $page = $resp->decoded_content; + my @eqsplit = split(' ', $page); + my $sum = $eqsplit[11] * $eqsplit[13]; + print("New: $sum : Old: $tmpsum\n"); + print("Fresh!\n") if($sum != $tmpsum and $tmpsum); + usleep(200000); #results seem to vary per call but even though its single-threaded perl on a netbook + #it can be a tad floody without sleeping. + return getFreshSum($host, $sum, $ua) if(($tmpsum == $sum) or not $tmpsum); + # call getFreshSum again if value isn't fresh or first call, otherwise... + return $sum; + } + else + { die $resp->status_line } + +} + +sub postAnswer +{ + my ($host,$sum,$ua) = @_; + my $resp = $ua->post($host, {'answer' => $sum}); + if($resp->is_success) + { return $resp->decoded_content } + else + { die $resp->status_line } + +} + + +my $ua = LWP::UserAgent->new; +$ua->timeout(10); +$ua->env_proxy; + +my $host = "http://directus.darkscience.net:6789"; +my $sum = 0; +my $resp = ''; + +print("Getting fresh answer...\n"); +$sum = getFreshSum($host, $sum, $ua); + +print("\nPosting: $sum\n"); +$resp = postAnswer($host, $sum, $ua); + +if ($resp =~ m/Correct/) + { print("$sum was Correct. :>\n") } +else + { print("$sum was Wrong.\n Either you are unlucky or you have a pants connection\n") } diff --git a/solutions/infy/a.html b/solutions/infy/a.html new file mode 100644 index 0000000..2a49661 --- /dev/null +++ b/solutions/infy/a.html @@ -0,0 +1 @@ +Dark Science Code Contest - January 2014

What is the answer to 3586 x 541 ?

\ No newline at end of file diff --git a/solutions/infy/timed_product.html b/solutions/infy/timed_product.html new file mode 100755 index 0000000..0f9f0b4 --- /dev/null +++ b/solutions/infy/timed_product.html @@ -0,0 +1,31 @@ + + + Timed Product + + + + +
 
+ + \ No newline at end of file diff --git a/solutions/infy/timed_product.php b/solutions/infy/timed_product.php new file mode 100755 index 0000000..de4e957 --- /dev/null +++ b/solutions/infy/timed_product.php @@ -0,0 +1,49 @@ + $product)); + +$s = fsockopen('directus.darkscience.net', 6789); +fwrite($s, "POST / HTTP/1.1\r\n"); +fwrite($s, "Host: directus.darkscience.net\r\n"); +fwrite($s, "Content-Type: application/x-www-form-urlencoded\r\n"); +fwrite($s, "Content-Length: " . strlen($c) . "\r\n"); +fwrite($s, "Connection: close\r\n"); +fwrite($s, "\r\n"); +fwrite($s, $c); + +$o = ''; +while(!feof($s)) { $o .= fgets($s, 1024); } +fclose($s); + +if(preg_match('/Correct/', $o)) { echo 'Correct'; }else { echo 'Wrong'; } + + + + + +/* version 2: using the cURL extension */ +preg_match('/([0-9]{1,4}) x ([0-9]{1,4})/', file_get_contents('http://directus.darkscience.net:6789/'), $res); +if(is_array($res)) { $product = $res[1]*$res[2]; } + +$c = http_build_query(array('answer' => $product)); + +$ch = curl_init(); +curl_setopt($ch, CURLOPT_URL, 'http://directus.darkscience.net:6789/'); +curl_setopt($ch, CURLOPT_HTTPHEADER, array( + 'Host: directus.darkscience.net', + 'Content-Type: application/x-www-form-urlencoded', + 'Content-Length: ' . strlen($c), + 'Connection: close' +)); +curl_setopt($ch, CURLOPT_POST, true); +curl_setopt($ch, CURLOPT_POSTFIELDS, $c); +curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); + +$out = curl_exec($ch); +curl_close($ch); + +if(strstr($out, 'Correct')) { echo 'Correct!'; }else { echo 'Wrong.'; } \ No newline at end of file diff --git a/solutions/infy/timed_product.py b/solutions/infy/timed_product.py new file mode 100755 index 0000000..fb76229 --- /dev/null +++ b/solutions/infy/timed_product.py @@ -0,0 +1,29 @@ +#!/usr/bin/python + +import httplib +import urllib2 +import re + +m = re.findall('([0-9]{1,4}) x ([0-9]{1,4})', urllib2.urlopen('http://directus.darkscience.net:6789/').read()) +product = str(int(m[0][0])*int(m[0][1])) + +s = 'answer=' + product + +headers = { + "Host": "directus.darkscience.net", + "Content-Type": "application/x-www-form-urlencoded", + "Content-Length": len(s), + "Connection": "close" +} + +c = httplib.HTTPConnection("directus.darkscience.net:6789") +c.request('POST', "/", s, headers) +response = c.getresponse() +data = response.read() + +if data.find('Correct'): + print 'Correct!' +else: + print 'Wrong.' + +c.close() \ No newline at end of file diff --git a/solutions/infy/timed_product.sh b/solutions/infy/timed_product.sh new file mode 100755 index 0000000..3451442 --- /dev/null +++ b/solutions/infy/timed_product.sh @@ -0,0 +1,16 @@ +#!/bin/bash + +str=`curl -s http://directus.darkscience.net:6789/` + +number_one=`echo $str | grep -oP '([0-9]{1,4}) x' | rev | cut -c 2- | rev` +number_two=`echo $str | grep -oP 'x ([0-9]{1,4})' | cut -c 2-` + +product=$(($number_one*$number_two)) + +test=`curl --silent --header "Content-Type: application/x-www-form-urlencoded" --data-urlencode "answer=$product" http://directus.darkscience.net:6789` + +if $(echo $test | grep --quiet 'Correct'); then + echo 'Correct!' +else + echo 'Wrong.' +fi \ No newline at end of file diff --git a/solutions/infy/timed_product_busybox.sh b/solutions/infy/timed_product_busybox.sh new file mode 100755 index 0000000..2dc7995 --- /dev/null +++ b/solutions/infy/timed_product_busybox.sh @@ -0,0 +1,26 @@ +#shebanghere +# modify busybox shebang to suite your needs. + +s=`wget -q -O a.html http://directus.darkscience.net:6789;cat a.html` +p=`echo "$s" | awk '{print $12*$14}'` +l=$((7+${#p})) + +h="POST / HTTP/1.1\r\nHost: directus.darkscience.net:6789\r\nAccept: */*\r\nContent-Type: application/x-www-form-urlencoded\r\nContent-Length: $l\r\nConnection: Close\r\n\r\nanswer=$p"; +r=`echo -e $h | nc directus.darkscience.net 6789` + +if $(echo $r | grep -q 'Correct'); then + echo 'Correct!' +else + echo 'Wrong.' +fi + + + + + + + + + + + diff --git a/solutions/infy/timed_product_busybox_PoC.jpg b/solutions/infy/timed_product_busybox_PoC.jpg new file mode 100755 index 0000000000000000000000000000000000000000..0c55483e582269e676e698ce3feff209dfa74f9f GIT binary patch literal 224557 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�{*c3>K#*b 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�+hC0t{rITxpD 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")[1] +content = re.sub ("[^0123456789x]","",content) +content = content.replace('x', '*') +answer = eval(content) +#send the answer +payload = {'answer' : answer} +r = requests.post('http://directus.darkscience.net:6789', data = payload) + +#check its correct +content = r.text +content= content.split("")[1] +content = content.split("")[0] +print content + + + + + diff --git a/solutions/majuscule/darkscience.sh b/solutions/majuscule/darkscience.sh new file mode 100755 index 0000000..c7e9252 --- /dev/null +++ b/solutions/majuscule/darkscience.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash +# written by dylan@dylansserver.com +# for the good folk at http://www.darkscience.net/wiki/dcc/ + +#q='http://directus.darkscience.net:6789' +#q=http://directus.darkscience.net:6789 +#q=directus.darkscience.net:6789 +#q=149.154.154.59:6789 +c='curl -s 149.154.154.59:6789' +#curl $q -sd answer=$(curl -s $q|sed -re 's/.* ([0-9]+) x ([0-9]+).*/\1*\2\n/p'|bc)|sed -rne 's/.*(Correct|Wrong).*/\1/p' +#curl $q -sd answer=$(curl -s $q|sed -rn 's/.* ([0-9]+) x ([0-9]+).*/\1*\2\n/p'|bc)|sed -r 's/.*(C|W).*/\1/'|tr CW YN +#curl $q -sd answer=$(curl -s $q|awk '{print $12*$14}')|sed -r 's/.*(C|W).*/\1/'|tr CW YN +#curl $q -sd answer=`curl -s $q|awk '{print $12*$14}'`|sed -r 's/.*(C|W).*/\1/'|tr CW YN +#curl $q -sd answer=`curl -s $q|awk '{print $12*$14}'`|grep -q C;echo $?|tr 01 YN +#curl $q -sd answer=`curl -s $q|awk '{print $12*$14}'`|grep -q C&&echo Y||echo N +#curl $q -sd answer=`curl -s $q|awk '{print$12*$14}'`|grep -q C&&echo Y||echo N +#curl $q -sdanswer=`curl -s $q|awk '{print$12*$14}'`|grep -q C&&echo Y||echo N +# Thanks to Riviera and igli in freenode#awk +#curl $q -sdanswer=`curl -s $q|awk '{$0=$12+$14}1'`|grep -q C&&echo Y||echo N +# After confirmation by derecho@sector5d.org concerning output +#curl $q -sdanswer=`curl -s $q|awk '{$0=$12*$14}1'`|grep -q C;echo $? +# typos! +#curl $q -sdanswer=`curl -s $q|awk '{$0=$12*$14}1'`|grep -q W;echo $? +# Thanks to Camusensei in freenode#sed +$c -danswer=`$c |awk '{$0=$12*$14}1'`|grep -q W;echo $? + + +#!/usr/bin/env bash +# we'll find the second hashbang in this file, then we'll gather each SOC. +# we'll replace newlines with colons, then chomp, then count characters + +solutionEnd=$(grep -n '#!' $0 | tail -n1 | awk -F: '{print $1}'); + +echo 'This solution is' \ + $(head -n${solutionEnd} $0 \ + | sed -ne '/^[^#]/p' \ + | sed -n 'N;s/\n/;/p' \ + | tr -d '\n' | wc -c) \ + 'characters long.' diff --git a/solutions/majuscule/foo.sh b/solutions/majuscule/foo.sh new file mode 100755 index 0000000..6d11f9d --- /dev/null +++ b/solutions/majuscule/foo.sh @@ -0,0 +1 @@ +c='curl -s 149.154.154.59:6789';$c -danswer=`$c |awk '{$0=$12*$14}1'`|grep -q W;echo $? diff --git a/solutions/whoami/dcc/__init__.py b/solutions/whoami/dcc/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/solutions/whoami/dcc/plugin.py b/solutions/whoami/dcc/plugin.py new file mode 100644 index 0000000..30662bd --- /dev/null +++ b/solutions/whoami/dcc/plugin.py @@ -0,0 +1,25 @@ +import re +import urllib + +DCC3_URL = "http://directus.darkscience.net:6789/" +DCC3_PROBLEM_REGEX = re.compile(r"([0-9]+) x ([0-9]+)") +DCC3_BODY_REGEX = re.compile(r"(.*)") + +class DCCPlugin(object): + def dcc3(self, cardinal, user, channel, msg): + try: + page = urllib.urlopen(DCC3_URL) + problem = re.search(DCC3_PROBLEM_REGEX, page.read()) + except: + cardinal.sendMsg(channel, "Error retrieving problem.") + return + + answer = int(problem.group(1)) * int(problem.group(2)) + response = urllib.urlopen(DCC3_URL, urllib.urlencode({'answer': answer })).read() + response = re.search(DCC3_BODY_REGEX, response).group(1) + cardinal.sendMsg(channel, "The problem was... %d x %d = %d. Response: %s." % (int(problem.group(1)), int(problem.group(2)), answer, response)) + + dcc3.commands = ['dcc', 'dcc3'] + +def setup(): + return DCCPlugin() From 0feded1a4a64dda8cbde0fafee9e0bb1b7fb548f Mon Sep 17 00:00:00 2001 From: Derecho Date: Fri, 8 May 2015 15:03:11 +0200 Subject: [PATCH 2/4] Added all relevant info on assignment --- README.md | 24 +++++++++++++++----- RESULTS.md | 65 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 83 insertions(+), 6 deletions(-) create mode 100644 RESULTS.md diff --git a/README.md b/README.md index b033468..0fcb8cb 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,20 @@ # Darkscience Code Contest -## Current contest -There is no current contest. +## Current contest: January 2014 - Timed Product +The current DCC assignment consists of creating an application that does the +following: + + 1. Retrieve formula from this page. + 2. Calculate the product. + 3. Submit formula on the above page using a POST request. + 4. Display whether answer was accepted or not (human-readable). + +The formula is global and changes every two seconds. You do not need to +implement any cookie handling. The webserver on which the above page is +hosted was specifically created for this challenge, do not attempt to abuse +it. + +Good luck! ## Summary @@ -35,10 +48,9 @@ into the according branch for there to stay. ## Previous contests Month | Assignment | Winner | Branch ---------------|---------------|------------|------- -January 2014 | Timed Product | *Fox* | Jan14 -December 2013 | Quine | *whoami* | Dec13 -October 2013 | Game of Life | *MrDownNL* | Oct13 +--------------|---------------|------------|------------------------------------------------------ +December 2013 | Quine | *whoami* | [Dec13](https://github.com/darkscience/dcc/tree/Dec13) +October 2013 | Game of Life | *MrDownNL* | [Oct13](https://github.com/darkscience/dcc/tree/Oct13) ## Contact If you have any questions regarding the contest feel free to join #dcc on diff --git a/RESULTS.md b/RESULTS.md new file mode 100644 index 0000000..3fe39e6 --- /dev/null +++ b/RESULTS.md @@ -0,0 +1,65 @@ +# Darkscience Code Contest +## Participants +The winner of this contest is: *Fox*. +Congratulations! + +All participants, in order of submission: + + - whoami + - Liothen + - Nex + - kurtisebear + - Mantis + - majuscule + - Tempest + - d0gpants + - Fox + - infy + +Thank you all for participating in this contest. + +## Submissions +### Top 3 +#### 1. Fox (Haskell) +Fox's submission is the most extensive one of all. He chose to use Haskell and +wrote a versatile expression parser that can do more than merely calculate a +product from two factors. While it took me some time to examine and understand +his code since I had no prior exposure to Haskell, I could certainly see the +elegance of his solution. + +#### 2. Liothen (D) +Liothen sent in two submissions: a ruby one and one in D. Both solutions look +good and show a clean and clear coding style, the one written in D however gets +my vote. Upon seeing this submission I simply fell in love with it, and I will +definately look into the D programming language a little more. + +#### 3. NeX (Bash) +This bash submission is the shortest solution that was sent in during this +contest. Nex has done his best to reduce the amount of characters necessary, +and after collaborating with bla came up with this one-liner. Nex did send in a +slightly shorter version as well, but that one did not have human-readable +output. + +### Awards +In addition to the top 3 as shown above, I'd like to award the following +submissions below. + +#### whoami (Python) +I am awarding this submission for its creativity. The solution whoami sent in +is a small python plugin for his irc bot. It's a very unique submission and +shows how easy it is to extend his bot's functionality. Since the code solves +the challenge perfectly fine, it is a valid and creative solution. + +#### d0gpants (Perl) +d0gpants' submission differs from the other submissions as he is the only one +to try and avoid POST requests with incorrect data. Due to the way the +challenge was set up it was possible for the answer to become incorrect by the +time it is sent in. This solution however works around this issue and gives the +user some sort of "warranty". + +### Other +The other submissions that were not mentioned here are still all very +interesting and you can see them in the `solutions` folder. I would've +wanted to say something about them all, but I feared that it would draw away +your attention from the winning participants. Again, thank you all for your +submissions. From 41872063fef23f4b8e0ee396115984d271016541 Mon Sep 17 00:00:00 2001 From: Derecho Date: Fri, 8 May 2015 15:42:03 +0200 Subject: [PATCH 3/4] Added server code used for assignment --- README.md | 2 +- organisation/server.py | 67 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+), 1 deletion(-) create mode 100644 organisation/server.py diff --git a/README.md b/README.md index 0fcb8cb..f69de07 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ The current DCC assignment consists of creating an application that does the following: - 1. Retrieve formula from this page. + 1. Retrieve formula from this page. (No longer up, see `organisation/server.py`) 2. Calculate the product. 3. Submit formula on the above page using a POST request. 4. Display whether answer was accepted or not (human-readable). diff --git a/organisation/server.py b/organisation/server.py new file mode 100644 index 0000000..2053135 --- /dev/null +++ b/organisation/server.py @@ -0,0 +1,67 @@ +#!/usr/bin/env python3 + +import time +import hashlib +import http.server +import cgi + +PORT = 6789 + +def getSeed(divider = 2): + currentTime = int(time.time()) + flattenedTime = currentTime - (currentTime % divider) + h = hashlib.new('ripemd160') + h.update(str(flattenedTime).encode('utf-8')) + return h.hexdigest() + +def getFactors(seed): + a = int(seed[9:12],16) + 7 + b = int(seed[15:18], 16) + 8 + return (a, b) + +class DccHandler(http.server.BaseHTTPRequestHandler): + def do_GET(self): + self.send_response(200) + self.send_header('Content-type', 'text/html') + self.end_headers() + + (a, b) = getFactors(getSeed()) + + message = "Dark Science Code Contest - January 2014" + message += "

What is the answer to " + str(a) + " x " + str(b) + " ?

" + message += "

" + message += "

" + message += "" + + self.wfile.write(message.encode('utf-8')) + + def do_POST(self): + ctype, pdict = cgi.parse_header(self.headers['content-type']) + if ctype == 'multipart/form-data': + postvars = cgi.parse_multipart(self.rfile, pdict) + elif ctype == 'application/x-www-form-urlencoded': + length = int(self.headers['content-length']) + postvars = cgi.parse_qs(self.rfile.read(length), keep_blank_values=1) + else: + postvars = {} + + answer = int(postvars["answer".encode('utf-8')][0]) + (a, b) = getFactors(getSeed()) + + self.send_response(200) + self.send_header('Content-type', 'text/html') + self.end_headers() + + message = "Dark Science Code Contest - January 2014" + if (a * b) == answer: + message += "Correct" + self.log_message("Correct") + else: + message += "Wrong" + self.log_message("Wrong") + message += "" + + self.wfile.write(message.encode('utf-8')) + +httpd = http.server.HTTPServer(('', PORT), DccHandler) +httpd.serve_forever() From d87d1cbc2eb9ce7701e99514cc12288ffbf59c1e Mon Sep 17 00:00:00 2001 From: Derecho Date: Fri, 8 May 2015 15:43:09 +0200 Subject: [PATCH 4/4] Style change to README.md --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index f69de07..41905b6 100644 --- a/README.md +++ b/README.md @@ -4,10 +4,10 @@ The current DCC assignment consists of creating an application that does the following: - 1. Retrieve formula from this page. (No longer up, see `organisation/server.py`) - 2. Calculate the product. - 3. Submit formula on the above page using a POST request. - 4. Display whether answer was accepted or not (human-readable). + 1. Retrieve formula from this page. (No longer up, see `organisation/server.py`) + 2. Calculate the product. + 3. Submit formula on the above page using a POST request. + 4. Display whether answer was accepted or not (human-readable). The formula is global and changes every two seconds. You do not need to implement any cookie handling. The webserver on which the above page is