CrackMe – mały program stworzony wyłącznie w celu złamania jego zabezpieczenia (lub zabezpieczeń), czyli odgadnięcie klucza, odpowiednie spreparowanie kodu wykonywalnego itp. Pisany najczęściej przez jednego crackera dla innych crackerów w celu sprawdzenia umiejętności inżynierii odwrotnej.
Programy Crackme mają podobne zabezpieczenia do tych stosowanych w aplikacjach komercyjnych. Poprawne rozwiązanie danego crackme zwykle określa autor i dołącza tę informację w postaci pliku „readme” lub informacji w samym programie. Czasami pojawiają się zakazy co do używania konkretnego narzędzia, jednak respektowanie tych zasad zależy od crackera. Typ rozwiązania uzależniony jest od natury samego crackme przy czym można dokonać następującego podziału programów crackme ze względu na cel jaki postawił autor:
odnalezienie numeru seryjnego – co jest demonstracją zabezpieczenia „serial fishing”, napisanie keygena do crackme – ten typ crackme nazywany jest również mianem „KeygenMe”, stworzeniu cracka – czyli patcha zmieniający kod binarny crackme, dopisaniu nowej funkcjonalności programu – typ nazywany jest także mianem „ReverseMe”.