Обучение/Помощь новичкам | Уязвимости sql/get/post
Тема закрыта by
СУЗУНЭ ХОРИКИТА
Причина: Решено.
Причина: Решено.
php
$q_1=mysql_fetch_row(mysql_query("select count(*) FROM `inventory` WHERE `account` = '".$_SESSION['id']."' and `set` = '1' and `odeta` = 'da'"),0);
$q_2=mysql_fetch_row(mysql_query("select count(*) FROM `inventory` WHERE `account` = '".$_SESSION['id']."' and `set` = '2' and `odeta` = 'da'"),0);
$q_3=mysql_fetch_row(mysql_query("select count(*) FROM `inventory` WHERE `account` = '".$_SESSION['id']."' and `set` = '3' and `odeta` = 'da'"),0);
###Этап ботов
$tap = mysql_fetch_array(mysql_query("SELECT * FROM `battle_3` WHERE `Id_ba` = '".$account['banda']."' and `koll` > '0' and `hp` > '0' LIMIT 1"));
#Боты бьют банду
$battlemobs=mysql_query("SELECT * FROM `battle_3` WHERE `Id_ba`='".$account['banda']."' and `tap` = '".$tap['tap']."'");
while($resmob=mysql_fetch_assoc($battlemobs)){
$attackcol=floor((time()-$resmob['last_damag'])/$resmob['damag_every_sec']);
for($i=1;$i<=$attackcol;$i++){
$damagmob =($resmob['str'] - $account['dexterity'])*$resmob['koll'];
if($damagmob <= 0){$damagmob = 10*$resmob['koll'];}
$hpdm=$account['hp']-$damagmob;
mysql_query("UPDATE `account` SET `hp`='".$hpdm."' WHERE `banda`='".$resmob['Id_ba']."' and `trup` = '0'");
mysql_query("INSERT INTO `battle_log` (`banda`, `mess`)VALUES('".$account['banda']."','<img src=\"/data/img/skill/attack.jpg\" width=\"10px\" height=\"10px\"><font color=\"ff2400\">".$resmob['name']." наносит ".$account['name']." ".$damagmob." урона!</font>')");
mysql_query("UPDATE `battle_3` SET `last_damag` = '".time()."' WHERE `Id_ba`='".$account['banda']."'");
}
} php
if(isset($_GET['attack'])){
#####Ловим откат на удары
if (time()-$account['battle_last_attack']<2){
mysql_query("INSERT INTO `battle_log`(`account`,`mess`,`banda`)VALUES('".$account['id']."','<img src=\"/data/img/skill/attack.jpg\" width=\"10px\" height=\"10px\"><font color=\"#3d8e2f\">Промах! старайтесь бить медленнее</font>','".$account['banda']."')");
header("Location: ?");exit;}
#Изначальный урон
$Uron = $account['power'];
#Сеты
## + шанс крита от 1 и 2 сета
$bon_krit = '0';
if($q_1[0] >= 2){$bon_krit = '5';}
if($q_2[0] >= 2){$bon_krit = '10';}
# + % к урону от 3 сетов
if($q_1[0] >= 4){$Doma = $Uron + floor(($Uron/100)*15);}
if($q_2[0] >= 4){$Doma = $Uron + floor(($Uron/100)*250);}
if($q_3[0] >= 4){$Doma = $Uron + floor(($Uron/100)*15);}
### 2 сет умножает на 2
if($q_2[0] >= 6){$rand_2 = rand(0,100);if($rand_2 < 20){$Doma = $Doma*2;}}
### 3 сет умножает на 2
if($q_3[0] >= 6){$rand_3 = rand(0,100);if($rand_3 < 20){$Doma = $Doma*2;}}
###krit
if(($account['krit_sila'] + $bon_krit) >= rand(0,101)){$Doma = ($Doma/$account['krit'])*100;}
if($Doma <= 0){$Doma = $account['power'];}
$Domag = $Doma - $mob['def'];
if($Domag <= 0){$Domag = $account['lvl']*2;}
####Если мы убили моба + Сет на хил 1 и 3
$hill = '0';
if($q_1[0] >= '4'){
$rand = rand(0,100);
if($rand <= 20){$hill = floor($mob['hp_max']/2);}}
if($q_3[0] >= '4'){
$rand = rand(0,100);
if($rand <= 20){$hill = floor($mob['hp_max']/3);}}
####Если мы убили моба
if(($mob['hp'] <= $Domag or $mob['hp'] <= 0) && $mob2['koll'] >= 1){
if($hill >= '1'){
mysql_query("UPDATE `account` SET `hp` = '".$account['hp']."' + '".$hill."' WHERE `id`='".$account['id']."'");
mysql_query("INSERT INTO `battle_log`(`account`,`mess`,`banda`)VALUES('".$account['id']."','<font color=\"#3d8e2f\">".$account['name']." исцелился на ".$hill." </font>','".$account['banda']."')");
}
mysql_query("UPDATE `battle_3` SET `hp`= '".$mob['hp_max']."', `koll`= '".$mob['koll']."' - 1 WHERE `id`='".$account['battle_attack']."'");
}else{
mysql_query("UPDATE `battle_3` SET `hp`= '".$mob['hp']."' - '".$Domag."' WHERE `id`='".$account['battle_attack']."'");
}
mysql_query("UPDATE `account` SET `battle_last_attack` = '".time()."' WHERE `id`='".$account['id']."'");
mysql_query("INSERT INTO `battle_log`(`account`,`mess`,`banda`)VALUES('".$account['id']."','<img src=\"/data/img/skill/attack.jpg\" width=\"10px\" height=\"10px\"><font color=\"#3d8e2f\">".$account['name']." бьёт ".$mob['name']." на ".$Domag." урона!</font>','".$account['banda']."')");
header("Location: ?");
exit;
} php
Вообщем то я 100% пишу г + с багами и т.п. Можете показать есть ли тут дыры, а точнее приведите пример заранее спс
GET, POST?
________
посл. ред. 16.06.2020 в 17:21; всего 2 раз(а); by NOeasyKiDD
________
посл. ред. 16.06.2020 в 17:21; всего 2 раз(а); by NOeasyKiDD
NOeasyKiDD , Не ну блин, я серьезно
Asuna , Я Не знаток в этом деле, Get post фильтруй...
И забудь mysql хотя-бы переходи на mysqli. Могу скрипт дать который автоматом перепишет.
________
посл. ред. 16.06.2020 в 17:28; всего 1 раз(а); by NOeasyKiDD
И забудь mysql хотя-бы переходи на mysqli. Могу скрипт дать который автоматом перепишет.
________
посл. ред. 16.06.2020 в 17:28; всего 1 раз(а); by NOeasyKiDD
NOeasyKiDD , strip_tags + stripslashes ??
Asuna (16.06.2020 в 17:26)
NOeasyKiDD , strip_tags + stripslashes ??
NOeasyKiDD , strip_tags + stripslashes ??
php
function in_t($a){
global $db;
$a = $db->real_escape_string(htmlspecialchars(trim($a)));
return $a;
}
function int($a){
$a = abs(intval($a));
return $a;
} Хотя Бы так
NOeasyKiDD , mysqli не нравиться. я работала с ним, не вижу +, быстрее? не сказала бы, если писать Г то оно и есть Г не суть на чем ты пишешь
NOeasyKiDD , мм, приведи пожалуйста пример, что можно сделать с данным мною джетом, чем он опасен? мне пжлй конкретный рабочий пример