luker983 / nsa-codebreaker-2019

NSA Codebreaker Challenge 2019 write-ups.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NSA Codebreaker Challenge 2019

My solutions to the 2019 NSA Codebreaker Challenge.

Overview

The 2019 Codebreaker Challenge consists of a series of tasks that are worth a varying amount of points based upon their difficulty. All tasks will become available immediately once the Challenge goes live and can be solved in any order, though there may be some dependencies between tasks. The point value associated with each task is based on relative difficulty and schools will be ranked according to the total number of points accumulated by their students. It is still recommended to solve tasks in order since the tasks flow with the storyline, but that is not a requirement. Solutions may be submitted at any time for the duration of the Challenge. Good luck!

Background

DISCLAIMER - The following is a FICTITIOUS story meant for providing realistic context for the Codebreaker Challenge and is not tied in any way to actual events.

Tech savvy terrorists have developed a new suite of communication tools to use for attack planning purposes. Their most recent creation — TerrorTime — is a secure mobile chat application that runs on Android devices. This program is of particular interest since recent intelligence suggests the majority of their communications are happening via this app. Your mission is to reverse-engineer and develop new exploitation capabilities to help discover and thwart future attacks before they happen. There are 7 tasks of increasing difficulty that you will be working through as part of this challenge. Ultimately, you will be developing capabilities that will enable the following:

  1. Spoof TerrorTime messages
  2. Masquerade (i.e., authenticate) as TerrorTime users without knowledge of their credentials
  3. Decrypt TerrorTime chat messages

The first three tasks of the challenge will provide you with everything you need to install and run TerrorTime in an Android emulator. You will also discover account information for two TerrorTime users, which will enable you to send chat messages between the users by running the app in two emulators. Beginning with Task 4, the difficulty will increase significantly as you begin working towards the goals outlined above. We hope you enjoy the challenge!

Task Checklist

  • Task 1
  • Task 2
  • Task 3
  • Task 4
  • Task 5
  • Task 6a
  • Task 6b
  • Task 7

About

NSA Codebreaker Challenge 2019 write-ups.


Languages

Language:Java 91.7%Language:Python 8.3%