20169305 2016-2017-2 《网络攻防技术与实践》第5周学习总结

20169305 2016-2017-2 《网络攻防技术与实践》第5周学习总结

一、教材学习内容总结

本周学习了课本第11、12章的内容,主要学习了 Web应用程序安全攻防Web浏览器安全攻防 两章节的内容:

  • 1、Web应用程序体系结构
    Web应用体系结构主要分为客户端与服务器端,客户端由浏览器构成,服务器端由Web服务器软件、Web应用程序及后端数据库构成(这三部分依次按照表示层、业务逻辑层和数据层来组织和构建),二者之间通过因特网或内联网上HTTP/HTTPS应用层协议的请求与应答进行通信。
    浏览器(Browser) 如 IE、Firefox、Chrome等我们熟知的标准Web客户端他们都是使用HTTP/HTTPS协议、HTML语言和web服务器进行交互。
    Web服务器(Web Server) 用来接收Web客户端请求,然后在这些请求上执行一些基本的处理以确定资源的存在,然后将它传送给Web应用程序来执行,待Web应用程序执行完逻辑并返回相应时,Web服务器再将这个响应返回给Web客户端,进而在浏览器上进行本地执行、渲染和展示。
    Web应用程序(Web Application) 现代Web应用的核心是处于服务器端的业务逻辑,即Web应用程序,它是一个动态引擎,与用户进行实时的交互。Web应用程序由表示层、业务逻辑层和数据层三层结构组成。表示层是接受Web客户端输入并显示结果,通常由HTML的显示、输入表单等标签所构成;业务逻辑层从表示层接收输入并在其上完成某些工作,并可能需要数据层的协作,然后将结果送回表示层,业务逻辑层是Web应用程序的核心,其实现方式包括早期的CGI脚本程序,或目前流行的ASP、ASP.NET、PHP等动态脚本语言程序;数据层以数据库或本地文件形式,提供非易失性的信息存储,这些信息可以被逻辑层请求或更新。
    数据库(Database) 有时也被称为后台,是Web应用存储数据的地方,也作为web应用程序多级结构中的最后一层。
    传输协议HTTP/HTTPS 由浏览器和由Web服务器、Web应用程序和数据库所构成的Web站点之间的通信传输协议。

  • Web应用安全威胁

1.针对浏览器和终端用户的Web浏览安全威胁;
2.针对传输网络的网络协议安全威胁;
3.系统层安全威胁;
4.Web服务器软件安全威胁;
5.Web应用程序安全威胁;
6.Web数据安全威胁。

Web应用安全攻防技术概述

  • Web应用信息收集
    1.手工审查Web应用程序结构与源代码。包括:静态与动态生成的页面、目录结构、辅助性文件、输入表单、查询参数字符串。
    2.自动下载与镜像Web站点页面。
    3.使用Google Hacking技术审查与探测Web应用程序。
    4.Web应用程序安全评估与漏洞探测。辅助分析工具主要包括:浏览器插件、免费工具集和商业Web应用安全评估系统和漏洞扫描器。

  • Web服务器平台中的安全漏洞
    1.数据驱动的远程代码执行安全漏洞;
    2.服务器功能扩展功能模块漏洞;
    3.样本文件安全漏洞 ;
    4.源代码泄露 ;
    5.资源解析攻击 。

  • Web应用安全防范
    主要针对Web站点网络传输安全、Web站点操作系统及服务安全、Web应用程序安全及Web站点数据安全设防。

  • SQL注入与XSS跨站脚本攻击
    1.SQL注入
    是利用Web应用程序数据层存在的输入验证不完善型安全漏洞实施的一类代码注入攻击技术,它的原理是向Web应用程序提供的用户输入接口输入一段精心构造的SQL查询命令,攻击和利用不完善的输入验证机制,使得注入代码得以执行完成非预期的攻击操作行为。
    攻击步骤:发现SQL注入点、判断后台数据库类型、后台数据库中管理员用户口令字猜解、上传ASP后门和得到默认账户权限、本地权限提升、利用数据库扩展存储过程执行Shell命令。
    攻击工具:Wposion、wieliekoek.pl、SPIKE Proxy、SPI Toolkit。
    防范措施:使用类型安全的参数编码机制、凡是来自外部的用户输入必须进行完备检查、将动态SQL语句替换为存储过程、预编译SQL或ADO命令对象、加强SQL数据库服务器的配置与连接。
    2.XSS跨站脚本攻击
    根源同样是Web应用程序对用户输入内容的安全验证与过滤不够完善。与代码注入不同,XSS攻击的最终目标并非Web服务器,Web服务器上的应用程序在XSS攻击场景中发挥的角色是“帮凶”,而真正的受害者是访问这些Web服务器的其他用户。利用Web应用程序中的安全漏洞,在服务器端网页中插入一些恶意的客户端脚本代码,在Web服务器上产生出一些恶意攻击页面,由此当其他用户访问这些页面时就会发生攻击行为。
    XSS攻击主要分为持久性漏洞和非持久性漏洞,前者最为严重,后者最为普遍。
    防范措施:服务器端可以通过输入验证、输出净化和消除危险的输入点来完成防范,客户端也可通过诸如关闭cookie功能等手段完成防范。

  • Web浏览器的安全问题与威胁
    由于Web浏览器需要支持许多种协议与规范,所以它具有很强的复杂性,进而意味着拥有更多的错误和安全缺陷。其次,由于浏览器支持多种多样的可扩展性插件,因而其扩展性方面也涌现出许多安全问题。最后,由于浏览器软件始终工作在联网状态,因而其一旦存在安全漏洞,就很容易被网络上的威胁源所利用与攻击。
    对于Web浏览器,按照其不同的组件,面临着针对传输网络的网络协议安全威胁、针对Web浏览端系统平台的安全威胁、针对Web浏览器软件及插件程序的渗透攻击威胁、针对互联网用户的社会工程学攻击威胁。
    网页木马 是Web浏览器的渗透攻击威胁,它是从恶意网页脚本所孕育和发展出来的。其发展和流行的驱动力是黑客地下经济链,其存在的基础是Web浏览器安全漏洞。从本质上来说,网页木马是利用了现代Web浏览器软件中所支持的客户端脚本执行能力,针对Web浏览端软件安全漏洞实施客户端渗透攻击,从而取得在客户端主机的远程代码执行权限来植入恶意程序。
    网页挂马机制主要有:内嵌HTML标签、恶意Script脚本、内嵌对象链接、ARP欺骗挂马。
    网页木马为了对抗反病毒软件的监测还引入了混淆机制。
    检测与分析网页木马技术主要有:基于特征码匹配的传统监测方法、基于统计与机器学习的静态分析方法、基于动态行为结果判定的监测分析方法、基于模拟浏览器环境的动态分析监测方法。
    其防范措施在于提升操作系统与浏览器平台软件的安全性。
    网络钓鱼 是社会工程学在互联网中广泛实施的一种典型攻击方式,通过大量发送声称来自于银行或其他知名机构的欺骗性垃圾邮件,意图引诱收信人给出个人敏感信息。
    其防范措施在于提高警惕性、充分利用浏览器软件及网络安全厂商所提供的反钓鱼网站功能特性、提升个人安全意识来辨别新的钓鱼网站、要重视访问网站的真实性、通过学习和修炼提升自己抵抗社会工程学攻击的能力。

教材学习中的问题和解决过程

教材中主要的问题还是对于一些概念的理解,现在也在进行《计算机网络》相关课程的学习,但是进度稍慢,只能通过网上查找一些关键词学习,这样看起来不太系统

视频学习中的问题和解决过程

视频中遇到的问题接解决过程融汇在一起写
1、首先是第一个工具bbqsql的使用,一打开就是如下问题:

这个问题我也不清楚什么原因,简单看来可能是原来的文件有些问题,这个回头再做处理,剩下的几个工具就是简单的打开看看,查看一些具体的使用和参数等

2、重点看一下Burp Suite的使用,使用其中自带的代理,可以截获并修改从客户端到web应用程序的数据包:
首先我们打开Burp Suite,得到如下界面:

按照视频里的内容,我们随意打开浏览器的一个网页,然后在Edit中选择Preferences,在Advanced中选择Network,在HTTP Proxy中填入监听的127.0.0.1,端口填写8080如下图所示:

将上述内容修改完成后我们重新输入一个网址www.baidu.com,我们会发现打不开

打开Burp Suite,会发现intercept出变黄,此出多了一个get请求,表明已经请求到相关内容:

然后我们点击forward,我们就会进入baidu的界面:

但是随后在搜索一部分内容时,不管是什么总是可以搜索的到,开始以为是虚拟机的问题,换了几台之后发现还是同样的问题,上网查阅了相关资料,原因是:通常情况下burp默认只抓HTTP的包,HTTPS因为含有证书,因而无法正常抓取,抓HTTPS数据包就需要设置可信证书。然后我就换了一个HTTP协议的网址(在这里我选择的是学信网https://www.sogou.com/sie?hdq=AQxRG-0000&query=%E5%AD%A6%E4%BF%A1%E7%BD%91&ie=utf8)按照之前的步骤我们是不能直接打开这个网站,在对应的intercept出变黄,此出多了一个get请求::

然后我们点击forward进入学信网的界面:

在此界面上我们搜索一下关键词,比如输入2017考研,发现又发了一个请求包:

我们将这个包drop掉,就会出现error:

3、现在我们搭建一下xampp和dvwa的渗透测试环境
1、安装xampp(引源:http://blog.csdn.net/cd_xuyue/article/details/48632777)
先下载一个xampp的平台

赋予下载到文件执行权限:
sudo chmod a+x xampp-Linux-x64-5.6.12-0-installer.run
以root权限执行安装:
sudo ./xampp-linux-x64-5.6.12-0-installer.run
执行后发现得到的是如下结果:

查找原因竟然是版本下载的不对,kali虚拟机是32位的,这个平台是64位的。只能重新找了......找到所用的材料后原本打算将环境搭在另一个虚拟机里,但U盘里的内容总是读不出来,所以一直无法继续进行下去……具体步骤可以参考(http://blog.csdn.net/cd_xuyue/article/details/48632777),这篇博客写的比较详细。

学习进度条

1、本周主要完成课本十一、十二章内容的学习;
2、完成视频16-20的学习;
3、博客评论:
http://www.cnblogs.com/zhaohui801/p/6601584.html#3654635
http://www.cnblogs.com/sunxing/p/6597585.html
http://www.cnblogs.com/zhaohui801/p/6601584.html
http://www.cnblogs.com/murphy1994/p/6618054.html

学习目标(本学期)

完成网络攻防课程的学习,动手实践相关内容

参考资料

《网络攻防与技术实践》
《计算机网络(第六版)》

posted on 2017-04-02 16:23  20169305孙德洋  阅读(346)  评论(5编辑  收藏  举报