JOBSEARCHER

Software Reverse Engineer

Software Reverse EngineerSTR is hiring a Software Reverse Engineer who has a passion for research and analysis of vulnerabilities in cyber physical systems. Work must be performed onsite.What you'll do:Reverse engineering complex software or firmware targets, ranging from typical Windows/Linux binaries to embedded firmware running non-traditional computer architectures and operating systemsDeveloping and applying automated reverse engineering and binary analysis tools to characterize protocols, interfaces, and functionality of target systemsDeveloping innovative cybersecurity solutionsWorking in multi-discipline teams to tackle challenging problems from a wide variety of technologies to develop innovative cybersecurity solutionsPerforming vulnerability weaponization, exploit development, payload development, and exploit mitigation on a variety of challenging targetsDocumenting, demonstrating, and presenting researchSolving real world problems that have an impact on national securityWho you are:This position requires an Active Top Secret (TS) security clearance, for which U.S. citizenship is needed by the U.S. GovernmentBS, MS or PhD in Computer Science, Computer Engineering, Cybersecurity or related field (or equivalent work experience)Experience with binary analysis of software/firmwareExperience with disassembly tools, such as IDA Pro, Binary Ninja, or GhidraProficiency 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.Nice to haves:Vulnerability research and analysisKnowledge of weaponizing discovered vulnerabilities into exploitsImplant or software patch developmentFamiliarity 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 managementEmbedded systems or firmware analysisExperience development custom emulation tools to enable dynamic analysisDisassembler/decompiler module developmentExperience analyzing and reconstructing code/data flowAutomated reverse engineering or software analysis tool developmentExperience debugging software without source codeKnowledge of binary file structures and formatsExperience analyzing protocols or message structuresKnowledge of anti-reverse engineering techniquesKnowledge of intrusion detection and anti-malware systems and techniquesPay InformationFull-Time Salary Range: $112,000 - $154,000 The salary range listed is based on external market data. Offers are based on factors, such as but not limited to, the candidate's experience, education, training, key skills/critical skills, security clearances, and prevailing market and business conditions.