Bomba logiczna to część programu komputerowego przeznaczona do wykonania złośliwej funkcji po spełnieniu określonych warunków. Na przykład pracownik może napisać program zawierający instrukcje usunięcia ważnych plików w przypadku jego zwolnienia. Bomby logiczne mogą być zawarte w skądinąd nieszkodliwym programie lub w z natury złośliwym programie, takim jak wirus.
W przeciwieństwie do wirusów, bomby logiczne nie replikują się same ani nie rozprzestrzeniają się na inne systemy. Dlatego bomby logiczne mogą być wymierzone w konkretną ofiarę bez stwarzania zagrożenia dla innych. Fakt, że nie replikują się, sprawia również, że bomby logiczne są łatwiejsze do napisania niż inne złośliwe oprogramowanie.
Niektóre bomby logiczne są zaprogramowane do wykonania określonej funkcji w określonym dniu, a nie po określonym zdarzeniu. Ten rodzaj bomby logicznej jest często nazywany bombą zegarową. Złośliwe programy, takie jak wirusy, robaki i konie trojańskie, są czasami zaprogramowane do atakowania komputera hosta w określonym dniu, co pozwala im niepostrzeżenie rozprzestrzeniać się w systemie komputerowym, zanim staną się aktywne.
Czasami bomby logiczne są zaprogramowane, aby aktywować się, gdy coś się nie dzieje. Na przykład pracownik może zaprojektować bombę logiczną do usuwania plików, gdy nie logował się do systemu przez miesiąc. Bomby logiczne tego rodzaju należą do najniebezpieczniejszych, ponieważ warunki ich aktywacji mogą zostać spełnione w niezamierzony sposób. Na przykład, gdyby programista nie został wystrzelony, ale niespodziewanie zginął, nie byłoby możliwości zapobieżenia aktywacji bomby.
Program, który wykonuje określoną funkcję po spełnieniu z góry określonych warunków, jest zwykle uważany za bombę logiczną tylko wtedy, gdy funkcja jest zarówno niepożądana, jak i nieznana użytkownikowi. Oprogramowanie próbne, które przestaje działać po określonym czasie, nie jest zwykle nazywane bombą logiczną, chociaż działa w ten sam sposób. Bomby logiczne często w jakiś sposób sabotują system hosta, usuwając ważne pliki lub funkcje albo umożliwiając nieautoryzowany dostęp do systemu użytkownika.
Jednym ze słynnych incydentów, rzekomo z użyciem bomby logicznej, był incydent z rurociągiem syberyjskim w 1982 r. Podobno Centralna Agencja Wywiadowcza Stanów Zjednoczonych (CIA) mogła użyć takiej techniki do sabotowania sowieckiego rurociągu gazu ziemnego. Według relacji pracownika Rady Bezpieczeństwa Narodowego Thomasa C. Reeda, do oprogramowania, które Sowieci ukradli kanadyjskiej firmie, wpisano bombę logiczną. Sowieci wykorzystali skradzione oprogramowanie do kontrolowania rurociągu, a bomba logiczna rzekomo spowodowała ogromną eksplozję. Nie było ofiar. Konto Reeda zostało jednak zakwestionowane, a eksplozja mogła mieć inną przyczynę, na przykład wadliwą konstrukcję.