|
Масс-скриптизация, или как раскрутить свой сайт
Xakep, номер #049, стр. 049-068-1 4 скрипта на все случаи жизни Докучаев Дмитрий aka Forb (forb@real.xakep.ru) Приветствую тебя, создатель сайта, посвященного вопросам безопасности. Именно на таких читателей и рассчитана столь полезная статья ;). Не бойся, я не буду тебя учить, как зарегистрировать сайт на поисковиках или устроить спам-рассылку с рекламой твоего нового проекта. Я уверен, что ты это уже сделал сам, в противном случае прочитай об этом в инете. Мы же займемся более чистой работой - обзором скриптов, которые можно поместить на любой (ну, или практически любой) сайт по вопросам безопасности (или взлома - рассчитывай как хочешь). Intro Итак, мыслим последовательно и анализируем ситуацию. Допустим, у тебя есть хостинг, обязательно предоставляющий cgi. Неважно, где ты его достал - скардил шелл, зарегил по какой-либо кредитке или, как большинство честных граждан интернета =), зарегистрировался, например, на www.h1.ru. Но, тем не менее, во всех вышеизложенных предположениях ты являешься потенциально способным поднять рейтинг своего сайта на жизненно важных Perl-скриптах. "Что это за зверь такой – жизненно важный Perl-скрипт?" - спросишь ты. "Это виртуальная "еда" интернета" - скажу я, и, пожалуй, буду прав. Хорошо-хорошо, не буду тебя томить, речь идет о четырех важных скриптах, которыми почти каждый день пользуются продвинутые (ну, и не очень) пользователи глобальной сети. Почему Perl, а не, например, php, который в наше время стал очень популярным? Во-первых, php предоставляется отнюдь не на всех хостингах (особенно бесплатных), а во-вторых, приевшиеся в течение нескольких лет Perl-модули все же на голову превосходят php и выполняют порой очень сложные задачи. Итак, по порядку. Подумай, чем твой сайт может привлечь юзеров? Предполагаю возможные варианты - полезной инфой, рулезными прогами... Но ты ведь понимаешь, что пользователь, который обошел "с индекса до индекса" твой сайт без частых обновлений (еще бы - легче застрелиться, чем обновлять сайт) больше туда не зайдет. Поправлюсь, он зайдет, но, не увидев ничего нового, снова уйдет. Чтобы такого не происходило, нужно завлекать WWW-шников. Читаю твои мысли в правильном направлении - необходимо поместить на сайт какие-нибудь сканеры или чекеры =). Этим мы и займемся! Мутим приватный ProxyChecker Первый наш скрипт будет посвящен такой проблеме, как проверка на валидность прокси-серверов. Постараюсь кратко описать механизм действия скрипта. Имеются два поля: хост и порт (они заполняются клиентом). После их заполнения параметры передаются скрипту, проверяющему прокси. Он пытается осуществить соединение с сервером, и если ему это удалось, то запросить данные на какой-либо быстрый сервер (в моем случае - www.rambler.ru) и поймать заголовок HTTP-протокола (то есть ответ сервера – 200 - OK, 403 - Access Denied, etc). Затем, при успешном соединении скрипт аккуратненько записывает результат в лог-файл (какая же польза владельцу без лога рабочих проксиков!) и выдает результат клиенту в удобочитаемой форме. На что тебе придется обратить внимание при написании чекера? Во-первых, как ни банально это звучит - на атрибуты файлов. Сам скрипт обязательно должен иметь атрибут 755 (выставляется командой FTP - SITE CHMOD 755 proxy.cgi), логфайл (по умолчанию proxylist.txt должен иметь атрибут 666 (для записи в него со стороны httpd). |