Exploit – program mający na celu wykorzystanie istniejących błędów w oprogramowaniu[1].
Exploit wykorzystuje występujący w oprogramowaniu błąd programistyczny (np. przepełnienie bufora na stosie lub stercie, czy format string) w celu przejęcia kontroli nad działaniem procesu i wykonania odpowiednio spreparowanego kodu maszynowego (tzw. shellcode), który najczęściej wykonuje wywołanie systemowe uruchamiające powłokę systemową z uprawnieniami programu, w którym wykryto lukę w zabezpieczeniach.
Osoby używające exploitów bez podstawowej wiedzy o mechanizmach ich działania często nazywane są script kiddies.