Senior Software Engineer-Embedded Security

Motorola Solutions Framingham , MA 01702

Posted 3 months ago

You will work in and lead small multi-disciplinary teams working on the cutting edge of technology tackling some of the hardest computer problems in the world. Your role will be performing computer network exploitation: reverse-engineering, vulnerability research, and application development for custom hardware.

The position will require a broad base of knowledge of how processors, operating systems, applications, wireless network communications, and encryption protocols work under the hood.

Develop software for data analytics, network-based applications, reverse engineering tasks, embedded system development, and integration with custom purpose built hardware.Responsibilities

  • Test for and demonstrate vulnerabilities in embedded system wireless products

  • Assess the severity, strengths, and weaknesses of solutions

  • Author whitepapers describing vulnerabilities, proof-of-concept exploitation, and testing results

  • Works with customers to understand their mission, present technical information tailored to their needs, demonstrates a command of the subject material and the overall system

  • Communicates customer needs, mission, and objectives to engineers and management effectively

  • Assists in the technical approach and effort estimation for new projects

Specific Skills/Knowledge:

  • Familiarity with security principles such as data separation, side-channel attacks, least-privilege, access controls, encryption protocols, key exchange

  • Understanding of application binary interfaces and how compilers, linkers, and assemblers function to produce binaries and libraries.

  • Familiar with symmetric and asymmetric encryption protocols and key exchange mechanisms

  • Grasp of computer security principles

  • Ability to write software in C, C++, assembly, and scripting languages (Python, Perl, Ruby, etc)

  • Experience with disassemblers and reverse engineering tools (IDAPro, Binwalk, etc)

  • Knowledge of common vulnerability mitigation (DEP, NX, ASLR, etc) and exploitation (buffer overflow, heap spray, NOP sled, ROP, etc) techniques

  • Vulnerability analysis and penetration testing of embedded devices

  • Familiarity with data-at-rest and network security principles

  • Experience with processor boot process and secure boot

  • Enjoy solving unique puzzles like this:

Find an input string which will cause check_if_cstring_is_my_favorite() to return true in the following code. C Code is not available for check_if_cstring_is_my_favorite(), but the ARM disassembly is available.

int main(int argc, char *argv[])

{

if(argc != 2) {

printf("Usage: %s
", argv[0]);

} else if(strlen(argv[1]) != 8) {

printf("input_string must be 8 characters
");

} else {

bool is_my_favorite = check_if_cstring_is_my_favorite(argv[1]);

if(is_my_favorite) {

printf("You found my favorite string!
");

} else {

printf("That is not my favorite string.
");

}

}

return 0;

}
00008274 <_z31check_if_cstring_is_my_favoritepc>:
8274: push {r4, r5, lr}
8278: ldr r1, [pc, #80] ; 82d0
827c: sub sp, sp, #20
8280: add r4, sp, #4
8284: mov r5, r0
8288: mov r2, #9
828c: add r1, pc, r1
8290: mov r0, r4
8294: bl 9a80
8298: mov r3, #0
829c: ldrb r2, [r5, r3]
82a0: ldrb r1, [r4, r3]
82a4: eor r2, r2, #13
82a8: cmp r1, r2
82ac: bne 82c8
82b0: add r3, r3, #1
82b4: cmp r3, #8
82b8: bne 829c
82bc: mov r0, #1
82c0: add sp, sp, #20
82c4: pop {r4, r5, pc}
82c8: mov r0, #0
82cc: b 82c0
82d0: 0000be14 .word 0x0000be14
000140a8 <_global_impure_ptr-0x84>:
140a8: 3d593d40
140ac: 4c413d5f
140b0: 61735500
140b4: 203a6567
140b8: 3c207325
140bc: 75706e69
140c0: 74735f74


See if you are a match!

See how well your resume matches up to this job - upload your resume now.

Find your dream job anywhere
with the LiveCareer app.
Download the
LiveCareer app and find
your dream job anywhere
lc_ad

Boost your job search productivity with our
free Chrome Extension!

lc_apply_tool GET EXTENSION

Similar Jobs

Want to see jobs matched to your resume? Upload One Now! Remove
Embedded Software Engineer Music Services

Bose

Posted 2 days ago

VIEW JOBS 11/14/2018 12:00:00 AM 2019-02-12T00:00 Job Description Embedded Software Engineer for Music Services for ECO2 Products Bose is an equal opportunity employer that is committed to inclusion and diversity. We evaluate qualified applicants without regard to race, color, religion, sex, sexual orientation, gender identity, genetic information, national origin, age, disability, veteran status, or any other legally protected characteristics. For additional information, please review: (1) the EEO is the Law Poster (http://www.dol.gov/ofccp/regs/compliance/posters/pdf/OFCCP_EEO_Supplement_Final_JRF_QA_508c.pdf); and (2) its Supplements (http://www.dol.gov/ofccp/regs/compliance/posters/ofccpost.htm). Please note, the company's pay transparency is available at http://www.dol.gov/ofccp/pdf/EO13665_PrescribedNondiscriminationPostingLanguage_JRFQA508c.pdf. Bose is committed to working with and providing reasonable accommodations to individuals with disabilities. If you need a reasonable accommodation because of a disability for any part of the application or employment process, please send an e-mail to Wellbeing@bose.com and let us know the nature of your request and your contact information. Bose Framingham MA

Senior Software Engineer-Embedded Security

Motorola Solutions