If you're hoping to break into email accounts or learn how to disrupt a website, then you likely don't understand what hacking is -- cracking is malicious, while hacking is about constructively manipulating systems and engaging in a particular style of programming.
Hacking is now commonly used to include malicious attacks, data breaches and system cracks, but you have to ask yourself -- is it really worth the risk? If you're truly interested in programming and systems, then ethical hacking could prove to be a lucrative career choice -- for the right reasons.
Hacking is not about cracking your media streaming kit to download shows for free, hiring a botnet to launch DDoS attacks against a website for the fun of it or using software to brute-force a password -- it's about the journey for answers and solving problems, whether in the IT field or otherwise.
There are plenty of career options in security which cover a range of software issues -- from exploit development to network defence -- but hacking is about finding the answers to your own questions -- and the passion to potentially pursue very long hours of squinting at code to find them.
There is no hard-and-fast method to follow, but reading up on different programming languages, skills, job opportunities and joining hacking and cybersecurity community groups is a great place to start.
There are many questions to ask yourself and a few terms to learn before committing including: are you interested in networking? Penetration testing? Bug bounties? The security of mobile applications? If you have a general idea of where your own interests lie, then this gives you a footpath to follow.
Before you start poking around in programs, you need to learn their language. The key here is interest -- if you become bored, you are likely to become frustrated and abandon your attempts. Whether you look at Python, C++, Perl or other languages, knowing the basics -- which also includes an understanding of operating systems such as Unix and Windows, as well as networking -- will give you a fundamental understanding to tie everything together later on.
What operating system are you using, and why? While you are learning programming or working on a project, research different tools and systems commonly used by those in cybersecurity. As an example, the open-source Linux build Kali is a popular option -- as it comes pre-loaded with hundreds of tools for use in the ethical hacking field.
You can run this alongside other systems, such as Windows or Mac. (Although it is worth noting using a virtual machine to run Kali on Mac can lead to problems due to Apple's code and permissions, such as an inability to use the internal wireless adapter. Use this situation as a way to learn Kali and workarounds thoroughly.)
You may want to sign up for a course to help you gain these basic skills, and websites including Coursera and Udemy are a good place to start. Depending on how to learn best, taking a step-by-step course with tutorials could be the way forward, or alternatively, find a project.
Hacking, improvement, patches and mods are all interlinked through understanding an operating system or programming language, and so taking on something that interests you -- whether it is creating a gaming mod, fixing a security issue, streamlining and creating a program or joining community competitions offered by groups such as Hackthissite.org.
If you're raring to go and want to show off some newly-acquired skills, before you do, take a breather and step back. Cybersecurity is a hot topic and is likely to remain so for some time to come, and unless you're careful, having fun with poking around in a network without permission can get you into hot water.
Common sense comes in here -- for example, slithering into a corporate network without consent is not legal -- but checking out your own country's rules on IT is also worth the trouble so your activities don't include illegal elements you have overlooked.
Learning a programming language isn't enough. There are a vast range of topics and subjects you should research and learn about if you really want to become a specialist and graduate beyond the title "script-kiddie," including learning about the core fundamentals.
Learning about hacking history, social engineering, the Metasploit framework, Shell, databases and online security and privacy are only some of the areas you should explore.
People with a good knowledge of computers, operating systems and programming who love to solve problems and think creatively are always welcome in the open-source community. GitHub is a great place to start -- not only as a way to meet other developers, hackers and both professionals and enthusiasts but as a way to sharpen your skills and have a hand in streamlining and improving coding.
That's up to you. You can hack purely for the love of it and -- hopefully -- contribute to projects or software development for the good of all and research, or you could go down a route which may land you with fines and jail. If ethical hacking is still something you want to pursue after following this road, your skills are in hot demand -- and you could enjoy a fun job with a decent pay check because of it.