定制 darvis/livewire-injection-stopper 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

darvis/livewire-injection-stopper

最新稳定版本:v1.2.3

Composer 安装命令:

composer require darvis/livewire-injection-stopper

包简介

Laravel middleware package to block spam robots and injection attempts, with Livewire security audit tools

README 文档

README

Protect your Laravel + Livewire application from spam bots and security vulnerabilities.

Latest Version License

What does this package do?

This package protects your Laravel application in three ways:

1. 🛡️ Blocks Spam Bots

Automatically blocks automated spam bots (like Python scripts, curl, wget) from accessing your website. No more spam form submissions!

2. 🔍 Finds Security Holes in Livewire

Scans your Livewire components and tells you which properties attackers could manipulate. For example, if you have public $isAdmin = false, an attacker could change it to true in their browser!

3. 🔇 Silences Sentry Errors from Bot Attacks

When bots manipulate Livewire payloads, they can trigger CannotUpdateLockedPropertyException or Livewire property-assignment TypeError exceptions. This package silently handles those bot-driven exceptions and prevents them from being reported to Sentry or other error tracking services, keeping your error logs clean.

Installation

composer require darvis/livewire-injection-stopper

That's it! The spam bot blocking is now active.

Check Your Security

Run this command to scan your Livewire components:

php artisan livewire-injection-stopper:audit

It will show you which properties need protection.

Example: Fixing a Security Issue

Before (Vulnerable):

class CheckoutComponent extends Component
{
    public $price = 100.00;  // ⚠️ Attacker can change this to $0.01!
}

After (Secure):

use Livewire\Attributes\Locked;

class CheckoutComponent extends Component
{
    #[Locked]  // ✅ Now protected!
    public $price = 100.00;
}

What Gets Blocked?

By default, these bots are blocked:

  • Python scripts (python-requests)
  • Command-line tools (curl, wget)
  • Web scrapers (scrapy)
  • Generic bots and crawlers

Real browsers and users are never blocked.

Configuration (Optional)

Want to customize? Publish the config file:

php artisan vendor:publish --tag=livewire-injection-stopper-config

Now you can:

  • Add or remove blocked bots
  • Block specific IP addresses
  • Whitelist certain routes (like webhooks)
  • Enable/disable Sentry error silencing

Sentry Error Silencing

By default, this package silences bot-driven Livewire update exceptions, including:

  • CannotUpdateLockedPropertyException
  • Livewire property assignment TypeError exceptions (for example: Cannot assign array to property ...)

This keeps your Sentry error logs clean.

How it works:

  • Middleware blocks suspicious Livewire update payloads before component assignment when possible
  • If Livewire still throws a protected-property or array-assignment exception, this package catches it and returns a 403 response
  • The exception is logged locally (if logging is enabled) but NOT sent to Sentry

Important: Custom Exception Handlers

If your app overrides report() in app/Exceptions/Handler.php and directly calls Sentry (captureException), make sure you skip reporting when SilentExceptionHandler::shouldSilence($exception) returns true. Otherwise, your custom handler can bypass package silencing.

To disable this feature:

// config/livewire-injection-stopper.php
'silence_locked_property_exceptions' => false,

Documentation

For detailed documentation, see the /docs folder:

Quick Links

Requirements

  • PHP 8.1+
  • Laravel 11.0 or 12.0
  • Livewire 3.0

License

MIT License - feel free to use in any project!

Credits

Created by Arvid de Jong

Need help? Check the documentation or email info@arvid.nl

统计信息

  • 总下载量: 1.78k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 2
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 2
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-01-03

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固