fingerprinter-js
Version:
Enterprise-grade browser fingerprinting with 19 collectors and advanced bot detection
68 lines • 2.1 kB
TypeScript
/**
* Suspect Score Analyzer v2.0
* Advanced bot, fraud, and automation detection
*/
export interface SuspectAnalysis {
score: number;
signals: SuspectSignal[];
riskLevel: "LOW" | "MEDIUM" | "HIGH";
details: Record<string, unknown>;
}
export interface SuspectSignal {
type: string;
severity: number;
description: string;
detected: boolean;
category: SignalCategory;
}
export type SignalCategory = "automation" | "inconsistency" | "environment" | "bot" | "privacy";
export declare class SuspectAnalyzer {
/**
* Analyzes a fingerprint to detect suspicious signals
*/
static analyze(components: Record<string, unknown>): SuspectAnalysis;
/**
* Detects automation signals
*/
private static checkAutomation;
/**
* Checks data consistency
*/
private static checkConsistency;
/**
* Checks execution environment
*/
private static checkEnvironment;
/**
* Detects bot patterns
*/
private static checkBotPatterns;
/**
* Detects privacy tools and fingerprint spoofing
*/
private static checkPrivacyTools;
private static hasWebDriver;
private static isHeadless;
private static hasPhantomSignatures;
private static hasSeleniumSignatures;
private static hasPuppeteerSignatures;
private static hasPlaywrightSignatures;
private static hasCDPArtifacts;
private static hasTimezoneLanguageInconsistency;
private static hasScreenInconsistency;
private static hasGenericCanvas;
private static hasUAPlatformMismatch;
private static hasHardwareInconsistency;
private static hasMissingAPIs;
private static hasTooManyErrors;
private static hasSuspiciousUserAgent;
private static hasTouchUAMismatch;
private static isTooStable;
private static hasKnownBotSignature;
private static hasUnusualWebGLVendor;
private static hasCanvasNoise;
private static hasPropertyTampering;
private static hasAudioTampering;
private static calculateRiskLevel;
}
//# sourceMappingURL=suspect-analyzer.d.ts.map