jjzjj

filtering

全部标签

php - 让用户呈现自己的 SVG 文件的安全隐患

我计划让网站用户上传他们自己的SVG文档并用inkscape渲染它们。或svg2pdf.用户要么未经身份验证,要么经历一个简单的注册过程,所以我预计会有一些黑客尝试。因此,我应该感谢任何有关我可以执行哪些过滤以最大程度地减少安全威胁的指示。Inkscape似乎并没有被JavaScriptonloadtags困扰并愉快地呈现内容而没有任何意外发生(也就是说,我无法让Firefox10使用这种方法弹出警告框)。我担心标记可以使用外部URI链接到一个巨大的或格式错误的位图图像——理论上这可能会使服务崩溃。有没有一种简单的方法可以遍历XML文档来过滤这些?当然,我可以使用XMLReader轻松

php - filter_var($url, FILTER_VALIDATE_URL) 在 PHP 5.3.2 中表现怪异

由于某些奇怪的原因,下面的函数表示此url“paradox-productions.net”在http://alpha.shurl.be/上无效在我的本地主机上有效。它是PHP中的错误还是可能导致此问题的原因?谁能证实这一点?可以解决还是我需要在我的服务器上升级PHP?php信息:http://alpha.shurl.be/phpinfo.php功能: 最佳答案 这是PHP5.3.2中的一个已知错误。它认为带有破折号的URL无效。参见https://bugs.php.net/bug.php?id=51258.您的本地PHP必须是不存

php - 用 PHP 反转 FILTER_SANITIZE_SPECIAL_CHARS

这是一个简单的问题,但我是新手所以请原谅我的简单问题。是否有一种简单的方法可以逆转FILTER_SANITIZE_SPECIAL_CHARS过滤器的影响?如果不是,你将如何扭转它。请不要只说正则表达式,实际上建议如何。需要明确的是,我不想反转字符串。下面是一些示例代码来帮助解释我想做什么:/***astringwithtags***/$string="!@#$%^&*\n\'#foo";/***sanitizethestring***/$x=filter_var($string,FILTER_SANITIZE_SPECIAL_CHARS);echo$x."\n";/***Iwantth

php - filter_var 和 filter_input 之间的区别

为什么这不起作用:if(!($data['email']=filter_var(INPUT_POST,'email',FILTER_SANITIZE_EMAIL))){$errors['email']='InvalidEmail.';}这是有效的:if(!($data['email']=filter_input(INPUT_POST,'email',FILTER_SANITIZE_EMAIL))){$errors['email']='InvalidEmail.';}这里的区别是filter_var和filter_input,当我点击提交时filter_var没有提交表单,而是提交了fi

php - Drupal View : difference between Filters and Arguments?

过滤器和参数之间有什么区别?例如。如果我需要显示指定月份内event_start所在的节点,我应该使用哪一个? 最佳答案 主要区别在于过滤器是固定的(除非您公开它们,在这种情况下,用户可以通过表单显式配置它们),而参数是可变的,通常取自URL(除非您从代码中调用View,其中如果您可以任意设置它们)。对于您的示例,我认为您仅限于过滤器,因为您不能指定带参数的日期范围检查(afaik)。参见thisanswertoasimilarquestion关于日期范围。 关于php-DrupalVi

php - Symfony2 和 Propel 包 : add additional filter to the Propel param converter

我在我的一个Controller中使用Propel参数转换器:(Symfony2.4.2+Propel1.7)*@ParamConverter("center",converter="propel",class="MyCompany\Bundle\CoreBundle\Model\Center")它运行良好,但我想添加额外的过滤器,通常是在字段isVisible上(但过滤器可能更复杂),这可能吗?事实上,我想要的是使用我的模型的自定义查询函数,而不是基本的findPk()函数。 最佳答案 如果你想指定用于查找实体的存储库方法,你可以

php - php strip_tags 和 filter_var 函数有什么区别?

它们似乎都去除了html、javascript标签。那么什么时候使用哪个呢?我都试过了alert('Yoursitesucks!');";echostrip_tags($user_input);?>和alert('Yoursitesucks!');";echofilter_var($user_input,FILTER_SANITIZE_STRIPPED);?> 最佳答案 strip_tags()就是这样做的。根据PHP文档,它:stripsHTMLandPHPtagsfromastringfilter_var()给你更多的工作,因为

PHP:filter_var 清理是否足够安全?

我有一个包含以下行的PHP脚本:$query="SELECT*FROMproductsWHEREproduct_id='".filter_var($_GET[id],FILTER_SANITIZE_NUMBER_INT)."'";这样够安全吗?您将如何改进此代码? 最佳答案 在这种情况下是安全的,但对于更通用的方法,我宁愿将mysql_real_escape_string与类型转换结合使用:$query="SELECT*FROMproductsWHEREproduct_id='".(int)mysql_real_escape_str

php - 即使使用 $config->set ('Attr.EnableID' , true),HTML Purifier 也会删除 ID);

我在使用HTMLPurifier时遇到问题,它删除了标题元素上的ID,尽管使用配置选项来避免此类行为。现在我正在使用://setupHTMLPurifierforuserinputsrequire_once'htmlpurifier/library/HTMLPurifier.auto.php';$config=HTMLPurifier_Config::createDefault();$config->set('Core.Encoding','UTF-8');$config->set('HTML.Doctype','HTML4.01Transitional');$config->set(

php - 我是否正确使用 FILTER_VALIDATE_INT + FILTER_SANITIZE_NUMBER_INT?

尝试验证然后清理$_GET请求。我只是想看看我是否遗漏了什么。这是我的...if(isset($_GET['id'])){$id=filter_input(INPUT_GET,'id',FILTER_VALIDATE_INT);if(!$id){echo'Error';exit();}$id=filter_input(INPUT_GET,'id',FILTER_SANITIZE_NUMBER_INT);$getinfo=mysqli_query($link,sprintf("SELECTcolumn1,column2FROMtableWHEREid='%s'",mysqli_real_