Saatavilla on melko vähän erilaisia eettisiä hakkerointiohjelmistoja, vaikka monet niistä kuuluvat yhteen useista luokista. Verkon skannaus- ja kartoitusohjelmia käytetään usein verkon arvioimiseen ja kartoittamiseen, jolloin käyttäjä voi löytää heikkouksia ja alueita, joilla hyökkäys voidaan käynnistää. On myös useita ohjelmia, joita voidaan käyttää hyökkäyksen aloittamiseen verkkoa tai järjestelmää vastaan, jotka eivät itse asiassa vahingoita järjestelmää, vaan antavat jollekin pääsyn hyökkäyksen kautta. Salasanan palautus- tai murtotyökalut ovat myös suosittu eettisen hakkerointiohjelmiston muoto, jonka avulla joku voi löytää salasanoja eri menetelmillä.
Eettinen hakkerointiohjelmisto viittaa tyypillisesti hakkerointiin käytettäviin ohjelmiin, mutta jotka eivät aiheuta haitallisia tai haitallisia vaikutuksia. Näitä ohjelmia käyttävät tyypillisesti yrityksen ”valkoisen hatun” hakkerit etsimään heikkouksia järjestelmistään. Yksi suosituimmista ja tärkeimmistä valkoisen hatun hakkerointiohjelmistoista on ohjelma, jota käytetään verkon skannaamiseen ja kartoittamiseen. Tämän tyyppisellä ohjelmalla voidaan kartoittaa erilaisia verkkoyhteyksiä, jolloin hakkeri voi löytää verkosta heikkouksia tai kohtia, joita hän voi hyökätä.
Kun tämäntyyppinen heikkous on löydetty, valkoinen hattu hakkeri voi käyttää eettistä hakkerointiohjelmistoa hyökätäkseen järjestelmään. Näitä ohjelmia ei ole suunniteltu aiheuttamaan todellista tai pitkäaikaista vahinkoa, vaan ne vain osoittavat, miten heikkouksia voitaisiin hyödyntää. Ohjelmaa voitaisiin käyttää järjestelmän tulvimiseen joukkosähköpostilla, vaikka lähetetty sähköposti ei sisällä viruksia tai haitallista koodia. Tämäntyyppisten ohjelmistojen avulla hakkeri voi simuloida täysin, miten hyökkäys järjestelmään voi tapahtua vahingoittamatta tietoja tai vaarantamatta tietoja kyseisestä järjestelmästä.
Yksi yleisimmistä ja suosituimmista eettisistä hakkerointiohjelmistoista on ohjelma, jota voidaan käyttää järjestelmän salasanojen palauttamiseen tai etsimiseen. Tämä voi sisältää ohjelman, joka käyttää sanatietokantaa hyökkäyksen käynnistämiseksi järjestelmää vastaan käyttämällä eri yhdistelmiä yrittäessään löytää toimivan salasanan. Muilla työkaluilla voidaan etsiä järjestelmästä olemassa olevia salasanatietueita, jotta niitä voidaan käyttää tuleviin hyökkäyksiin. Tämän avulla joku voi osoittaa järjestelmän omistajalle, kuinka salasanat tulisi tehdä monimutkaisemmiksi tai paremmin salata.