Tuesday, July 7, 2015

Observing Cache Associativity Effects

How Certain Memory Access Patterns Can Actually Degrade Performance

As processor clock speeds increase and memory latency improving comparatively slowly, it's important to make efficient use of the system's cache. Having your programs data stay within one of the cache hierarchies (the lower the better), is crucial for having a high performance system that can take advantage of the CPU's internal optimization mechanisms without being bounded by memory access time.

Monday, February 9, 2015

TMP Powered C++ Pretty Printer

Being able to pretty print STL containers is an important task for any application that uses the STL. Since standard containers don't overload operator << nor provide a printing function, having a modular,generic pretty printing class allows one to print containers with a programmer-friendly interface that makes it easy to override default behavior and customize printing, provide printing functionality for groups of containers that behave similarly semantically or otherwise, and introduce custom types.

Wednesday, December 17, 2014

Lego Mindstorms NXT Autonomous Navigation Tutorial UPDATE

In my previous post regarding autonomous navigation for the Lego Mindstorms NXT, I linked a youtube video series about how I planned on implementing it. While the video series is yet to come, the full code for the autonomous driving is available on GitHub:

Autonomous NXT GitHub

Tuesday, December 16, 2014

Slight, yet Important Change to Williams Parallel Quicksort Algorithm

Upon reading Anthony Williams' excellent book on concurrency and mutlithreaded programming in C++, C++ Concurrency In Action, I wanted to take a step further in analyzing the parallel quicksort algorithm used and developed throughout the chapters that is later even given the finishing touch by submitting work to a thread-pool.

Monday, November 24, 2014

Buffer Overflow Exploit : picoCTF 2014 Best_Shell Writeup

This shell is super useful! See if you can get the flag! The binary can be found at /home/best_shell/ on the shell server. The source can be downloaded here."  -- problem definition

This was perhaps one of the most straightforward problems to solve this year, yet was worth 160 points! We're given a relatively short problem statement and some code to analyze. Here it is:

Saturday, November 22, 2014

XSS Attack : Exploring picoCTF 2014 secure_page_service

"The bad guys have hidden their access codes on an anonymous secure page service. Our intelligence tells us that the codes was posted on a page with id 43440b22864b30a0098f034eaf940730ca211a55, but unfortunately it's protected by a password, and only site moderators can view the post without the password. Can you help us recover the codes?"  - problem definition

This year, picoCTF had a problem worth 100 points, titled "secure_page_service" which seemed to be a primitive "facebook" style service where you can share posts, view other posts, and even flag other posts for moderation (Which is quite important!).

Monday, November 17, 2014

picoCTF 2014 SQL Injection 1 Writeup

In this series pf writeups we'll be dissecting SQL injections to solve picoCTF challenges. There will be a total of 4 articles in this series, with each one going a bit more in depth and using different SQL injection techniques to exploit vulnerabilities present on the problem webpages.