top | item 7105644

(no title)

drharris | 12 years ago

Man, no way this is going to run on any sort of Windows environment. Guess I won't get to sneak in CTF time at work this time around.

discuss

order

scotch_drinker|12 years ago

I have not gotten the test harness (written in python) to run on windows yet but the level0 executable is just a ruby script and can be run on Windows with some modifications. If you try to run "python test/harness", it will pull the dictionary down locally in the test folder. Once that's done, make the following modification to the level0 file:

contents = ARGV.length > 1 ? File.read(ARGV[1]) : $stdin.read

That's just allowing you to send the test files in on the command line. From there, you can measure the time using PowerShell's Measure-Command like so:

Measure-Command {ruby .\level0 "test/data/words" "long.txt"}

Assuming ruby is in your PATH and the "test/data/words" is a renamed words dictionary file. It's a little work but you can definitely do it on Windows. I'm working on getting the python test harness to work on Windows.

mjallday|12 years ago

Try vagrant (http://www.vagrantup.com/) and spin up a VM!

jamesgeck0|12 years ago

Note that `vagrant up` NEEDS to be run from an admin console for Level 2. The sample application is written in node, and npm wants to make symlinks on the mounted Windows filesystem, which is apparently a privileged operation.

It's a bit of a shame the test harness isn't Windows compatible; it's rather small, and it doesn't look like the fixes required would have been very difficult.

drharris|12 years ago

I figured I could either spend the next week fighting script execution on Windows or just spin up a linux VM and be good to go. I wound up installing ubuntu manually on a VirtualBox instance. Had heard of Vagrant, but didn't realize what it offered!

jweather|12 years ago

Working great with vagrant+VirtualBox here on Windows. I initially set it up to try out the CTF docker image, but it's working fine straight out of the precise64 box (+ an apt-get git)