Knowledge of wide variety ofputer science topics is required however knowing things at great depth is the key to a hackers success. Therefore having a positive attitude toward learning is essential in the journey of learning to be a hacker . Below is the step by step ge !! Step Read The Hacking Manifesto nIt is not an easy task to be a hacker. As a hacker you need to have an attitude and curiosity. Reading the hacking manifesto ~beberg can teach you the attitude of a hacker. Nurturing the hacker attitude is more about developingpetence in the languages rather than having a stereotypical attitude. Though a lot of people consider that a hacker is a criminal; However in real life they are hired by bigpanies for protecting information and minimizing potential damage. The act of hacking actually is that of being over-curious and outwitting authority. As a hacker you should be hell bent on breaching authoritarian rules secrecy and censorship. Deception is another arsenal which will allow you to dodge the vigilant eyes of authority. The act of stealing something or doing harm to someone is not hacking . Such people aremonly called crackers in themunity. Crackers are involved in illegal activities and I will not rmend you to get involved into such activities. Step 1 Learn To Program In C nC programming being one of the most powerful languages inputer programming It is necessary to really master this language. This programming language was invented by Denise Ritchie in between the years 1969 and 1973 at AT& T Bell Labs. C programming will essentially help you divide the task in smaller pieces and these pieces can be expressed by a sequence ofmands. Try writing some program on your own by assessing the logic. There are hundreds of Free C Programming PDF & tutorials available on web to learn however I would rmend you to start with a simple and well written c programming book of your choice and then read this book ( C Programming Language nBy Brian W. Kernighan and Dennis M. Ritchie) to understand the real power of c language. nThis books is not an easy read however its a must read book to get in depth understanding for C Programming. Step 2 Learn More Than One Programming Language nWhen you are trying to be a hacker it is very important to learn other modernputer programming languages such as JAVA HTML Perl PHP and Python. One of the best ways to learn these is by reading books from experts. Java is one of the most popular programming languages. It has been claimed that its also very secure. Knowing Java security model will empower you to understand how this language achieve security. Learn about the security loop holes in Java language and related frameworks. Pick and read from many free PDF tutorials and ebooks available to learn java online. Perl is a general purpose dynamic programming language which is high level and can be interpreted. This language borrows some features of C language. On the other hand JAVA is concurrent class based and objects oriented programming language. Python is really handy when you are trying to automate some repetitive tasks. HTML is the mark up language based on which the web pages are designed created and displayed. The web browsers read the HTML code to display the web page. Python is best language for web development and favorite language of a lot of programmer due to its simplicity and quick turn around. A lot of people use Python to do simple andplex automation. Step 3 Learn UNIX nUNIX is a multi-tasking and multi-userputer operating system that is designed to provide good security to the operating system was developed by some employees of AT&T in Bell best way to learn it is to get into an open-source version (e.g. centos) and install the same on your own. You can operate internet without learning UNIX but it is not possible for you to be an internet hacker without understanding UNIX. If you have not used Unix operating system yet a few essential linuxmands will make yourfortable in getting quickly started. Unix in a Nutshell by Arnold Robbins is a good way to start. This book will teach you how to use Unix. The next thing you need to know is the internals of this operating system. I rmend n The Design of the UNIX Operating System by Maurice J. Bach for getting in depth understanding of Unix operating system. A large number of web servers are hosted on Unix based servers and knowing internals of this operating system is going to be really a big boost in your skills. Step 4 Learn More Than One Operating Systems nThere are many other operating systems apart from UNIX. Windows operating system is one of the mostmonlypromised systems hence it is good to learn hacking Microsoft systems which are closed-source systems. According to the National Vulnerability Database Microsoft operating systems have a large number of vulnerabilities. Windows OS installers are distributed in binary therefore it is not easy for you to read the code. Binary code is basically the digital representation of and data thatputer understands. However knowing how programs are written for windows and how different applications behave on this operating system will help. One of the recent vulnerabilities of a popular OS was that Java Web Start applications get launched automatically even if the Java plug-ins are disabled. How to be a hacker is about knowing the weaknesses of these operating systems and targeting them systematically. Step 5 Learn Networking Concepts nThe networking concept needs to be sharp when you want to be a hacker. Understanding how the networks are created is important however you need to know the differences between different s are networks. Having a clear understanding of TCP and UDP protocol is a must to be able to exploit the vulnerabilities on world wide web. Understand what is subnet LAN WAN and VPN. I rmend Computer Networking A Top-Down Approach By James F. Kurose and Keith W. Ross The networkingmands to do a HTTP request needs to be on your fingertips. The HTTP protocol is the gateway through which one enters the internet world. Hence it is necessary to learn this protocol in order to break the barriers. The hackers often use the HTTP gateway to breach the security of the system and take control over it. Apache Httpd is one of the mostmonly used web servers and knowing in and out of it is going to empower you on any HTTP or other application layer protocol related endeavors. Nmap is a powerful network scanning tool that is used by hackers and security professional across the world to identify vulnerable hosts. However to effectively start using it you must understand the networking basics. To get advanced skills on NMap you can refer the book by creators - Nmap Network Scanning The Official Nmap Project Ge =hacking-books-2 to Network Discovery and Security Scanning Step 6 Start Simple Read Some Tutorials About Hacking nThis is the simple and best way to start. Read as many tutorials as possible that are meant for hacking. These articles will give you insight and help you develop the attitude to be a hacker. Some tutorials will initiate you with Nmap Nessus and SuperScan some of the hacking programs or tools that hackers generally use. These tutorials are readily available over the internet; Both and video tutorials are available for you to answer your question how to be a hacker. Step 7 Learn Cryptography nAs an expert hacker you need to understand and master the art of cryptography. The technology of cryptography and encryption is very important for internet and networking. It is the practice and study of techniques that are used for securemunication in the presence of third parties. The encryption is done for various aspects of information security such as confidentiality of the data integrity of the data and authentication. Moreover the technology of cryptography is extensively used in ATM cardsputer passwords and emerce. While hacking these encrypted codes needs to be broken which is called decryption. Cryptography is heavily used in SSL based internetmunication. An expert hacker should be able to understand how SSL works and what is the importance of cryptography in keeping SSL secure. Try reading about various encryption algorithms and see why they are difficult to decrypt. Participate in challenges for decrypting a powerful encryption. An expert hacker will be able to demonstrate weaknesses in a encryption algorithm and should be able to write a program that can show how decryption can be performed without much information about keys. Understand various techniques used for password cracking. There are dozens of tools available to do password cracking and using it is not hacking. To be expert at hacking its important for you to understand how to create a program that can crack a password from cypher . I rmend this free Cryptography Course By Dan Boneh from Stanford University at Coursera s Step 8 Experiment A Lot nThis is an important step for setting yourself up as an expert hacker. Setup a laboratory on your own to experiment the learning on the practical applications. A simplest lab will have yourputer however once you advance you may want to add more and moreputers and required hardware for your experiments. It is good to try experimenting on your ownputers where you can rectify if you have done any mistake. Many hackers initially start off by downloading virtual lab applications such as Oracle VirtualBox. You require at least 3 GBs of RAM and aparatively powerful processor to carry out your hacking experiments. Setting up the virtual machine is crucial as it will allow you to test virus applications and different servers without affecting your own PC. Some of the things you may need to keep in mind when doing experiments Keep a backup before any experiment. Start small and have check points. Know when to stop. Document your progress Keep improvising Automate repetitive tasks Step 9 Read Some Good Books From Experts nReading will always enhance your knowledge. Try to read as many books and articles as possible written by the experts in the field field of ethical hacking and enterprise security Reading a lot about anything related is so important in a hackers world that you must also consider enhancing your reading speed. If your reading speed is slow then you may not be able to progress fast in this field. Practice speed reading techniques like skimming chunk reading etc. When ites to reading a lot its also important to know that a majority of content on web is not worth your time. Many people use search engine tricks to attract traffic but have little value in it. If you skim thru an article within seconds and decide not to read that is going to save you a lot of time for some really well researched content. The Art of Exploitation by Jon Erickson is an excellent book to teach you be an advanced hacker. Step 1 Participate In Hacking Challenges nRegular participation in the hacking challenges can help you learn more and sharpen your knowledge. There are severalpanies that organize these challenges in order to check the vulnerability of their software products. The mostmon hacking challenge includes breaching the security system of the software and taking control of the third partyputer systems. Apart from that there are some websites listed below that regularly offer hacking challenges online. Page on Home Step 11 Go Next Level Write Vulnerability nVulnerability of a program is the weakness of the program. It is a good approach to look for the vulnerability of an existing program and share the same with others. In this way you will have the option to collect varied opinions from different sources enabling you to hone your current skill set. The examples ofputer vulnerabilities include memory safety violation input validation error privilege confusion bugs and user interface failure. For instance Microsoft Internet Explorer 11 had the vulnerability bug in its preview version which several hackers exploited. Identifying a new weakness in any software is the real work any expert hackers would perform. Step 12 Contribute To Open Source Security Projects nContributing to an open-sourceputer security project is great platform to test your skills. This is not everyone cup of tea. Many organizations like Mozilla and Apache offer these s of open source projects. Try to be a part of these projects and add a valuable contribution to the benefit of themunity. Participating in the open source security projects such as anti-spam anti-virus firewall and data removals help you augment your dexterity as a hacker. Contribute your vulnerability findings to the global vulnerability databases and give back to themunity. Remember that it does not matter if your contribution is small as long as you participate and add value it helps. Step 13 Continue Learning And Keep Listening To Security Talks nThe key to success in the hacking career is continuous learning. Reading blogs for hacking available at sites such as hacker factor blog and IKEA hacker blog; participating in the forums such as and elite hack are great ways to refresh your knowledge as a hacker. The online video forums like TED or TechTalk are good sources to know more about the emergent hacking techniques and technologies that are being deployed. You should also try following the posts of famous hackers such as Adrian Lamo Kevin Mitnick Kevin Poulsen and Robert Tappan Morris. For me Info Ping me Govarthanan GC
What are the necessary things to do in 4 years of B.Tech in CSE course?
In India at least most of us waste our 4 years in college. Unfortunately that is the best time to learn while doing your job later you will be so absorbed in your work that you will barely find time for yourself forget using that time to learn something. So utilize this time to its fullest. There are no hard and fast rules as to what is necessary and what is not however the following things if learnt practiced and internalized will enable you to stand apart in your professional career quickly. Learn C++. Yes not Python Java or Lisp. All languages have their own nuances and have their own areas of usage. However C++ teaches you programming fundamentals in a way which is nigh impossible in any other language. Yes Python is easiest to pick up and gaining momentum for large scale tasks but because it is so easy it masks you from the arcaneplexities of s and memory management. After swearing by Python for 4 years when you start working in Microsoft Edge team you will be clueless to find that your seemingly innocuous code prompted 3 code-reviewments to make it more efficient and memory-amenable. So learn C++ it will teach youputer fundamentals like nothing else. Start with the basic books like those by Herbert Schildt then gradually graduate to the ones by Herb Sutter and Scott Meyers. You will be awestruck at the confidence you gain once you have mastered C++. Learn at least one build system. This is often understated and to my knowledge most universities don even bother including any course on this topic. But this is an absolute sine qua non. You will be working inpanies like Microsoft and Google and Amazon which operate on unimaginable scales catering to million requests per second. The codebase that powers such aplicated system is equallyplicated and nuanced to manage it a robust build system needs to be in place. All those who are used to code in a lone IDE in their lone laptop at home find themselves at sea when they suddenly find that a code-review followed by code-push is not sufficient they are expected to take that code to production by building it in the pipelines open multiple gates to push them from one stage to another resolve merge conflicts ensure that the test code is running correctly get sign-off from QA before the final gates are opened etc. Trust me it is overwhelming. Allpanies have their own build-systems so it is not possible to learn all of them. However all of them have the basic ideas similar so if you know one build-system inside-out suffices to say that you know them all. Which one should you learn? Any one really. But I prefer Ant. It is very easy to learn and there are some excellent resources to learn Ant like the OReilly books. If during your first week in Amazon you not onlyplete the feature you were assigned but also take it to production by building it in the pipelines all by yourself your manager will be suitably impressed! Contribute to Open Source projects. It may be anything really. May be you fell in love with Qt and wrote a cool desktop app in Qt that lets you sign on a pixel map through your touchpad and using patented algorithms find out if that is indeed your signature. Publish it in Github implore Qt to highlight it in their Sample Apps built with Qt section. If they do you have be famous! If they don well you get a taste of the bar you will be expected to meet in your professional career. Not getting ideas of your own? Take any open source project out there. May be Poco a versatile C++ library. Contribute to it. They are looking for new hands for some of their modules like PDF support be that hand. There are millions of lines of code already in place your code has to be built on top of that it will require you to understand the existing codebase inside out before you start working on top of it. This is a skill you will need to have from day 1 be it Google or Microsoft. Wouldn it be cool if you can understand the entire Edge workflow by yourself and make code changes on top of it during your first week in Microsoft instead of asking a senior for a KT (knowledge transfer) and being able to work only after that? Participate in codingpetitions. You don have to be topper in Codejam or Topcoder or Codechef. Spoj will suffice. Very few teams in verypanies actually require algorithmic and data structure knowledge. But this is what is mainly asked in interviews. So if you are tired of your work in Google and want to switch to Microsoft you don have to spend three months preparing for the interview by going through Gayle Lackmann and Leetcode (because you have forgotten how to traverse binary tree in pre-order fashion without recursion. Your 3 year work in Google never required these stuff!). You are a regular in Spoj such problems are child play for you! So you can crack the interview tomorrow itself and bid Google adieu in no time. Wicked! ordered-list Last but not the least stay focussed as Balaji said in his answer. It seems trivial but it is the hardest. You will find your friends writing CAT or GRE or GMAT. Some just scored a perfect 1 percentile and had to open an Instagram account to post a picture of that result. Some scored a 1595 in SAT. Don let their achievements sway you into thinking that you are missing out on the cool things that you should devote part of your time to preparing for CAT as well. Stay focussed stay good on your goals. You will kill them all!