Bueh para ser "Hacker" debes saber de todo, C, C++, Java, Phyton, PHP, ASM, .NET, C#, JS, Batch, SQL y lenguaje que se te cruce, para ahorrarte todo eso aprende algoritmia, con el tiempo veras que programar en Java y C++ por ejemplo es basicamente lo mismo, claro son lenguajes distintos, pero la base es la misma. Para entender lo que te digo sobre lo de que la base es la misma debes aprender lo que son los paradigmas de programación, te cito un trozo de la wikipedia:
- Imperativo o por procedimientos: es considerado el más común y está representado, por ejemplo, por C, BASIC o Pascal
- Funcional: está representado por Scheme o Haskell. Este es un caso del paradigma declarativo.
- Lógico: está representado por Prolog. Este es otro caso del paradigma declarativo.
- Declarativo: por ejemplo la programación funcional, la programación lógica, o la combinación lógico-funcional.
- Orientado a objetos: está representado por Smalltalk, un lenguaje completamente orientado a objetos.
Despues de ver paradigmas y algoritmia, puedes empezar a aprender a programar en algun lenguaje tipo C, que es el que enseñan en universidades, institutos u otros para entender lo antes mencionado viendolo con un lenguaje, no profundices en C, basta con hacer un par de programas simples (hechos por ti claro, no copiados), ademas aprenderas que es compilar y debuguear una aplicación. Aprendiendo C, te sera facil entender lenguajes como PHP o similares por lo que te dije al principio.
Ademas, a medida de que aprendas te daras cuenta de que vas encontrando errores en tus programas, uno comun que me atreveria a decir que nos ha ocurrido a todos es al ingresar un String o Cadena en una variable Integer (o Entero), con esto tendras que aprender a validar tus variables y asi evitar errores o vulnerabilidades.
Junto con programación debes aprender a usar distintos Sistemas Operativos (Windows, Linux y Mac) comodamente. Tambien es importante aprender a buscar información fidedigna, esto por lo general se encuentra en las paginas oficiales del lenguaje que estes usando, por ejemplo para PHP buscas en php.net aunque Google nunca esta de mas para ninguno.
Despues aprende sobre vulnerabilidades (Recien!) aunque en el camino probablemente hayas aprendido y entendido ya algunas de las mas basicas.
Con eso mas o menos, podrias llamarte a ti mismo "Un Hacker", aunque un Hacker no es mas que un "ideal" de Informatico y nada mas que eso.