![]() |
Безопасность кода ? Вот сам сурс Seobot
Хотел бы поинтересоваться ибо когда то видел как ламают сайты через поисковик еще давненько.. типа через отображение запроса проводили атака в самом сайте.
Скачал я какойто скрипт под названием Seobot Который отображает сприсо страниц и какой бот посетил вот сам seobot <? if ( strstr($_SERVER['HTTP_USER_AGENT'], 'Yandex') ) { $bot='Yandex';} elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'Googlebot') ) {$bot='Google';} elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'Slurp') ) {$bot='Slurp';} elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'WebCrawler') ) {$bot='WebCrawler';} elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'ZyBorg') ) {$bot='ZyBorg';} elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'google') ) {$bot='Google';} elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'scooter') ) {$bot='AltaVista';} elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'stack') ) {$bot='Rambler';} elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'aport') ) {$bot='Aport';} elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'lycos') ) {$bot='Lycos';} elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'fast') ) {$bot='Fast Search';} elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'rambler') ) {$bot='Rambler';} if($bot !="") { $ip = $REMOTE_ADDR; $date = date("d.m.Y"); $home = $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; $fh = fopen('sebot', "r"); $fil = fread($fh, filesize('sebot')); fclose($fh); $con=$date.":::".$bot.":::".$ip.":::".$home."::: \r\n".$fil; $file=fopen("sebot","w"); fputs($file, $con); fclose($file); } ?> Хотел просить безопасный ли этот код. т.е если пооделать запрост и он отобразит к примеру ковычки или инлюд какой или xss ? Может поставить фильтрацию ? но там же надо что бы слеши были... а я опять в этих Регулярках ничо не понимаю.. Ну что бы все пропускало кроме кавычек или еще там чего .. Вообщем просто хочу совета. |
В данном коде, если включен register_globals можно перезаписать переменную $bot, тем самым писать что угодно тебе в файл sebot, насколько это опасно решать тебе....
Чтобы исправить перед первым if'ом напиши $bot = ""; А лучше переписать все через switch case default. |
Цитата:
Можно записать любое содержимое в файл через специально сформированный УРЛ. PHP код:
Цитата:
|
Цитата:
|
Цитата:
|
Цитата:
Не надо быть столь увереным. Если включен модуль mod_mime то пхп скрипт с любим расширением выполнится как пхп :) |
+ к этому локальный инклуд... или вдруг есть скрипт который читает этот лог, как минимум раскрытие информации о сервере )
|
Цитата:
PHP код:
PHP код:
и по сабжу: вышеприведенный скрипт будет работать если регистр_глобал он потому как: $ip = $REMOTE_ADDR; |
Код:
http://evilsite.ru/evilscript.php?<?phpinfo()?>Код:
evilsite.ruevilscript.php?<?phpinfo()?>Цитата:
|
L I G A, ппц, бред ты написал
во-первых Цитата:
Цитата:
|
| Время: 13:16 |