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
boolean
default:"false"
Allow attacks without proxies. Can also be set via
ALLOW_NO_PROXY=true environment variable.Environment Variables
string
default:"console"
Set to
json for JSON-formatted logs, or leave unset for human-readable console outputboolean
default:"false"
Set 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:1
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
2
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
3
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)
4
Launch Attack
Click the attack button to begin. The interface immediately switches to monitoring mode.
Real-Time Statistics
Once an attack is running, the interface displays live statistics:int
Packets per second - current attack rate
int
Cumulative packets sent since attack started
int
Number of proxies currently in use
string
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
object
Initiates a new attack with specified parameters:
void
Immediately stops the current attack:
Server Events
object
Real-time statistics updated every second:
object
Confirmation that attack has started:
object
Error message if attack cannot start:
void
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