《黑客攻防技术宝典 Web实战篇》学习总结-----------------解析应用程序

攻击应用程序,第一步是收集和分析有关的关键信息,以清除攻击目标。

解析过程首先是枚举应用程序的内容与功能,从而了解应用程序的实际功能与运行机制。

列出应用程序的功能后,接下来的首要任务是仔细分析应用程序运行机制的每个方面、核心安全机制、在客户端和服务器上使用的技术。 这样就可以确定应用程序暴露的主要受攻击面并因此确定随后探查过程的主要目标,进而发现可供利用的漏洞。

本章将讲述应用程序解析过程的主要不中、各种可用来提高效率的技巧和窍门、以及一些帮助进行解析的工具

4.1枚举内容与功能

通常,手动浏览即可确定应用程序的绝大部分内容与功能。

浏览应用程序的基本方法从主页面开始,然后是每一个链接和所有多阶段功能(如用户注册或密码重设置)。如果应用程序有一个"站点地图",可以从他开始枚举内容。为了方便仔细检查内容以及记录每一项确定的功能,我们需要使用一些更急先进的技术。

 

4.1.1 web抓取

我们可使用各种工具自动抓取Web站点的内容。

基于这项基本功能,Web应用程序爬虫(spider)以同样的方式分析HTML表单,并使用各种预选设定值或者将这些表单返回给应用程序,以扩大搜索范围、浏览多阶段功能、进行基于表单的导航(如什么地方使用下拉列表作为内容菜单)。一些工具还对客户端JavaScript进行某种形式的分析,已提取指向其他内容的URL。

burpsuit 的网站扫描操作 具体的我就不信写了。

尽管通常能够进行有效地抓取,但是这种完全自动化的方式在内容枚举方面还存在一些重要的限制比如:                                      1、这些工具一般无法正确处理不常用的导航机制(如使用复杂的JavaScript代码动态建立和处理的菜单),因此会遗漏某些方面的功能。

2、爬虫可能无法抓取到隐藏在编译客户端对象(如Flash和JavaScript)中的链接

3、多功能阶段往往会严格地执行输入确认检查、因此可能不会接受由自动工具提交的值。(比如注册表单,自动爬虫提交的不会有效,又无法对这种机制采取行动,无法通过注册),因此无法发现这以后的任何其他内容或者功能。

..........

4.1.2 用户指定的抓取

这是一个更复杂但是可控的技巧,它比自动化抓取跟家先进。

用户使用它通过标准浏览器以常规的方式浏览程序,试图枚举应用程序的所有功能。之后生成的流量穿过一个组合拦截代理服务器与爬虫工具,监视所有的请求和响应。

该工具绘制应用地图、集中由浏览器访问的所有URL,并且像一个正常的应用程序感知爬虫那样分析应用程序的响应,同时它发现的内容与功能更新站点地图(20章可了解详细功能)

Guess you like

Origin blog.csdn.net/qq_36737214/article/details/96107838