On peut dire que la défense XSS (cross-site scripting) doit être utilisée dans le site. Si vous n'utilisez pas la défense XSS, alors votre site l'est. extrêmement dangereux. Les filtres XSS peuvent supprimer les balises HTML des valeurs d'entrée, il est donc important de supprimer les balises HTML pour des raisons de sécurité. Dans Laravel 5.2, cela peut être réalisé en utilisant le concept de middleware dans votre projet.
Je vais maintenant vous présenter comment créer un middleware de filtrage XSS dans l'application Laravel.
Lancez d'abord la commande suivante et créez le middleware :
Créez un middleware
php artisan make:middleware XSS
Maintenant, vous pouvez créer le middleware dans app/Http /Middleware/XSS.php et placez le code suivant dans votre fichier XSS.php.
XSS.php
namespace App\Http\Middleware; use Closure; use Illuminate\Http\Request; class XSS { public function handle(Request $request, Closure $next) { $input = $request->all(); array_walk_recursive($input, function(&$input) { $input = strip_tags($input); }); $request->merge($input); return $next($request); } }
Enfin, le middleware doit être enregistré dans le fichier app/Http/Kernel.php. Et ajoutez les lignes suivantes dans le tableau $routeMiddleware.
Kernel.php
class Kernel extends HttpKernel { .... protected $routeMiddleware = [ 'auth' => \App\Http\Middleware\Authenticate::class, .... 'XSS' => \App\Http\Middleware\XSS::class, ]; }
Vous pouvez désormais utiliser le middleware XSS dans votre fichier .php de routage. Dans le fichier .php de routage ci-dessous, vous pouvez faire ceci :
routes.php
Route::group(['middleware' => ['XSS']], function () { Route::get('customVali', 'CustomValDemoController@customVali'); Route::post('customValiPost', 'CustomValDemoController@customValiPost'); });
Tutoriel vidéo Laravel associé : "Le dernier didacticiel vidéo pratique du centre commercial Laravel"
Recommandations du blog associées : "Défense contre les injections SQL et les attaques XSS"
Cet article est une introduction à la méthode de création d'un middleware pour la défense XSS dans Laravel 5. J'espère qu'il vous aidera si vous avez besoin de l'aide de vos amis !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!