《web安全深度剖析》——信息探测and漏洞扫描

文章目录

  • 信息探测
    • 搜集web信息
    • Nmap初体验
      • Nmap
      • Nmap脚本引擎
    • DirBuster
    • 指纹识别
  • 漏洞扫描
    • Burp Suite
    • AWVS/WVS
    • AppScan

信息探测

搜集web信息

Google常用语法
site:指定域名
intext:正文中存在关键字的网页
info:一些基本信息
inurl:URL存在关键字的网页
filetype:搜索指定文件类型

Nmap初体验

Nmap

Nmap是一个开源的网络连接端扫描软件,作用:①扫描计算机开放的网络连接端;②确定哪些服务器在哪些连接端;③推断计算机运行哪个操作系统;④用于评估网络系统安全;⑤检测SQL注射、网页爬行、数据库密码检测;⑥检测主机是否存在漏洞和密码暴力破解等。

注:任何程序想在cmd命令行下进行快捷访问,都必须配置环境变量。

Nmap常用扫描参数及说明

参数 说明
-sT TCPconnect()扫描,会在目的主机的日志中记录大批连接请求和错误信息
-sS 半开扫描,需要root权限
-sF -sN 秘密FIN数据包扫描、Xmas Tree、Null扫描模式
-sP ping扫描,Nmap在扫描端口时默认使用ping扫描,只有主机存活才会继续扫描
-Pn 穿透防火墙进行扫描,如www.2cto.com禁止用ping扫描
-sU UPD扫描,不可靠
-sA 高级的扫描方法,通常用来穿过防火墙的规则集
-sV 探测端口服务版本
-P0 扫描之前不用ping命令,当防火墙禁用ping命令时可使用
-v 显示扫描过程
-h 帮助选项
-p 指定端口
-O 启用远程操作系统检测,存在误报
-A 全面系统检测,启用脚本检测、扫描等
-oN/-oX/-oG 将报告写入文件,分别是正常、XML、grepable三种格式
-T4 针对TCP端口禁止动态扫描延迟超过10ms
-iL 读取主机列表
-o 探测主机操作系统

Nmap脚本引擎

利用Nmap Script可以快速探测服务器,Nmap Script的功能:漏洞扫描、漏洞利用、目录扫描等。使用Nmap脚本引擎时,只需添加命令“–script=脚本名称”。

DirBuster

DirBuster是一款专门用于探测web服务器的目录和隐藏文件,其功能有:获取管理员的一些敏感信息,如网站的后台管理界面、文件上传界面,有时甚至可以扫描出网站的源代码。安装DirBuster需要Java运行环境(JRE)。DirBuster不仅只会暴力猜解目录,还会进行蜘蛛爬虫。

使用DirBuster针对网站进行扫描的方法
①在Target URL输入框中输入URL,且必须加上协议名;
②在Work Method中选择工作方式,一种是GET请求方式,一种是自动选择;
③在Number Of Thread中选择线程,根据个人PC配置而定;
④在Select Scanning type中选择扫描类型;
⑤单击“Browse”按钮选择字典;
⑥在Select Staring Options中选择选项,两个选项分别是Standard start point,另一个则是Url Fuzz,若选择后者,需要在URL to fuzz输入框中输入“{dir}”。{dir}代表字典中的每一行,若希望在字典的每一行前面加入字符串如admin,则需要在URL to fuzz输入框中输入“/admin/{dir}”。
⑦单击“Start”即可。

在针对目录进行扫描时,仅仅扫描一次是不够的,需要递归地进行测试。

指纹识别

CMS是"Content Management System"的缩写,意为"内容管理系统"。 内容管理系统是企业信息化建设和电子政务的新宠,也是一个相对较新的市场。
指纹识别在这里指针对计算机或计算机系统的某些服务的指纹识别,包括对网站CMS的指纹识别,对服务器操作系统的指纹识别,对web容器的指纹识别等。指纹识别最重要的就是特征库。

漏洞扫描

Burp Suite

Target
站点地图,最主要的功能是显示信息,默认记录浏览器访问的所有页面,在使用spider模块扫描后,可以清晰地看到爬虫所爬行的页面及每个页面的请求头以及响应信息。Burp Suite可通过添加过滤器(Filter,Filter的使用非常灵活,可根据请求类型、MIME类型、HTTP状态等方式进行过滤显示)来过滤非目标站点,具体方法如下:
①将目标站点添加到Scope
Target–>Site map–>鼠标右键单击目标站点–>add to scope–>Brup会生成一个正则表达式并自动添加到Scope中。
②使用过滤器Filter
Target–>Site map–>Filter–>Show only in-scope items只选择范围内的列表,即可进行过滤。

Spider
Burp Suite自带的网络爬虫,能完整地枚举应用程序的内容和功能。爬行操作如下:
配置好Proxy后连接到请求–>Action–>Send to Spider–>Burp Suite开始工作–>Target–>Site map–>看到爬行列表–>Spider–>Control–>看到爬行状态,可进行开始、暂停等操作。(在爬行操作时可在Spider–>Options选项卡中设置爬行规则,包括爬行线程、爬行深度、请求头、表单登录等配置。)
在爬行的同时,Burp Suite会默认进行被动漏洞扫描,检测每个访问过的URL。

Scanner
对URL进行测试,发现web程序的安全漏洞。
若针对单一的URL进行测试,只需拦截到请求后,单击Action按钮,选择Do an active scan进行主动扫描即可。
若进行全站扫描,则需先爬行网站的所有链接–>Target模块中选择需要进行扫描的网站,并单击鼠标右键,选择Actively Scan this Host,主动扫描主机–>主动扫描向导,可选择删除不需要扫描的页面–>Next,给出要扫描的列表。
Burp Suite向导中:
Remove duplicate items删除重复选项
Remove items with no parameters删除没有任何参数的页面
Remove items with following extensions删除具有以下扩展名的页面,以逗号隔开。
Burp Suite Scanner的配置信息包括四个模块,Scanner–>Options–>定制扫描信息。常见配置信息如下表:

选项 说明
Attack Insertion Points 参数扫描选项
Active Scaning Areas 主动扫描漏洞,可配置扫描信息
Active Scaning Engine 扫描配置,可以设置扫描线程、超时和最大请求连接
Passive Scaning Areas 被动扫描选项,可设置Header、Cookies

Scan queue中可看到扫描进度,扫描结束后,在Results中查看扫描结果。

Intruder
一个高度可配置的工具,可以对web程序进行自动化攻击。在使用Intruder时,Target模块一般无需配置,选择Intruder–>Positions,可以看到拦截后的HTTP Request请求,具体配置如下:
(1)配置Attack Type,属于攻击类型配置。

攻击类型 说明
Sniper 对变量依次进行破解
Battering 对变量同时进行破解
Pitch fork 每个变量将会对应一个字典
Cluster bomb 每个变量将会对应一个字典,并且交集破解,尝试每一个组合

(2)配置变量,Positions模块中可以在任意的请求头区域设置变量。
(3)配置字典,Payloads模块下的四个区域:Payload Sets、Payload Options、Payload Processing、Payload Encoding。
(4)配置选项,Option模块,可配置请求线程、请求结果集格式等。

辅助模块

工具 说明
Decoder解码器 编码工具箱,支持对URL、HEX、HTML等格式字符串编码/解码
Comparer比较器 字符串比较器,将不同之处以高亮显示
Repeater HTTP请求编辑工具
插件 在命令行输入命令启动或直接在GUI界面加载插件

AWVS/WVS

自动化的web应用程序安全测试工具,可快速扫描跨站脚本攻击(XSS)、SQL注入攻击、代码执行、目录遍历攻击、文件入侵、脚本源代码泄漏、CRLF注入、PHP代码注入、XPath注入、LDAP注入、Cookie操纵、URL重定向、应用程序错误消息等。主要特点如下:
①具有AcuSensor技术;
②允许AJAX和web2.0应用程序进行安全测试;
③先进的SQL注入和跨站脚本测试;
④高级渗透测试工具;
⑤视觉宏录制;
⑥支持页面验证、单点登录、双因素认证机制;
⑦广泛的报告设施;
⑧履带式智能按测web服务器的类型和应用语言;
⑨端口扫描。

工具 说明
HTTP Fuzzer 模糊测试工具,可对web程序进行自动化攻击
HTTP Sniffer 代理工具,截取HTTP协议需配置
Blind SQL Injector 盲注测试工具
Target Finder 用于目标信息搜集,可进行端口扫描
Authentication Tests 认证测试小工具,可快速进行基于表单形成的破解
Compare Results 比较器
Subdomain Scanner 子域名扫描器
HTTP Editor HTTP编辑器,可修改HTTP头信息

AppScan

可自动化web应用的安全漏洞评估工作,能扫描和检测所有常见的web应用安全漏洞,如:SQL注入、跨站点脚本攻击、缓冲区溢出、Flash/Flex应用、web2.0应用暴露等方面的安全漏洞扫描。主要特点如下:
①支持Flash;
②Glass box testing;
③web服务器扫描;
④Java脚本安全分析;
⑤报告;
⑥修复支持;
⑦可定制的扫描策略;
⑧工具支持;
⑨具有AJAX和Dojo框架的支持。
AppScan主页面包含菜单栏、工具栏、视图选择器、数据窗格,数据窗格包含程序树、结果表、详细信息(漏洞描述)窗格。AppScan扫描包括探索(探索站点,构造应用程序树)和测试(发送测试请求,记录和分析应用程序的响应,将安全风险的级别排名)两部分。AppScan也支持调度扫描,可设置定时扫描。

辅助工具

工具 说明
连接测试 ping命令
编码/解码 支持对Base64、HTML、UU、MD5、SHA1等算法的加密/解密
表达式测试 “工具”→“PowerTool”→“表达式测试”
HTTP请求编辑器 自定义HTTP请求
自定义工具 “工具”→“PowerTool”→“外部工具”→“添加”

你可能感兴趣的:(笔记)