Security audit - what it is and how it works
Security audit: what it covers, how it unfolds across five phases, and how it differs from a penetration test.
Read
Web application penetration testing is a controlled, authorized attack on your web application in which a security expert imitates a real attacker to find exploitable vulnerabilities before a malicious actor discovers them. It covers testing of authentication, authorization, business logic, input points (forms, APIs, file uploads) and configuration. The result is a report with proven vulnerabilities, a risk assessment and concrete recommendations for remediation.
Penetration testing - we uncover vulnerabilities before hackers do. You do not have to handle it yourself; we take care of it for your company. Request a free assessment.
Unlike automated scanning, which merely reports potential issues, a penetration test actually attempts to exploit a vulnerability and prove its impact. For example, accessing someone else's data or taking over an administrator account. Below we explain exactly what the test covers, which phases it goes through and how companies in Bosnia and Herzegovina and the wider region can prepare.
Web applications are the most common entry point for attacks because, by definition, they are exposed to the internet. An online shop, a customer portal, a booking system or an internal application accessible through a browser - these are all targets. A network firewall and antivirus cannot protect against a flaw that originates in the application code itself, for instance when user input is not validated correctly.
This is precisely why web application penetration testing focuses on the application layer, and not only on the infrastructure. It tests the way the application processes data, how it distinguishes between users and what happens when someone tries to bypass the intended usage flow. Many vulnerabilities are not visible from the browser interface; they are only uncovered by an expert who deliberately sends unexpected requests.
Before the engagement begins, the parties agree on how much information the tester receives. This choice affects the depth and duration of the test:
| Approach | What the tester knows | When it is useful |
|---|---|---|
| Black-box | Nothing in advance, starts as an external attacker | When you want to simulate a realistic external attack |
| Grey-box | Has user accounts and basic information | The most common choice, a good balance of depth and cost |
| White-box | Access to source code and documentation | For the most thorough analysis, e.g. critical applications |
For most business applications, the grey-box approach delivers the best result: the tester has at least one user account, so they can also test the area behind the login, where the most sensitive data is usually located.
A professional test follows a structured methodology. Although the details vary, the phases are generally as follows:
This defines exactly what is being tested (domains, subdomains, APIs), what is out of scope, in which timeframe and with which limitations. Written authorization is obtained here; without it, testing is not legal. It is also agreed whether the production environment or a dedicated test environment will be tested.
The tester maps the application: which pages exist, which forms and parameters accept input, which technologies are used and what the authentication flow looks like. This phase determines where the potential entry points for an attack are.
A combination of automated tools and manual testing. Tools quickly cover breadth, but serious vulnerabilities, especially those in business logic, are only found by an experienced tester through manual analysis.
The key difference compared to scanning: the tester attempts to actually exploit the weaknesses found in order to prove their impact. The goal is not to cause damage, but to confirm that the vulnerability is real and to show how far an attacker can get.
The most important deliverable. A good report contains an executive summary, a technical description of each vulnerability, steps to reproduce, a risk assessment (e.g. using the CVSS scale) and concrete remediation recommendations, ordered by priority.
After your team fixes the shortcomings, the tester checks whether the fixes are actually effective. Without a retest, you do not know whether the problem has truly been resolved.
The industry standard for web applications is the OWASP methodology, in particular the OWASP Top 10, a list of the most common and highest-risk vulnerability categories, along with the more detailed OWASP Web Security Testing Guide. Typical areas that are checked include:
Business logic flaws require special attention because automated tools almost never detect them. They stem from the way your specific application works.
Today's web applications are rarely just a collection of static pages. A large part of the functionality runs through APIs (most often REST or GraphQL) that are called by JavaScript in the browser. This means that a significant part of the attack surface lies outside what the user sees in the interface.
In single-page applications (SPAs) built with tools such as React, Angular or Vue, security logic must never rely on what executes in the browser. An attacker bypasses the interface and calls the API directly. That is why a quality test always also checks the API layer itself: whether all calls are properly protected by authentication and authorization checks, whether parameters can be modified to access someone else's resources and whether the API exposes more data than it should. Many serious vulnerabilities today are found precisely at the API level, and not in the visible part of the application.
A penetration test is often confused with automated vulnerability scanning. The difference is fundamental:
The best approach is a combination: regular scanning for continuous monitoring and a periodic penetration test for an in-depth assessment. If you run continuous security monitoring, managed detection and response such as the NeoBit Guardian 360 SOC service can help here as well.
Good preparation saves time and increases the value of the test. For companies in Mostar and the wider region, we recommend the following steps:
If you are not sure which scope is appropriate for your application, you can fill out the NeoBit pentest questionnaire and get a rough estimate before committing to anything.
The general rule is to carry out a web application penetration test at least once a year, and always after significant changes: new features, migration to a new platform or major changes to authentication. Applications that process payments or sensitive data are usually tested more frequently, and this is often required by security standards or business partners.
A test is only as valuable as the experience of the people who carry it out and how clear and usable the report is. If you are looking for an assessment for your application, get in touch with the NeoBit team and arrange a conversation about scope.
The report is the end product you are actually paying for, so it is worth knowing how to recognize a good one. A quality web application penetration test report should contain:
A report that merely lists tools and their raw results, without context and recommendations, is a sign that the work was done superficially.
In conversations with companies in the region, we often encounter the same misconceptions that are worth clarifying:
The duration depends on the size and complexity of the application and the agreed scope. A smaller application can be tested in a few days, while larger systems with many features and integrations require several weeks. The scope and an estimate of the duration are agreed before the start.
A professional test is carried out in a controlled manner and according to agreed rules, in order to keep risk to a minimum. The goal is to prove vulnerabilities, not to cause damage. Nevertheless, it is recommended to test on a separate environment or with a fresh backup when testing production.
Scanning is automated and produces a list of potential issues, whereas a penetration test involves an expert who manually confirms and exploits vulnerabilities and assesses the real impact. Scanning covers breadth, while a penetration test covers depth, and it is best to combine the two.
Yes. The result of the test is a structured report with an executive summary, a technical description of the vulnerabilities, a risk assessment and recommendations. Such a document often also serves as evidence of a completed security check for business partners or as part of preparation for standards such as ISO 27001.
Related guides: Cyber security in Bosnia and Herzegovina - the complete guide · Black box, white box and grey box testing - the differences · Penetration testing vs vulnerability scanning - which to choose
Pen TestingSecurity audit: what it covers, how it unfolds across five phases, and how it differs from a penetration test.
Read
Pen TestingRed team, blue team and purple team: we explain the differences, roles and how to choose the right approach for your company's security in B
Read
Pen TestingOWASP Top 10 explained: all ten most common web vulnerabilities, attack examples and practical protection steps for companies in BiH and the
Read