Skip to content

Latest commit

 

History

History
75 lines (44 loc) · 2.47 KB

Exploit_Developer.md

File metadata and controls

75 lines (44 loc) · 2.47 KB

Summary

A penetration test, colloquially known as a pen test, pentest or ethical hacking, is an authorized simulated cyberattack on a computer system, performed to evaluate the security of the system. Not to be confused with a vulnerability assessment.

Baseline

Hard Skills

  • Strong experience with C, C++, and Assembly (x86, ARM, etc).
  • Strong understanding of low-level computer fundamentals, assembly and processor architecture.
  • Electronic Skills (soldering, in-circuit debugging).
  • Bus and protocol analysis / reverse engineering.
  • Hardware / Software reverse engineering.
  • Experience with vuln analysis, fuzzing, reverse engineering, and advanced exploitation techniques; hands-on familiarity with tools such as WinDBG, GDB, Wireshark, IDA Pro, Burp Suite, Ghidra, etc.
  • Solid working knowledge of different OS and network structures and protocols; experience with different classes of coding flaws and offensive primitives (e.g. integer/stack/heap overflows, use-after-free bugs, info leaks).
  • Strong understanding of modern security mitigations and how to bypass them (e.g., stack cookies, SafeSEH, DEP, ASLR, CFG, and so on), as well as common detection capabilities and how to evade them.
  • Low-level system security / programming (e.g. kernel, driver, hypervisor, secure boot)
  • Hands-on experience with firmware emulation (QEMU, BOCHS, etc) is a plus.
  • Windows, Linux, Android, iOS kernel experience and development skills

Soft Skills

  • The ability to learn ‘just enough' of a language or technology in order to analyze it in the context of a vulnerability.
  • Ability to learn and dig into code. The Metasploit Framework code base is large and was contributed by hundreds of developers. Not everything is spelled out, but everything is discoverable. Enthusiasm for code spelunking is a prerequisite for success.
  • Ability to work asynchronously and directly with a team of co-workers and volunteers from around the globe.

Education

  • Bachelor's degree in Computer Science, Computer Engineering, Electrical Engineering or equivalent experience

Certification

  • eCXD
  • eCRE
  • SEC660
  • SEC760

Job Salary

Asia

$78K <= $81K <= $108K

Africa

$49K <= $61K <= $79K

North America

$80K <= $100K <= $166K

South America

$72K <= $96K <= $132K

Europe

£32,624 <= £79,999 <= £102,499

Oceania

AU$77K <= AU$103,990 <= AU$111K

Interview Questions

Training Resources