24 марта, 201410 yr Author comment_59469 zhenyasim, могу дать ссылку, но у каждого свой чат. Вот пожалуйста. __wm-chat.web-mastera.com/wm-chat/
24 марта, 201410 yr comment_59470 Kylaksizov, ты там регистрацию отключил? Мне хотелось посмотреть на эту вещь в целом и безопасность оценить.
24 марта, 201410 yr Author comment_59471 zhenyasim, ничего я не отключал Регистрация появляеться, когда чат установишь себе))) Видимо не понятно написал. Чатом могут пользоваться только те у кого он установлен на хостинге. Когда устанавливаешь чат, он перекидывает на мой чат где ты проходишь регистраци. Только после этого тебя пускает в чат автоматом. Не можете взломать? Жаль. Многие кричали, что система безопасности плохая и ужасная. так взломайте же наконец. Специалисты! Закрыли тему взлома раз не можете! Только языком можете взламывать.
24 марта, 201410 yr comment_59472 Kylaksizov, лол. Я даже пока и не пытался взломать. Ну ок. Завтра отпишусь о всей безопасности.
24 марта, 201410 yr Author comment_59473 zhenyasim, Ну я вообще-то никого не оскорблял тут. А во вторых, что для взлома нужно столько времени? Если вы конечно супер специалист, то я не спорю, взломаете так молодец, главное что б слова не на ветер. Ждёмс.
24 марта, 201410 yr Author comment_59475 zhenyasim, а как вы находите время общаться а потратить время на взлом не можете, разве нужно для этого много времени?
24 марта, 201410 yr comment_59476 Kylaksizov, у меня хостинг и форум свой. Терпение надо тоже иметь. Вашим чатом в последнюю очередь займусь.
24 марта, 201410 yr Author comment_59477 zhenyasim, не по теме: у вас до сих пор новый год на форуме?
24 марта, 201410 yr comment_59480 Kylaksizov, мне просто понравились эти шарики. Теперь по теме: Пока что нашел одну XSS атаку. echo file_get_contents($_POST['wm']); В файле get_mes.php Рекомендую запретить включение напрямую таких параметров. Или сделать фильтрацию запросов.
24 марта, 201410 yr Author comment_59482 zhenyasim, Вы мне начинаете нравиться, вы первый что хоть что-то предложил. Только я не совсем понял что значит фильтрацию запросов. Обычную проверку? Если б каждый так посоветовал, а не критиковал. Это бы помогло другим, кто будет читать тему.
24 марта, 201410 yr comment_59483 Kylaksizov, нет. Именно фильтрацию. Пример кода. Переделаете под себя: class XssFilter extends CFilter { public $clean = 'all'; protected function preFilter($filterChain) { $this->clean = trim(strtoupper($this->clean)); $data = array( 'GET' => &$_GET, 'POST' => &$_POST, 'COOKIE' => &$_COOKIE, 'FILES' => &$_FILES ); if($this->clean === 'ALL' || $this->clean === '*') { $this->clean = 'GET,POST,COOKIE,FILES'; } $dataForClean = split(',',$this->clean); if(count($dataForClean)) { foreach ($dataForClean as $key => $value) { if(isset ($data[$value]) && count($data[$value])) { $this->doXssClean($data[$value]); } } } return true; } protected function postFilter($filterChain) { // logic being applied after the action is executed } private function doXssClean(&$data) { if(is_array($data) && count($data)) { foreach($data as $k => $v) { $data[$k] = $this->doXssClean($v); } return $data; } if(trim($data) === '') { return $data; } // xss $data = str_replace(array('&','<','>'), array('&amp;','&lt;','&gt;'), $data); $data = preg_replace('/(&#*w+)[x00-x20]+;/u', '$1;', $data); $data = preg_replace('/(&#x*[0-9A-F]+);*/iu', '$1;', $data); $data = html_entity_decode($data, ENT_COMPAT, 'UTF-8'); // Remove any attribute starting with "on" or xmlns $data = preg_replace('#(<[^>]+?[x00-x20"'])(?:on|xmlns)[^>]*+>#iu', '$1>', $data); // Remove javascript: and vbscript: protocols $data = preg_replace('#([a-z]*)[x00-x20]*=[x00-x20]*([`'"]*)[x00-x20]*j[x00-x20]*a[x00-x20]*v[x00-x20]*a[x00-x20]*s[x00-x20]*c[x00-x20]*r[x00-x20]*i[x00-x20]*p[x00-x20]*t[x00-x20]*:#iu', '$1=$2nojavascript...', $data); $data = preg_replace('#([a-z]*)[x00-x20]*=(['"]*)[x00-x20]*v[x00-x20]*b[x00-x20]*s[x00-x20]*c[x00-x20]*r[x00-x20]*i[x00-x20]*p[x00-x20]*t[x00-x20]*:#iu', '$1=$2novbscript...', $data); $data = preg_replace('#([a-z]*)[x00-x20]*=(['"]*)[x00-x20]*-moz-binding[x00-x20]*:#u', '$1=$2nomozbinding...', $data); // Only works in IE: <span style="width: expression(alert('Ping!'));"></span> $data = preg_replace('#(<[^>]+?)style[x00-x20]*=[x00-x20]*[`'"]*.*?expression[x00-x20]*([^>]*+>#i', '$1>', $data); $data = preg_replace('#(<[^>]+?)style[x00-x20]*=[x00-x20]*[`'"]*.*?behaviour[x00-x20]*([^>]*+>#i', '$1>', $data); $data = preg_replace('#(<[^>]+?)style[x00-x20]*=[x00-x20]*[`'"]*.*?s[x00-x20]*c[x00-x20]*r[x00-x20]*i[x00-x20]*p[x00-x20]*t[x00-x20]*:*[^>]*+>#iu', '$1>', $data); // Remove namespaced elements (we do not need them) $data = preg_replace('#</*w+:w[^>]*+>#i', '', $data); do { // Remove really unwanted tags $old_data = $data; $data = preg_replace('#</*(?:applet|b(?:ase|gsound|link)|embed|frame(?:set)?|i(?:frame|layer)|l(?:ayer|ink)|meta|object|s(?:cript|tyle)|title|xml)[^>]*+>#i', '', $data); } while ($old_data !== $data); return $data; } } ?> Дальше я уже завтра поищу уязвимости.
24 марта, 201410 yr Author comment_59484 zhenyasim, к сожалению я в ооп ещё слаб. И потом, у меня нет в коде куков. Но спасибо за совет, может разберусь.
24 марта, 201410 yr comment_59485 Kylaksizov, погуглите. Много полезной инфы по фильтрации найдете. Я понимаю, что нет. У вас данные тупо http-запросами передаются, на сколько я понял. Я просто пример привел. Объяснил и подтолкнул. Дальше дело за вами.
24 марта, 201410 yr Author comment_59487 RealUser, да я уверен, что он просто имет доступ к твоему фтп. Я сомневаюсь, что он взломал. Или может конфиг как-то нашёл у тебя. Как видишь он уже не пишет в чат, значит он в обломе. Проверок там при достаточно. Но все равно я улучшу систему безопасности. Просто не так всё быстро, тем более меня тоже проект ждёт а я тут играюсь всё.
24 марта, 201410 yr Author comment_59489 Kylaksizov, SQL иньекций не нашел я. Что это значит? Хорошо или плохо?
24 марта, 201410 yr comment_59490 Kylaksizov, очень хорошо.) Ладно. Завтра еще XSS поищу. Развивайтесь дальше.
24 марта, 201410 yr Author comment_59491 zhenyasim, спасибо за помощь. Думал, что сейчас уже не существует людей, которые могут помочь без критики.
24 марта, 201410 yr Author comment_59493 zhenyasim, Нам троим интересно, как один взломал нашего пользователя в чате, т.е. RealUser, и больше никого не смог взломать. Сейчас можно каким-то образом получить данные с чата? Читать сообщения например.
24 марта, 201410 yr Author comment_59497 zhenyasim, тогда это очень интересно). Жаль что он не скажет. Так бы можно было понять что делать.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.