@casoon/auditmysite
Version:
Professional website analysis suite with robust accessibility testing, Core Web Vitals performance monitoring, SEO analysis, and content optimization insights. Features isolated browser contexts, retry mechanisms, and comprehensive API endpoints for profe
123 lines • 3.79 kB
TypeScript
/**
* 🔐 Security Headers Analyzer
*
* Comprehensive security headers analysis including:
* - Content Security Policy (CSP) validation
* - HTTP Strict Transport Security (HSTS)
* - X-Frame-Options, X-Content-Type-Options
* - Referrer Policy, Permissions Policy
* - HTTPS configuration and certificate analysis
* - Cookie security analysis
*/
import { Page } from 'playwright';
import { SecurityHeadersMetrics } from '../types/enhanced-metrics';
import { BaseAnalyzer, BaseAnalysisResult, BaseAnalysisOptions, BaseRecommendation, Grade, CertificateLevel } from '../types/base-types';
interface SecurityHeadersAnalysisResult extends BaseAnalysisResult {
securityHeaders: SecurityHeadersMetrics;
recommendations: BaseRecommendation[];
}
interface SecurityHeadersAnalysisOptions extends BaseAnalysisOptions {
/** Include certificate analysis */
includeCertificateAnalysis?: boolean;
/** Include cookie security analysis */
includeCookieAnalysis?: boolean;
/** Timeout for certificate analysis */
certificateTimeout?: number;
}
export declare class SecurityHeadersAnalyzer implements BaseAnalyzer<SecurityHeadersAnalysisResult, SecurityHeadersAnalysisOptions> {
constructor();
getName(): string;
getVersion(): string;
getScore(result: SecurityHeadersAnalysisResult): number;
getGrade(score: number): Grade;
getCertificateLevel(score: number): CertificateLevel;
getRecommendations(result: SecurityHeadersAnalysisResult): BaseRecommendation[];
/**
* Main analyze method implementing BaseAnalyzer interface
*/
analyze(page: Page, url: string | {
loc: string;
}, options?: SecurityHeadersAnalysisOptions): Promise<SecurityHeadersAnalysisResult>;
/**
* Analyze security headers comprehensively
*/
private analyzeSecurityHeaders;
/**
* Analyze Content Security Policy
*/
private analyzeCSP;
/**
* Check for unsafe inline directives in CSP
*/
private hasUnsafeInlineDirectives;
/**
* Check for unsafe eval directives in CSP
*/
private hasUnsafeEvalDirectives;
/**
* Analyze HTTP Strict Transport Security
*/
private analyzeHSTS;
/**
* Analyze X-Frame-Options header
*/
private analyzeXFrameOptions;
/**
* Analyze X-Content-Type-Options header
*/
private analyzeXContentTypeOptions;
/**
* Analyze X-XSS-Protection header (deprecated but still relevant)
*/
private analyzeXXSSProtection;
/**
* Analyze Referrer-Policy header
*/
private analyzeReferrerPolicy;
/**
* Analyze Permissions-Policy / Feature-Policy header
*/
private analyzePermissionsPolicy;
/**
* Analyze HTTPS configuration
*/
private analyzeHTTPS;
/**
* Analyze cookie security
*/
private analyzeCookieSecurity;
/**
* Get default cookie analysis when analysis fails
*/
private getDefaultCookieAnalysis;
/**
* Assess overall vulnerability status
*/
private assessVulnerabilities;
/**
* Calculate overall security score
*/
private calculateSecurityScore;
/**
* Calculate overall score for BaseAnalyzer interface
*/
private calculateOverallScore;
/**
* Generate security-specific recommendations
*/
private generateSecurityRecommendations;
/**
* Generate general recommendations for BaseAnalyzer interface
*/
private generateRecommendations;
/**
* Estimate implementation effort based on priority
*/
private estimateEffort;
/**
* Estimate score improvement based on priority
*/
private estimateScoreImprovement;
}
export {};
//# sourceMappingURL=security-headers-analyzer.d.ts.map