20189211 《网络攻防》第五周作业

教材学习内容总结

1、WEB应用程序安全攻防

Web应用体系结构及安全威胁
web应用体系结构
“瘦”客户端:浏览器,完成数据显示与展示内容的渲染功能;
“胖”服务器:web服务器软件、web应用程序、后端数据库。
通过经典三层架构:表示层、业务逻辑层和数据层来组织和构建。

传输协议HTTP/HTTPS:
1)超文本传输协议HTTP无状态、ASCII码明文传输、运行于众所周知的TCP80端口。特点:简单、流行、易受攻击。
2)加密传输的HTTPS协议,使用ssl/tls隧道技术,采用多种认证协议实现对用户身份的人认证与控制。
web应用安全威胁
1)针对浏览器和终端用户的web浏览安全威胁:以浏览器渗透攻击为核心的网页木马、网站钓鱼。
2)针对传输网络的网络协议安全威胁:针对HTTP明文传输的敏感信息监听、假冒身份攻击、拒绝服务攻击等。
3)系统层安全威胁:远程渗透攻击和本地渗透攻击温威胁。
4)web服务器软件安全威胁:利用漏洞实施渗透攻击、获取敏感信息。
5)web数据安全威胁:窃取、篡改、输入不良信息。
Web应用程序安全攻防技术概述
信息收集内容包括:
服务器域名
ip地址和虚拟ip地址
web服务器端口与其他开放服务
web站点类型和版本
web应用程序类型和版本
web服务器和web应用程序中存在的安全漏洞信息
方式包括:
手工审查web应用程序结构与源代码
自动下载与镜像web站点页面:lynx、wget、teleportpro、offline explorer等web站点镜像软件。
使用google hacking技术审查与探测web应用程序
web应用程序安全评估与漏洞探测:浏览器插件、免费工具集、商业web应用安全评估系统和漏洞扫描器。
Web服务器平台安全漏洞:
数据驱动的远程代码执行安全漏洞
服务器功能拓展模块漏洞
样本文件安全漏洞
源代码泄露
资源解析攻击
Web应用程序安全威胁从攻击者技术角度分为如下六类:
针对认证机制攻击
授权机制攻击
客户端攻击
命令执行攻击
信息暴露
逻辑攻击
  最流行的的两类Web应用程序安全漏洞及攻击技术:SQL注入和XSS跨站脚本。攻击Web数据内容:安全敏感数据泄露、网站内容遭到篡改以及不良信息内容上传威胁。
Web应用安全防范措施:
1)web站点网络传输安全防范措施
使用HTTPS
使用加密连接通道、对关键Web服务器设置静态绑定MAC-IP映射。
  2)Web站点操作系统及服务安全设防措施
及时的补丁更新
进行远程安全漏洞扫描
关闭不使用的服务
设置强口令字
部署防火墙
数据备份
  3)Web应用程序安全设防措施
使用静态HTML
使用具有良好安全声誉及稳定技术支持力量的Web应用软件包
除非必要才使用自主或者外包Web应用程序
使用Web服务器软件提供的日志功能。
  4)Web站点数据安全设防措施
提高维护人员数据安全意识
对维护网站数据安全实施日常监测和防护
SQL注入
本节讲了什么是SQL注入、种类以及原理(课本举了两个例子进行说明):
利用web应用程序的输入验证不完善漏洞,使得web应用程序执行由攻击者所注入的恶意指令和代码,造成敏感信息泄露、权限提升或对系统的未授权访问等危害后果。

SQL注入攻击步骤:

发现SQL注入点
判断后台数据库类型
后台数据库中管理员用户口令字猜解
上传ASP后门,得到默认账户权限
本地权限提升
利用数据库扩展存储过程执行Shell命令

SQL注入攻击工具:

Wposion 能在动态web文档中找出SQL注入漏洞
wieliekoek.pl 以网站镜像工具生成的输入为输出,对表单页面注入字符串修改
SPIKE Proxy 对待注入的字符串进行定制
SPI Toolkit工具包

###对抗 SQL 注入
SQL 注入漏洞的根本原因是没有将代码和数据区分开。当组建一个 SQL 语句时,程序 (如 PHP 程序)知道哪个部分是代码哪个部分是数据。不幸的是当 SQL 语句送往数据库执 行时,这个边界被打破,当程序被注入时,SQL 解释器看到的边界可能和最初的边界不一 样。为了解决这个问题,保持服务端程序和数据库看到的边界一样就十分重要。

XSS跨站脚本攻击

测试漏洞 很简单,请你登录到论坛后发布一个帖子,帖子中包含以下内容: 然后打开包含有你发布的帖子的页面——是否看到一个弹出的窗口呢?

 在消息窗口中显示 Cookie 现在我们已经可以成功地弹出一个窗口,那么我们在窗口里显示一些更有用的信息,比 如你的 Cookie。 请你再来发布一个帖子,包含以下内容: Hello Everybody, Welcome to this message board. 和前面一样浏览你的帖子,你将看到一个弹出的窗口。

 获得受害主机的 Cookie 原理我们在错误!未找到引用源。节中已经介绍的很清楚了。下面我们具体说一下如何 实现: 首先,在前文中提到的可以将用户的 HTTP 请求输出在屏幕上的应用已经在你的机器里。 你可以在 Desktop/echoserver/中找到 echoserv 软件,运行方式为:
seed@seed-desktop:~/ Desktop/echoserver$ ./echoserv 4444 & 其中 4444 是端口号,要和我们在发帖时指定的源路径端口号一致。 然后我们发布帖子,并包含以下信息: 登出后以另一用户重新登录,访问该帖,你将会在运行 echoserv 的终端上看到这个受 害主机的 Cookie。
利用 Cookie 仿冒受害主机在仿冒受害主机前,我们需要了解 phpBB 是怎样发布帖子的。我们可以利用 LiveHTTPHeaders 来得到发消息时用户向服务器所发送的具体 HTTP 请求信息,从而进行分 析。LiveHTTPHeaders 已经在 VM 镜像中安装好。选中一个请求,然后点击 Replay 即可看 到详细的信息。 我们的任务是,利用得到的用户的 Cookie 假冒用户进行发帖和用户原始消息的修改。 由于 phpBB 的限制,用户只有当登录时才可以进行消息的更改和发布,所以我们的任务按 照如下的流程进行: 1. 登录到 phpBB 中,发表信息并用 LiveHTTPHeaders 得到该信息的发表请求。 2. 从发表请求中抽取用户的 Cookie 信息和发布消息内容,进行修改 3. 编写 Java 程序,实现向服务器发送 HTTP 请求。 4. 将修改好的消息和 Cookie 信息通过 Java 程序发送到服务器 5. 刷新页面,你将看到修改后的信息。 6. 尝试仿冒用户发布新的消息,而不是修改用户曾经发布的消息 其中,大家可以参考 11.4.3 节 XSS 攻击实例(4)利用 Cookie 信息假冒其他用户发表与修改帖 子中所提供的 Java 程序。
与代码注入攻击不同的是,XSS跨站脚本攻击的最终目标不是提供服务的web应用程序,而是使用web应用程序的用户。
XSS攻击技术原理
是Web应用程序对用户数输入内容的安全验证与过滤不完善。
攻击方式
绕过客户端安全策略访问敏感信息,窃取或修改会话Cookie、进行客户端渗透攻击获取访问权。
XSS攻击类型
持久性XSS漏洞和非持久性XSS漏洞,利用这两类漏洞的攻击也称为持久性XSS攻击和非持久性XSS攻击。
攻击实例:测试XSS漏洞、显示用户的会话cookie、窃取用户的会话cookie、利用cookie信息假冒其他用户发表与修改帖子、编写实现XSS蠕虫。
XSS攻击防范措施
服务器端:输入验证、输出净化、消除危险的输入点。

猜你喜欢

转载自www.cnblogs.com/zhangyuxiang666/p/10629618.html