在我的网站上运行Acunetix会显示下面的严重漏洞
URL编码的GET输入用户名设置为“onmouseover = prompt(994492)bad =” 输入反映在双引号之间的标记元素内。
我试图找出可以做些什么。我对编码很新,我正在寻找一些技巧。什么可以作为被视为恶意的用户名输入?输入的代码不会只在客户端PC上运行而不能在服务器上运行吗?
实施例?解决方案?对不起,我刚刚收录了我认为它引用的内容。如果它有被剥削的危险,链接到我的网站会不会很糟糕?
<form name="loginForm" action="LoginName.asp" method="post">
<fieldset>
<label for="username">User</label>
<input type="text" name="username" value=""/>
<label for="password">Password</label>
<input type="password" name="password"/>
</fieldset>
<input type="hidden" name="originalURL" value="">
<input type="submit" value="Login" class="form-btn" />
</form>
它似乎不喜欢用户名或OriginalURL并且说“恶意用户可能会将JavaScript,VBScript,ActiveX,HTML或Flash注入易受攻击的应用程序中以欺骗用户以便从中收集数据。攻击者可以窃取会话cookie并接管帐户,冒充用户。还可以修改呈现给用户的页面内容。“
答案 0 :(得分:0)
你没有引用标记,但我猜你会说你的“用户名”输入标签格式不正确input
。例如,也许它错过了"
属性上的结束value
,并且您看到引用的文字就在其后面。
输入的代码不会只在客户端PC上运行而不能在服务器上运行吗?
这完全取决于你用它做什么。如果您将其传递给其他解释它的东西(例如,数据库解释SQL),那么您将会以这种方式进行攻击。这种特殊类型的攻击称为SQL注入攻击(article | cartoon)。
答案 1 :(得分:0)
任何可以替换您的SQL代码的东西(搜索SQL注入)。可能作为输出HTML写入屏幕的内容。您可以通过转义输入数据来控制这两种情况。
答案 2 :(得分:0)
查看跨视图脚本,javascript注入和sql注入以获取系统的一些漏洞。
在转发到您的服务器之前,应验证所有用户输入并将其视为不受信任的数据。