PANW Interop Automation
GlobalProtect / Prisma Access Agent — Third-Party Interoperability & Automation Framework
A technical case study documenting the automated coexistence-testing framework validating GlobalProtect and Prisma Access Agent alongside third-party XDR, DLP, and VPN products across Windows and macOS endpoints.
Executive Summary
This document presents the technical case study of the PANW Interop Automation initiative — an engineering effort validating that Palo Alto Networks' GlobalProtect (GP) and Prisma Access Agent (PAA) remain fully functional, and that Host Information Profile (HIP) posture reporting stays accurate, when co-installed alongside third-party XDR/EDR, DLP, and VPN products on Windows and macOS endpoints.
Engineering Objectives
- Validate GP and PAA remain fully functional with zero degradation between co-installed agents.
- Confirm HIP posture data (antimalware, firewall, encryption, DLP, patches) remains accurate across all scenarios.
- Verify tunnel priority, routing tables, and DNS resolution when a second VPN client is simultaneously connected.
Why Automate?
Manual coexistence testing is slow, inconsistent, and does not scale across 10+ vendors and two operating systems. Results vary widely between human testers and minor patch revisions.
This project converts the entire test lifecycle — installation, validation, scanning, and uninstallation — into an unattended framework with zero human interaction required after launch, enabling repeatable regression testing on every vendor release.
Project Overview
2.1 The Problem Statement
Enterprise endpoints rarely run a single security agent in isolation. GP or PAA is typically deployed alongside an XDR/EDR product, a DLP agent, and — in many real-world environments — a second, third-party VPN client that predates or is layered onto the PANW deployment. Any of these combinations can interfere with kernel/network extensions, HIP data collection, or tunnel routing, and those failures are notoriously difficult to catch through ad-hoc manual testing.
2.2 What the Framework Does
Installs a target third-party product (XDR, DLP, or VPN client) on a clean Windows or macOS endpoint with GP/PAA already present.
Connects to VPN and downloads the HIP report, asserting that all five posture categories are populated correctly.
Runs a full health, detection, and network-policy validation suite against the coexisting products.
Uninstalls the third-party product and verifies clean removal, leaving the endpoint ready for the next test cycle.
2.3 Primary Stakeholders
Field Engineers & TAC
Consume HTML & PDF reports to troubleshoot customer coexistence escalations with proof-backed logs.
Partner & Product Teams
Use structured JSON results for regression tracking across frequent vendor agent version releases.
Security / QA & Compliance
Review raw HIP XML artifacts to confirm posture-reporting accuracy and baseline compliance standards.
Products & Vendors in Scope
All products are tested on Windows 10/11 and macOS 13, 14, and 15, unless otherwise noted.
HIP Report Validation
After every VPN connect, the framework automatically downloads the Host Information Profile (HIP) report and asserts accurate posture extraction across five mission-critical categories on both Windows and macOS:
Asserts vendor & product name, engine version, definition/DAT version, Real-Time Protection (RTP) state, last full scan timestamp, on-access scan enabled.
Asserts product name & vendor, enabled/disabled state, inbound traffic enforcement, outbound traffic enforcement, policy version string.
Asserts FDE product name, encryption enabled state, algorithm (BitLocker / FileVault / other), drive-level encryption scope.
Asserts product name, running/active state, policy version, and last policy sync timestamp.
Asserts patch management tool name, missing critical patches count, last assessment timestamp, and assessment tool version string.
Automation Framework & Architecture
The framework is a Python-based orchestrator with OS-specific modules and vendor-native script overrides, invoked through native auto-elevating launchers on each platform.
panw-interop-automation/
├── run.ps1 / run.sh # Native Windows/macOS auto-elevating launchers
├── main.py # Core Python Orchestrator (--vendor, --phase, --os)
├── .env.template # Template for API tokens & auto-logon secrets
├── config/
│ └── config.yaml # Central single-source-of-truth configuration
├── installers/ # Directory structure for vendor binaries & secrets
│ └── <vendor>/{windows,mac}/
├── core/
│ ├── windows/, mac/ # OS-specific Install, Validate, Scan, Uninstall logic
│ ├── desktop/ # PyWinAuto wizard automation & dialog watchers
│ ├── network/ # Remote WinRM firewall probing modules
│ └── reporting/ # HTML, JSON, PDF & HIP report generation engine
├── scripts/
│ ├── common/ # Generic fallback PowerShell & Bash scripts
│ └── <vendor>/{windows,mac}/# Vendor-specific native script overrides
├── reports/ # Output directory for HTML/JSON/PDF/HIP reports
└── logs/ # Rotating execution logs & pending run statesAutomated Test Lifecycle (33 Steps)
A 33-step, fully unattended flow — zero human interaction from installer staging through post-uninstall cleanup — organized into six distinct execution phases:
VPN Coexistence Testing
Enterprise endpoints frequently run a third-party VPN client alongside GP or PAA. This test suite validates that GP/PAA always asserts routing priority, enforces HIP policy, and maintains encrypted tunnel integrity, regardless of which third-party VPN is also connected.
7.1 Why Dual-VPN Behaviour Matters
A large share of real-world PANW deployments are not greenfield — the endpoint already has a legacy VPN client (FortiClient, Ivanti, Zscaler, or similar) from a prior remote-access rollout, or a business unit installs a second VPN for a specific application. If GP/PAA silently loses routing priority in that situation, users can be routed around PANW security enforcement without any visible symptom, which is a materially different risk than a simple crash or install failure. This is why VPN coexistence is treated as its own dedicated test category rather than folded into general product coexistence.
| Scenario | GP / PAA Tunnel | 3rd-Party VPN State | Strict Pass Criteria |
|---|---|---|---|
| GP + FortiClient | Connected (primary) | Connected (secondary) | GP routes dominate; FortiClient routes demoted |
| GP + Ivanti Secure | Connected (primary) | Connected (secondary) | GP routes dominate; DNS follows PANW config |
| GP + Zscaler ZCC | Connected (primary) | Connected (secondary) | GP routes dominate; PANW canary DNS resolves |
| PAA + FortiClient | ZTNA active (primary) | Connected (secondary) | PAA policy applied; FortiClient tunnel subordinate |
| PAA + Ivanti Secure | ZTNA active (primary) | Connected (secondary) | PAA policy applied; Ivanti re-routed, no split-leak |
| PAA + Zscaler ZCC | ZTNA active (primary) | Connected (secondary) | PAA policy applied; no ZCC intercept on PANW traffic |
7.3 Connection-Order Variations
- GP/PAA-First: PANW connects first on a clean machine; third-party VPN launches on top.
- Third-Party-First: Legacy VPN connected first; PANW initiates on top (unveils route conflicts).
- Reconnect / Flap: One tunnel dropped and restored; confirms PANW automatically reclaims priority.
7.4 Automated Tunnel Priority Checks
- • Route table metric comparison (PANW lowest metric)
- • PANW canary DNS resolution (resolves only via PANW)
- • HTTPS request to a GP/PAA-only internal resource
- • Posture data HIP report download with co-active VPN
- • Split-tunnel leak assertion against unmanaged tunnels
- • OS Network adapter binding order validation
Interface metrics and route table entries via PowerShell (Get-NetRoute, Get-NetIPInterface); DNS client server order via Get-DnsClientServerAddress; confirms the GP/PAA virtual adapter is bound with a lower (higher-priority) metric than the third-party VPN adapter.
Network Service Order via networksetup -listnetworkserviceorder; route table via netstat -rn; DNS resolver order via scutil --dns; confirms the GP/PAA utun interface takes routing precedence over the third-party VPN's utun/tun interface.
Reporting & Deliverables
Every automated test run produces four distinct artifact types automatically, with zero manual post-processing required:
Pass/fail badges per phase & step, collapsible sections, vendor branding, step timing/duration, embedded execution log.
Audience: Field engineers, TAC, partner SEsFull structured result per step, CI/CD pipeline integration ready, dashboard/SIEM ingestion, diff-able across runs for regression tracking.
Audience: DevOps, automation pipelines, QAPrintable one-page layout, phase pass/fail at a glance, HIP assertion matrix, VPN coexistence results, PANW-branded and marked confidential.
Audience: Leadership, customers, partner execsRaw HIP XML downloaded post-connect, per-category assertions highlighted, diffed against baseline, annotated pass/fail per posture field.
Audience: Security engineers, QA, complianceTechnical Glossary
Value for Future Engagements
The modular architecture built for the PANW Interop Automation framework provides immediately transferable capabilities for any organization delivering endpoint security solutions:
Vendor-Agnostic Architecture
New XDR, DLP, or VPN vendors are onboarded simply by adding a config entry and vendor script override without modifying the core orchestrator.
Zero-Touch Unattended Execution
The full install → validate → scan → uninstall lifecycle runs without human intervention, enabling nightly CI/CD regression sweeps.
Multi-Format Unified Reporting
HTML, JSON, PDF, and raw HIP XML are generated simultaneously from a single run, serving field, engineering, and executive stakeholders.
Transferable Phase Model
The 6-phase model (Pre-Flight, Install, Validate, Scan, Network, Uninstall) transfers seamlessly to any complex agent compatibility testing matrix.
Conclusion
The PANW Interop Automation framework demonstrates that GlobalProtect and Prisma Access Agent remain fully functional and accurately report HIP posture when co-installed with 10+ third-party XDR, DLP, and VPN products across Windows and macOS, and that PANW tunnel priority is consistently maintained in dual-VPN scenarios.
By converting a previously manual, 33-step verification process into a zero-touch automated pipeline with structured multi-format reporting, this project delivers repeatable, auditable coexistence evidence — reducing regression risk on every third-party product update and giving field, partner, and executive stakeholders a shared, trustworthy source of truth.
Need automated coexistence or security test pipelines?
Schedule a technical consultation with our security automation architects to evaluate your endpoint testing challenges.
