zoukankan      html  css  js  c++  java
  • 网站编程安全之更改文章时注意事项

    一:更改文章时,不要信赖任何用户提交的数据

          用户会可能通过html代码修改更改文章的id号,来修改其他文章,如果没有对上传过来的文章id检验而直接利用获得的id来更改的话,很可能会出现一个用户把另外一个用户的文章给修改了。

          解决办法:

          对用户提交的文章id,进行验证,看是否是该用户的文章,如果是才有修改的权限,如果没有,则返回错误。(具体可以利用session存储用户登录的id,然后通过匹配是否能找到对应的记录,如果可以,说明是本人的文章,如果不是返回错误)

    以新浪博客为例:

    1、新浪博客文章的blog_id是加密过的字符串: 这里是的blog_id是:6a23a4c20101fi2l

    2、编辑文章,html代码显示为:

    3、验证方法:

        1》随便修改blog_id的值为一篇不存在的文章(添加几个字母即可),提交的时候会显示:

         

       2》修改blog_id为别人文章的blog_id,如 644fc7230101e2yt,点提交时显示:

       3》更改该blog_id为自己的另外一篇文章的blog_id号,点提交成功保存,结果另一篇文章被该篇文章覆盖了。

       结论:

       新浪博客修改文章时判断思路为:

       判断提交的blog_id:

       如果存在并且和当前用户匹配,则更新提交的blog_id对应的文章,这里面不会判断是否更改的是编辑前的那篇文章,(不过一般谁会没事改自己的文章了)

       如果存在但是和当前用户的id不匹配,则提示非法修改(这里新浪用了一个友好的提示来掩盖)

       如果blog_id不存在,则提示改文件不存在

  • 相关阅读:
    学习进度表
    数据结构思维导图
    数据结构笔记(树与二叉树)
    图片链接缝隙(a于img) mn
    如何用div实现(滑动条)侧边导航栏 mn
    去除Linux文件中的注释行和空行 mn
    高度塌陷 mn
    初入HTML5
    bcp命令详解转载
    windows 下andriod 开发环境的搭建
  • 原文地址:https://www.cnblogs.com/Alight/p/3313139.html
Copyright © 2011-2022 走看看