fix: закрыть IDOR в бронях, пароль админа и обработку callback_data (PRJ-3)
- IDOR: отмена/редактирование брони только владельцем (проверка user_id) - пароль админа: убран дефолт admin123, обязателен из env; сравнение через hmac.compare_digest; TTL сессии 1ч - callback_data: безопасный парсинг int + .get() вместо прямого индексирования (KeyError/ValueError)
This commit is contained in:
@@ -88,6 +88,15 @@ def get_user_bookings(user_id):
|
||||
]
|
||||
|
||||
|
||||
def get_booking(booking_id):
|
||||
"""Return a booking by id regardless of status, or None."""
|
||||
bookings = load_bookings()
|
||||
for b in bookings:
|
||||
if b["id"] == booking_id:
|
||||
return b
|
||||
return None
|
||||
|
||||
|
||||
def cancel_booking(booking_id):
|
||||
bookings = load_bookings()
|
||||
for b in bookings:
|
||||
|
||||
Reference in New Issue
Block a user