sql是否可以注入ZEND_DB_TABLE_ABSTRACT
方法?
例如
$this->insert();
编辑以获得更清晰的解释
发布值为:
'username' = 'admin';
'password' = '1;Drop table users;'
这是控制器中的insert语句:
public function InsertAction() {
$postValues = $this->_request->getPost();
$usersTable = new Application_Models_DbTable_Users();
$username = $postValues['username'];
$password = $postValues['password'];
$data = array('username'=>$username,'password'=>$password);
$users->insert($data);
}
答案 0 :(得分:2)
是的,这是可能的,但在insert()
的通常用法中,这是不可能的。除非您使用Zend_Db_Expr
,否则您应该是安全的,因为insert()
使用预准备语句。
有关其他方法和详细信息,请参阅this post from Bill Karwin。
答案 1 :(得分:0)
查看Zend Zend_Db_Table
的手册它会告诉你谁可以创建自己的方法。