Reverse Engineer

Rosslyn or Huntsville, AL (hybrid), 1099, W2

Our Client is seeking an experienced Staff Reverse Engineer to join their growing team. In this role, your primary responsibilities will be performing vulnerability research and exploit/cyber-attack development on operational technologies (OT) to support platform vulnerability assessments, customer-directed research, internal research, and to improve Client’s core products. You will assess critical operational technology systems, reverse engineer their software and hardware, identify vulnerabilities, design exploits and attacks, build custom capabilities, and field your effects on live networks and platforms.

You will play a crucial role in helping Client defend critical national infrastructure, weapons platforms, and logistics by thinking like an attacker. You will be a member of Client’s Research team and should be prepared to understand, reverse engineer, and find vulnerabilities in OT devices down to the hardware and firmware level. You should be quick and effective at deconstructing and understanding a firmware binary using a tool like Ghidra, IdaPro, etc. You should also have a strong understanding of C/C++ and other common embedded device programming languages, as well as embedded Real Time Operating Systems (RTOS) so that you fully understand the firmware/software functions of the device being researched. You should also be able to examine the hardware components of a device, identify chipsets, interpret datasheets, and extract firmware.

Be flexible and ready to learn. You will receive a wide variety of work in support of more general Client Research priorities. For example, you might be asked to develop a prototype software capability that decodes a proprietary serial protocol, review rules and heuristics to ensure proper cyber detection, provide an attacker’s perspective in a white paper, or provide a briefing to a senior leader about the technical implications of a vulnerability that you found. Work in a startup environment where your skills are exceptional, direction can shift, pace is expedient, and failure is not an option.

Must be in office 3-4 days a week.

Responsibilities

  • Travel to customer sites on average 15-20% of the time
  • Reverse engineer firmware/software binaries/hardware using the tools of your choice
  • Reverse engineer serial data protocol traffic using Client’s products and the tools of your choice
  • Write code in C/C++ and/or Python to demonstrate your findings and build general OT red teaming tools
  • Conduct system decompositions, vulnerability assessments, and penetration tests of OT platforms like planes, trains, and tanks
  • Identify remote, proximal, and local cyber access vectors into platform networks, identify critical cyber components of the system, then build and demonstrate effective attacks against systems
  • Remote/proximal vectors may include RF datalinks such as UHF/VHF/SATCOM, and others like WiFi and Bluetooth so experience with RF and signal protocols is a plus
  • Write reports to record your findings and convey them to the Program Manager for inclusion into a final report
  • Effectively communicate both verbally and in writing, technical findings and concepts to internal stakeholders and customers
  • Work with Cyber Threat Engineers to develop the rules, signatures, and heuristics for Client cybersecurity products protecting OT systems and serial networks as part of a team
  • Work with the Cyber Threat Analysts to understand the OT threat landscape and to collect pertinent data to project objectives
  • Become a systems expert in one or more industries such as aviation, rail, weapons systems, maritime, space systems and others

Requirements

  • TS/SCI Clearance
  • BS or MS in Computer Science, Electrical Engineering, Computer Engineering, or equivalent
  • Familiarity with serial data protocols such as MIL-STD-1553, CAN, ARINC 429, UART, SPI, I2C, etc. is preferred
  • Experience in reverse engineering software/firmware or hardware of complex embedded systems
  • Experience in red teaming, vulnerability research, and cybersecurity
  • Knowledge of processor architectures and reading and writing assembly languages
  • Experience with multiple programming languages like C/C++, Python, Java, Go, Rust, etc.
  • Expert proficiency in communication and network protocols, computer architecture, and binary analysis
  • Experience with program analysis topics like dataflow analysis, compiler design, and symbolic execution
  • Ability to efficiently multitask and accommodate change of priorities on-demand

Bonus Points

Join ClearedCollab

Apply for this Job

Upload your CV/resume or any other relevant file. Max. file size: 1 MB.