Anvar Karimson

Running Stripe CTF 2.0 on Mesos

Back in 2012 Stripe launched Capture the Flag 2.0 Web Edition. It was a security challenge that allowed participants to learn about security vulnerabilities in a sandboxed environment. The challenge was divided into 9 levels. Each level was a web application containing a particular security vulnerability that a participant had to successfully exploit in order to gain access to the password for unlocking the next level. The further the participant got the harder the levels became. Once all levels had been completed the participant had successfully captured the flag. The competition was immensely fun, and I learned a great deal during it. The challenge lasted for a week before it concluded, but thankfully Stripe open-source all the levels. A few weeks ago I wanted to run through it again as a refresher, and also allow colleagues who missed it the first time to experience it.

Read More »

Introduction to CUDA

GPUs; once strongly associated with gaming are now becoming common place in industry where frameworks like CUDA and OpenCL are exposing their power for general applications with serious needs for computation. The key to their power is their parallelism. Where a standard CPU has between 4-8 cores, a GPU like the Nvidia GTX Titan readily comes with 2688 cores. The key, therefore, to successfully unlock their power is two-fold. The first part is to have an algorithm that can scale to the required level of parallelism. The second part, which may be less obvious, is to maximize GPU occupancy by carefully partitioning the computation to work with the hardware layout. In order to do that we must first look at what a GPU looks like at logical hardware level.

Read More »