Lucene search
+L

Play Sound

🗓️ 24 Jan 2026 22:19:45Reported by KittySploitType 
kittysploit
 kittysploit
🔗 kittysploit.com

KittySploit Play Sound module plays an audio file in the victim browser.

Refs
Code
from kittysploit import *

class Module(BrowserAuxiliary):
    __info__ = {
        "name": "Play Sound",
        "description": "Play a sound on the browser victim (requires user interaction on modern browsers)",
        "author": "KittySploit Team",
        "browser": Browser.ALL,
        "platform": Platform.ALL,
        "session_type": SessionType.BROWSER,
        "user_interaction": True,
    }

    url_audio = OptString("https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp3", "URL of the audio file to play", True)

    def run(self):
        """Play a sound on the target browser session"""
        # Modern browsers block autoplay without user interaction
        # We'll wait for the next user interaction (click, keypress, etc.) to play the audio
        code_js = f"""
        (function() {{
            try {{
                // Create audio element
                const audio = new Audio('{self.url_audio}');
                audio.volume = 1.0;
                audio.preload = 'auto';
                
                let audioPlayed = false;
                
                // Function to play audio
                function playAudio() {{
                    if (audioPlayed) return;
                    audioPlayed = true;
                    
                    const playPromise = audio.play();
                    if (playPromise !== undefined) {{
                        playPromise.then(() => {{
                            console.log('Audio playing');
                        }}).catch(error => {{
                            console.error('Failed to play audio:', error);
                        }});
                    }}
                }}
                
                // Try to play immediately (might work if user already interacted)
                const playPromise = audio.play();
                if (playPromise !== undefined) {{
                    playPromise.then(() => {{
                        audioPlayed = true;
                        console.log('Audio playing');
                    }}).catch(() => {{
                        // Autoplay blocked - wait for user interaction
                        console.log('Autoplay blocked. Waiting for user interaction...');
                        
                        // Listen for any user interaction event
                        const events = ['click', 'keydown', 'keypress', 'mousedown', 'touchstart', 'pointerdown'];
                        const playOnInteraction = (event) => {{
                            playAudio();
                            // Remove listeners after first interaction
                            events.forEach(evt => {{
                                document.removeEventListener(evt, playOnInteraction, true);
                                window.removeEventListener(evt, playOnInteraction, true);
                            }});
                        }};
                        
                        // Add listeners to document and window
                        events.forEach(evt => {{
                            document.addEventListener(evt, playOnInteraction, true);
                            window.addEventListener(evt, playOnInteraction, true);
                        }});
                    }});
                }}
            }} catch (error) {{
                console.error('Error creating audio:', error);
            }}
        }})();
        """
        
        self.send_js(code_js)
        return True

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

24 Jan 2026 22:19Current
5.8Medium risk
Vulners AI Score5.8
0