Нещодавно у мене був негативний досвід, коли клієнт відправив рахунок, але мій середній чоловік вже завантажив наше програмне забезпечення та дизайн на сервер клієнтів. Клієнт виявився відомим злочинцем, і він, звичайно, змінив усі можливі паролі сервера.
Однак я все одно можу отримати доступ до панелі адміністратора CMS. На жаль, виявляється, що моє програмне забезпечення дуже захищене. Пробував SQL-ін'єкцію, підробляти завантаження зображень і т. Д. Однак я не можу зламати власне програмне забезпечення. У будь-якому разі, я готуюсь подати в суд на цю особу, щоб це не було Проблема .. Я зараз думаю лише про те, що, можливо, має бути якийсь метод самозашкодження, Тож у випадку подібного випадку у мене є можливість вбити програмне забезпечення.
Моя власна ідея - приховати якусь функцію в основних файлах. Зашифруйте його base64, щоб це не було очевидно. Тож щось подібне:
eval(base64_decode('ZWNobyAnSGVsbG8gd29ybGQhJzs=')); // echo 'Hello world!';
І в основному зробіть невеликий сценарій, який бере всі файли програмного забезпечення, chmod's, щоб бути впевненим, а потім видаляє їх.
Мої новіші версії CMS мають усі файлові менеджери, які я міг би використовувати для легшого злому . Але що робити, якщо доступ до адміністративної панелі обмежений.
Щоб бути дуже зрозумілим , це призначене лише для програмного забезпечення на стадії розробки, на моєму персональному сервері або на сервері клієнтів (остання частина - етично сумнівна). Тож якщо мій клієнт повинен вкрасти моє програмне забезпечення. Цей вміст не повинен бути включений у комерційний -програмне забезпечення.
І щоб бути ще більш зрозумілим , ми говоримо про ті рідкісні позаштатні роботи. Я думаю, що цілком логічно, що контрактна робота не потребує таких методів. Таким чином , ми говоримо про тих jumprisk-клієнтів, тільки в режимі розробки - коли проект буде готовий, то , очевидно , це було б дуже і дуже неетично бекдор , щоб усередині вашого програмного забезпечення.
- Етично це гарна ідея? (Маючи на увазі, що явно його зніму, коли проект на 100% і все оплачено)
- Вам, хлопцям, колись доводилося зламати власне програмне забезпечення через подібні проблеми з клієнтом?
- Будь-які рекомендації щодо цієї ідеї, коду та методу розумні?
- Які можуть бути можливі недоліки чи наслідки сценаріїв саморуйнування?
Мій висновок з цього приводу
Трохи сумно, що всі відповіді були орієнтовані на договірні справи. Насправді я винен, що я не став більш чітким у своєму питанні .. просто подумав, що цілком зрозуміло, що немає сенсу в перемикачі на знищення .. коли ви захищені контрактом.
Однак якщо ви виконуєте контрактну роботу .. тоді це має бути зазначено в договорі - це робить його законним навіть у власному сервері клієнтів. Однак мати перемикачі kill на моєму особистому сервері - це справді нікому не діло (це те, що я дуже хотів знати.)
Я вирішив зробити сценарій kill-switch для моєї CMS. Головним чином, тому що це здається цікавим викликом. Але також, що я міг би використати це для моїх робіт, що не мають контракту, коли клієнт є другом товариша друга .. Я, мабуть, не буду використовувати це на сервері клієнтів, але ... для тих випадків, коли клієнт чи деякі посередники мають доступ до мого сервера. І моє програмне забезпечення викрадається або "пересувається без мого відома", я не отримую оплати, і вони скорочують доступ до програмного забезпечення.
Я прочитав тут багато тем, де вони рекомендують надіслати попередження, а потім зняти сторінку. Ну, я бачив у ньому проблему, як коли я маю справу з людиною .. хто просто скопіює її кудись інше (можливо, ребрендує і продасть) і каже мені, що її зняли. А також я б не "вимикав сайт", а видаляв його. Хоча, мабуть, все одно незаконно отримувати доступ до сервера моїх клієнтів та видаляти його. Або, принаймні, отримати доступ до нього через бекенд, а не з FTP. За це я дякую всім вам, хто відповів.