Thanks to the Internet and e-learning systems, it is very easy for anyone to master the language of the age - computer science - and develop their skills with a choice of specialization such as programming, management systems, or even networks and wireless communications, at a time when words such as penetration or protection systems Electronic, as though it is a forbidden corner, has not yet reached those educational systems despite the density of the content available for this purpose, but its sanctity comes from the idea that sailing requires first to understand some important rules needed in the world of penetration.

Feather "Picasso"

Some are looking directly for specialized courses in the field of penetration, thinking that they offer the secrets of the world, which seems attractive from the outside, and this is true to a large extent when the learner climbs step by step because neglecting any degree may later mean difficulty in dealing with the system to be penetrated.

Basic knowledge is not limited to operating systems, but to networks and databases, without forgetting the different programming languages ​​and the differences between them.

Reuters

To simplify the start, the user needs to understand the operating systems, Windows and MacOS and Linux, and understand the differences between them, there are different file systems, and different data representation systems, without forgetting the architecture built by the system. As a simple example of differences in architecture, some systems isolate each application within its own system (Sandboxing) within the system to be unable to access other application data or user files on the computer without permission and without entering the administrator password, while other systems allow this . In the case of neglect of such basics, the learner may spend a long time in a failed attempt to reach something that does not exist fundamentally.

Basic knowledge is not limited to operating systems, but to networks and databases, without forgetting the different programming languages ​​and differences among them. Some languages ​​do not need a compiler, while others need it. Speaking of programming languages, the apprentice needs to deal with the command prompt, Terminal, which is present in all operating systems because it allows an unlimited set of tasks and installs many tools. On the ground, most programs with graphical interfaces convert what the user chooses to a command that is sent to a command prompt to perform the required task and pass settings that the user has configured.

This explains why hackers rely on Linux, for example, instead of Mac OS or Windows because the Terminal is powerful and supports a wide range of tools, so you can execute commands such as finding open ports within the network. But to realize the truth, Microsoft has developed tools from the Windows command prompt. An unlimited set of tools, known as the Command Line Interface (CLI), can also be installed, ie, a command-line interface (1).

Pablo Picasso's term, "Learn the rules professionally, then surpass them with art" applies to the world of penetration. The first step is to understand how operating systems, web servers, or even network systems work, so that the learner is then able to monitor gaps and find on her.

Decode the code

The former theoretical discourse does not feed or sing hunger if it is not accompanied by some practical examples of the world of penetration. In the web world, there are types of requests that a user can send from a computer to another computer, the most famous of which is "POST" and "GET". The simplest example of a request for "fetch" can be found on YouTube. After the link (https://youtube.com) there is a fixed part in most of the links (watch? V =) followed by a set of random numbers and letters Such as (3rKpooXkcOc) to become the whole link of the format (https://www.youtube.com/watch?v=3rKpooXkcOc).

These numbers and random letters represent the video ID within the YouTube databases, and the user sends it to the company's servers via a "fetch" request. When taking that identifier, the programmer needs to first secure it, check it and make sure it is free from any malicious code that attempts to disrupt the system. The role of the hacker starts here. In fact, when you see such models, you will start trying to write some code code in the hope of breaking down the system logic and hacking it, or for planting malicious code within the databases in the so-called "INJECTION". But access to this starts from the learner's understanding of the basics of the Web and the functioning of his servers, and here shows the importance of learning the basics.

The same applies for networks, for each device within the network has its own IP address, which allows the rest of the computers to communicate with it. But the computer has a variety of services, such as calculator and spell checking to name a few, and here shows the importance of ports in the world of networks, if the computer wanted to "A" connect with the computer "and" the operation of the calculator to perform a calculation, Specify the port that will take the request for the correct program.

With open ports inside the computer, the penetrating power of the hacker increases. Anyone who wants to hack a computer will first look for open ports, via tools inside the command prompt, or through graphical interface programs. Then, he will dial the computer's electronic address with the port as "IP: PORT" (127.0.0.1:8081), to name a few. For example, if the calculator is not protected by a password, the hacker will place the first foot inside the computer because the calculator is a program written in a programming language, and if there is any gap in the calculator, the hacker may be able to acquire more powers, One port that is not properly protected may be allowed to access, navigate and control the rest of the ports without any restrictions.

The first example of Web applications, or the second of networks, shows the interconnection of concepts and the need to be familiar with them. The deeper the depth, the easier the task of the hacker is. It should be noted that experience is the first tool that a learner needs to master.

Practical experience

The journey of learning may seem long in the field of penetration, and this is true because it is based on the idea of ​​reverse engineering in one way or another, ie understanding the logic of the program, or the system, and begin to dismantle and try to find the gaps in it. But the beginning can be from entering any specialization either on the Internet or in the university related to computer science, which will address the various topics such as electronic logic and the mechanism of work computers and operating systems, in addition to the basics of networks and protocols used, and this is a necessary key can be obtained through some courses Which are offered by universities such as Stanford or EDX (2) (3).

If you have plenty of time I highly recommend following up on such conferences.
It shortens your hours of searching .https: //t.co/Xg0ZJtp2U9

- Malik al-Dosari (@Mlajab) December 26, 2018

As in any field, the learner needs to find the right domain for which he or she wants to start. Those interested in professional web site protection need to study at least one web-oriented programming language, and PHP For example, to understand the mechanism of receipt and processing of requests within the web servers, and the mechanism of communication between the program and databases, in addition to the interface with the external software interfaces, and this is possible through an endless number of sites, including Arabic such as the "programming world" and the platform platform, We study. Such as Harvard University, do not skimp on free decisions available to all.

The web is not the only area of ​​penetration. Networks are also popular now because of the heavy reliance on the Internet on the one hand and on cloud servers on the other. This means that certificates such as CCNA or C (CCNP) from Cisco, or its equivalent in other companies, is essential, because understanding the mechanism of connecting computers in a single network and the mechanism of communication between different networks and nodes on the Internet is necessary when you want to penetrate, or In the protection of a company's servers, the goal of learning hacking and digital security is not always to penetrate, but to work in this For an area within an organization to ensure the development of high-value protected systems all the time (5).

With networking, certificates such as Red Hat Certified Architect are essential because they rely on Linux first and provide important concepts of digital security second. Understanding the mechanism of Virtual Machines is essential in the cloud computing environment, which is based on the idea of ​​creating a virtual environment within the server and running services (opening a port for each service), while connecting more than one server at the same time to receive and process applications effectively throughout Time. Here are some Arab channels on YouTube specialized in computer science and in its various disciplines such as cloud computing in Amazon, including the channel "Free4arab" or "linuxdirection", to name a few.

work fields

After learning various computer technologies, you can specialize in digital security by following conferences such as BlackHat or Def Con, for example, with courses such as Digital Security (Cyber ​​Security Course for Beginners) or Cyber ​​Security BASE, as well as the Offensive Computer Security course at the University of Florida and the Open Security TRAINING program. By going back to reverse engineering, the book Reverse Engineering for Beginners will eliminate fog and ambiguity.

The areas of work are not limited, just like sources of learning. The learner can search for gaps in websites and applications and then report them to companies in order to obtain a return. This is known as bug bounty. The breach is exploited by the hacker or posted publicly before obtaining permission to do so.

In addition, Web professionals can search for Web App Security Tester jobs, and network professionals can work on network security. You can also go deeper into the world of encryption to get a job as a Cryptographer. Jobs such as a security consultant who needs to have experience on the ground can not be neglected to help the team choose the best technical solutions and ensure that they are free of any loopholes that threaten the security of the company, a specialty that intersects in part with the software security expert Expert) responsible for securing software solutions within the company.

Finally, a wide range of videos and courses are available on the Internet that allow the learner to implement penetration campaigns such as DDOS Attacks or firewall hacking, but familiarity with the basics and understanding of the working mechanism of networks and servers will move the learner to another stage because the tools Will remain limited, and remain dependent on it as swimming in a closed basin.