Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Recommended Posts

Я вот тут нашла одну багу в самом движке. Недавно опубликована, видимо кто то научился пользоваться.

 

В /system/library/cart.php есть кусок кода

23. foreach ($this->session->data['cart'] as $key => $quantity) {
24. $product = explode(':', $key);
25. $product_id = $product[0];
26. $stock = true;
27.
28. // Options
29. if (!empty($product[1])) {
30. $options = unserialize(base64_decode($product[1]));
31. } else {
32. $options = array();
33. }

Описание на английском - The vulnerability exists because this method uses the "unserialize()" function with the key values of the
array stored into the "data['cart']" session variable without a proper validation. Such values might be
manipulated by an unauthenticated attacker via the $_POST['quantity'] parameter during an "update" request.
This can be exploited to inject arbitrary PHP objects into the application scope, and could allow an attacker
to conduct Server-Side Request Forgery (SSRF) attacks by abusing the destructor method of the "DBMySQLi"
class and possibly other attacks leveraging magic methods of classes defined in third-party extensions.

NOTE: if OpenCart is running on PHP before version 5.3.23 or 5.4.13 this vulnerability
could also be exploited to carry out XML External Entity (XXE) attacks, which in turn
might allow arbitrary command execution if the PHP "expect" extension is installed.

 

Ели я правильно перевера, то возможно внедрение PHP объектов при обновлении страницы из-за того что функция unserialize() выполняется без валидации. Работает на версии 1.5.6.4 и ниже.

 

В качестве решения предлагается заменить пару строк  - http://git.io/F3dGoA

Решение только для версии 1.5.6.4, может кто подскажет как решить на более ранних версиях?

 

Варезные дополнения и модули тоже тот еще рассадник радостей, это да... Никогда не знаешь что получишь.

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.