Hakkerointityökalu on ohjelma tai muu sovellus, jonka avulla voidaan murtautua tietokoneeseen. Hakkerointityökalut jaetaan yleensä kahteen pääluokkaan: ohjelmistot, jotka on erityisesti suunniteltu suorittamaan suora hakkerointi, ja lisälaitteet, joita ei käytetä suoraan hakkerointiin, mutta jotka antavat hakkereille tietää, missä käyttöjärjestelmien, tietokoneiden, verkkolaitteiden ja verkkoihin. Molempien työkalujen tehokas käyttö antaa hakkereille mahdollisuuden tunkeutua tietokonejärjestelmiin ja -verkkoihin.
Suora hakkerointiohjelmisto jakautuu kahteen tyyppiin: vankat hakkerointiohjelmat ja komentosarjatyökalut. Ensimmäinen hakkerointityökalutyyppi on täysimittainen hakkerointiohjelma, jota voidaan käyttää monenlaisten hakkerointitehtävien suorittamiseen, kuten soluttautumiseen verkkoihin ja käyttöjärjestelmien ja muiden sovellusten tietoturva-aukkojen hyödyntämiseen. Nämä vankat hakkerointiohjelmat on suunniteltu teknologisesti taitavampia hakkereita ajatellen, jolloin he voivat muokata ja räätälöidä hakkerointikokemuksensa tarpeen mukaan monenlaisiin tehtäviin.
Käsikirjoitustyökalut ovat perusohjelmia, joiden avulla vähemmän tietävät käyttäjät voivat suorittaa ”kirjan mukaan” hakkeroinnin. Hakkerointiyhteisössä “käsikirjoituslapset” ovat yksilöitä, jotka noudattavat oppikirjan ohjeita hakatakseen ymmärtämättä todellisia menetelmiä ja prosessia toimintansa takana. Tämä toinen ohjelmatyyppi sallii komentosarjojen lasten suorittaa hakkeroinnin perustoimintoja, vaikka tietokonejärjestelmiä ei olisikaan yksityiskohtaisesti.
Toinen merkittävä hakkerityökalutyyppi on lisäohjelma, joka sisältää tietokonematoja ja porttiskannereja. Vaikka tämäntyyppiset ohjelmat eivät oikeastaan anna hakkereiden käyttää järjestelmää, ne etsivät järjestelmiä ja verkkoja mahdollisten haavoittuvuuksien varalta, jolloin hakkeri saa paremman käsityksen siitä, mihin hänen ponnistelunsa voidaan kohdistaa. Aivan kuten rakennussuunnitelman lukeminen heikoimpien rakenteellisten kohtien löytämiseksi ennen purkamista, lisävarusteiden hakkerointityökalu koettelee ohjelmia ja tietokoneita, jotta hakkeri saa käsityksen ohjelman ”panssarin” pahoista, mikä tekee varsinaisesta hakkeroinnista tehokkaampaa. Porttiskannerit löytävät haavoittuvuuksia tietokonejärjestelmän verkosta, mutta madot etsivät tyypillisesti aukkoja tietokoneen käyttöjärjestelmästä.