The “PCI-SegTest” tool is a specialized utility designed to ensure compliance with PCI DSS v4.0 by testing network segmentation and egress controls within the Cardholder Data Environment (CDE).
It automates critical compliance checks, helping organizations safeguard cardholder data effectively.
Key Features
- Automatic Network Discovery: Identifies network segments without manual input.
- Segmentation Testing: Validates network isolation to meet PCI DSS requirements.
- Egress Control Testing: Ensures outbound connections are restricted.
- DNS Exfiltration Testing: Detects risks of DNS-based data exfiltration.
- File Transfer Testing: Tests for unrestricted file upload vulnerabilities.
System Requirements
- A Bash shell environment.
- Network tools like
ip
,nc
,host
,getent
, andcurl
. - Root or sudo access for enhanced network discovery.
- Execution from within the CDE.
The tool is simple to use:
bash# Basic usage
./segment.sh
# Recommended usage with sudo
sudo ./segment.sh
Users can enhance accuracy by creating a network_config.txt
file to define network segments and allowed paths.
Test Phases
Phase 1: Network Segmentation Testing
This phase verifies compliance with PCI DSS Requirements 1.3.1–1.3.3:
- Tests isolation between segments.
- Ensures administrative ports (e.g., 22, 3389) and database ports (e.g., 1433, 3306) are restricted.
Phase 2: Egress Control Testing
This phase addresses Requirement 1.3.4:
- Tests outbound connections on common ports (e.g., 21, 80, 443).
- Checks for DNS exfiltration vulnerabilities.
- Verifies restrictions on file uploads.
Output and Interpretation
The tool provides detailed, color-coded results:
- PASS indicates compliance.
- FAIL highlights areas requiring remediation, with references to specific PCI DSS requirements and actionable suggestions.
Testing should be conducted in controlled environments with proper authorization. Coordination with security teams and scheduling during maintenance windows is recommended to minimize disruptions.
Failures in segment discovery or tests often stem from misconfigured networks or firewalls. DNS failures should prompt checks on DNS resolution functionality.
The “PCI-SegTest” tool simplifies compliance checks, ensuring robust protection of cardholder data while aligning with PCI DSS v4.0 standards.