Опенкарт - списък на модули с вградена защита или скрипт за валидиране

agatha65

Active Member
Малко предистория:
Днеска една клиентка си купи този модул: NewsletterPopup subscribe (also support mailchimp) и ми го прати да го инсталирам.
Аз понеже съм много любознателна( разбирайте вра си носа навсякъде ) го поразгледах и какво да видя - за да се активира модула иска емейл и номер на транзакцията. И на всичко отгоре кода е base64 encoded в контролера. Декодирах го аз и какво прави - изпраща мейл на пощата на автора на модула. Праща и данните за сървъра, емайла и номера на транзакцията. Егати нахалството! Ами ако например аз после го преместя на друг сървър? Като иска емейла и номера на трансакцията да си ги гледа в сметката откъдето е купен. Може естествено да се оправи това - пробвах и става.

Та идеята ми е да споделите подобни неща тука един вид за справка ( ако разбирате какво имам предвид ;) )
 
От: Опенкарт - списък на модули с вградена защита или скрипт за валидиране

Всеки модул който се закупи от opencart идва с един лиценз за 1 сайт.
Ако искаш 2 лиценза за 2 сайта си го купуваш още веднъж.
Може да го инсталираш колкото си искаш пъти на колкото си искаш сървъра ако данните се валидират правилно всеки път.
Лиценза по принцип е за съпорт от страна на девелопъра.
Тази вид сигурност е напълно нормална.
 
От: Опенкарт - списък на модули с вградена защита или скрипт за валидиране

Тази вид сигурност е напълно нормална.
Не и по този начин. С кодиран код и без знанието на клиента.

Това е въпросния мейл след декодиране
$store_info = $this->model_setting_setting->getSetting('config', 0);
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'To: KodecubeLicensor ' . "\r\n";
$headers .= 'From: ' . $store_info['config_name'] . ' <' . $store_info['config_email'] . '>' . "\r\n";
$server = explode('/', rtrim(HTTP_SERVER, '/')); array_pop($server);
$server = implode('/', $server);
@mail('[email protected]', 'New Registration ' . $server, "The $server with order: " . $this->request->post['transaction_id'] . " and e-mail: " . $this->request->post['email'] . " has activated a new licence for module:" . $name . ".", $headers);

Това да не ти е вордпрес-а та да си комуникира ей така.
 
От: Опенкарт - списък на модули с вградена защита или скрипт за валидиране

До колкото виждам не разкрива никаква лична информация този имейл което значи, че няма никакъв проблем.
В документацията за качване на добавки никъде не е забранено да се използват подобни методи.

Ако не ти харесва начина по който работи този разработчик има опция за рефунд и всичко е по старому.
Всеки сам избира методите за защита на неговите модули по които си е дал здравето да ги направи.
 
От: Опенкарт - списък на модули с вградена защита или скрипт за валидиране

Не е забранено, но не е хубаво. Аз като видя такова нещо в купен модул:
eval(base64_decode('aWYgKCEkdGhpcy0+Y29uZmlnLT5nZXQoJ3RyYW5zYWN0aW9uX2lkJykpIHsgaWYgKCR0aGlzLT5yZXF1ZXN0LT5zZXJ2ZXJbJ1JFUVVFU1RfTUVUSE9EJ10gPT0gJ1BPU1QnICYmIGlzc2V0KCR0aGlzLT5yZXF1ZXN0LT5wb3N0Wyd0cmFuc2FjdGlvbl9pZCddKSAmJiAkdGhpcy0+cmVxdWVzd.......
хич не ми става драго.
модули по които си е дал здравето да ги направи
Много ми хареса таймера и дори го предложих на един клиент, но той предпочете мойто просто vqmod-че, което застава под продукт инфото. Може би може да се направи и в твоя модул.

Та по темата. Споделете ако имате и вие подобен опит.
 
От: Опенкарт - списък на модули с вградена защита или скрипт за валидиране

И аз съм на мнение като 2fast4you, не виждам никакво злодеяние в това разработчика да удостовери по някакъв начин използването на модула си от съответния клиент.

Всеки модул който се закупи от opencart идва с един лиценз за 1 сайт.
Ако искаш 2 лиценза за 2 сайта си го купуваш още веднъж.

В случая разработчика е решил да следи всеки един клиент на колко домейна(използвайки ги като идентификатор за брой сайтове) инсталира закупения модул. Ако клиента смени своя хостинг(сървър) няма да има никакви проблеми, ако смени домейн-а може евентуално да получи запитване от разработчика дали това е нов сайт и да закупи нов лиценз или просто е сменил името му. И не виждам проблем в това кода на модула(или част от него) да бъде кодиран, все пак това не е open source. Обикновения клиент няма да седне да отваря файловете един по един и да се опитва да чете написаното вътре.

Относно други модули ползващи подобна практика, наскоро бях попаднал на следния бг модул, който при инсталиране всеки път праща писмо на разработчика с информация за името на домейна, на който е инсталиран. Сещам се също и за бг превод, при който обаче автора учтиво те моли да му пратиш домейна, на който ще се ползва модула за удостоверение.

Това естествено са някакви елементарни и не до там ефикасни методи за защита на авторските права и труд, но не виждам проблем ако се използват от рзработчиците.
 

Горе