Автор Тема: Защита Perl скрипта от нападения (текст в сообщ)  (Прочитано 3482 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Yuraz

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 111
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.kirov.ru/~yura
Гостевуха получилась самая простая - но ето то что надо для примера. Хочешь сделать покруче? Тогда, конечно же, - Read The Fucking Manual!

Теперь давай разберём, что такое запросы. Щас используются в Инете 2 основных вида запросов - POST и GET. Пост запрос - это когда данные из формы отправляются скрипту в теле документа, т.е. мы их не видим. Гет запрос - это когда данные отправляются в строке адрес, в таком виде (после знака ?):

http://atteam.hut.ru/cgi-bin/script.pl?name=lamer &mail=lamer@lamo.ru&message=fuck2all!+2c00l+haxorZ

Типа, поле "name", фа то, что в нём написано - "lamer". Иными словами - имя=значение. Пробелы в значении заменяются на знаки "+", или на "%20". Вообще - эти запосы - сильная вещь - можно чисто из строки адрес в броузере сломать сайт (в большинстве случаев именно так и происходит, если ты не знал.) Я делал такие вещи. На первый взгляд это трудно, но... разобраться можно во всём, кроме высшей математики :). Например что будет, если в запросе будет такое:

...&messdata=gb.txt&...

И если введённые данные не будут проверяться скриптом (а если они проверяются, то обломинго тебе, кулхаскер) на стоп-символы (всякие знаки, типа ?,&,:,%,#,*,/,\\,|, етс.) Знаешь, что это значит? А это значит то, что ето реальная возможность сломать сайт? Это реальная возможнось выполнять команды (как это делает скрипт) на удалённом серванте. Как? А вот так, например:

http://www.microsoft.com/cgi-bin/script.pl?messdata=gb.txt&fuck=all Мы немного изменим эту строку:

http://www.microsoft.com/cgi-bin/script.pl?messdata=|dir Эта команда выводит на экран содержимое данной директории. Наверно, микросукс используют в качестве серверной оси свою любимую ВынЬ, так что команды я привёл досовские, но можно написать и Юниховские, если пользуют Никсы. Вот тебе ещё немного примеров. Комментировать их не буду, сам разберёшься - не ламер. И ещё вспомни, что будет, если скопировать скрипт из директории цги-бин куда-нить? Правильно, он не будет выполняться, то есть, при обращении к скрипту его код просто будет отображаться на экране (а ты бери и сохраняй :) ). Ну давай, смотри некоторые команды:

http://localhost/cgi/script.pl?fuckinfile=|dir>dir.txt
http://localhost/cgi/script.pl?fuckinfile=|dirhttp://localhost/cgi/script.pl?fuckinfile=|echo some_file
http://localhost/cgi/script.pl?fuckinfile=|copy show.pl ..\\showww.pl
http://localhost/cgi/script.pl?fuckinfile=|cp show.pl ../showww.pl
http://localhost/cgi/script.pl?fuckinfile=|ls>dir.txt


Но ведь это были довольно безобидные команды (я сказал "довольно безобидные" :) ). А если исполнить чё-нить покруче, - например, удалить чё-нить? Ведь в твоих руках - выполнение команд на сервере - делай чё угодно с сайтом. Но я не советую ничё удалять, лучше используй полученный тобой доступ в твоих корыстных целях, какими плохими бы они ни были :). Например - накрутка баннеров, редирект посетителей и др. И не оставляй на сайте никаких своих файлов, чтобы никто ничего не заподозрил. И помни - за взлом какого-нить http://www.lamer.sucker.fucker.ru тебе ничё не будет (кому ты нужен?), а вот за взлом какого-нить http://www.yandex.ru может тоже ничё не будет (это при условии, что ты не сопрёшь их авторские скрипты или базы данных). Но если ты их спёр - лучше делай себе быстрее пластическую операцию и меняй имя или уезжай куда-нить в Нигерию к нигерам, иначе, тебя вздрючат за такие дела. А ты чё думал - это же огромная поисковая система, которую писали и модифицировали не один год, и ихние скрипты стоят десятки тысяч буказоидов. А ты такой умный - пришёл - и стыбрил. Так что лучше на такой крупняк не нарывайся - а то тебе воздастся (и это не будет гуд). И помни - главное - не лениться, поменьше пулять в гамезы (а ты как думал?), побольше пить пиво и, конечно, изучать Перл, качать доки, факи, маны из инета. Никогда, я повторяю НИКОГДА не используй чужие скрипты, без тщательной проверки на баги у себя на сайте. А лучше - вообще их не юзай, лучше напиши их сам. Помни, если ты скачал бесплатный скрипт и поставил его на пагу, то в 99,9% случаев я смогу (да и не только я - таких как я много :) ) тебе как-нить нагадить на пагу. От банального "U haz By ..." до удаления всего твоего сайта нафиг!

Как уберечься от атак? Чем защитить скрипт от всяких левых символов? Вот и весь вопрос..

Оффлайн oLL

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 4
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Защита Perl скрипта от нападения (текст в сообщ)
« Ответ #1 : 05 Октября 2002, 23:11:25 »
Здравствуй,  Yuraz .
Я здесь новичок, поэтому не совсем понял : ты так длинно спрашиваешь?
Или намекаешь, что спросить можно у тебя?
Делаю вид, что выбрал второй вариант :-) поэтому хочу спросить. Извини, если не в кассу.
У меня на сайте есть скрипт (перл), который забирает данные из формы. и посылает их мне на е-майл. Типа..обратный контакт.
вопрос:
- может ли кто изменить адрес, на который уходит сообщение,
-может ли кто использовать лежащий у меня в cgi-bin скрипт не с моей страницы обратной связи, а еще откуда-нибудь.
-если да, то можно-ли это предотвратить или хотя бы затруднить, установив грамотно права доступа для скрипта?

На данном этапе я чайник в этих вопросах. права доступа я меняю в WindowsCommander, по моему я не замечал там чего-то типа 700 или 755, там просто галочки "для владельца. группы, прочих." (как я понимаю. виндозные аналоги команд)

Вот и весь вопрос. Буду благодарен за ответ, или за ссылку на FM, желательно русскоязычный.

ЗЫ Плисссс, не удаляй мой сайт нафиг! И меня не удаляй! Не гадь мне на пагу! Я, в принципе, неплохой парень....

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
Защита Perl скрипта от нападения (текст в сообщ)
« Ответ #2 : 09 Октября 2002, 11:24:43 »
Цитировать
Как уберечься от атак? Чем защитить скрипт от всяких левых символов? Вот и весь вопрос..

1. Проверять всю(!) введеную информацию.
2. Запускать интерпритатор с ключем -T

Цитировать
вопрос:
- может ли кто изменить адрес, на который уходит сообщение,
-может ли кто использовать лежащий у меня в cgi-bin скрипт не с моей страницы обратной связи, а еще откуда-нибудь

Это все зависит от твоего скрипта.
« Последнее редактирование: 09 Октября 2002, 12:15:01 от NeoNox »
The documentations is your friend

Оффлайн oLL

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 4
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Защита Perl скрипта от нападения (текст в сообщ)
« Ответ #3 : 09 Октября 2002, 12:01:59 »
NeoNox
то есть от самого кода, а не от установленных прав доступа?

Тогда, если можно, еще вопрос. На какие моменты в скрипте обратить внимание. Что-то мне кажется, что вопрос туповат :-)

Я верстальщик (html) и немного дизайнер, на серьезное изучение программирования пока нет времени.

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
The documentations is your friend

Оффлайн oLL

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 4
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Защита Perl скрипта от нападения (текст в сообщ)
« Ответ #5 : 09 Октября 2002, 15:46:06 »
NeoNox
еще один сенкс.
Нашел, начинаю читать :-)

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28