我需要在网站中演示SQL注入,但是我的网站使用QuintOut.js Data-Bind来接收带有类型POST和DATATYPE JSON的AJAX对象。
一个例子是:
<script src="http://knockoutjs.com/downloads/knockout-2.3.0.js"></script>
<div data-bind="value: details().Name" />
<script>
ko.applyBindings();
</script>
SQL注入可以以这种形式提交吗?如果是这样,怎么会发生?您能提供一个示例,说明输入将如何删除所有行?
例如。正常的SQL注入将为
a'; DROP TABLE users;
这如何在我的网站上发生?
SQL必须在服务器侧防止注入。
客户端发生的任何事情都是无关紧要的。
安全审核公司可能会使用您的接口,但他们更有可能使用其他工具将HTTP查询发送到您的网站,从而绕过您的前端。
您的网站是使用淘汰赛还是任何其他前端框架与是否具有SQL注入漏洞完全无关。您的应用程序正在生成的API,您的前端正在连接到。
为了正确测试API的SQL注入漏洞,您需要用自己的JSON有效载荷手动制作自定义HTTP请求,以尝试确定任何字段是否容易受到SQL注入的影响。这是因为您的API可能比直接通过UI暴露的输入更多,因此通过测试UI,您无法完全覆盖系统。