Overview
The Miku Miku Beam web interface provides a user-friendly graphical control panel for launching and monitoring attacks. It communicates with the backend server via Socket.IO for real-time statistics.Starting the Server
Launch the web server using themmb-server binary:
3000. You’ll see output like:
Server Flags
Allow attacks without proxies. Can also be set via
ALLOW_NO_PROXY=true environment variable.Environment Variables
Set to
json for JSON-formatted logs, or leave unset for human-readable console outputSet to
true to allow attacks without proxies (equivalent to --no-proxy flag)Accessing the Interface
Once the server is running, open your browser and navigate to:The web interface is served from either
bin/web-client or web-client/dist depending on your build configuration.Features
Attack Configuration
The web interface provides an intuitive form for configuring attacks:Select Attack Method
Choose from available attack types:
http_flood- Standard HTTP floodhttp_bypass- Bypass-focused HTTP attackhttp_slowloris- Slowloris attacktcp_flood- TCP-level floodminecraft_ping- Minecraft server ping flood
Enter Target
Specify the target URL or address:
- HTTP:
http://example.comorhttps://example.com:8443 - TCP:
tcp://192.168.1.100:80 - Minecraft:
mc.example.com:25565
Configure Parameters
Set attack parameters:
- Duration - Attack length in seconds (default: 60)
- Packet Delay - Delay between packets in ms (default: 500)
- Packet Size - Size of each packet in bytes (default: 512)
- Threads - Number of concurrent threads (0 = auto)
Real-Time Statistics
Once an attack is running, the interface displays live statistics:Packets per second - current attack rate
Cumulative packets sent since attack started
Number of proxies currently in use
Detailed attack logs and status messages (always verbose in web mode)
Configuration Management
The web interface allows you to manage proxies and user agents directly from the browser:- View Configuration
- Update Configuration
The server exposes a
GET /configuration endpoint that returns current proxy and user agent lists (base64 encoded).Socket.IO Communication
The web interface uses Socket.IO for bidirectional real-time communication.Client Events
Initiates a new attack with specified parameters:
Immediately stops the current attack:
Server Events
Real-time statistics updated every second:
Confirmation that attack has started:
Error message if attack cannot start:
Notification that attack has completed or been stopped:
REST API Endpoints
In addition to Socket.IO, the server provides HTTP endpoints:List Available Attacks
Get Configuration
Update Configuration
CORS Configuration
The server supports CORS to allow frontend development servers to connect. By default, it allows:- Origin:
http://localhost:5173(Vite dev server) - Methods: GET, POST
- Headers: Content-Type
Running Without Proxies
By default, the web server requires proxies. To allow attacks without proxies:Multiple Clients
The server supports multiple simultaneous connections. Each client gets its own attack instance:- Client attacks are tracked by Socket.IO client ID
- Each client can run one attack at a time
- Starting a new attack automatically stops the previous one
- Disconnecting automatically stops the client’s attack
Monitoring Server Logs
The server provides detailed logging of all operations:- Console Format (Default)
- JSON Format
Human-readable logs for development:
Troubleshooting
Static Assets Not Found
No Proxies Available
--no-proxy.
CORS Errors
If developing the frontend separately, update theallowed_origin in your configuration file to match your dev server URL.
Best Practices
Use HTTPS
Deploy behind a reverse proxy with TLS for production use
Restrict Access
Use firewall rules or authentication to prevent unauthorized access
Monitor Resources
Keep an eye on server CPU/memory, especially with multiple clients
Log Everything
Use JSON logging in production for better monitoring and debugging