Posted in

Software Reverse Engineer

Software Reverse Engineer

CompanySTR
LocationBurlington, MA, USA
Salary$Not Provided – $Not Provided
TypeFull-Time
DegreesBachelor’s, Master’s, PhD
Experience LevelMid Level, Senior

Requirements

  • Active Top Secret (TS) security clearance
  • BS, MS or PhD in Computer Science, Computer Engineering, Cybersecurity or related field (or equivalent work experience)
  • Experience with binary analysis of software/firmware
  • Experience with disassembly tools, such as IDA Pro, Binary Ninja, or Ghidra
  • Proficiency in one or more programming languages: C/C++, Python, etc.
  • Proficiency in one or more Assembly Languages: x86, ARM, etc.
  • General understanding of reverse engineering fundamentals: memory layout, calling conventions, etc.

Responsibilities

  • Reverse engineering complex software or firmware targets, ranging from typical Windows/Linux binaries to embedded firmware running non-traditional computer architectures and operating systems
  • Developing and applying automated reverse engineering and binary analysis tools to characterize protocols, interfaces, and functionality of target systems
  • Developing innovative cybersecurity solutions
  • Working in multi-discipline teams to tackle challenging problems from a wide variety of technologies to develop innovative cybersecurity solutions
  • Performing vulnerability weaponization, exploit development, payload development, and exploit mitigation on a variety of challenging targets
  • Documenting, demonstrating, and presenting research
  • Solving real world problems that have an impact on national security

Preferred Qualifications

  • Vulnerability research and analysis
  • Knowledge of weaponizing discovered vulnerabilities into exploits
  • Implant or software patch development
  • Familiarity with binary emulation or vulnerability research, including tools such as QEMU or AFL++
  • Experience with DSP architectures, such as Texas Instruments, STMicroelectronics, NXP, or Analog Devices
  • Knowledge of operating system internals including memory/process/thread management
  • Embedded systems or firmware analysis
  • Experience development custom emulation tools to enable dynamic analysis
  • Disassembler/decompiler module development
  • Experience analyzing and reconstructing code/data flow
  • Automated reverse engineering or software analysis tool development
  • Experience debugging software without source code
  • Knowledge of binary file structures and formats
  • Experience analyzing protocols or message structures
  • Knowledge of anti-reverse engineering techniques
  • Knowledge of intrusion detection and anti-malware systems and techniques