Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WebPulse

A modular, high-performance web analytics and telemetry framework for advanced user behavior and device analysis.

License Version

Overview

WebPulse is a sophisticated JavaScript-based framework designed for collecting and analyzing user interaction data, device fingerprints, and environmental metrics in web applications. Built with modularity, performance, and extensibility in mind, it provides researchers, developers, and analysts with a flexible toolset for studying user behavior, optimizing user experiences, and gathering telemetry in controlled environments.

Key Features:

  • Modular Architecture: Dynamically loadable modules for permissions, device info, geolocation, user interactions, and behavioral fingerprinting.
  • High Stealth: Lightweight footprint with obfuscated code and randomized execution to minimize detection and optimize performance.
  • Multi-Channel Data Exfiltration: Supports WebSocket, DNS, steganography, and audio-based data transmission for robust data delivery.
  • WebAssembly Integration: Offloads intensive tasks (e.g., encryption, fingerprinting) to WebAssembly for speed and efficiency.
  • Adaptive Decision Engine: Neural-inspired prioritization adjusts module execution based on device resources and user activity.
  • Zero-Knowledge Encryption: Ensures sensitive data is encrypted client-side, enhancing privacy and security.
  • Offline Persistence: Stores data in IndexedDB for reliable collection in low-connectivity scenarios.

Use Cases:

  • User behavior analysis for UX optimization.
  • Device fingerprinting for personalized content delivery.
  • Telemetry collection in research or testing environments.
  • Performance monitoring and diagnostics in web applications.

Note: This project is intended for ethical and authorized use only, such as research or analytics in controlled environments with explicit user consent. Misuse may violate privacy laws or platform policies.

Installation

Prerequisites

  • A modern web browser supporting ES modules, WebSocket, WebAssembly, and IndexedDB.
  • A server supporting HTTPS for secure API access (e.g., geolocation).
  • Backend services for data collection (WebSocket, DNS, steganography, audio endpoints).
  • Node.js (optional, for development and testing).

Setup

  1. Clone the repository:
    git clone https://github.com/your-username/WebPulse.git
    cd WebPulse
  2. Deploy the files to a web server:
    • Place index.html, core.js, sw.js, and modules/ in your server’s root directory.
    • Ensure crypto.wasm and fingerprint.wasm are available (implement in C or use placeholders for testing).
  3. Configure endpoints in core.js:
    • Update _0x3c4d with your proxy, WebSocket, DNS, steganography, and audio URLs.
    • Set Telegram credentials if used (_0x3c4d.t.b, _0x3c4d.t.c).
    • Replace _0x3c4d.pk with a valid RSA public key for zero-knowledge encryption.
  4. Set up backend services:
    • WebSocket server for real-time data.
    • DNS server for encoded queries (e.g., d.your-dns.com).
    • Steganography server to decode image pixels (https://your-stego.com/img).
    • Audio server to capture inaudible tones (https://your-audio.com/capture).
  5. Serve over HTTPS to enable secure APIs (e.g., geolocation, WebSocket).

Usage

  1. Embed in a Web Page: Include index.html or reference core.js in your HTML:

    <script src="/core.js" async></script>

    The script auto-initializes, loading modules dynamically and collecting data based on configuration.

  2. Configure Modules: Edit _0x3c4d.m in core.js to enable/disable modules:

    m: { p: true, i: true, d: true, f: true, geo: true, int: true, bf: true, co: false }
    • p: Permissions (camera, geolocation).
    • i: IP and geolocation data.
    • d: Device info (user-agent, platform, screen size).
    • f: Canvas fingerprinting.
    • geo: High-precision geolocation.
    • int: User interactions (keyboard, mouse).
    • bf: Behavioral fingerprinting (mouse speed, clicks, scrolls).
    • co: Cross-origin data (experimental, requires CORS).
  3. Monitor Data: Data is sent to configured endpoints (WebSocket, DNS, etc.). Monitor server logs to verify collection.

  4. Testing:

    • Deploy in a non-virtualized environment to avoid sandbox detection (navigator.webdriver).
    • Verify exfiltration channels (WebSocket, DNS, steganography, audio) with server logs.
    • Test HTTPS deployment for secure APIs.

Project Structure

WebPulse/
├── index.html          # Minimal HTML loader
├── core.js             # Core logic and module orchestration
├── sw.js               # Service Worker for background persistence
├── modules/
│   ├── encrypt.js      # Encryption (XOR, RSA, WASM)
│   ├── exfil.js        # Exfiltration channels (WebSocket, DNS, stego, audio)
│   ├── fingerprint.js  # Device and behavioral fingerprinting
│   ├── storage.js      # IndexedDB storage
│   ├── stealth.js      # Anti-tampering and evasion
├── crypto.wasm         # WebAssembly encryption module
├── fingerprint.wasm    # WebAssembly fingerprinting module
└── README.md           # This file

Security Considerations

  • Encryption: Replace placeholder XOR encryption (encrypt.js) with crypto.subtle or crypto-js for production.
  • Polymorphism: Implement server-side code transformation for dynamic module loading to enhance stealth.
  • Ethical Use: Ensure user consent and compliance with privacy laws (e.g., GDPR, CCPA) when collecting data.
  • Sandbox Evasion: The script detects virtualized environments and debuggers, pausing execution to avoid analysis.
  • Anti-Tampering: Integrity checks prevent runtime modifications, ensuring reliability.

Development

To contribute or extend WebPulse:

  1. Add new modules in modules/ with the same export structure (e.g., export default {...}).
  2. Update _0x3c4d.m in core.js to include new modules.
  3. Implement WASM modules (crypto.wasm, fingerprint.wasm) in C for performance.
  4. Test in a local HTTPS server (e.g., npx http-server --ssl).

License

This project is licensed under the MIT License. See LICENSE for details.

Disclaimer

WebPulse is a research tool for authorized use only. Unauthorized data collection may violate privacy laws or platform policies. The developers are not responsible for misuse or unethical applications.

Contact

For questions or contributions, open an issue or contact [your-email@example.com].


Built with 💡 for research and innovation.

About

No description, website, or topics provided.

Resources

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages