zoukankan      html  css  js  c++  java
  • 聊聊Web安全那些事!

    最近安全这块话题炒的很热,袁伟事件的争议很大, 著名的漏洞报告平台乌云也在整顿维护了,个中缘由大家自己去猜测吧。

    言归正传, 本人也做过半年不到的安全开发工程师。接下来聊聊我对web安全开发这块的经验,讲讲常用的防护措施。

    楼主曾经在公司的安全部负责安全运营平台的开发(soc)。这个平台主要包括威胁情报的收集,主机策略扫描,主机加固,行为监控,代码审计

    漏洞扫描等功能。说起来高大上的系统 其实底层一些处理,比如漏洞扫描啊之类的,也是调用360的库去做的。毕竟老大是360出来的。

    在做以上系统的过程中接触到各种关于web攻击的名词,如 :xss,csrf等等。当然也知晓一些防护手段。下面讲讲吧:

    XSS:

    1、反射型跨站脚本攻击

    攻击者会通过社会工程学手段,发送一个URL连接给用户打开,在用户打开页面的同时,浏览器会执行页面中嵌入的恶意脚本。

    2、存储型跨站脚本攻击

    攻击者利用web应用程序提供的录入或修改数据功能,将数据存储到服务器或用户cookie中,当其他用户浏览展示该数据的页面时,浏览器会执行页面中嵌入的恶意脚本。所有浏览者都会受到攻击。

    3DOM跨站攻击

    由于html页面中,定义了一段JS,根据用户的输入,显示一段html代码,攻击者可以在输入时,插入一段恶意脚本,最终展示时,会执行恶意脚本。

    DOM跨站和以上两个跨站攻击的差别是,DOM跨站是纯页面脚本的输出,只有规范使用JAVASCRIPT,才可以防御。

    恶意攻击者可以利用跨站脚本攻击做到:

    1、盗取用户cookie,伪造用户身份登录。

    2、控制用户浏览器。

    3、结合浏览器及其插件漏洞,下载病毒木马到浏览者的计算机上执行。

    4、衍生URL跳转漏洞。

    5、让官方网站出现钓鱼页面。

    6、蠕虫攻击

    攻击方式: 比如存储某个值,用户输入<script>alert(1)</script>  如果页面展示未做处理,那么将会弹出1这个窗口。

    解决方案:  XSS转义。

    CSRF: 跨站请求伪造攻击。

    攻击者在用户浏览网页时,利用页面元素(例如img的src),强迫受害者的浏览器向Web应用程序发送一个改变用户信息的请求。

    攻击方式: 用户在自己的服务器上搭建了一个网页,把链接发你,这个页面内部做了强制发送请求的处理,但你打开页面时,你的一些信息可能会被修改。

    在整个攻击过程中,受害者用户仅仅看到了一个空白页面。

    解决方案:token认证

    注入攻击: 注入包括 sql注入,代码注入,xml注入,系统命令注入

    攻击范式: 注入类的工具基本就是通过恶意字符串传输,导致系统运行恶意脚本。

    解决方案:针对sql注入,可以用预处理的方式,代码注入,可以限制,xml注入可以转义,系统命令注入可以预设命令白名单。

    web安全攻击这块 基本就以上几个点了,记住一点,永远不要相信用户给的任何对象,举个例子,我们的项目有excel上传的功能,这个

    上传可以通过服务器解析xls,生成报表展示在页面上。楼住通过编辑xls的xml文本,引入外部实体,写了个命令回显服务器内部信息。

    本来应该显示 "金额"  的<td>金额</td>  最后这块内容 显示的是 服务器内部隐私信息。

    最后我想说 软件安全这块是很重要的事情。 希望大家多关注网络上曝光的一些bug,及时更新自己的软件。

    安全这块处理的方式很多,有好有坏!  欢迎大家交流。   QQ:409527094   验证:来自博客园

  • 相关阅读:
    yum---Linux软件安装与管理
    Python Cheetah01
    Python 改变字体颜色
    DenyHosts安装及配置
    Python 文件I/O
    Python 列表(List)
    Python 字符串
    Python 循环语句
    Python 条件语句
    Python 系统性能信息模块psutil
  • 原文地址:https://www.cnblogs.com/jinhaidong/p/5708738.html
Copyright © 2011-2022 走看看