Santosh Kumar Puppala

Santosh Kumar Puppala

Independent security researcher

I find the security flaws that scanners miss, and I build tools that stop them shipping.

My reports have led to fixes in software used by libraries, universities, court-records sites, health programmes and businesses. Norviq, my open-source runtime policy engine for AI agents, is built and shipped.

01

Why it matters

  1. Scanners match known patterns. The flaws that do real damage are often in the logic: code that runs, passes its tests, and still does the wrong thing.

  2. A security control can be in place and still never fire. A quiet failure like that looks fine in review.

  3. AI agents add to it: every tool call an agent makes is another action that needs a security decision.

02

What I'm building

Norviq

Runtime policy enforcement for AI agents

Built and shipped. In active development.

Decides each tool call an LLM agent sends through the Norviq SDK or sidecar, and each call to an MCP server behind its MCP proxy, on Kubernetes. Each call is allowed, blocked, escalated or audited with OPA/Rego policy bound to workload identity.

  • Open source, Apache-2.0
  • 17 releases on PyPI, latest 0.2.7 (November 11, 2026)
  • Helm chart on Artifact Hub
  • Kubernetes, OPA/Rego, SPIFFE workload identity

Veridor

Authorization regression testing for CI

Early alpha. No release has been tagged yet.

Declare what each identity may do. Veridor issues the same request as every identity, compares the result against the declaration, and fails the build when the answer changes. It turns the comparison method behind my research into a test.

  • Apache-2.0. Source not yet public
03

How I find them

I find security flaws in open-source software and report them to the people who maintain it. Most are logic flaws that scanners miss: the code runs and passes its tests, but does not do what its authors meant.

My method is to compare parts of an application that should behave the same way. When one of them checks less than the others, that one needs an explanation. I published the method as an open-access preprint, and I'm building it into two tools: Norviq, open source, which enforces policy on AI agents' tool calls at runtime, and Veridor, in early alpha, which tests authorization in CI.

Comparing sibling operations on one recordOne request, from a signed-in user who should not see the record, goes to four operations that touch it. Each confirms the user is signed in. Three also check whether this user may see the record, and refuse. The fourth has no such check and returns the record: it checks less than its siblings.requestoperationsigned in?allowed to seethis record?resulta user without access to this recordviewrefusededitrefusedexportrefusedhistorynonereturnedchecks less than its siblingsComparing sibling operations on one recordOne request, from a signed-in user who should not see the record, goes to four operations that touch it. Each confirms the user is signed in. Three also check whether this user may see the record, and refuse. The fourth has no such check and returns the record: it checks less than its siblings.a user without access to this recordoperationsigned in?allowed to seethis record?resultviewrefusededitrefusedexportrefusedhistorynonereturnedchecks less than its siblings
One request, sent to four parts of an application that should handle it the same way. Three run their checks and refuse. The fourth skips a check and lets it through. That difference is what I look for.
04

From one odd handler to a shipped fix

  1. Step 1 of 6

    Compare

    Line up the parts of an application that should behave the same way and compare their checks. When one checks less than the others, it becomes a candidate.

    • read against write
    • list against item
    • route against route
  2. Step 2 of 6

    Reproduce

    Test the candidate on my own machine, with made-up accounts and data, and with a control that shows the test can fail.

    • local lab
    • made-up data
    • a control
  3. Step 3 of 6

    Report

    Report it privately to the maintainers, with the reproduction, through the project's own security channel.

    • private report
    • working reproduction
  4. Step 4 of 6

    Fix

    The maintainers ship the fix in their own release.

    51published advisories credit me

  5. Step 5 of 6

    Disclose

    The advisory and the CVE record go public after the fix ships.

    16CVE records

  6. Step 6 of 6

    Prevent

    Turn the lesson into tools: Veridor tests authorization in CI, and Norviq enforces policy on AI agents' tool calls at runtime.

    • Veridor
    • Norviq
05

Track record

Every CVE record, advisory and merged fix, each linked to its public source. Most recent advisory: November 9, 2026.

Featured findings

Six findings in plain words, highest-rated first. Severity and score (CVSS, out of 10) are as published in each advisory.

  • Critical9.8

    Found that a malicious web page could run commands on the archiving servers that run Harvard Library Innovation Lab's Scoop, which Perma.cc builds on. Harvard fixed it by removing shell command construction entirely.

    Courts, libraries, universities and public health
  • Critical9.6

    Found, with a co-finder, that a member of one project on the OpenFn platform could read and change another project's run history and data. The maintainers fixed it, so every request is now checked against its own project.

    Public services
  • Critical9.4

    Found that the "deny all" lockdown setting in rosbridge_suite, a robotics bridge imported by a NASA repository, silently allowed full access. The maintainers fixed it across four release lines.

    Communications, energy and devices
  • High8.8

    Found that an ordinary member could make themselves administrator of a library repository run on Hyku. The maintainers fixed it.

    Courts, libraries, universities and public health
  • High8.7

    Found that a user of CourtListener, the free public court-records site, could plant code that ran in the browser of anyone who opened a tampered court-data chart. Free Law Project made that interface read-only and now encodes the data safely.

    Courts, libraries, universities and public health
  • High8.2

    Found that the TANF data system let anyone who knew a staff member's Login.gov ID lock out, delete or change that person's account without logging in. The maintainers fixed it, protecting the state, tribal and territory staff who report TANF welfare data to HHS.

    Public services
More findings 10

Public services

  • Medium6.5

    Found that Head Start staff in one region could read other regions' grant-recipient records, including recipient identities and staff names. HHS deployed the fix to production on August 28, 2026; out-of-region requests are now refused.

  • Medium4.5

    Found that a community-helper account in CiviForm, a benefits-application platform, could look up the name and email of any applicant in the system. The maintainers fixed it, so helpers now see only the applicants in their own group.

  • High7.5

    Found that any logged-in user of the OpenCRVS civil-registration system could take over a pending account, including a national administrator's, and lock the real user out. The maintainers fixed it.

Courts, libraries, universities and public health

  • High7.5

    Found that anonymous visitors could read private and unpublished transcripts in Avalon, used by universities including Indiana University. The maintainers fixed it.

  • Medium6.8

    Found that one community-health programme on a shared CommCare HQ server could delete another programme's mobile health workers and data tables. Dimagi fixed it, so deletions are now limited to each programme's own data.

Communications, energy and devices

  • High8.1

    Found that any user of a shared MailWatch email-filtering server could release another organisation's quarantined malware or phishing into its inbox, or delete its mail. The maintainers fixed it.

  • High8.1

    Found that one crafted text message from an outsider could run commands on gammu SMS-gateway servers in affected configurations. The maintainers fixed it.

Across projects

  • Nine fixes I wrote myself were merged into projects I don't own, including Keycloak and NOAA Fisheries' Stock Synthesis model.

  • OWASP's AI Security Verification Standard merged a change citing my observation by name (PR #1127, September 5, 2026).

  • 13 organisations changed their own code, designs or guidance and named me in the change, including ICIJ, Apache Arrow and the OpenSSF vulnerability guide.

The full record

CVE records

16 published records. 6 name me in the record's credits; the other 10 were issued by GitHub, which credits me on the linked advisory. CVE-2026-104412 and CVE-2026-105678 are two records for the same Ghost flaw, so the 16 records cover 15 distinct issues.

Published CVE records
RecordProjectIssued byCreditPublished
CVE-2026-75520DomoticzIssued by GitHubcredited on the advisory
CVE-2026-82411Objects API (Maykin Media)Issued by GitHubcredited on the advisory
CVE-2026-85749MailWatchIssued by GitHubcredited on the advisory
CVE-2026-113668ApostropheCMSIssued by GitHubcredited on the advisory
CVE-2026-109659Frappe ERPNextIssued by VulnCheckreporter, with a co-reporter
CVE-2026-107856CiviFormIssued by GitHubcredited on the advisory
CVE-2026-105678Ghost, same flaw as CVE-2026-104412Issued by GitHubcredited on the advisory
CVE-2026-104412GhostIssued by VulnCheckreporter, with a co-reporter
CVE-2026-55610InvoiceShelfIssued by GitHubcredited on the advisory
CVE-2026-61746InvenTreeIssued by GitHubcredited on the advisory
CVE-2026-88890OpenPanelIssued by VulnCheckfinder
CVE-2026-84470Red Hat Ansible Automation Platform / AWXIssued by Red Hatreporter
CVE-2026-54732libreoffice-convertIssued by GitHubcredited on the advisory
CVE-2026-19182OpenNMS Meridian and HorizonIssued by OpenNMSfinder
CVE-2026-73245KestraIssued by GitHubcredited on the advisory
CVE-2026-16454Eclipse hawkBitIssued by Eclipse Foundationfinder

Security advisories

51 advisories, published by each project's maintainers, credit me. Titles are the maintainers' own, shortened where long. Shared credit means another researcher is credited too.

51 advisories

  • Critical9.8
    GHSA-hr5p-xv39-62qpharvard-lil/scoop

    OS command injection through capture URLs and page content in Scoop

    Libraries, archives and research
  • Critical9.6
    GHSA-vf9q-phg3-hqj6OpenFn/lightning

    Cross-project data access: an authorised user could read and modify another project's data by supplying…

    Health, humanitarian and developmentshared credit
  • Critical9.4
    GHSA-gw49-rmg5-6f5fRobotWebTools/rosbridge_suite

    params_glob="[]" deny-all hardening control fails open, allowing full parameter access

    Energy, devices and robotics
  • Critical9.3
    GHSA-phm3-q6x2-5g25NCEAS/metacat

    XXE in the science-metadata XML parser: the schema/no-namespace/EML branches resolve external entities…

    Libraries, archives and research
  • High8.8
    GHSA-qvw7-2cfx-c54qsamvera/hyku

    Missing authorization on the group-membership / group-role controllers (privilege escalation to tenant admin)

    Libraries, archives and research
  • High8.7
    GHSA-cvh7-rv7v-wx2jfreelawproject/courtlistener

    Unscoped visualization JSONVersion create (IDOR) chained to stored XSS in the public embed view

    Courts and civic participation
  • High8.7
    GHSA-vgx6-6cqr-m8qrInvoiceShelf/InvoiceShelf

    Cross-company user read/update IDOR enables cross-tenant account takeover

    Business, infrastructure and developer softwareCVE-2026-55610
  • High8.6
    GHSA-xrq7-925g-qg5mkobotoolbox/kpi

    ORM relational-filter injection in asset-search q= leaks another user's API token

    Health, humanitarian and development
  • High8.5
    GHSA-hwf2-2v2h-7892Openpanel-dev/openpanel

    ClickHouse SQL injection via unvalidated profile.* filter column identifier

    Business, infrastructure and developer softwareCVE-2026-88890
  • High8.2
    GHSA-w5f9-6g83-v6mcraft-tech/TANF-app

    SET Signing Verification

    Public services
  • High8.1
    GHSA-gxc6-rgv6-wx99nilsteampassnet/TeamPass

    REST API ignores item-level restrictions enforced on the web path…

    Business, infrastructure and developer software
  • High8.1
    GHSA-w7v5-7g6w-87r4mailwatch/MailWatch

    IDOR lets any authenticated user release or delete any other tenant's quarantined mail

    Business, infrastructure and developer softwareCVE-2026-85749
  • High8.1
    GHSA-9vjj-v46c-c5qfgammu/gammu

    Improper Neutralization of Special Elements used in an OS Command in Gammu

    Energy, devices and robotics
  • High7.5
    GHSA-v8fw-q2g9-8j47archesproject/arches

    Unauthenticated DELETE of any RDM controlled-vocabulary Value in Arches (/conceptvalue/)

    Libraries, archives and research
  • High7.5
    GHSA-pg23-jx8g-vq9wterminusdb/terminusdb

    Missing write authorization on /api/apply lets read-only users commit to branches

    Business, infrastructure and developer software
  • High7.5
    GHSA-hmjp-8w99-j2v9avalonmediasystem/avalon

    Unauthorized Users Can Access Supplemental Files

    Libraries, archives and research
  • High7.5
    GHSA-86wq-492h-p97hopencrvs/opencrvs-core

    Missing ownership check in activate procedure allows account takeover

    Courts and civic participation
  • High7.2
    GHSA-rpr6-r33g-3fqrferriskey/ferriskey

    In-realm vertical privilege escalation via unguarded credential operations (manage_users → manage_realm)

    Business, infrastructure and developer software
  • High7.2
    GHSA-mm75-58x9-2hxgconsuldemocracy/consuldemocracy

    Privilege abuse

    Courts and civic participation
  • High7.1
    GHSA-rcjg-5cvg-wwvjmercurjs/mercur

    Cross-vendor inventory-level write/delete via the top-level location-levels/batch route…

    Business, infrastructure and developer software
  • High7.1
    GHSA-4h8w-qg88-5grxopenstad/openstad-headless

    Cross-project user IDOR: single-user route looks up users by id with the project filter commented out

    Courts and civic participation
  • High7.1
    GHSA-35jv-h3p5-648jresearch-software-directory/RSD-as-a-service

    Two child tables ship with a write grant but no Row-Level-Security policy…

    Libraries, archives and research
  • High7.1
    GHSA-38g3-wx5w-9fqgarchesproject/arches

    Resource-instance permission bypass on POST /api/tiles/{tileid}…

    Libraries, archives and research
  • High7.1
    GHSA-2pw4-qvrc-x3x6consuldemocracy/consuldemocracy

    Authorization bypass

    Courts and civic participation
  • High7.1
    GHSA-7cqp-qvh5-7x85openfoodfoundation/openfoodnetwork

    Cross-enterprise authorization flaw in the v1 customer_account_transaction API

    Food systems
  • Medium6.8
    GHSA-fc3f-5w6h-7x68p2-inc/keycloak-orgs

    Invitation path grants org roles without manage-roles, allowing a manage-invitations holder to escalate to…

    Business, infrastructure and developer software
  • Medium6.8
    GHSA-hq38-78vf-f4cjdimagi/commcare-hq

    Specific REST APIs fail to enforce cross-domain validation on ID references (IDOR)

    Health, humanitarian and development
  • Medium6.5
    GHSA-j86w-29qq-wx46CDLUC3/dmptool

    Missing Authorization in Plan Contributors Endpoint May Expose Contributor Metadata

    Libraries, archives and research
  • Medium6.5
    GHSA-jr5m-c5r6-4779streetlives/streetlives-api

    Missing organization-scope authorization on data-entry write routes

    Health, humanitarian and development
  • Medium6.5
    GHSA-jh4h-22hq-x74pmilvus-io/milvus

    Import bypasses collection-level RBAC and reads Milvus internal storage

    Business, infrastructure and developer software
  • Medium6.5
    GHSA-vqf7-m6jx-r7m2HHS/Head-Start-TTADP

    Cross-region recipient-goals IDOR (missing region-scope check on GET /api/recipient/:id/goals)

    Public services
  • Medium6.5
    GHSA-52h9-r64r-4jq3raft-tech/TANF-app

    Cross-STT data-file submission

    Public services
  • Medium6.5
    GHSA-9pj9-fm7x-r62hfrappe/erpnext

    Unauthorised access to financial data due to missing validation

    Business, infrastructure and developer softwareCVE-2026-109659shared credit
  • Medium6.5
    GHSA-hpj9-grjp-7vc7kestra-io/kestra

    Unauthenticated management/actuator endpoints exposed on port 8081 (/env, /loggers) bypass API basic-auth

    Business, infrastructure and developer softwareCVE-2026-73245
  • Medium6.5
    GHSA-55w6-rqp5-j5wxmaykinmedia/open-object

    Cross-object-type authorization bypass on object history-detail endpoint (Objects API): IDOR

    Courts and civic participationCVE-2026-82411shared credit
  • Medium6.5
    GHSA-gmxc-r82q-347relwerene/libreoffice-convert

    Path traversal / arbitrary file write

    Business, infrastructure and developer softwareCVE-2026-54732
  • Medium6.4
    GHSA-3f4x-grmj-89vxopenfoodfoundation/openfoodnetwork

    Customer update authorizes on the record's current enterprise_id while permitting enterprise_id as a…

    Food systems
  • Medium5.5
    GHSA-6m7h-wj74-8cxrunivention/univention-corporate-server

    UDM REST API license import authorization bypass with delegative administration enabled

    Business, infrastructure and developer software
  • Medium5.4
    GHSA-248m-5xq5-frr9UniTime/unitime

    Missing authorization on the Assign-Class-Instructors GWT-RPC load/save path

    Libraries, archives and research
  • Medium5.4
    GHSA-8rv5-x8wv-c5c4domoticz/domoticz

    Missing authorization on the udevices command handler lets a low-privilege user invoke Lua parser scripts…

    Energy, devices and roboticsCVE-2026-75520
  • Medium5.3
    GHSA-gqh3-7856-rjjgapostrophecms/apostrophe

    :_id/locales REST route omits the public-API authorization gate its sibling read routes enforce…

    Business, infrastructure and developer softwareCVE-2026-113668shared credit
  • Medium5.3
    GHSA-3rj9-q76h-j3q6bcgov/nr-fom

    Unauthenticated disclosure of pre-publication (draft/expired) Forest Operations Map metadata and spatial…

    Courts and civic participation
  • Medium5.3
    GHSA-8c5j-qxxx-539rOpenEnergyDashboard/OED

    Unauthenticated raw meter-readings export (missing server-side authorization)

    Energy, devices and robotics
  • Medium5.3
    GHSA-45f6-v6jq-99f7inventree/InvenTree

    Plugin-settings GET endpoints are readable without authentication

    Business, infrastructure and developer softwareCVE-2026-61746
  • Medium5.0
    GHSA-qjg7-cgv8-3c43dimagi/commcare-hq

    Web Apps form sessions can be read, altered and destroyed across project spaces (IDOR)

    Health, humanitarian and development
  • Medium4.5
    GHSA-qv7c-9hjr-9rv7civiform/civiform

    Trusted-Intermediary IDOR discloses any citizen's name and email

    Courts and civic participationCVE-2026-107856
  • Medium4.3
    GHSA-qjg5-3fxv-r8v4flipt-io/flipt

    RBAC fail-open on ListEnvironments/ListNamespaces: a zero-access identity receives the full unfiltered list

    Business, infrastructure and developer softwareshared credit
  • Medium4.3
    GHSA-4pvx-fwjj-8gpcTryGhost/Ghost

    Editors Could Promote Staff Users to Their Own Role

    Business, infrastructure and developer softwareCVE-2026-104412CVE-2026-105678shared credit
  • Medium4.3
    GHSA-92r3-p8c2-3fpxeclipse-hawkbit/hawkbit

    Privilege Escalation in Eclipse hawkBit DDI allows Tenant-Isolated Firmware Exfiltration

    Energy, devices and roboticsCVE-2026-16454
  • Medium
    GHSA-p3rv-f672-8x57theonedev/onedev

    Sensitive CI/CD job secrets exposure through /forks endpoint

    Business, infrastructure and developer software
  • Low2.4
    GHSA-7cq7-84q2-f23jsamvera/hyku

    Admin::UsersController#remove_role authorization carve-out

    Libraries, archives and research

Merged fixes

Code I wrote for projects I don't own, reviewed and merged by their maintainers.

Merged fixes
ProjectChangeMerged
Community Terrestrial Systems ModelFix quoting in check-compset-aliases.sh and paths in check-testlists.ymlESCOMP/CTSM#4247
KeycloakOnly apply a resource-type deny to the scopes it coverskeycloak/keycloak#53313
QCSchema ValidatorFixed type check always passing for symbols and geometryrmrresearch/QCSChema-Validator#6
EmbabelRecord a returned Tool.Result.Error as a failed ToolCallResponseEventembabel/embabel-agent#2068
Stock Synthesis (NOAA Fisheries)Count warnings rather than source-context lines in the warnings gatenmfs-ost/ss3-source-code#787
Community Terrestrial Systems ModelMake the Python unit-test job fail when a test failsESCOMP/CTSM#4236
F Prime baremetal packageMove format check into .github/workflows and fix its pip cachefprime-community/fprime-baremetal#55
LeluComplete the confusables table and fold before the fuzzy matchLelu-ai/lelu#59
ChirpStackRequire gateway-admin for relay-gateway update/deletechirpstack/chirpstack#982
06

Writing and talks

Preprints

  • Preprint · Zenodo

    Asymmetric Authorization: Finding Access-Control Defects by Comparing Sibling Operations in Open-Source Web Applications

    October 11, 2026

    doi:10.5281/zenodo.23298712

  • Preprint · Zenodo

    Controls That Cannot Fail: Silent No-Op Security Checks in Open-Source Authorization and AI-Agent Tooling

    October 12, 2026

    doi:10.5281/zenodo.23306738

Talks

  • October 2026

    You Checked the Verb, Not the Noun: Authorization Bugs That Survive Code Review

    CarolinaCon 2026 (virtual)

    Slides: doi:10.5281/zenodo.23478945

  • November 21 to 22, 2026

    I Broke My Own Agent Firewall: Four Ways Past Tool-Call Policy

    OWASP AppSec Days India 2026 (virtual)Scheduled

Newsletter

A newsletter on security flaws is coming: one bug per issue, told from the first lead to the fix, after each one is fixed and public.

07

Standards and community

Standards and public comment

11
  • OWASP AI Security Verification Standard (AISVS): PR #1127, merged September 5, 2026, cites my observation by name
  • CNCF TAG Security and Compliance: named additional contact on initiative cncf/toc#2280; review comments on the Meshery security self-assessment (cncf/toc#2264) and the Kyverno joint assessment (cncf/toc#2208)
  • NIST SP 800-209r1, Security Guidelines for Storage Infrastructure: public comments, August 6, 2026 (an author replied)
  • NIST SP 800-239, AI Data Center Security Analysis: public comments, August 6, 2026
  • FedRAMP RFC-0033 (FedRAMP 20x Phase 4): public comment, September 20, 2026
  • NIST SP 1353 initial public draft: comments, September 21 and 26, 2026
  • NIST National Vulnerability Database modernization RFI, docket NIST-2026-0100: comment NIST-2026-0100-0053, September 22, 2026
  • NIST IR 8613 initial public draft (multi-cloud): comments, September 26, 2026
  • NIST NCCoE DevSecOps Practices: comments, September 26, 2026
  • IETF OAuth Working Group: review of draft-chen-oauth-agent-authz-use-cases-03, September 30, 2026
  • CVE Program: comments on cve-documents, cve-schema, SSVC, the CERT Guide to Coordinated Vulnerability Disclosure and VINCE, August 2026

Peer review

6
  • Cloud Security Alliance, Zero Trust Microsegmentation Guidance (2026): listed as a reviewer
  • Cloud Security Alliance, Zero Trust Program Management Guidance (2026): listed as a reviewer
  • kubernetes-sigs/agent-sandbox: commit 500b40fa credits "PR review feedback (upramod, Santoshkumarpuppala)"
  • Meshery: PR #22120 (merged September 28, 2026), "Close the gap Santoshkumarpuppala raised on cncf/toc#2264"
  • GoogleCloudPlatform/k8s-aibom: design document 002 revised after my review
  • Cloud Security Alliance: review comments on the Autonomous Pentest Assurance Standard (APAS) Core Standard v0.9; Confidential Computing: Simplifying Trust in the Modern Enterprise; Designing the AI-First Security Organization; The VulnOps Operating Model

Working groups and volunteering

5
  • Cloud Security Alliance: AI Safety Working Group (since February 2026), AI Controls Framework Working Group (since May 2026), Autonomous Action Runtime Management Working Group (since August 2026), Security Controls Catalog Working Group
  • Cloud Native Computing Foundation: TAG Security and Compliance, member since August 2026
  • OpenSSF: AI/ML Security Working Group, member since August 2026
  • CVE Program: Automation Working Group mailing list, member since August 2026
  • CNCF Security Slam, Autumn/Winter 2026: contributor volunteer
08

Background

Before research, I built and secured cloud and AI platforms for a bank, a financial-services firm and Lenovo, where I work today.

Experience

  1. May 2026 to present

    Staff Engineer, AI Application Development

    Lenovo United States Inc., Morrisville, North Carolina

    Security and platform engineering for AI applications: identity at every layer, least privilege, and release gates that test authorization.

  2. March 2023 to May 2026

    Advisory IT Engineer

    Lenovo United States Inc., Morrisville, North Carolina

    Edge and web-application security for Lenovo's public domains, and the security of eight production Azure Kubernetes Service clusters.

  3. April 2022 to March 2023

    IT Consultant

    Origin Hubs, Inc., consultant to a financial-services client

    Kubernetes platform security on Red Hat OpenShift: admission policy, secrets management, mutual TLS and access control.

  4. February 2021 to March 2022

    DevSecOps Engineer

    Origin Hubs, Inc., consultant to a banking client

    Least-privilege cloud access on AWS and Azure, secrets out of servers, and hardened infrastructure as code.

  5. September 2019 to January 2021

    IT Consultant (part-time)

    Villanova University

  6. Spring 2020

    Teaching Assistant, ECE 4470 Computer Networks (part-time)

    Villanova University

Education

  • Master of Science in Cybersecurity

    Villanova University

    Conferred December 31, 2021

  • Bachelor of Science in Computer and Network Security

    Wilmington University

    Conferred December 17, 2018. Dean's List, Spring 2016, Summer 2016, Spring 2017

Certifications

7 certifications
  • Microsoft Certified: Azure Security Engineer AssociateJune 2026 to June 2027
  • Microsoft Certified: Fabric Data Engineer AssociateJuly 2025 to July 2026
  • Certified Kubernetes Administrator (CKA)March 2021 to March 2024
  • Microsoft Certified: Azure DevOps Engineer ExpertFebruary 2021 to February 2023
  • Microsoft Certified: Azure Administrator AssociateFebruary 2021 to February 2023
  • AWS Certified Solutions Architect, Associatepassed February 2021
  • Certified Ethical Hacker (CEH v10)August 2018 to August 2021