Защита на заявка

BattleGrounds

Registered
Код:
if(isset($_GET[buy])){
$cbuy=mysql_fetch_array(mysql_query("SELECT * FROM `weapons` WHERE `weapon`='".$_GET[buy]."'"));
if($cbuy == true){

}else{ refresh (0, "index.php?info=cheat"); exit(); }
}

Така това ми е кода примерно няма значение ...
Въпросът ми е как ето тази част `weapon`='".$_GET[buy]."'
по скоро където се явявяа $_GET как да го защитя та да не ми изрежат сайта или сървара на парченца
 
Код:
 <?if(isset($_GET[buy])){
 $buy=htmlspecialchars(addslashes(trim($_GET['buy'])));
$cbuy=mysql_fetch_array(mysql_query("SELECT * FROM `weapons` WHERE `weapon`='$buy'"));
if($cbuy == true){

}else{ refresh (0, "index.php?info=cheat"); exit(); }
}
 
Това го направих точно със същите 2 функции и цитирам един приятел "с това можеш да защетиш само от 12-15 годишните "хакери""
Търся си нещо няма нужда да го разбирам просто да знам, че като го има сайта ми няма да спре утре защото някой не му допада и решил да си поиграе няколко часа и да го спре
 
информацията от $_GET['buy'] текст ли е, цифри ли е, цифри и текст ли е ?!

п.п. - стига говорили сте за тези "хакери" не са всемогъщи!
 
Най-сигурният начин е да използваш prepared statements. Тоест четеш за MYSQLi или за PDO.

Иначе, ако това, което се очаква от $_GET['buy'] е число, правиш така:

if (ctype_digit(strval($_GET['buy']))) {
// безопасно е да се направи заявка
} else {
// грешка
}
 
BattleGrounds каза:
Това го направих точно със същите 2 функции и цитирам един приятел "с това можеш да защетиш само от 12-15 годишните "хакери""
Търся си нещо няма нужда да го разбирам просто да знам, че като го има сайта ми няма да спре утре защото някой не му допада и решил да си поиграе няколко часа и да го спре

Много поздрави от мен към твоят приятел.. Предай му, че ще му дам 100 лева или дори колкото каже, ако оспее да премине през тези функции, които съм сложил :) Сериозен съм ..
 
kulov каза:
BattleGrounds каза:
Това го направих точно със същите 2 функции и цитирам един приятел "с това можеш да защетиш само от 12-15 годишните "хакери""
Търся си нещо няма нужда да го разбирам просто да знам, че като го има сайта ми няма да спре утре защото някой не му допада и решил да си поиграе няколко часа и да го спре

Много поздрави от мен към твоят приятел.. Предай му, че ще му дам 100 лева или дори колкото каже, ако оспее да премине през тези функции, които съм сложил :) Сериозен съм ..
0xbf27
и като се мине през addslashes става: 0xbf5c27
http://shiflett.org/blog/2006/jan/addslashes-versus-mysql-real-escape-string
http://kuza55.blogspot.com/2007/06/mysql-injection-encoding-attacks.html
 
gLaVoReZa каза:
Най-сигурният начин е да използваш prepared statements. Тоест четеш за MYSQLi или за PDO.

Иначе, ако това, което се очаква от $_GET['buy'] е число, правиш така:

if (ctype_digit(strval($_GET['buy']))) {
// безопасно е да се направи заявка
} else {
// грешка
}
надявам се това да свърши работа за всеки случай ще видя ако не пречи на кода, ще го сложа
 
kulov каза:
BattleGrounds каза:
Това го направих точно със същите 2 функции и цитирам един приятел "с това можеш да защетиш само от 12-15 годишните "хакери""
Търся си нещо няма нужда да го разбирам просто да знам, че като го има сайта ми няма да спре утре защото някой не му допада и решил да си поиграе няколко часа и да го спре

Много поздрави от мен към твоят приятел.. Предай му, че ще му дам 100 лева или дори колкото каже, ако оспее да премине през тези функции, които съм сложил :) Сериозен съм ..

Ти май не знаеш, че addslashes далеч не са толкова сигурни като PDO? Ако искаш да ти мина защитата, просто кажи :)
 
Не само addslahes !

$buy=htmlspecialchars(addslashes(trim($_GET['buy'])));

Утре ще пусна на локалният една връзка към дб-то точно по този начин защитена да видим как ще я пробиеш :) Утре защото съм с рутер и трябва да настройвам портове за да пусна сървър ..
 
bancov96 каза:
kulov каза:
BattleGrounds каза:
Това го направих точно със същите 2 функции и цитирам един приятел "с това можеш да защетиш само от 12-15 годишните "хакери""
Търся си нещо няма нужда да го разбирам просто да знам, че като го има сайта ми няма да спре утре защото някой не му допада и решил да си поиграе няколко часа и да го спре

Много поздрави от мен към твоят приятел.. Предай му, че ще му дам 100 лева или дори колкото каже, ако оспее да премине през тези функции, които съм сложил :) Сериозен съм ..

Ти май не знаеш, че addslashes далеч не са толкова сигурни като PDO? Ако искаш да ти мина защитата, просто кажи :)

Ако си готов казвай, да пускам сървъра, ще дам линк тук, да може всеки, който иска да се пробва :) Да докажа, че тези които могат да минат едновременно през htmlspecialchars, addslahes, trim няма да се занимават с вашият сайт :) :?:
 
kulov каза:
bancov96 каза:
kulov каза:
Много поздрави от мен към твоят приятел.. Предай му, че ще му дам 100 лева или дори колкото каже, ако оспее да премине през тези функции, които съм сложил :) Сериозен съм ..

Ти май не знаеш, че addslashes далеч не са толкова сигурни като PDO? Ако искаш да ти мина защитата, просто кажи :)

Ако си готов казвай, да пускам сървъра, ще дам линк тук, да може всеки, който иска да се пробва :) Да докажа, че тези които могат да минат едновременно през htmlspecialchars, addslahes, trim няма да се занимават с вашият сайт :) :?:

Всеки знае да бъка по три, четири най-известни функции за escape и филтриране. Умния слага само тази, която му трябва :lol:
 
Извинявай, много се отклоняваш от темата, какво общо имат 3те функции като цяло ? това, че ползвам addslashes значи ли, че trim или htmlspecialchars не са нужно ? НЕ ! Казваш ми, че съм тъп, като ползвам 3 съвсем различни функции, за съвсем различни неща така ли ? Нека не ползваме htmlspecialchars и trim защото просто всеки знае да бъка по "3 от най-известните функции". По кода на човека се разбира, че ще чака обикновенно име на оръжие, тоест няма да има наколонени черти, html код или нещо от сорта, така че би ли ми обяснил защо htmlspecialchars, или trim са ненужни функции ? Изказването ти беше ацки глупаво, а и щеше да ми показваш как си щял да преминеш през защитата ?
 

Back
Горе