browser-sec-lab/routes/web.php
2026-04-14 17:07:40 +03:30

38 lines
1.8 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
use App\Http\Controllers\VulnerabilityController;
use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken;
use Illuminate\Support\Facades\Route;
// صفحه اصلی برای دسترسی سریع به بخش‌های مختلف
Route::get('/', function () {
return view('welcome');
});
// ۱. روت تست XSS
// پارامتر payload را می‌گیرد و در صفحه نمایش می‌دهد
Route::get('/xss', [VulnerabilityController::class, 'xss'])->name('vulnerability.xss');
// ۲. روت هدف برای تست حمله CSRF
// این روت را در فایل bootstrap/app.php از بررسی توکن استثنا کردیم
Route::post('/csrf-target', [VulnerabilityController::class, 'csrfTarget'])->name('vulnerability.csrf');
// ۳. روت تست کوکی‌ها (برای مرحله بعدی)
Route::get('/set-cookie', function () {
// ایجاد یک کوکی بدون HttpOnly برای تست سرقت با XSS
return response('Cookie set!')
->cookie('secret_token', 'Bypass-12345', 60, null, null, false, false);
})->name('vulnerability.cookie');
// روت دریافت اطلاعات سرقت شده (معمولاً در دنیای واقعی روی سرور مهاجم است)
Route::get('/stealer', [VulnerabilityController::class, 'logStolenData'])->name('vulnerability.stealer');
// پنل مشاهده لاگ‌های سرقت شده
Route::get('/hacker-panel', [VulnerabilityController::class, 'viewLogs'])->name('vulnerability.logs');
Route::post('/update-email', function (Illuminate\Http\Request $request) {
// در دنیای واقعی اینجا ایمیل در دیتابیس آپدیت می‌شود
return "ایمیل با موفقیت به " . $request->email . " تغییر یافت. (حمله موفق!)";
})->withoutMiddleware([VerifyCsrfToken::class]);