草庐IT

Autowired注入

全部标签

php - 使用字符串将 XML 注入(inject)节点

我正在重建一个子节点,方法是将它们作为字符串保存到一个数组中,将它们放入XML中,将一个新的子节点作为一个字符串插入到数组中……现在我想遍历数组并写入它们回到原来的节点。问题是我找不到任何关于如何使用字符串添加子节点的信息。请参阅下面的代码。谢谢!!!$xml=simplexml_load_file($url);$questionGroup=$xml->qa[intval($id)];$children=array();//createemptyarrayforeach($questionGroup->children()as$element){//loopthruchildrenar

php - 使用 MDB2 防止 PHP 中的 SQL 注入(inject)

我想弄清楚如何防止sqlinjection,我写了这个基本函数:functionantiInjectie($inputfromform){$temp=str_replace("'","`",$inputfromform);$temp=str_replace("--","~~",$temp);returnhtmlentitites($temp);}但是有人告诉我还要考虑十六进制值,但我该怎么做呢?更新我坚持使用MDB2和pgsql 最佳答案 Bobby-Tables有一个很好的指南来防止SQL注入(inject)。简而言之:不要自己摆

php - str_replace ('<' ) 可以保护我们免受用户注入(inject)代码的侵害吗?

好的,我有一些用户输入,我做了一个echostr_replace('我想知道,无论如何用户是否可以破坏此过滤器?最初我认为这个脚本非常安全,但在阅读了一些关于php、字符集和安全性的文章后我开始怀疑它的健壮性。 最佳答案 这取决于输入的最终位置。例如,如果在某个时候你最终得到了一个像这样构造的(糟糕的)模板......">alink然后有人可以通过简单地使用以下输入来注入(inject)代码:javascript:do_whatever()即使输出通常不会回显到href字段中,像这样..."href="http://www.goog

php - pg_prepare() 准备好的语句(不是 PDO)是否可以防止 SQL 注入(inject)?

我正在处理的目标系统不支持PDO,尽管我在上使用PHP5.1.x寻求防止SQL注入(inject)的解决方案PostGres-DB8.2+。目前没有切换到PDO的机会。我目前的解决方案是pg_prepare-prepared语句://TryingtopreventSQL-Injection$query='SELECT*FROMuserWHERElogin=$1andpassword=md5($2)';$result=pg_prepare($dbconn,"",$query);$result=pg_execute($dbconn,"",array($_POST["user"],$_POS

用于通过 $_GET 注入(inject)位置 header 的 php 安全性

我的页面上有这段代码:header("Location:$page");$page作为GET变量传递给脚本,我需要任何安全措施吗?(如果是的话)我打算只使用addslashes()但这会填满URL... 最佳答案 我可以将你的用户转发到任何我喜欢的地方,如果我让他们点击一个链接,这绝对是一个很大的安全漏洞(请登录www.yoursite.com?page=badsite.com)。现在考虑一个场景,其中badsite.com看起来与您的网站完全一样,只是它捕获了您的用户凭据。最好在代码中定义一个$urls数组,并只将索引传递给该数组

php cookie注入(inject)漏洞?

我有一个网站,在一个页面上,它从用户计算机读取一个cookie,并将其用作php代码中的一个变量,例如在回显语句中。我目前没有以任何方式清洁cooking。2个问题:有人可以破解他们的cookie以将东西放入我的php代码中吗?如果是,我该如何预防?我该如何清洁它?谢谢! 最佳答案 是的,在客户端编辑cookie非常非常容易。您应该像处理任何其他用户生成的输入一样处理cookie的值:不要相信它并验证它。 关于phpcookie注入(inject)漏洞?,我们在StackOverflow

php - POST 可以进行 SQL 注入(inject)吗?

如果通过GET传递参数,则可能存在Sql注入(inject)。但是也可以通过POST。如果是,https可以阻止吗? 最佳答案 是的,可以使用$_POST以及$_GET、$_COOKIE和$_REQUEST.HTTPS根本不会保护你。你必须使用一些功能来保护你,例如mysql_real_escape_string或使用preparedstatements.来自网络浏览器的所有通信都应作为“不可信”处理。您不能信任的其他技术是Ajax、文件上传和JavaScript表单验证(以及其他)。所有这些数据都直接来自Web浏览器,在您过滤或验

php - 如何使用依赖注入(inject)创建业务层对象?

我的目标是尽可能让我的框架与我的应用程序分离(尽管我知道这并非完全可能)。我在我的应用程序中使用了几种不同的常见模型类型……映射器、数据对象和值对象。例如,UserMapper接受一个UserData对象并从数据库中收集信息,然后将其映射到一个UserValue对象以供在Controller中使用。这意味着这些模型具有以下依赖关系:UserMapper:需要UserData,以及构建UserValue的方法UserData:需要Db(来自框架)UserValue:什么都不需要我是否在框架的DIC方法中包含了创建Mapper对象、Data对象和Value对象的方法,以便可以自动注入(in

php - 通过 setter 进行依赖注入(inject)

Laravel有没有通过方法引入依赖的能力?例如,我有一个Controller实现了DoctrineWorkable接口(interface):interfaceDoctrineWorkable{publicfunctionsetEntityManager(EntityManager$manager);}traitEntityManagerTrait{protected$manager;publicfunctionsetEntityManager(EntityManager$manager){$this->manager=$manager;//Otherworkwith$manager

php - 依赖注入(inject)和工作单元模式

我有一个难题。我使用DI(阅读:工厂)为自制ORM提供核心组件。容器根据请求提供数据库连接、DAO、映射器及其生成的域对象。这是映射器和域对象类的基本概述classMapper{publicfunction__constructor($DAO){$this->DAO=$DAO;}publicfunctionload($id){if(isset(Monitor::members[$id]){returnMonitor::members[$id];$values=$this->DAO->selectStmt($id);//fieldmappingprocessomittedforbrevi