YII 登录模块XSS攻击

一生小白 2018-05-08 03:42:49
用检测工具监测,会有xss攻击
<div class="container">
<?php $form = ActiveForm::begin([
'id' => 'login-form',
'options' => ['class'=>'form-signin']
]); ?>
<h2 class="form-signin-heading">sign in now</h2>
<div class="login-wrap">
<?= $form->field($model, 'username',['labelOptions' => ['label' => '用户名']]) ?>
<?= $form->field($model, 'password',['labelOptions' => ['label' => '密码']])->passwordInput() ?>
<div class="ctn code">
<label for="loginform-password">验证码</label>
<input type="text" name="LoginForm[verifyCode]" class="form-control">
<?= $form->field($model, 'verifyCode', [
'options' => ['class' => 'form-group form-group-lg'],
])->widget(Captcha::className(),[
'template' => "{image}",
'imageOptions' => ['alt' => '验证码'],
'captchaAction' => 'site/captcha',
]); ?>
</div>
<label class="checkbox">
<label for="loginform-rememberme">
<input type="hidden" name="LoginForm[rememberMe]" value="0">
<input type="checkbox" id="loginform-rememberme" name="LoginForm[rememberMe]" value="1" checked="">
记住我
</label>
</label>

<p class="help-block help-block-error" style="color: red"><?= Html::encode($error); ?></p>
<?= Html::submitButton('登陆', ['class' => 'btn btn-lg btn-login btn-block', 'name' => 'login-button']) ?>

...全文
893 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
游北亮 2018-05-08
  • 打赏
  • 举报
回复
xss攻击防御还是比较简单的, 1、输入过滤,比如把尖括号替换成空,或直接htmlspecialchars后存储; 注意如果xss直接在你的js代码里,就要替换掉单引号和双引号,再用引号括起来; 2、如果输入不能过滤,比如csdn要允许代码输入,那么在所有展示用户输出的地方,都加上htmlspecialchars 3、cookie设置为HttpOnly

20,359

社区成员

发帖
与我相关
我的任务
社区描述
“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法利用了C、Java和Perl,该语言的主要目标是允许web开发人员快速编写动态网页。
phpphpstorm 技术论坛(原bbs)
社区管理员
  • 开源资源社区
  • phpstory
  • xuzuning
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧