Update: 2026-06-26 04:04:03
This commit is contained in:
@@ -139,18 +139,10 @@ if (!isset($tokenData['prices'][$carType])) {
|
||||
exit;
|
||||
}
|
||||
|
||||
// ✅ FIX H-05: التحقق من distance و duration في الـ token أيضاً
|
||||
if (isset($tokenData['distance']) && $tokenData['distance'] != $distance) {
|
||||
error_log("[add_ride] Security failed — distance mismatch.");
|
||||
printFailure("Tampered ride data (distance mismatch)");
|
||||
exit;
|
||||
}
|
||||
|
||||
if (isset($tokenData['duration']) && $tokenData['duration'] != $duration_text) {
|
||||
error_log("[add_ride] Security failed — duration mismatch.");
|
||||
printFailure("Tampered ride data (duration mismatch)");
|
||||
exit;
|
||||
}
|
||||
// ✅ FIX P2: تم حذف التحقق من distance و duration
|
||||
// السبب: token['distance'] هو الإحداثيات بينما $distance هو المسافة بالكيلومتر (0.x)
|
||||
// وtoken['duration'] هو الثواني بينما $duration_text هو الدقائق — mismatch دائم يكسر جميع الرحلات
|
||||
// الإحداثيات كافية للتحقق من سلامة الطلب عبر coordsMatch() أعلاه
|
||||
|
||||
// Securely override pricing from the cryptographically signed token
|
||||
$price = $tokenData['prices'][$carType]['price'];
|
||||
|
||||
Reference in New Issue
Block a user