zoukankan      html  css  js  c++  java
  • 安全性测试修复意见总结

    安全性检查工具

    1 CAT.NET

    2 AppScan

    一 SQL注入攻击(SQL Injection)

    问题1:用字符串连接组合SQL命令的方式;

    修复方法:

    使用参数化查询或者使用存储过程;但是如果使用了存储过程,也要避免在存储过程中使用字符串连接组合SQL命令的方式,l动态拼接sql语句,使用exce方式执行;修改通用分页存储过程;

    问题2:数据库访问权限过大;

    修复方法:

    去除sa权限,每一个数据库设置一个数据库专用用户;

    不开发权力过大的功能,如xp_cmdshell;

    不要使用集成登录方式;

    Web.config数据库连接字符串,使用加密方式存储;

    问题3:未限制输入的字符数

    解决办法:除了在客户端限制输入字符数,重要的地方还要在服务器端限制字符数;

    问题4:未对用户输入的数据做潜在的指令检测

    解决办法:

    提供统一的帮助类库,在获取输入数据时,过滤危险字符串;

    能使用值类型的不要使用String类型;

    问题5:如果系统已经运行,修复工作量很大,如果防止sql注入;

    解决办法:

    使用微软免费提供的IIS组件UrlScan 3.1防止sql注入

    二 跨站脚本(XSS)攻击

    问题1:过度信任客户端数据

    解决办法:

    提供统一的帮助类库,在获取输入数据时,过滤危险字符串;

    能使用值类型的不要使用String类型;

    如果没有特殊要求,请不要禁止 Validaterequest

    问题2:服务器端安全设置不足;

    解决办法:

    每个站点,应用程序池,设置单独用户,不是使用默认的IIS用户;

    如果仅仅是静态页面,设置为只读属性;文件夹

    问题3:Cookies未做足够的安全处理;

    解决办法:

    加密;绑定MAC地址,IP地址;

    问题4:ViewState没有加密;

    解决办法:

    在web.config设置所有网站为ViewState加密即可;

    问题5:对输出进行编码以过滤特殊字符;

    解决办法:

    HttpUtility.HtmlEncode(使用黑名单方式)

    AntiXss.HtmlEncode(使用白名单方式,更安全推荐使用)

    问题6:解密登录的请求,诸如用户名、密码和信用卡号之类的敏感输入字段未经加密即进行了传递

    解决办法:

    通过加密连接(如 SSL)将其发送到服务器

    RSA客户端js加密服务器,思路:1.服务器每次随机生成公私钥2.只把公钥发给客户端3.客户端用js和公钥加密4.密文到服务器用私钥解密

    三 垃圾信息群发(SPAM)

    问题1:垃圾邮件

    解决办法:

    使用垃圾邮件过滤功能的邮件服务器和客户端

    问题2:发布包含有隐藏文本,重复关键字,恶意链接;发布不合法的内容;

    解决办法:

    使用不易被OCR系统识别的验证码功能;

    通过HttpModule等手段,网站全局禁止提交不合法内容;

    通过技术实现禁止用户短时间内重复提交数据的功能;

    适当的人工审核机制;

    问题3:OCR程序自动识别验证码图片,自动提交垃圾数据信息;

    四 网页木马(SPY)

    问题1:上次安全漏洞的非法*.asp.*.php.*aspx等文件;

    这些非法网页程序所在的文件目录,有执行权限;这些文件有读取,修改,删除等权限;可以执行特殊的系统命令;

    解决办法:

    设置可上传的文件类型,并且正确获取文件扩展名(FileSystemInfo.Extension);

    有安全风险的网站将其设置在独立的应用程序池中;

    应用程序池不要使用默认的NETWORK SERVICE用户;

    新建用户portal,隶属于IIS_WPG,设置应用程序池中的“标识”,在配置寻找新创建的portal;上传的文件夹类型,选择用户portal,不能设置为完全控制;

    站点的执行权限,选择“纯脚本”,不要选择写入;

    上传文件的存储目录在IIS中不允许执行脚本;

    不需要动态修改的文件或目录,最好设置为只读;

    文件系统使用NTFS格式,并设置好足够的最小权限;

    IIS7.5,建议将应用程序池设置为ApplicationPoolIdentity

    问题2:服务器上安装有漏洞的软件/服务程序;

    解决办法:

    安装杀毒软件;

    卸载有漏洞软件;

    操作系统打补丁;

  • 相关阅读:
    Go入门笔记-14 EdgeX读取配置文件
    Go入门笔记-13 使用EdgeX日志输出
    Go入门笔记-12 输出unix时间戳
    Go入门笔记-11 Go 获取Linux系统CPU占用率
    htop使用
    Ubuntu子系统默认使用root登录
    函数参数传递数组
    c 'CRTSCTS' undeclared
    c 数组指针使用
    使用SD卡刷OpenWRT后,调整分区大小
  • 原文地址:https://www.cnblogs.com/zpino/p/2420781.html
Copyright © 2011-2022 走看看