草庐IT

8.XSS和CSRF漏洞

全部标签

php - 为什么我的代码容易受到 xss 攻击?

我有这样的php代码'/>我正在使用htmlentities来防止XSS攻击,但我仍然容易受到上述字符串的攻击。为什么我的代码容易受到XSS攻击?如何保护我的代码免受它的影响? 最佳答案 您并没有告诉PHP也转义引号,您应该改用htmlspecialchars():'/>Demo 关于php-为什么我的代码容易受到xss攻击?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/158

php - 生成的 CSRF token 太多(PHP),我该如何处理?

我遇到了一个问题。按照OWASP备忘单,我在PHP中实现了一个一次性使用的CSRFtoken系统(基本上是从OWASP复制和粘贴)。每个表单或链接(生成某些操作的链接)都会创建自己的CSRFtoken,一旦使用,就会被删除。应用程序是一个网站,因此可以同时打开多个选项卡。问题是每次加载页面时,它都会创建一个新的CSRFtoken(即使您只是点击重新加载而不发送表单)。例如,在管理面板中,有一个项目列表,每个项目都可以删除一个带有CSRFtoken的链接(所有链接都使用相同的CSRFtoken),但是如果您重新加载页面,则会生成一个新的csrf。在一天结束时,我得到的未使用token比我

php - 带有 ajax 请求的 Codeigniter csrf token (500 内部服务器错误)

我很难尝试通过启用了csrftoken的CI表单发出ajax请求。我一直在做很长时间的研究,我想出了相同的解决方案发布在与此相关的每个问题中,该问题将tokenval添加到ajax请求中的序列化数据中。我在我的ajaxSetup中做了这个,我得到了token,但仍然遇到同样的问题。这是我的代码。//AJAXSetup$.ajaxSetup({data:{csrf_test_name:$("input[name='csrf_test_name']").val()}});//Functionajaxlogin$("form#login").on("submit",function(e){v

php - ZF2 表单的 CSRF 即使使用无效值也会进行验证

我有几种使用CSRF输入的表单。例如,在我的表单的构造函数中,它看起来像这样:$this->add(array('name'=>'csrf','type'=>'Csrf','attributes'=>array('id'=>'csrf')));只是为了好玩,我尝试使用Firebug更改CSRF输入的token值并提交表单,只是为了看看会发生什么。结果:它仍然有效。我什至转储了$_POST数据以确认正在提交无效token。更重要的是,我尝试将超时设置为10秒,同样的事情发生了:表单似乎忽略了CSRF输入并验证表单是否正常。代码如下:$this->add(array('name'=>'cs

帆软报表 V8 get_geo_json 任意文件读取漏洞

帆软报表V8get_geo_json任意文件读取漏洞CNVD-2018-047571.漏洞介绍FineReport报表软件是一款纯Java编写的,集数据展示(报表)和数据录入(表单)功能于一身的企业级web报表工具。FineReportv8.0版本存在任意文件读取漏洞,攻击者可利用漏洞读取网站任意文件漏洞影响FineReport搜索语法body=“isSupportForgetPwd”出现漏洞的文件为fr-applet-8.0.jarpackagecom.fr.chart.web;importcom.fr.base.FRContext;importcom.fr.general.IOUtils;

php - 对匿名用户使用 CSRF 保护是否有意义?

CSRF保护是否应该用于匿名用户,或者这是否违背了它的目的?我有一个可以匿名访问的URL。当使用适当的信息访问URL时,一些值会在我的数据库中更新。例如,客户可以在他们的订单确认页面上放置一些代码,这些代码将向http://example.com/save-request发出POST请求,并发送以下数据:{orderId:1234,referralCode:'ABCDEF'}当我收到此请求时,我会使用推荐代码更新数据库中的给定订单:$order=Order::find(Input::get('orderId'));$order->referral_code=Input::get('re

javascript - symfony2动态表单修改ajax jquery无效的CSRF token

假设我有产品并且产品可以是promo。单击促销复选框时,我希望显示promoPrice字段。这是我的AbstractType的示例//...//$builder->add(..);$builder->add('promoProduct','checkbox',['required'=>false,]);$builder->add('promoPrice','hidden')//$builder->add(..);$formModifier=function(FormInterface$form,$promoProduct=null){if($promoProduct){$form->a

【vulhub漏洞复现】Fastjson 1.2.24反序列化漏洞

一、漏洞详情Fastjson是一个Java库,可以将Java对象转换为JSON格式,也可以将JSON字符串转换为Java对象。漏洞成因:目标网站在解析json时,未对json内容进行验证,直接将json解析成java对象并执行,攻击者构造对应的payload,让系统执行,就能达到代码执行,甚至命令执行的目的。二、复现过程搭建docker环境docker-composeup-dbp抓个包,GET改成POST,添加Content-Type字段为application/json,再添加请求参数,可以发现name返回值已经改成了Lili如果他对于java对象也有回应,那fastjson漏洞不就在眼前了

命令执行漏洞详解

一、命令执行漏洞原理在编写程序的时候,当碰到要执行系统命令来获取一些信息时,就要调用外部命令的函数,比如php中的exec()、system()等,如果这些函数的参数是由用户所提供的,那么恶意用户就可能通过构造命令拼接来执行额外系统命令,比如这样的代码system("ping-c1".$_GET['ip']);?>程序的本意是让用户传入一个ip地址去测试网络连通性,但是由于参数不可控,当我们传入的ip参数为"127.0.0.1;id“时,执行的命令就便成了”ping-c1127.0.0.1;id",执行完ping命令后又执行了id命令,";"在linux中用于将多条命令隔开?ip=127.0.

php - 我的反 XSS 方法是否可以在 PHP 中允许用户使用 HTML?

我正在努力寻找一种让用户提交数据的好方法,在这种情况下允许HTML并尽可能安全和快速。我知道这个网站上的每个人似乎都在想http://htmlpurifier.org是这里的答案。我部分同意。htmlpurifier拥有用于过滤用户提交的HTML的最佳开源代码,但该解决方案非常庞大,不利于高流量站点的性能。我什至有一天可能会使用那里的解决方案,但现在我的目标是找到一种更轻量级的方法。我已经使用下面的2个函数大约2年半了,目前还没有遇到任何问题,但我认为是时候听取专业人士的意见了,如果他们能帮助我的话。第一个函数称为FilterHTML($string),它在用户数据保存到mysql数据