Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.12.2014, 06:23   #1
Аlex
Форумчанин
 
Регистрация: 16.11.2006
Сообщений: 175
По умолчанию от каких видов уязвимостей должен быть защищен любой проект разработка которого ведется с нуля ?

ясен пень в ТЗ не описано ни слова про безопасность, но я так понимаю дырявым сайт оставлять не есть хорошо. Поэтому расскажите чтоли какие бывают методы у злоумышленников и как от них защищаться. Ну ессьно кроме банальной SQL инъекции и XSS
кстати про SQL инъекцию - достаточно ли прогнать передаваемые в запрос параметры через wsprintf('') примерно так
PHP код:
public function query($sql) {
        
// $db->query("SELECT * FROM aslkd WHERE id = ?",$id);
        
        
$args func_get_args();
        
        
$sql array_shift($args);
        
$link $this->mysqli;
        
        
$args array_map(function ($param) use ($link) {
            return 
"'".$link->escape_string($param)."'";
        },
$args);
        
        
$sql str_replace(array('%','?'), array('%%','%s'), $sql);
        
        
array_unshift($args$sql);
        
        
$sql call_user_func_array('sprintf'$args);
        
        
        
$this->last $this->mysqli->query($sql);
        if (
$this->last === false) throw new Exception('Database error: '.$this->mysqli->error);

        return 
$this;        
    } 
чайник юзеру не товарищ, а сам себе враг...
Аlex вне форума Ответить с цитированием
Старый 21.12.2014, 18:13   #2
Fenex
Форумчанин
 
Аватар для Fenex
 
Регистрация: 15.02.2012
Сообщений: 821
По умолчанию

Возьмите готовое: safemysql, если не хотите использовать zend\yii\etc.
^-.-^ My GitHub
Fenex вне форума Ответить с цитированием
Старый 24.12.2014, 09:07   #3
Аlex
Форумчанин
 
Регистрация: 16.11.2006
Сообщений: 175
По умолчанию

Цитата:
Сообщение от Fenex Посмотреть сообщение
Возьмите готовое: safemysql, если не хотите использовать zend\yii\etc.
Видел этот класс, но он как то построен исключительно на процедурном подходе. Это не камильфо(
А вот из yii2 я бы с удовольствием выдрал activerecords и activequery но фиг знает где оно лежит и выдерается ли (
чайник юзеру не товарищ, а сам себе враг...
Аlex вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Художник, - должен быть голодным! Smitt&Wesson Свободное общение 0 06.04.2014 06:24
Каким должен быть интерфейса gusluk Свободное общение 17 05.12.2013 19:40
Каким должен быть код? pufystyj Свободное общение 5 15.08.2012 01:29
Какой компьютер должен быть у программиста? argonone Свободное общение 67 02.04.2011 16:19
какой тип должен быть у массива? ВикторияЯ Паскаль, Turbo Pascal, PascalABC.NET 8 21.05.2010 10:21