Skip to content

PowerShell connectivity testing tool for Azure and Microsoft services - Tests 250+ domains for network accessibility and proxy issues

Notifications You must be signed in to change notification settings

hackandbackpack/MicCheck

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

MicCheck

A PowerShell connectivity testing tool for Azure and Microsoft services. MicCheck validates web accessibility to 250+ Azure and Microsoft domains across HTTP and HTTPS protocols, helping identify network blocks, proxy issues, and firewall restrictions.

Features

  • Comprehensive Testing: Tests connectivity to 250+ Microsoft and Azure domains
  • Dual Protocol Support: Validates both HTTP (port 80) and HTTPS (port 443) access
  • Proxy Detection: Identifies proxy authentication requirements and proxy-level blocks
  • Web Filter Detection: Detects 403 Forbidden responses and HTTP-level filtering
  • Timeout Handling: Configurable timeout settings with clear timeout indication
  • Color-Coded Output: Visual feedback with green (success) and red (failure) indicators
  • Statistical Summary: Percentage-based success rates and failure counts

What It Tests

MicCheck validates connectivity to:

Azure Services

  • Azure Portal & Management endpoints
  • Azure Storage (Blob, File, Queue, Table)
  • Azure AI & Cognitive Services (including OpenAI)
  • Azure Databases & Data Services
  • Azure DevOps & Visual Studio Services
  • Azure Container Services
  • Azure Networking & CDN

Microsoft 365 & Office

  • Microsoft 365 Admin Centers
  • Exchange Online & Outlook
  • SharePoint Online & OneDrive
  • Microsoft Teams
  • Office CDN & Update Services

Authentication & Identity

  • Azure Active Directory
  • Microsoft Identity Platform
  • Graph API endpoints
  • OAuth & OIDC services

Power Platform

  • Power Apps
  • Power BI
  • Power Automate (Flow)
  • Power Virtual Agents

Other Microsoft Services

  • Windows Update & Activation
  • Microsoft Store
  • Microsoft Defender
  • Dynamics 365
  • Intune & Endpoint Manager
  • GitHub & Package Managers

Requirements

  • Operating System: Windows with PowerShell 5.1 or later
  • Permissions: Standard user permissions (no admin required)
  • Network: Internet connectivity

Installation

  1. Download MicCheck.ps1 to your local machine
  2. Open PowerShell (no admin privileges needed)
  3. Navigate to the directory containing the script
cd C:\path\to\MicCheck

Usage

Basic Execution

.\MicCheck.ps1

Execution Policy

If you encounter execution policy restrictions, use one of these methods:

Option 1: Bypass for single execution

powershell -ExecutionPolicy Bypass -File .\MicCheck.ps1

Option 2: Unblock the file

Unblock-File .\MicCheck.ps1
.\MicCheck.ps1

Output

Console Output

MicCheck provides real-time color-coded output:

======================================
Azure/Microsoft Web Connectivity Test
======================================
Testing HTTP/HTTPS access to 250 domains
Tests for web proxy blocks and HTTP-level filtering
Timeout: 5s per test
Start time: 2025-10-10 10:30:00
======================================

Testing: portal.azure.com
  HTTP...  ✓ PASS [200]
  HTTPS... ✓ PASS [200]

Testing: login.microsoftonline.com
  HTTP...  ✓ PASS [200]
  HTTPS... ✓ PASS [200]

...

======================================
SUMMARY
======================================
Total domains tested: 250
Total tests: 500

HTTP (Port 80):
  Accessible: 230 (92.0%)
  Blocked/Failed:  20

HTTPS (Port 443):
  Accessible: 245 (98.0%)
  Blocked/Failed:  5

End time: 2025-10-10 10:35:00
======================================

Status Indicators

  • ✓ PASS [code]: Successfully connected (shows HTTP status code)
  • ✗ TIMEOUT: Request timed out (possible firewall block)
  • ✗ PROXY: Proxy authentication required or proxy block
  • ✗ 403: Forbidden - blocked by web filter
  • ✗ FAIL: Other connection failure

Configuration

Adjusting Timeout

Edit the timeout value at the top of the script (default: 5 seconds):

# Timeout for connectivity tests (seconds)
$timeout = 5

Increase for slower networks or decrease for faster testing.

Use Cases

Network Troubleshooting

Quickly identify which Microsoft/Azure services are accessible from your network location.

Security Assessment

Validate that required Microsoft services are reachable through corporate firewalls and proxies.

Compliance Verification

Confirm that necessary domains are whitelisted for Microsoft 365 and Azure services.

Proxy Configuration Testing

Detect proxy blocks and authentication issues affecting Microsoft service connectivity.

Pre-Migration Validation

Test network readiness before migrating to Azure or Microsoft 365.

Understanding Results

High Success Rate (>95%)

Your network has good connectivity to Microsoft services. Minor failures may be expected for deprecated or geo-specific services.

Medium Success Rate (70-95%)

Some services are blocked. Review firewall rules and proxy configurations. Common causes:

  • Web proxy authentication requirements
  • Category-based web filtering
  • Incomplete firewall whitelist

Low Success Rate (<70%)

Significant network restrictions detected. Possible causes:

  • Aggressive firewall policies
  • Proxy server blocks
  • DNS resolution issues
  • Geographic restrictions
  • Network isolation policies

Common Issues

All HTTPS Tests Fail

  • Cause: TLS inspection or certificate validation issues
  • Solution: Check proxy SSL/TLS settings and certificate trust

Proxy Errors

  • Cause: Proxy authentication not configured in PowerShell
  • Solution: Configure proxy credentials or test from non-proxy network

Timeout Errors

  • Cause: Firewall blocking connections at network level
  • Solution: Review firewall rules and add required domains to whitelist

Contributing

Contributions are welcome! Please feel free to submit issues or pull requests with:

  • Additional domains to test
  • Bug fixes
  • Feature enhancements
  • Documentation improvements

License

This project is provided as-is for network connectivity testing purposes.

Disclaimer

This tool performs HTTP/HTTPS connectivity tests only. It does not:

  • Store or transmit any data
  • Modify system settings
  • Require administrative privileges
  • Access sensitive information

Use this tool in accordance with your organization's security and network testing policies.

Author

Maintained by the HackAndBackpack team.

Related Resources

About

PowerShell connectivity testing tool for Azure and Microsoft services - Tests 250+ domains for network accessibility and proxy issues

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published