Teste de penetrare

Penetration Testing

A penetration test, also known as a pen test, is a simulated cyberattack against a computer system to check for exploitable vulnerabilities that may be found during a vulnerability assessment process.

The above cold definition doesn`t cover the entire process of the Pen Testing process, as it`s much more complex and focuses on a lot more areas to find and exploit system weaknesses. The actual generic process may involve at least the following phases:

1. Planning and reconnaissance

The first stage involves:

  • Defining the scope and goals of a test, including the systems to be addressed and the testing methods to be used.
  • Gathering intelligence (e.g., network and domain names, mail server) to better understand how a target works and its potential vulnerabilities.

2. Scanning

The next step is to understand how the target application will respond to various intrusion attempts. This is typically done using:

  • Static analysis – Inspecting an application’s code to estimate the way it behaves while running. These tools can scan the entirety of the code in a single pass.
  • Dynamic analysis – Inspecting an application’s code in a running state. This is a more practical way of scanning, as it provides a real-time view into an application’s performance.

3. Gaining access

This stage uses web application attacks, such as cross-site scripting, SQL injection and backdoors, to uncover a target’s vulnerabilities. Testers then try and exploit these vulnerabilities, typically by escalating privileges, stealing data, intercepting traffic, etc., to understand the damage they can cause.

4. Maintaining access

The goal of this stage is to see if the vulnerability can be used to achieve a persistent presence in the exploited system— long enough for a bad actor to gain in-depth access. The idea is to imitate advanced persistent threats, which often remain in a system for months in order to steal an organization’s most sensitive data.

5. Analysis

The results of the penetration test are then compiled into a report detailing:

  • Specific vulnerabilities that were exploited
  • Sensitive data that was accessed
  • The amount of time the pen tester was able to remain in the system undetected

This information is analyzed by security personnel to help configure an enterprise’s WAF settings and other application security solutions to patch vulnerabilities and protect against future attacks.

Penetration testing may have multiple methods and may follow many standards, however commonly agreed methodology types do not stray too much from the software development methods:

Black Box Penetration Testing

In black box penetration testing, tester has no idea about the systems that he is going to test. He is interested to gather information about the target network or system. For example, in this testing, a tester only knows what should be the expected outcome and he does not know how the outcomes arrives. He does not examine any programming codes.

Advantages of Black Box Penetration Testing

  • Tester need not necessarily be an expert, as it does not demand specific language knowledge
  • Tester verifies contradictions in the actual system and the specifications
  • Test is generally conducted with the perspective of a user, not the designer

Disadvantages of Black Box Penetration Testing

  • Particularly, these kinds of test cases are difficult to design.
  • Possibly, it is not worth, incase designer has already conducted a test case.
  • It does not conduct everything.

White Box Penetration Testing

This is a comprehensive testing, as tester has been provided with whole range of information about the systems and/or network such as Schema, Source code, OS details, IP address, etc. It is normally considered as a simulation of an attack by an internal source. It is also known as structural, glass box, clear box, and open box testing.

White box penetration testing examines the code coverage and does data flow testing, path testing, loop testing, etc.

Advantages of Black Box Penetration Testing

  • It ensures that all independent paths of a module have been exercised.
  • It ensures that all logical decisions have been verified along with their true and false value.
  • It discovers the typographical errors and does syntax checking.
  • It finds the design errors that may have occurred because of the difference between logical flow of the program and the actual execution.

Grey Box Penetration Testing

In this type of testing, a tester usually provides partial or limited information about the internal details of the program of a system. It can be considered as an attack by an external hacker who had gained illegitimate access to an organization’s network infrastructure documents.

Advantages of Grey Box Penetration Testing

  • As the tester does not require the access of source code, it is non-intrusive and unbiased
  • As there is clear difference between a developer and a tester, so there is least risk of personal conflict
  • You don’t need to provide the internal information about the program functions and other operations

Areas of Penetration Testing

Penetration testing is normally done in the following three areas:

  • Network Penetration Testing − In this testing, the physical structure of a system needs to be tested to identify the vulnerability and risk which ensures the security in a network. In the networking environment, a tester identities security flaws in design, implementation, or operation of the respective company/organization’s network. The devices, which are tested by a tester can be computers, modems, or even remote access devices, etc
  • Application Penetration Testing − In this testing, the logical structure of the system needs to be tested. It is an attack simulation designed to expose the efficiency of an application’s security controls by identifying vulnerability and risk. The firewall and other monitoring systems are used to protect the security system, but sometime, it needs focused testing especially when traffic is allowed to pass through the firewall.
  • The response or workflow of the system − This is the third area that needs to be tested. Social engineering gathers information on human interaction to obtain information about an organization and its computers. It is beneficial to test the ability of the respective organization to prevent unauthorized access to its information systems. Likewise, this test is exclusively designed for the workflow of the organization/company.

Completeaza formularul si

te vom contacta in cel mai scurt timp posibil

detalii

Nu gasesti serviciul potrivit pentru tine? Doresti mai multe servicii care sa comunice intre ele? Nicio ingrijorare. Putem sa iti oferim un Pachet Custom care sa contina serviciile de care ai nevoie, astfel vei salva timp si bani. Alegerea unui pachet este intotdeauna cea mai buna decizie. Echipa noastra de experti se vor asigura ca suita de aplicatii este dezvoltata folosind librariile potrivite, astfel incat toate aplicatiile sa fie compatibile. Lasa in mesaj detaliile necesare si vom reveni in cel mai scurt timp posibil.