Web and API penetration testing · Spain

I find the vulnerabilities in your application before an attacker does.

Manual penetration testing for web applications and REST and GraphQL APIs. One person from start to finish: scoping, testing, report in English and Spanish, and retest included.

See a sample finding
  • Written authorisation
  • OWASP ASVS 5.0 and API Top 10
  • Retest included

Sample report · demo-corp.test

Executive summary

Sample
Critical
1
High
3
Medium
4
Low
2

Retest9 of 10 fixed

Every finding comes with a proof of concept, impact, CVSS 4.0 and how to fix it.

What I test

I test what you expose to the internet.

Manual first, tools second. Every finding comes with its proof of concept, its impact and how to fix it.

  • REST APIs

    Object and function level authorisation, mass assignment, resource consumption, SSRF and sensitive business flows. I work from your OpenAPI specification or Postman collection.

    • API Top 10 2023
    • OpenAPI
    • Postman
    1. API1Broken Object Level Authorization
    2. API2Broken Authentication
    3. API3Broken Object Property Level Authorization
    4. API4Unrestricted Resource Consumption
    5. API5Broken Function Level Authorization
    6. API6Unrestricted Access to Sensitive Business Flows
    7. API7Server Side Request Forgery
    8. API8Security Misconfiguration
    9. API9Improper Inventory Management
    10. API10Unsafe Consumption of APIs
  • Web applications

    Authentication, sessions, access control, business logic, injection and everything that happens in the browser: XSS, CSRF, CORS.

    • WSTG v4.2
    • ASVS 5.0
  • GraphQL

    Introspection, batching and aliases, authorisation on nested fields, query depth and cost.

    • Queries
    • Mutations
  • OAuth, OIDC and JWT

    redirect_uri, PKCE, state and nonce, algorithm confusion, token expiry and rotation.

    • RFC 9700
    • JWT
  • White box

    With access to the code I test better and faster: a targeted review of the paths that concentrate the most risk.

    • Targeted review
  • Retest included

    I verify every fix and deliver version 2 of the report with the status of each finding.

    • Report v2

Sample finding

This is what a finding looks like in my reports.

Fictitious client, real flaw: broken object level authorisation is the number one API risk.

FS-DEMO-01 · demo-corp.test · sample

Any user can read other customers’ invoices

Severity
High
CVSS 4.0
7.1
Category
API1:2023 · BOLA
Weakness
CWE-639
ASVS 5.0
v5.0.0-8.2.2
Status
Fixed · v2

CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N

Description

The endpoint GET /v2/invoices/{id} checks that the token is valid, but not that the invoice belongs to the requester. Changing the identifier is enough to read any customer’s invoices.

Impact

Exposure of every customer’s personal and tax data: name, tax ID, line items and amounts. If exploited, it is a personal data breach under the GDPR.

Remediation

router.get('/v2/invoices/:id', auth, async (req, res) => {  const invoice = await Invoices.findById(req.params.id);  const invoice = await Invoices.findOne({    id: req.params.id,    customerId: req.user.customerId,  });  if (!invoice) return res.sendStatus(404);  res.json(invoice);});

Also: non-sequential identifiers and an automated object level authorisation test in continuous integration.

Evidence

GET /v2/invoices/48214 HTTP/2Host: api.demo-corp.testAuthorization: Bearer eyJhbGciOiJSUzI1NiIs… (user A)Accept: application/json

[Full sample report in PDF] Download without a form, in English and Spanish.

Process

Five steps, with dates.

You know what happens each day and what you get at the end. Critical findings don’t wait for the report: I tell you within 24 hours.

  1. Day 0

    Scope and authorisation

    A 30-minute call, written scope and authorisation signed by the owner of the systems.

  2. Days 1–2

    Preparation

    Test accounts for each role, environment, OpenAPI specification or Postman collection, and emergency contacts.

  3. Per scope

    Testing

    Manual and guided by OWASP WSTG and the API Security Top 10. If I find something critical, I tell you within 24 hours.

  4. +3 days

    Report and wrap-up

    Report in English and Spanish with CVSS 4.0, CWE and the ASVS 5.0 requirement for each finding, plus a wrap-up meeting.

  5. Up to 90 days

    Retest

    I verify the fixes and deliver version 2 of the report with the status of each finding.

Standards

I speak your auditor’s language.

Every finding maps to the standards you are asked for. Click one to see how the pentest fits.

  • OWASP WSTG v4.2

    OWASP’s web testing guide: it structures the manual testing.

  • OWASP ASVS 5.0

    Verifiable requirements, levels 1 and 2. Each finding cites its own, for example v5.0.0-8.2.2.

  • API Security Top 10 2023

    The ten most common API risks. Each finding carries its category.

  • CVSS 4.0 + CWE

    Scoring with the full vector and the root weakness of each flaw.

  • ENS

    Reports aligned with Spain’s National Security Framework (RD 311/2022).

  • NIS2

    Evidence of vulnerability management and control effectiveness (art. 21).

  • DORA

    Testing under articles 24 and 25. Article 26 TLPT requires a red team.

  • ISO/IEC 27001:2022

    Evidence for Annex A controls 8.8 and 8.29.

  • PCI DSS 4.0.1

    Requirement 11.4: regular penetration testing and fixing what is exploitable.

  • GDPR art. 32

    Regular testing of the effectiveness of technical security measures.

Pricing

Get an order of magnitude.

What moves the price most is how much there is to test: user roles times routes or endpoints. Then I give you a fixed quote.

What do you want tested?
3
40
Approach

Accounts per role and documentation

Estimated effort

5–6.5 days

€4,000 – €5,200 excl. VAT

Between 5–6.5 days; between €4,000 – €5,200 excluding VAT.

Preparation and reconnaissance
0.5 d
API testing
4 d
Report and wrap-up meeting
1 d

Timeline: about 2 weeks from kick-off. Includes a retest within 90 days.

Sample rate: €800 per day

Indicative, non-binding estimate; prices exclude VAT. Sample formula and rate for the mock-up: adjust them in src/data/estimator.ts.

[Your photo]

Who does the testing

One person, from start to finish.

No subcontractors or junior staff: the person you talk to is the one who tests, writes the report and verifies the fixes.

Name
[Full name]
Certifications
[Certification][Certification]
Published CVEs
[CVE-YYYY-NNNNN]
Talks
[Event · year]
Encrypted contact
[PGP fingerprint]
  • I don’t sell an automated scan as if it were a pentest.
  • I don’t subcontract your project.
  • I don’t publish anything about your project without your written permission.

Research

What I publish.

Write-ups, advisories and tools: proof that I know what I’m doing, before you hire me.

  • API authorisation checklist: BOLA, BFLA and BOPLA

    The tests I run on every endpoint, with sample requests.

  • [CVE-YYYY-NNNNN · affected product]

    [Summary of the flaw, affected versions and patch]

  • [Name of your tool]

    [What it automates and link to the repository]

Contact

What would you like me to test?

Tell me the scope and I’ll reply with a fixed quote within [48 hours].

or write to [email@fringesec.es] · book 30 minutes at [booking link]

Quote request

Tell me what you want tested

Mock-up settings

This panel won’t be on the final site.