Security testing - a set of studies of a software product aimed at testing, detecting and correcting defects associated with the safety of user data, namely:
Integrity . Limiting the circle of users who have access to data, determining the degree of harm caused by the loss of certain data.
Availability It is a requirement that resources must be available to an authorized user, internal object, or device. As a rule, the more critical the resource, the higher the level of accessibility should be.
Confidentiality . Concealment of certain resources or information. Confidentiality can be understood as restricting access to a resource of a certain category of users, or in other words, under what conditions is a user authorized to access this resource.
During testing, most often the tester plays the role of an attacker, and begins to manipulate the application in different ways:
Attempts to learn the password using external means.
Attack of the system using special utilities that analyze protection.
Suppression, overwhelming the system (in the hope that it will refuse to serve other customers).
The purposeful introduction of errors in the hope of penetrating the system during recovery.
View unclassified data in the hope of finding a key to enter the system.
Continuing the topic, we can distinguish several main types of vulnerability:
XSS (Cross-site scripting) is a type of software vulnerability (Web application) in which malicious scripts are executed on the page generated by the server to attack the client.
XSRF CSRF (RequestForgery) is a type of vulnerability that allows exploiting the disadvantages of the HTTP protocol. Attackers work as follows: a link to a malicious website is installed on a page that is trusted by the user when clicking on a malicious link, a script is executed that saves the user's data (passwords, payment data, etc.), or sends SPAM messages on behalf of the user or changes access to the user account to gain full control over it.
Code injections (SQL, PHP, ASP, etc.) is a type of vulnerability in which it becomes possible to run executable code to gain access to system resources, unauthorized access to data, or disable a system.
Server-side includes (SSI) Injection is a type of vulnerability that uses the insertion of server commands in HTML code or running them directly from the server.
AuthorizationBypass is a type of vulnerability in which it is possible to gain unauthorized access to the account or documents of another user