diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index ac6feaf..0657296 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -80,6 +80,23 @@ public function profile() { return view('user.profile', ['user' => Auth::user()]); } + + // ========================================== + // حذف حساب کاربری (Clickjacking Target) + // ========================================== + public function destroy(Request $request) + { + $user = $request->user(); + + Auth::logout(); + + $user->delete(); + + $request->session()->invalidate(); + $request->session()->regenerateToken(); + + return redirect('/login'); + } // ========================================== // متد آسیب‌پذیر تغییر ایمیل (CSRF Target) diff --git a/resources/views/user/profile.blade.php b/resources/views/user/profile.blade.php index 022ec37..30d3c41 100644 --- a/resources/views/user/profile.blade.php +++ b/resources/views/user/profile.blade.php @@ -32,7 +32,7 @@

اطلاعات هویتی شما در این پورتال امن نگهداری می‌شود.

-
+

اطلاعات حساب

احراز هویت شده @@ -54,6 +54,22 @@
+ + +
+
+

حذف حساب کاربری

+
+
+

با حذف حساب کاربری، تمام اطلاعات شما به صورت دائمی پاک خواهد شد. این عمل غیرقابل بازگشت است.

+
+ @csrf + +
+
+
diff --git a/routes/web.php b/routes/web.php index 45b2db4..1f31684 100644 --- a/routes/web.php +++ b/routes/web.php @@ -55,6 +55,9 @@ // پروفایل کاربر Route::get('/profile', [UserController::class, 'profile'])->name('user.profile'); + + // حذف حساب کاربری (Clickjacking Target) + Route::post('/profile/delete', [UserController::class, 'destroy'])->name('profile.destroy'); // 🔓 هدف حمله CSRF (پروتکشن لایه کد کاملاً حذف شده است) Route::post('/update-email', [UserController::class, 'updateEmail'])