I can’t think of any occasion where I did a Hollywood-like hack. There is zero correlation between real life hacking (or programming) and movies of the same subject. In fact, most of the time it’s downright hilarious to watch.
The first and foremost fallacy is that the quality of a hacker is up to how fast they can type. Seriously, have you watched these people? Basically hacking comes down to typing “something” really, really fast, and usually (for some reason) there is always some kind of 3D representation of it, like a shifting cube or pyramid that they need to unlock. What’s even funnier is that while all that is going on, there is no space on the screen for the hundreds of words they are typing, despite being the most necessary part of any text-based terminal interface.
Third are all the lockout and override codes. Yeah, space pirates hijacking a space navy warship can totally hack the ship’s operating system, and install override codes that prevent anyone else from using it. At least until someone else hacks the override codes and installs their own override codes to override the space pirates.
#4 would probably be just how easy hacking is; as long as you’re a genius level hacker (which in movies is like every hacker ever), there isn’t a firewall in the world that can stop you. Just type really fast (see #1) and you can breeze through all five firewalls under 50 seconds.
Last but certainly not least, every computer geek/scientist is also a programmer/hacker. Nothing about that makes any sense; not all computer scientists are programmers, and not all computer scientists or programmers are geeks or hackers. In fact, hackers, as they are depicted in movies, as malicious people who illegally break into other computer systems, make up a tiny percentage of the entire technical community.
I could probably come up with more but I think six should be more than enough to prove the point.
Programming is a creative, interpretive process. By extension, so is hacking.
Hacking works by finding the avenue for an attack that people didn’t think about.
- When you use a swipe code on your phone to log in, the oil from your finger leaves a record of that path on your phone’s screen for someone else to follow by tilting your phone so that a light shines on it sideways.
- Old payphones used to handle routing via a series of musical tones. You could replicate these tones and not have to pay the phone.
- Want to hack someone’s bank account? Their online access routes are probably protected with strong passwords and possibly even two-factor authentication! … but if you just call the bank, all you need to know is their SSN (only the displayed final four digits are random, you can derive the rest with public records data) and their mother’s maiden name. Then a teller will helpfully walk you through the process of gaining complete control of your target’s financial life.
- Need to guess someone’s username and login? Rent a quantum computer for a week! You’ll need to shuffle your proxies around so the website doesn’t realize all these attempts are coming from one location… or you could just follow them around periodically and look over their shoulder whenever they sit down at a computer.
Non-sinister programming works the same way.
To answer the question, the answer would be Simply, NO.
Some web hacks are very transferable and can work on many sites – such as SQL Injection of poorly build websites. However, this will get you access to the database (and data) at most. Root access to servers takes serious negligence from admins or a lot of hard work for the hacker. Movies have people cracking high-level encryption by hand in seconds – total rubbish. Properly set up systems force users to have hard to guess passwords – and techniques like slow decryption – to make even brute force attacks a very long game (measured in decades). Password hashes use one time salting to make hashing lists useless. and so on. Most hackers get in because of one of two reasons – inept admins and/or loosely lipped employees.
With respect to programming, the boilerplate code takes time on its own. Sure you can use pre-made templates and change the similar code to do something slightly different, but movies have people taking ten minutes to write fully deliverable quality applications, with GUI and everything – without so much as a compile failure!