Tag: 安全

在动态插入javascript到页面时如何防止“操作不安全”警告?

我正在尝试动态地将一个元,链接和脚本块添加到jQuery Mobile页面。 该脚本包含一条规则,我通过javascript添加到CSS样式表(不幸的是必须像这样)。 看起来像这样: <script type="text/javascript" if ('addRule' in sheet) { sheet.addRule(".splash:before", "background: url("' + x + '") no-repeat center center fixed; " + "-webkit-background-size: 100%; -moz-background-size: 100%; " + "-o-background-size: 100%; background-size: 100%; " + "-webkit-background-size: cover; -moz-background-size: cover;" + "-o-background-size: cover; background-size: cover;", 0); } else if ('insertRule' in sheet) { sheet.insertRule(".splash:before { […]

POST方法,Ajax和安全性?

我使用Ajax(jQuery)和POST方法来更新数据库中的数据。 我做了以下事情: 从表单中获取数据:user_id,entry_id,content,… 将它们发送到将处理数据的URL。 如果数据有效,我们会将它们记录在我们的数据库中。 我不知道如何validation用户是否从我的网站发送数据而不是从其他地方发送数据。 请帮我解决这个问题。 谢谢 !

php计时器只允许用户每两秒输入一次

我正在编写一个可以发布内容的网站。 这适用于以下jQuery ajax: $.ajax({ type: ‘POST’, url: ‘action/post.php’, data: ‘posttext=’+posttext+’&imageurl=’+imageurl, success: function(feedback){ $(‘#feedback’).val(feedback); } }); 现在我想知道:任何人都可以编写自己的ajax来向网站发布内容并一遍又一遍地执行此操作。 我该如何防止这种情况? 我确信我需要在post.php中进行某种安全检查 – 我已经听说过http referer,但是这可以修改,所以它不值得信赖。 另外我想在post.php中添加一个计时器,确保来自同一个IP地址的post每x秒只能发布一次,如果post发送到x秒以下,则重置计时器(类似于堆栈溢出)这是评论)。 有谁知道如何保护ajax以及如何设置计时器? 或者任何其他想法如何保护发布机制? 谢谢! 丹尼斯

使用jQuery前端的REST Web服务安全性

谢谢阅读。 我想开发一个安全的Web应用程序,其中jQuery作为前端,.NET MVC作为服务器端,其function以RESTful Web服务表示。 在这一点上,我正在设想我将使用的安全方案,但我想要一些关于最佳实践的建议(显然我将使用https / ssl,但当然还有更多内容)。 我一直是秘密密钥方法的粉丝所以我正在绞尽脑汁试图弄清楚如何在这种类型的Web应用程序架构中使用它,但我不知所措。 基本上,将生成密钥并将其放置在服务器上以及提供给客户端(因此密钥永远不会通过线路发送),并且每个客户端请求必须使用此密钥以数字方式“签名”。 这将是您通常在Web应用中看到的典型用户名/密码/会话ID结构的补充。 我的问题是在客户端上实际存储密钥。 由于jQuery文件只是位于服务器上的.html,因此无法访问虚拟Web目录之外的目录中的密钥文件。 将秘密密钥文件放在公共网站上并不会让它成为太多秘密。 🙂 以下是我希望它的工作方式: 在一定的时间间隔(5-15分钟),后端进程生成一个密钥,并将其放在后端数据库中,以及Web服务器上非公共位置的文件中。 当客户端发出请求时,它将从密钥文件中读取,然后使用密钥对请求进行数字签名。 服务器接收请求并使用密钥对其进行解码。 但显然#2是问题所在,因为无法通过javascript访问“秘密”(即非公开)文件。 我太偏执了吗? 密钥方法很好,因为它具有超出用户名/密码的另一级别的安全性(攻击者需要密钥和有效的用户名/密码),如果我每5分钟重新生成密钥,则风险会降低,如果密钥会泄漏。 这也确保所有请求都来自“认证”客户端。 但我不知道如何使用非编译代码,如html / jQuery。 有没有人对RESTful Web服务安全方法有任何建议或文章? 谢谢 :) 文斯

使用jQuery Ajax的安全风险

这个问题一直困扰着我,所以我正在寻找意见和解决方案,以打击应用程序存在安全风险的可能性。 我使用jQuery做很多事情,但主要是我用它来处理jQuery对话框窗口。 很多时候需要从表单上的字段中获取值,使用.serialize()命令将该信息连接起来并将其传递给jQuery ajax调用以转移到PHP文件以进行数据库交互。 这是我的问题(最后), 是不是很容易’猜测’PHP处理的url是什么样的? 您可以在现代浏览器中打开源代码,然后单击链接以查看包含ajax调用的完整JavaScript文件。 我可能会缩小JavaScript文件以进行混淆,但这并不是一种可靠的安全forms。 我正在使用PDP进行数据库访问,并准备好SQL注入攻击语句,但如果有人花时间查看,他们是否只能形成一个有效的URL,将其发送到数据库并插入他们想要的内容? 我不是在谈论将数据库黑客攻击钢铁信息,我更多的是谈论插入恶意信息,就好像数据是从应用程序本身添加的一样。 想想在购物车上添加50美元只需25美元的东西。 如果它就像将ajax请求从GET转换为POST并更改我的PHP文件一样简单? 编辑:此人已登录并已正确validation。 只是想知道其他人在做什么。 谢谢!

提供jQuery的CDN有多安全?

我们构建具有公共(非安全)区域和安全(通过HTTPS提供)区域的站点,我们使用jQuery库。 最近我建议我们使用Google CDN进行jQuery交付。 我的一些同事对这种提供JavaScript库的方式的安全方面表示担忧。 例如,他们提到有人可能会劫持DNS服务器,然后注入恶意修改的库,为不同的安全攻击打开大门。 现在,如果黑客可以通过谷歌CDN注入恶意代码,那么如果从网站本身提供jQuery,他可能也会这样做,对吗? 谷歌CDN似乎支持通过SSL服务库。 从CDN服务jQuery真的不那么安全,而不是从服务器本身服务吗? 这种威胁有多严重?

jquery ajax数据发布的安全建议?

我正在使用jquery ajax将更新发布回我的服务器。 我担心确保我已经采取适当的措施,以便只有我的AJAX调用才能发布数据。 我的堆栈是针对MySQL后端的Apache上的PHP。 建议非常感谢!

如何发布访问REST API的jQuery代码,但要防止未经授权的使用

这个问题类似于这个问题: 开发API – 如何使其安全? 我想要的是在我的服务器上针对REST api开发基于jQuery的查询,以检索一些数据以便在网页上显示。 我希望网页的授权用户和jQuery能够访问这些数据,但不希望其他人能够复制该jQuery并将其放在他们的网站上以任何方式访问这些数据。 需要明确的是,这一切都发生在浏览器的客户端 – 没有涉及任何服务器端代码…… 如果可能的话,实现这一目标的正确策略是什么? 我不希望查看网页的最终用户必须知道他们浏览器中发生的任何事情…… 谢谢!

如何更好地保护我的恶意用户的php,jquery,ajax请求

我通过jquerys getJSON方法发送了大量数据,一个函数的例子是 function doSomething(sid){ if(sid){ $.getJSON(“ajax/ajaxDoSomething.php”,{sid:””+sid+””}, function(data){ //alert(data); if(data.success == true){ $(‘#add_vote_div’).html(‘vote received’); $(‘#list_data_div’).html(data.html); } else{ $(‘#add_vote_div’).html(data.message); } }); } }` 问题是任何人都可以查看源代码并查看发送GET数据的php文件的位置,因此您可以将浏览器指向该位置并将数据附加到URL。 我检查数据以确保其正确的数据类型,但我不希望用户能够转到url。 我想也许把所有的ajax文件放在主文档根目录后面会起作用但是jquery不能链接到绝对路径之类的 $.getJSON(“var/www/ajax/doSomething.php”,{sid:””+sid+””} (主文档根目录是var / www / html /) 如果他们制作了一个更好的$ .postJSON,但它不存在,任何想法?

我是否需要jQuery .ajax()的CSRF令牌?

所以我有一个PHP文件的基本.ajax()POST方法。 我需要哪些安全措施? 一些post提到使用您通过AJAX发送并在PHP文件中validation的隐藏MD5输入字段。 这是一个足够好的方法吗?