WAF技术及应用读书笔记(四)Web防护

本文深入探讨了Web安全防护的多个方面,包括弱密码、SQL注入、XSS、CSRF等常见攻击及其防范措施,同时介绍了针对恶意流量、文件上传与下载攻击、信息泄露的防护策略。


草稿内容.....

第四章 Web防护
    Web防护表示主要是对Web应用提供保护,当然也包括对Web服务器的安全防护。
    重点防护常见的攻击,如何检测并防御弱密码和泄密等行为。
    4.1 弱密码
        4.1.1 弱密码攻击的特点和具体方法。
            攻击的特点有三:危害大,易利用,修补难。
            具体密码攻击方法:1.社工欺骗 2.猜测弱口令
                3.社工字典 4.混合字典 5.破解密码文件
                6.内网嗅探  7.生日攻击 8.键盘木马等
        4.1.2 弱密码检测
            白盒检测弱密码和黑盒检测弱密码。
            前者全面,后者方便(数据驱动)。
        4.1.3 弱密码防范
            本节主要教网民操作,不是WAF功能介绍。
            WAF检测到弱密码,会展示成复杂口令,但实际交互仍是原密码。

    4.2 SQL注入
        4.2.1 SQL注入攻击原理
            本节强调攻击作用的层面在数据层,危害大。
            SQL注入的四大特点:
            1.普遍 2.隐蔽 3.上手门槛低 4.危害大
            过于信任用户的输入,机器没能分辨数据内容和指令内容,
                导致用户输入的数据被错误单做指令执行。
        4.2.2 SQL注入漏洞利用
            本节从攻击者角度看问题,步骤与其他攻击手法相似。
            SQL注入危害大,可以查到想要的数据,甚至是管理员的密码,
                还可以删库删表。
            第一步:收集信息,找注入点(用户输入、Cookie、系统变量例如Header)
            第二步:判库,连库,读写库。
            第三步:提权留后门清理痕迹。
            常见攻击手法有七种:
            1.重言 2.联合查询(union) 3.附带查询(sleep、xp_cmdshell)
            4.错误推断 5.盲注推断 6.利用存储过程 7.替换编码绕过
            以上手法都有明显的收集信息过程。
        4.2.3 SQL注入攻击漏洞检测
            检测分为三种类型:
            1.白盒源代码检测 2.黑盒动态检测 3.黑盒DOM检测
            白盒检测效率较高,但是误报高,技能要求高。
            黑盒检测针对性强,效率最高,但是不全面、误报低、技能要求低。
            黑盒DOM检测是自动化漏洞扫描的思维:
                1)根据各种请求内容形成注入点列表。
                2)构造注入方程拆解模块
                3)生成测试用例用于检测
                3)响应数据特征匹配,判断是否为注入点
                4)猜库猜表读取记录等操作    
        4.2.4 SQL注入漏洞防范
            防范分为两部分:提高应用自身安全性和提高平台的安全性。
            本节只讲如何提高应用自身安全性
            1.使用参数化查询(注入特殊情况) 2.黑白名单输入校验
            3.编码规范输出到DAL 4.出现不规范时统一做转码。
            5.使用仅执行权限的存储过程、抽象数据层、加密存储敏感数据。
            
    4.3 跨站脚本攻击
        4.3.1 XSS攻击原理
            原理是HTML页面注入,用户输入的页面内容被单做JS脚本执行。
        4.3.2 XSS漏洞利用
            JS脚本可以读Cookie,JS脚本可以构造一个窗体用于钓鱼攻击。
            理论上JS能做的XSS都可以做。
        4.3.3 XSS漏洞检测
            检测到用户输入中含有危险标签,阻截这次请求,或者对用户的输入
            进行转义。
        4.3.4 XSS漏洞防范
            使用安全转义函数,URL、HTML、JS各种均有安全的转义函数。

    4.4 跨站请求伪造攻击
        4.4.1 CSRF攻击原理
            XSS的一种利用,盗取用户的会话,借用户的身份干坏事。
        4.4.2 CSRF漏洞利用
            
        4.4.3 CSRF漏洞检测

        4.4.4 CSRF漏洞防范

    4.5 恶意流量攻击
        4.5.1 爬虫攻击分析
            爬虫攻击会消耗网站的流量,影响网站的性能,收集网站的数据用于不法用途。
        4.5.2 爬虫攻击防范
            可以通过IP发起请求的频率进行评定,输入验证码才可继续访问。
            检查请求的来源refer是否符合正常值
        4.5.3 盗链攻击分析
            盗链会影响网站的性能,甚至会演变成DDOS攻击。
        4.5.4 盗链攻击防范
            检查请求的来源refer是否为期望值。

    4.6 文件上传与下载攻击
        4.6.1 文件上传攻击原理
            任意文件上传,上传一个木马,然后执行这个木马,一步步获得权限。
        4.6.2 文件上传攻击防范
            对上传的文件进行重命名,对文件的后缀名检查。
            上传的文件放到指定的另一个服务器上。
        4.6.3 文件下载攻击原理
            通过构造URL,下载服务器路径下的任意文件。
        4.6.4 文件下载攻击防范
            只允许指定路径下的文件被下载,白名单策略。
                        
    4.7 Web服务器敏感信息泄露
         4.7.1 敏感信息泄露原理
             程序出错抛出异常信息泄露路径,管理页面未及时移除。
        4.7.2 敏感信息泄露检测
            字符串匹配?
        4.7.3 敏感信息泄露防范
            检测到后重定向到一个指定的出错页面中。

    思考题:
        1.简述SQL注入的原理。
        2.SQL注入攻击有哪几种方式?如何对SQL注入攻击进行防护?
        3.简述跨站脚本XSS攻击的前提条件,XSS分几种?
        4.如何对XSS进行检测?采用的防护措施包括哪些?
        5.简述跨站请求为赵CSRF的原理,如何利用CSRF攻击?
        6.CSRF攻击的检测方式有哪些?如何防范CSRF?
        7.恶意流量攻击的技术手段有哪些?
        8.简述爬虫攻击的原理,如何防范爬虫攻击?
        9.简述盗链攻击的原理,防盗链的技术有哪些?
        10.简述文件上传攻击对网站安全使用的影响,文件上传攻击防范措施有哪些?
        11.简述文件下载攻击的原理及防范技术手段。
        12.简述敏感信息泄露的原理,如何对敏感信息泄露进行检测?
        13.简述敏感信息泄露的防范防范。
        14.简述弱密码攻击的方法。
        15.简述弱密码的两种检测方法。
   


    
           

对比启明星辰、绿盟、安恒等品牌WAF应用攻击保护时的策略防护能力。 二. 测试步骤 2.1 环境漏洞验证 验证序号 1 验证方法 用and 1=1和and 1=2验证注入漏洞 测试步骤 1. 在浏览器打开http://192.168.1.155/ypnew_view.asp?id=791正常页面 2. 修改浏览器URL:http://192.168.1.155/ypnew_view.asp?id=791 and 1=1-- 3. 修改浏览器URL:http://192.168.1.155/ypnew_view.asp?id=791 and 1=2-- 漏洞验证 若执行步骤2与步骤1均能正常访问页面,执行步骤3得出不同的访问页面,说明存在注入漏洞 验证结果 用户签字 2.2 防护效果测试 测试序号 1 测试项目 防止黑客利用注入漏洞获取数据库版本和操作系统信息 描述 获取数据库版本和操作系统信息是黑客入侵的前提,本项主要是测试WEB防护设备能否有效的防止数据库版本和操作系统信息的泄漏 测试步骤 1、 正常浏览192.168.1.155/ypnew_view.asp?id=791 2、 在攻击机浏览器中输入以下URL: http://192.168.1.155/ypnew_view.asp?id=791 and 1=2 union all select 1,2,3,4,@@version,'6',null,null,null,null,null,null,null,null from sysobjects-- 预期结果 数据库版本信息未泄露 备注 如出现下图,说明数据库版本信息泄露,WEB应用防护设备未起作用 测试结果 用户签字 测试序号 2 测试项目 防止黑客利用注入漏洞获取数据库库名 描述 数据库库名是黑客进行SQL注入时常获取的信息,有效地防护数据库信息可以能大大降低注入攻击的风险,本项主要测试WEB应用防护设备是否防护数据库信息泄露漏洞 测试步骤 在攻击机浏览器中输入以下URL: http://192.168.1.155/ypnew_view.asp?id=791 and 1=2 union all select 1,2,3,4,db_name(),'6',null,null,null,null,null,null,null,null from sysobjects-- 预期结果 数据库信息未泄露 备注 若在测试结果中出现下图,说明没有防护效果。 测试结果 客户签名 测试序号 3 测试项目 防止黑客通过注入漏洞获取数据库表名信息 描述 当黑客成功获得数据库的版本和数据库库名后,数据库中表的名称和内容就是SQL注入攻击的下一目标,本项主要测试WEB应用防护设备是否防护获取数据库表名的攻击 测试步骤 1. 在攻击机浏览器中输入以下URL: 192.168.1.155/ypnew_view.asp?id=791 and 1=2 union all select 1,2,3,4,(select top 1 name from sysobjects where xtype='U' and name not in (select top 2 name from sysobjects where xtype='U')),null,null,null,null,null,null,null,null,null from sysobjects-- 2. 在攻击机浏览器中输入以下URL: 192.168.1.155/ypnew_view.asp?id=791 and 1=2 union all select 1,2,3,4,(select top 1 name from sysobjects where xtype='U' and name not in (select top 37 name from sysobjects where xtype='U')),null,null,null,null,null,null,null,null,null from sysobjects-- 预期结果 数据库table名未泄露 备注 如出现以下图示,说明WEB防护效果未起作用,数据库表泄漏 测试结果 用户签字 测试序号 4 测试项目 防止黑客利用update修改数据库的内容 描述 如果黑客成功获取了数据库和表的相关信息,将会尝试修改表内的数据,直接篡改网站内容,因此对于恶意修改数据库内容的入侵要求严格防护.本项将测试web防护设备是否防护通过update方式修改数据库内容的恶意攻击 测试步骤 利用注入漏洞使用Update方式修改数据库内容 预期结果 数据库内容未被篡改 备注 攻击机中输入以下URL,如出现页面被篡改,说明防护失效 http://192.168.1.155/ypnew_view.asp?id=791 测试结果 用户签字 测试序号 5 测试项目 防止黑客利用注入漏洞获取后台账号信息 描述 后台管理员的账号密码信息如果泄露,黑客就可以对网站进行各种严重损坏客户利益的破坏,本项测试WEB应用防护设备能否有效防护网站管理员后台账号密码信息泄漏 测试步骤 利用注入漏洞获取后台账号信息 预期结果 不能获得后台用户名密码: 备注 当出现下图时,说明用户名密码被盗取,WEB应用防护设备无效果 打开http://192.168.1.155/admin/index.asp,输入用户名密码,可直接管理后台:http://192.168.1.155/admin 测试结果 客户签名
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值