Ecosystem PentestHint Academy Labs Trionyx
Cyber Security

Penetration Test Retesting: Evidence, Closure Criteria and Common Gaps

Finding vulnerabilities is only one part of a successful penetration testing engagement. After an organization fixes the reported security issues, penetration testers must verify whether those fixes actually work. This process is known as...

On this page
  1. What Is Penetration Test Retesting?
  2. Why Is Penetration Test Retesting Important?
  3. 1. Confirm Vulnerability Remediation
  4. 2. Identify Incomplete Fixes
  5. 3. Verify Security Controls
  6. 4. Maintain Accurate Security Reports
  7. 5. Reduce the Risk of Recurring Vulnerabilities
  8. When Should Retesting Be Performed?
  9. The Penetration Test Retesting Process
  10. Step 1: Review the Original Penetration Testing Report
  11. Step 2: Understand the Implemented Remediation
  12. Step 3: Confirm the Testing Environment
  13. Step 4: Repeat the Original Testing Procedure
  14. Step 5: Perform Additional Verification
  15. Step 6: Collect Retesting Evidence
  16. Step 7: Assign a Retest Status
  17. Evidence Collection During Penetration Test Retesting
  18. 1. Before-and-After Evidence
  19. 2. HTTP Request and Response Evidence
  20. 3. Screenshot Evidence
  21. 4. Tool Output and Configuration Evidence
  22. Vulnerability Closure Criteria: When Can a Finding Be Closed?
  23. 1. Original Vulnerability Is No Longer Reproducible
  24. 2. Security Controls Work as Expected
  25. 3. No Equivalent Weakness Remains in the Tested Scope
  26. 4. Evidence Supports the Closure Decision
  27. 5. Testing Limitations Are Documented
  28. Common Gaps Found During Penetration Test Retesting
  29. 1. Partial Vulnerability Fixes
  30. 2. Fix Implemented in the Wrong Environment
  31. 3. Security Controls Are Applied Inconsistently
  32. 4. Regression Issues
  33. 5. Incomplete Evidence
  34. 6. Retesting Only the Original Payload
  35. 7. Incorrect Risk Acceptance
  36. Practical Example: Retesting an IDOR Vulnerability
  37. Retesting Procedure
  38. Expected Result
  39. Closure Decision
  40. Tools Used During Penetration Test Retesting
  41. 1. Burp Suite
  42. 2. OWASP ZAP
  43. 3. Nmap
  44. 4. Nessus
  45. 5. Postman
  46. Best Practices for Effective Penetration Test Retesting
  47. The Future of Penetration Test Retesting
  48. Continuous Security Validation
  49. API Security Retesting
  50. Better Evidence Management
  51. Integration With DevSecOps
  52. Frequently Asked Questions (FAQs)
  53. 1. What is penetration test retesting?
  54. 2. When should a penetration test retest be performed?
  55. 3. What evidence is required during vulnerability retesting?
  56. 4. What are the closure criteria for penetration testing findings?
  57. 5. What is the difference between vulnerability retesting and regression testing?
  58. 6. What happens if a vulnerability fails retesting?
  59. 7. Can a vulnerability be closed without retesting?
  60. 8. Which tools are useful for penetration test retesting?
  61. Conclusion

Finding vulnerabilities is only one part of a successful penetration testing engagement. After an organization fixes the reported security issues, penetration testers must verify whether those fixes actually work. This process is known as penetration test retesting. It confirms whether previously identified vulnerabilities have been properly resolved and whether the implemented security changes have introduced any new weaknesses.

During a Vulnerability Assessment and Penetration Testing (VAPT) engagement, security professionals document vulnerabilities, explain their potential impact, and recommend remediation measures. Development and infrastructure teams then work on fixing those issues. However, a remediation ticket marked as completed does not automatically mean the vulnerability has been eliminated.

For example, a developer might fix an SQL injection vulnerability in one application parameter while leaving another parameter vulnerable to the same attack. Similarly, an administrator might close an exposed network port without checking whether another service provides the same unintended access.

Retesting helps prevent these situations by validating remediation through technical evidence. It also gives organizations confidence that their security improvements are effective.

In this article, we will explore the penetration test retesting process, evidence collection methods, vulnerability closure criteria, common gaps, practical testing examples, and best practices for conducting effective security retesting.

What Is Penetration Test Retesting?

Penetration test retesting is the process of testing previously identified vulnerabilities again after an organization has implemented remediation measures.

The primary objective is to determine whether the original security weakness still exists.

During an initial penetration test, security professionals identify vulnerabilities through automated scanning, manual testing, configuration reviews, and controlled exploitation.

After the organization addresses these findings, the penetration tester performs additional checks to confirm the results.

Retesting generally involves:

  • Reviewing the original penetration testing report.
  • Understanding the reported vulnerability.
  • Examining the remediation implemented by the organization.
  • Repeating the original testing procedure.
  • Collecting updated technical evidence.
  • Checking for remaining weaknesses.
  • Assigning an appropriate retest status.
  • Updating the final security assessment report.

For example, suppose a penetration tester discovers an insecure direct object reference (IDOR) vulnerability that allows one user to access another user’s account information.

The development team implements authorization checks to prevent unauthorized access.

During retesting, the tester logs in using two different test accounts and attempts to access each other’s resources.

If the application correctly denies unauthorized requests, the original finding may qualify for closure.

However, the tester should also check relevant API endpoints and related functionality to ensure that the fix covers the affected access control boundary.

Why Is Penetration Test Retesting Important?

Retesting provides technical confirmation that remediation efforts have reduced the security risks identified during an assessment.

Without retesting, organizations may close vulnerability tickets based only on developer statements, configuration changes, or assumptions.

Several important reasons make retesting necessary.

1. Confirm Vulnerability Remediation

The main purpose of retesting is to confirm that the original vulnerability no longer exists under the tested conditions.

A developer may believe that a vulnerability has been fixed, but implementation mistakes can leave the issue partially unresolved.

Retesting provides independent technical verification.

2. Identify Incomplete Fixes

Some remediation activities address only one part of a vulnerability.

For example, a developer may implement input validation on a login page but forget to apply the same validation to a related password recovery endpoint.

The original vulnerability may appear resolved in one location while remaining exploitable elsewhere.

Retesting helps identify these incomplete fixes.

3. Verify Security Controls

A successful remediation should introduce appropriate security controls.

Depending on the vulnerability, these controls might include:

  • Input validation.
  • Output encoding.
  • Authorization checks.
  • Secure session management.
  • Firewall restrictions.
  • Access control policies.
  • Updated software packages.
  • Secure configuration changes.

Retesting verifies whether the controls behave as expected.

4. Maintain Accurate Security Reports

Penetration testing reports often become part of an organization’s security documentation.

They may be reviewed by management, compliance teams, customers, auditors, and external security assessors.

Retesting helps maintain accurate vulnerability statuses and provides evidence that corrective actions have been completed.

5. Reduce the Risk of Recurring Vulnerabilities

A vulnerability may reappear when developers modify application functionality or deploy new software versions.

Retesting can identify whether a remediation has remained effective in the tested environment.

Organizations should also include appropriate regression testing in their software development lifecycle.

When Should Retesting Be Performed?

Retesting should begin after the responsible team confirms that the remediation has been implemented and deployed to the agreed testing environment.

However, timing depends on the vulnerability, business requirements, and the scope of the original engagement.

Common situations include:

  • After a critical or high-risk vulnerability has been fixed.
  • After application code changes.
  • After security patches are installed.
  • After firewall or network configuration changes.
  • Before a security assessment is formally closed.
  • Before a compliance audit or customer security review.
  • After a failed previous retest.

Critical vulnerabilities affecting exposed production systems may require urgent verification.

For lower-risk findings, organizations may schedule retesting as part of a planned remediation cycle.

The tester should always confirm that the environment being tested contains the actual remediation.

The Penetration Test Retesting Process

A structured retesting workflow improves consistency and reduces the possibility of incorrectly closing findings.

Step 1: Review the Original Penetration Testing Report

Before starting retesting, review the original assessment report.

Understand how the vulnerability was discovered and what evidence demonstrated its existence.

Important information includes:

  • Vulnerability title.
  • Finding ID.
  • Affected asset or application.
  • Affected URL or API endpoint.
  • Vulnerability severity.
  • CVE identifier, where applicable.
  • Original proof of concept.
  • Reproduction steps.
  • Business impact.
  • Recommended remediation.

For example:

Finding ID: WEB-014

Vulnerability: SQL Injection

Affected Endpoint: /products?id=10

Parameter: id

Original Impact: Unauthorized database query manipulation and potential data exposure.

Recommended Remediation: Use parameterized SQL queries and appropriate input handling.

The original report provides the baseline against which the retest should be performed.

Step 2: Understand the Implemented Remediation

Review the changes made by the development or infrastructure team.

Depending on the finding, remediation might involve:

  • Source code changes.
  • Database query modifications.
  • Software upgrades.
  • Firewall rule updates.
  • Authentication changes.
  • Access control improvements.
  • Server configuration changes.

The tester does not always need access to the complete source code, but understanding the remediation helps identify what should be verified.

For example, if an organization reports that an SQL injection vulnerability has been fixed using parameterized queries, the tester should verify that the affected parameter no longer allows SQL injection.

Step 3: Confirm the Testing Environment

Before testing, verify that the corrected version has been deployed to the environment included in the retesting scope.

Confirm:

  • Application URL or IP address.
  • Application version.
  • Deployment status.
  • Affected functionality.
  • Test account availability.
  • Network accessibility.
  • Testing permissions.

One common problem occurs when developers fix an issue in the development environment but the change has not yet reached staging or production.

Testing the wrong environment can produce misleading results.

Step 4: Repeat the Original Testing Procedure

Reproduce the original test using the same conditions wherever possible.

This is important because the tester needs to establish whether the specific vulnerability has been resolved.

For a SQL injection finding, repeat the relevant parameter tests.

For an IDOR finding, repeat the unauthorized object access attempts.

For an exposed service, verify whether the service is still accessible from the relevant network location.

For a missing security header, inspect the updated HTTP response.

The testing approach should be appropriate for the vulnerability and remain within the authorized scope.

Step 5: Perform Additional Verification

Do not limit retesting to the exact original proof of concept when the remediation could affect related functionality.

A fix might resolve the original test case but leave similar weaknesses elsewhere.

For example, if an application had an IDOR vulnerability in its invoice endpoint, check other relevant endpoints that use the same authorization logic.

This helps identify incomplete remediation and potential regression issues.

Additional testing should remain proportionate to the original scope and the nature of the change.

Step 6: Collect Retesting Evidence

Evidence is essential for demonstrating whether remediation was successful.

Capture relevant technical information such as:

  • Updated HTTP requests and responses.
  • Screenshots of security testing results.
  • Application error responses.
  • Access denial messages.
  • Updated software versions.
  • Network scan results.
  • Configuration information.
  • Relevant timestamps.
  • Testing environment details.

Evidence should be clear, reproducible, and directly related to the original finding.

Avoid including unnecessary sensitive information, passwords, access tokens, or personal data in screenshots and reports.

Step 7: Assign a Retest Status

After testing, assign an appropriate status to the finding.

Common retesting statuses include:

StatusDescription
Closed / FixedThe vulnerability has been successfully remediated and verified.
ReopenedThe vulnerability still exists or the remediation is ineffective.
Partially FixedSome aspects have been addressed, but the security weakness remains.
Not RetestedVerification has not yet been performed.
Unable to VerifyTesting could not be completed because of access, environment, or other limitations.
Risk AcceptedThe organization has formally accepted the remaining risk.

A finding should not be marked as fixed simply because the remediation team has completed its development task.

Closure requires appropriate verification evidence.

Evidence Collection During Penetration Test Retesting

Evidence supports the final retesting decision and makes the assessment easier to review.

A good retesting report should show what was tested, how it was tested, and what happened after remediation.

1. Before-and-After Evidence

Maintain evidence from the original assessment and the retesting activity.

A before-and-after comparison helps demonstrate the effectiveness of remediation.

For example:

Before Remediation

  • An unauthenticated user could access restricted account information.
  • The server returned sensitive account details.
  • The original request demonstrated unauthorized access.

After Remediation

  • The same request returned an authorization error.
  • The server did not disclose the protected information.
  • An authorized account could still access its own information.

This comparison provides useful evidence that the access control issue has been addressed under the tested conditions.

2. HTTP Request and Response Evidence

For web application vulnerabilities, request and response evidence is especially valuable.

Tools such as Burp Suite can help capture HTTP traffic during retesting.

A tester should document:

  • Request method.
  • Affected endpoint.
  • Relevant parameters.
  • Authentication context.
  • HTTP response code.
  • Response body.
  • Observed security behavior.

For example, a previously vulnerable API request might now return HTTP 403 Forbidden when a user attempts to access another user’s resource.

However, the status code alone does not prove that the vulnerability is fixed. The response body and actual access behavior should also be examined.

3. Screenshot Evidence

Screenshots can support the technical findings, particularly when showing:

  • Successful authentication.
  • Access denial.
  • Updated scanner results.
  • Security configuration.
  • Application behavior.
  • Retesting tool output.

Screenshots should include enough context to identify the tested application or asset without exposing confidential information.

4. Tool Output and Configuration Evidence

For infrastructure vulnerabilities, command output and configuration information may provide stronger evidence than screenshots alone.

For example, after a vulnerable software package is updated, the tester may record the installed package version and compare it with the relevant vendor security advisory.

Similarly, after a network exposure issue is fixed, an authorized Nmap scan can help confirm whether the affected port remains accessible.

Evidence should always reflect the actual testing environment and conditions.

Vulnerability Closure Criteria: When Can a Finding Be Closed?

Closure criteria define the conditions that must be satisfied before a vulnerability can be marked as resolved.

Organizations should establish clear criteria before beginning the retesting process.

1. Original Vulnerability Is No Longer Reproducible

The original proof of concept should no longer demonstrate the reported security weakness under equivalent testing conditions.

For example, a SQL injection payload that previously altered database query behavior should no longer produce the vulnerable behavior.

2. Security Controls Work as Expected

The implemented security control should behave correctly.

Examples include:

  • Unauthorized users cannot access restricted resources.
  • Input validation prevents the reported injection condition.
  • Exposed services are no longer accessible from prohibited networks.
  • Secure headers are correctly returned.
  • Updated software no longer contains the affected vulnerable component.

3. No Equivalent Weakness Remains in the Tested Scope

The tester should examine related functionality when appropriate.

A fix that protects one endpoint but leaves another equivalent endpoint exposed may not qualify for complete closure.

4. Evidence Supports the Closure Decision

The retest report should contain sufficient technical evidence to support the final status.

A statement such as “Issue fixed by development team” is not enough.

The report should explain the verification procedure and the observed result.

5. Testing Limitations Are Documented

If the tester could not verify every affected component, the limitation should be clearly documented.

A finding should not receive an unconditional closed status when important parts of the original scope remain untested.

Common Gaps Found During Penetration Test Retesting

Even after remediation, vulnerabilities can remain unresolved because of implementation mistakes or incomplete testing.

The following are common gaps encountered during security retesting.

1. Partial Vulnerability Fixes

Developers sometimes fix only the specific parameter or endpoint mentioned in the original report.

For example, an application may have multiple API endpoints using the same insecure authorization logic.

Fixing one endpoint does not automatically secure the others.

Recommendation: Review related endpoints and shared functionality where they fall within the agreed retesting scope.

2. Fix Implemented in the Wrong Environment

A development team might complete a code change but fail to deploy it to the environment being retested.

As a result, the tester continues to observe the original vulnerability.

Recommendation: Confirm the application version and deployment status before testing.

3. Security Controls Are Applied Inconsistently

An organization might implement input validation on one page but fail to apply it to other application components.

Similarly, developers might add authorization checks to one API route while leaving another route unprotected.

Recommendation: Verify that the security control is applied consistently across relevant functionality.

4. Regression Issues

A security fix can unintentionally affect other application functionality.

For example, a developer may introduce stricter access control that blocks unauthorized users but also prevents legitimate users from accessing their own records.

Recommendation: Perform appropriate functional regression testing alongside security retesting.

5. Incomplete Evidence

Sometimes the retesting report contains only a screenshot or a short statement that the vulnerability is fixed.

This makes it difficult for another reviewer to understand the verification process.

Recommendation: Include reproduction steps, relevant requests and responses, testing conditions, and the final result.

6. Retesting Only the Original Payload

A tester might repeat one original payload and conclude that the vulnerability has been fixed.

However, the underlying weakness may still be present and exploitable through another input or application path.

Recommendation: Use reasonable additional test cases based on the vulnerability type and remediation changes.

7. Incorrect Risk Acceptance

Organizations sometimes mark vulnerabilities as closed because they have accepted the risk.

Risk acceptance is not the same as remediation.

Recommendation: Keep accepted-risk findings separate from technically verified fixed findings. Document the approval, business justification, owner, and review date.

Practical Example: Retesting an IDOR Vulnerability

Consider an e-commerce application where a penetration tester discovers an IDOR vulnerability in an invoice download feature.

The application uses the following endpoint:

GET /api/invoices/1001

During the original assessment, the tester discovers that User A can modify the invoice identifier and retrieve User B’s invoice.

This indicates that the application does not properly verify resource ownership.

The penetration tester reports the issue and recommends implementing server-side authorization checks.

The development team updates the API authorization logic.

Retesting Procedure

  1. Create or use two authorized test accounts.
  2. Log in as User A.
  3. Request User A’s invoice.
  4. Confirm that the legitimate request succeeds.
  5. Change the invoice identifier to User B’s invoice.
  6. Observe the response.
  7. Repeat the test using User B’s account.
  8. Verify that each account can access only its authorized resources.

Expected Result

User A should be able to access their own invoice but should not be able to retrieve User B’s invoice.

The application should deny unauthorized access without disclosing protected information.

Closure Decision

If the authorization checks work correctly across the tested endpoints and the evidence supports the result, the original finding can be marked as fixed.

If another related endpoint still allows unauthorized invoice access, the finding should remain open or be reopened.

This example demonstrates why retesting should validate the actual security control rather than simply checking whether a developer has changed the code.

Tools Used During Penetration Test Retesting

Security professionals use different tools depending on the vulnerability and the environment being assessed.

1. Burp Suite

Burp Suite is widely used for web application security testing.

During retesting, it helps professionals:

  • Replay original HTTP requests.
  • Compare before-and-after responses.
  • Inspect authentication behavior.
  • Test access control.
  • Verify input validation.
  • Examine application responses.

Official website: https://portswigger.net/burp

2. OWASP ZAP

OWASP ZAP is an open-source web application security testing tool.

It supports automated scanning and manual testing, making it useful for verifying web application security improvements.

Official website: https://www.zaproxy.org/

3. Nmap

Nmap helps identify open ports, running services, and network exposure.

It can be used to confirm whether a previously exposed service is still accessible after firewall or configuration changes.

Example:

nmap -sV -p 22,80,443 192.168.1.10

Only scan assets that are within the authorized testing scope.

Official website: https://nmap.org/

4. Nessus

Nessus helps identify known vulnerabilities across network infrastructure and systems.

A follow-up scan can help determine whether previously reported vulnerabilities are still detectable.

Official website: https://www.tenable.com/products/nessus

5. Postman

Postman is useful for testing APIs and verifying whether authorization, authentication, and input handling changes work as expected.

It can help testers reproduce API requests and compare responses using authorized test accounts.

Official website: https://www.postman.com/

Best Practices for Effective Penetration Test Retesting

A reliable retesting process should be repeatable, evidence-based, and clearly documented.

Organizations and penetration testers should follow these practices:

  • Maintain unique identifiers for every vulnerability.
  • Keep the original assessment report available.
  • Record remediation details before testing.
  • Confirm the correct environment and application version.
  • Repeat the original proof of concept.
  • Test related functionality where appropriate.
  • Collect before-and-after evidence.
  • Protect sensitive information in screenshots and logs.
  • Separate fixed findings from accepted risks.
  • Document testing limitations.
  • Reopen vulnerabilities when remediation is incomplete.
  • Perform regression testing after significant application changes.

For individuals developing practical penetration testing skills, cyber security labs provide opportunities to practice vulnerability discovery and verification.

Those looking to strengthen their technical knowledge can also explore cyber security training.

The Future of Penetration Test Retesting

As organizations adopt cloud applications, APIs, microservices, and continuous deployment pipelines, security retesting is becoming an increasingly important part of the software development lifecycle.

Traditional penetration testing often takes place at specific intervals. However, modern development environments introduce changes much more frequently.

A vulnerability that was fixed during one assessment could reappear after a later software update.

Several developments are influencing the future of retesting.

Continuous Security Validation

Organizations are increasingly integrating security testing into development and deployment workflows.

Automated checks can identify common security regressions before software reaches production.

API Security Retesting

As organizations depend more heavily on APIs, testers must verify authorization, authentication, rate limiting, and data access controls across multiple endpoints.

Retesting needs to consider the broader API environment rather than isolated requests.

Better Evidence Management

Security teams are adopting centralized vulnerability management platforms to track findings, remediation activities, evidence, and closure status.

This improves accountability and makes security assessments easier to review.

Integration With DevSecOps

Security testing is becoming more closely integrated with CI/CD pipelines.

This allows organizations to identify certain security issues earlier and verify that important security controls remain effective after code changes.

However, automated checks do not replace the need for manual retesting of complex vulnerabilities.

Frequently Asked Questions (FAQs)

1. What is penetration test retesting?

Penetration test retesting is the process of verifying whether vulnerabilities identified during an earlier penetration testing engagement have been successfully fixed. It involves repeating relevant security tests and collecting evidence to support the final vulnerability status.

2. When should a penetration test retest be performed?

Retesting should be performed after the organization confirms that remediation has been implemented and deployed to the agreed testing environment. High-risk vulnerabilities should receive priority verification.

3. What evidence is required during vulnerability retesting?

Common evidence includes updated HTTP requests and responses, screenshots, scanner output, software versions, configuration details, reproduction steps, and testing timestamps. Evidence should clearly demonstrate whether the original vulnerability still exists.

4. What are the closure criteria for penetration testing findings?

A finding can generally be closed when the original vulnerability is no longer reproducible under equivalent testing conditions, the relevant security controls work correctly, sufficient evidence is available, and no equivalent weakness remains within the tested scope.

5. What is the difference between vulnerability retesting and regression testing?

Vulnerability retesting verifies whether a previously identified security issue has been resolved. Regression testing checks whether software changes have affected existing functionality or introduced new defects. Both activities are important after security remediation.

6. What happens if a vulnerability fails retesting?

If the vulnerability still exists, the finding should be reopened or marked as unresolved. The tester should document the remaining weakness, provide updated evidence, and explain what additional remediation is required.

7. Can a vulnerability be closed without retesting?

A vulnerability should not be marked as technically fixed without sufficient verification. If retesting cannot be performed, the organization may document the limitation or formally accept the risk, but these statuses should remain separate from a verified closure.

8. Which tools are useful for penetration test retesting?

Common tools include Burp Suite, OWASP ZAP, Nmap, Nessus, and Postman. The appropriate tool depends on whether the original vulnerability affects a web application, API, network service, operating system, or infrastructure configuration.

Conclusion

Penetration test retesting is an essential part of the vulnerability management lifecycle. Discovering and reporting security weaknesses is important, but organizations must also verify that remediation activities have actually eliminated those weaknesses.

A structured retesting process includes reviewing the original report, understanding remediation changes, confirming the testing environment, repeating the original proof of concept, collecting evidence, and applying clear closure criteria.

Security teams should also pay attention to common gaps such as partial fixes, incorrect deployments, inconsistent security controls, and incomplete evidence.

A vulnerability should be marked as fixed only when technical verification supports that decision. If the issue remains exploitable, it should be reopened with updated findings and remediation recommendations.

At PentestHint, we aim to help cybersecurity professionals develop practical knowledge of vulnerability assessment, penetration testing, and security validation. Explore PentestHint for more cybersecurity resources and practical security learning.

Remember: A remediation ticket may be completed, but a vulnerability is only closed when the security fix has been properly verified.

Author

Saurabh Pareek

I'm an aspiring Penetration Tester who enjoys learning how applications work and, more importantly, how they can be secured. Cybersecurity isn't just something I'm studying—it's something I genuinely enjoy exploring every day. Most of my time goes into learning web application security, API security, and common vulnerabilities. I like breaking down technical topics into simple, easy-to-understand explanations, which is why I regularly write cybersecurity blogs on PentestHint. Some of the topics I've covered include Directory Traversal, Remote Code Execution (RCE), Broken Object Level Authorization (BOLA), and JWT Security. I believe the best way to learn cybersecurity is by doing it. That's why I spend time practicing in labs, solving security challenges, and researching how real-world attacks happen. Every vulnerability I study teaches me something new and helps me improve my skills. I also enjoy sharing what I learn with the cybersecurity community through blogs and LinkedIn. Writing not only helps me reinforce my own understanding but also makes technical concepts easier for others who are starting their journey. My goal is to grow into a skilled penetration tester who can help organizations identify security risks before attackers do. I'm always learning, always curious, and always looking for the next opportunity to improve.

Keep reading

Related posts

Leave a Reply

Your email address will not be published. Required fields are marked *